Commit Graph

984 Commits (d66b23b896851ebd0682d2f2f4627b075262f962)

Author SHA1 Message Date
Isis Lovecruft d66b23b896
Add support for running on PyPy. 2015-02-22 22:57:59 +00:00
Isis Lovecruft 5025df1661
Merge branch 'master' into develop 2014-11-27 04:14:11 +00:00
Isis Lovecruft b1dab1570d
Merge branch 'release/1.4.0' 2014-11-27 04:14:03 +00:00
Isis Lovecruft 8f92335476
Merge branch 'master' into develop 2014-11-27 02:59:22 +00:00
Isis Lovecruft 613e84cd56
Merge branch 'release/1.3.3' 2014-11-27 02:58:47 +00:00
Isis Lovecruft 1a22565e24
Merge branch 'fix/67-hidden-encrypt' into develop 2014-11-27 02:41:02 +00:00
Isis Lovecruft 81b2d9d9c2
Change ListPackets.key to be backwards compatible.
This also adds a new ``ListPackets.encrypted_to`` list, which contains
all the keyids which a message was encrypted to. ``ListPackets.key`` is
just the first one we discovered that it was encrypted to, for backwards
compatibility.

 * FIXES part of Issue #67.
   https://github.com/isislovecruft/python-gnupg/issues/67

 * CHANGES the additions made in commit f70a7dc4f0 by @tomgalloway in
   PR#70 to be backwards compatible.
   f70a7dc4f0
   https://github.com/isislovecruft/python-gnupg/pull/77
2014-11-27 02:35:52 +00:00
Isis Lovecruft 513a48d876
Add throw_keyids=bool option to encrypt() method.
* FIXES part of Issue #67.
   https://github.com/isislovecruft/python-gnupg/issues/67
2014-11-27 02:19:34 +00:00
Isis Lovecruft 09c6a08637 Merge remote-tracking branch 'tomgalloway/develop' into fix/67-hidden-encrypt 2014-11-27 01:18:37 +00:00
Isis Lovecruft 09a0af7b41
Merge branch 'fix/81-import-indempotence' into develop 2014-11-27 01:01:25 +00:00
Isis Lovecruft 906b1a7142
Fix class attribute side effects between instances of ImportResult.
This fixes an issue reported by @adulau on Github where importing KeyA
and asking for the ``ImportResult.fingerprints`` would list KeyA's
fingerprints, and then importing KeyB and asking for the
``ImportResult.fingerprints`` would list both KeyA and KeyB's
fingerprints.

This was caused by a side effect resulting from the
``ImportResult.fingerprints`` being a class-level attribute, which gets
modified by the first call to ``gnupg.GPG.import_key()``, causing later
instances of ``ImportResult`` to retain the side effect. This commit
causes the ``ImportResult`` class to be indempotent under sequential
composition calls to ``gnupg.GPG.import_keys()``, ultimately resulting
in listing, upon each key import attempt, only the fingerprints of the
keys which were listed *that* time.

 * FIXES Issue #81
   https://github.com/isislovecruft/python-gnupg/issues/81
2014-11-27 00:51:55 +00:00
Isis Lovecruft cbebe4f509
Merge branch 'fix/58-win32-uid' into develop 2014-11-27 00:13:09 +00:00
Isis Lovecruft a1e4a8a756
Use process uids and usernames on Unix and Windows respectively.
Windows doesn't have EUIDs, so instead we'll check that the usernames
match. This doesn't seem the least bit secure to me, but it's Windows so
they're probably owned anyway. If anyone knows one of the "proper" ways
to determine if another process has the same owner on Windows, I'd love
to know about it.

 * FIXES Issue #58 but I don't have a Windows machine to test so maybe
   it's still broken.
   https://github.com/isislovecruft/python-gnupg/issues/58
