diff options
| author | Daniel Kahn Gillmor <[email protected]> | 2016-10-28 20:45:49 +0000 | 
|---|---|---|
| committer | Justus Winter <[email protected]> | 2016-10-31 14:42:27 +0000 | 
| commit | 2fac017618a76882605125b05ff1f7393fe99860 (patch) | |
| tree | b7eddc17682b6aa91b8c3c723a2fc02f28ac0a6c /lang/python/gpg/callbacks.py | |
| parent | core: New API functions gpgme_set_sender, gpgme_get_sender. (diff) | |
| download | gpgme-2fac017618a76882605125b05ff1f7393fe99860.tar.gz gpgme-2fac017618a76882605125b05ff1f7393fe99860.zip  | |
python: Rename Python module from PyME to gpg.
This follows weeks of discussion on the gnupg-devel mailing list.
Hopefully it will make it easier for people using Python to use GnuPG
in the future.
Signed-off-by: Daniel Kahn Gillmor <[email protected]>
Diffstat (limited to 'lang/python/gpg/callbacks.py')
| -rw-r--r-- | lang/python/gpg/callbacks.py | 49 | 
1 files changed, 49 insertions, 0 deletions
diff --git a/lang/python/gpg/callbacks.py b/lang/python/gpg/callbacks.py new file mode 100644 index 00000000..b25a9a74 --- /dev/null +++ b/lang/python/gpg/callbacks.py @@ -0,0 +1,49 @@ +# Copyright (C) 2004 Igor Belyi <[email protected]> +# Copyright (C) 2002 John Goerzen <[email protected]> +# +#    This library is free software; you can redistribute it and/or +#    modify it under the terms of the GNU Lesser General Public +#    License as published by the Free Software Foundation; either +#    version 2.1 of the License, or (at your option) any later version. +# +#    This library is distributed in the hope that it will be useful, +#    but WITHOUT ANY WARRANTY; without even the implied warranty of +#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU +#    Lesser General Public License for more details. +# +#    You should have received a copy of the GNU Lesser General Public +#    License along with this library; if not, write to the Free Software +#    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA + +from __future__ import absolute_import, print_function, unicode_literals +del absolute_import, print_function, unicode_literals + +from getpass import getpass + +def passphrase_stdin(hint, desc, prev_bad, hook=None): +    """This is a sample callback that will read a passphrase from +    the terminal.  The hook here, if present, will be used to describe +    why the passphrase is needed.""" +    why = '' +    if hook != None: +        why = ' ' + hook +    if prev_bad: +        why += ' (again)' +    print("Please supply %s' password%s:" % (hint, why)) +    return getpass() + +def progress_stdout(what, type, current, total, hook=None): +    print("PROGRESS UPDATE: what = %s, type = %d, current = %d, total = %d" %\ +          (what, type, current, total)) + +def readcb_fh(count, hook): +    """A callback for data.  hook should be a Python file-like object.""" +    if count: +        # Should return '' on EOF +        return hook.read(count) +    else: +        # Wants to rewind. +        if not hasattr(hook, 'seek'): +            return None +        hook.seek(0, 0) +        return None  | 