2014-11-27 00:03:27 +00:00
Isis Lovecruft cc959c755d
Merge remote-tracking branch 'meskio/fix_list_sigs' into develop 2014-11-26 23:38:28 +00:00
Isis Lovecruft 63fe93f8b5
Merge branch 'fix/85-NOTATION' into develop 2014-11-20 06:10:47 +00:00
Isis Lovecruft f3515c44d7
Add ability to parse NOTIFICATION_* statuses in Verify.
* FIXES Issue #85:
   https://github.com/isislovecruft/python-gnupg/issues/85
2014-11-20 05:51:20 +00:00
Isis Lovecruft a3e2f70cd8
Merge branch 'fix/83-SIG_SUBPACKET' into develop 2014-11-19 22:51:47 +00:00
Isis Lovecruft 5aaf1df5d1
Add ability to handle SIG_SUBPACKET status in Verify.
* FIXES Issue #83:
   https://github.com/isislovecruft/python-gnupg/issues/83
2014-11-19 22:50:30 +00:00
Isis Lovecruft 245cf73baf
Change versioneer parameters in gnupg/_version.py to match setup.py.
* FIXES (hopefully) Issue #80:
   https://github.com/isislovecruft/python-gnupg/issues/80
2014-11-19 21:44:53 +00:00
Isis Lovecruft 8e5b3256fa
Merge remote-tracking branch 'charles-dyfis-net/trustdb_repair_arg_fix' into develop 2014-11-19 21:29:31 +00:00
Isis Lovecruft 30c8c05f84
Merge remote-tracking branch 'charles-dyfis-net/first_usable_binary' into develop
Conflicts:
	gnupg/_util.py
2014-11-19 21:22:21 +00:00
Isis Lovecruft f9d00794ee
Merge remote-tracking branch 'charles-dyfis-net/progress_during_verify' into develop 2014-11-19 19:52:25 +00:00
Isis Lovecruft 99e597f196
Merge remote-tracking branch 'ttanner/binary-symlink' into develop 2014-11-19 19:30:29 +00:00
Isis Lovecruft de82a1c32a
Merge branch 'fix/74-no-HOME-env' into develop 2014-11-19 18:31:36 +00:00
Isis Lovecruft 1104908ef9
Don't expect a $HOME directory to be set.
* FIXES Issue #74:
   https://github.com/isislovecruft/python-gnupg/issues/74
2014-11-19 18:31:14 +00:00
Isis Lovecruft 899d429f7a
Merge branch 'fix/76-verbose-flag-order' into develop 2014-11-19 04:29:22 +00:00
Isis Lovecruft 59992eb8c3
Put verbosity args before other options/args.
* FIXES Issue #76:
   https://github.com/isislovecruft/python-gnupg/issues/76
2014-11-19 03:51:06 +00:00
Isis Lovecruft fecf92c0ac
Remove expectation for UnicodeDecodeError in a unittest.
It seems that more modern versions of Python (e.g. 2.7.8), doing:

    from __future__ import print_function
    print("SIG=%s" % sig)

with some binary data doesn't actually produce a UnicodeDecodeError,
which means that Python2 is slowly getting less retarded. :D

On the downside, we probably shouldn't have been testing for things
which are Python2.x mis-design issues (and not really our fault, nor a
bug in python-gnupg) anyway.
2014-11-19 03:46:44 +00:00
Tom Galloway 350027b18c Add parameter description 2014-11-10 13:07:27 +00:00
Tom Galloway f70a7dc4f0 Update to allow multiple keys to be shown on list_packets.
Also updated test to ensure only expected keyid has been hidden.
2014-11-05 12:37:27 +00:00
Tom Galloway 327d2e5f66 Actually add test to be run and format variable correctly. 2014-10-29 14:59:43 +00:00
Tom Galloway df5fdb5aa8 Allow --hidden-recipient to be used for a list of recipients. 2014-10-29 14:47:27 +00:00
Isis Lovecruft 751f25cb35
Merge branch 'fix/49-unicode-decode-on-readline' into develop 2014-10-28 01:07:12 +00:00
Isis Lovecruft d9116bace6
Replace UnicodeDecodeErrors caused by Python2 readline() method.
* CHANGE gnupg._meta.GPGBase.__init__() to register the builtin
   `codecs.replace_errors` handler and a global codecs "strict" error
   handler.
 * FIXES Issue #49:
   https://github.com/isislovecruft/python-gnupg/issues/49
2014-10-28 01:01:03 +00:00
Ruben Pollan d1025ae524 Fix list_sigs to return the list of signatures 2014-10-27 12:21:55 -06:00
Isis Lovecruft 79b1cbc260
Merge branch 'master' into develop 2014-10-04 00:54:39 +00:00
Isis Lovecruft d1a8fb101f
Merge branch 'release/1.3.2' 2014-10-04 00:53:44 +00:00
Charles Duffy 98e0fc7cf5 properly pass argument during trustdb repair 2014-10-02 04:56:56 -05:00
Charles Duffy 1b8c305829 Continue search for a usable binary if entries are symlinks
Existing code gives up searching for a GnuPG executable (returning None --
contrary to the docstring indicating that a RuntimeError will be thrown in all
cases where no binary can be found) if the first item found is a symlink or is
not accessed via an absolute path.

This refactored version moves the filtering logic down into the _which helper
-- and thus continues to search past unacceptable results -- even if the first
item found is not acceptable.
2014-09-30 20:45:44 -05:00
Charles Duffy 41c388e8f7 Ignore PROGRESS messages during verify operation
Parsing such messages would change documented behavior (which specifies a
limited set of messages, not conforming with the given status codes). Ignoring
them is thus the safer change.
2014-09-30 20:28:50 -05:00
Isis Lovecruft 7c2d060fca
Merge branch 'fix/63-hanging-fd' into develop 2014-09-27 01:27:59 +00:00
Isis Lovecruft 4a8a8c8592
Close process FDs after __init__() sanity check.
* FIXES and issue discovered by ttanner (https://github.com/ttanner)
   in `gnupg._meta.GPGBase._check_sane_and_get_gpg_version()` where the
   GnuPG process wasn't closed and its file descriptors were left
   hanging.

 * FIXES part of Issue #63.
   https://github.com/isislovecruft/python-gnupg/issues/63

   There were so many hanging FD issues when I started patching
   upstream python-gnupg ― I doubt I found all of them. I probably even
   introduced some along the way. And, as ttanner pointed out, this
   patch doesn't fix the issue fully, so there are likely more.
2014-09-27 01:22:27 +00:00
Isis Lovecruft 432833bdcb
Add an `upload` Makefile directive for uploading to PyPI. 2014-09-27 01:21:01 +00:00
Isis Lovecruft f6453b96a6
Add a `cleanup-dist` Makefile directive. 2014-09-27 01:19:08 +00:00
Isis Lovecruft 3a287d6e11
Remove generated MANIFEST file in `cleanup-build` Makefile directive. 2014-09-27 01:18:24 +00:00
Isis Lovecruft 17cf24c30d
Remove unused .travis.yml file.
It wouldn't be very nice to test this on Travis for three versions of
Python, because some of the integration tests generate keys, and
although this is usually done with a UID comment saying `(INSECURE!)`
in order to trigger libgcrypt's use of the dummy RNG, the testing
process is still a little brutal on heavily used headless machines.
2014-09-27 01:15:36 +00:00
Isis Lovecruft 572c911b82 Merge branch 'fix/30-hidden-recipient' into develop 2014-09-27 00:38:59 +00:00
Isis Lovecruft 2266a146c3
Exclude logfiles and Emacs autosave files from being packaged on PyPI.
* FIXES part of Issue #65.
   https://github.com/isislovecruft/python-gnupg/issues/65
2014-09-26 23:45:44 +00:00
Isis Lovecruft 3f2fc00ef0
Exclude anything in private directories from being packaged on PyPI. 2014-09-26 23:43:46 +00:00
Isis Lovecruft 177d762cef
Include in PyPI packages the examples/ directory.
* FIXES part of Issue #65.
   https://github.com/isislovecruft/python-gnupg/issues/65
2014-09-26 06:35:17 +00:00