Updated cryptography to 0.5.4 - closes #91
Slightly reorganized the default imports in pgpy/__init__.py First pass at updating the ascii_unarmor regex to support cleartext signatures - #102, #27, #28 Added pypy3 to the test matrix as an allowed failure
This commit is contained in:
@@ -5,6 +5,7 @@ python:
|
||||
- "3.2"
|
||||
- "2.7"
|
||||
- "pypy"
|
||||
- "pypy3"
|
||||
env:
|
||||
matrix:
|
||||
# test all versions against OpenSSL 0.9.8
|
||||
@@ -25,6 +26,7 @@ matrix:
|
||||
allow_failures:
|
||||
- env: TOXENV=pep8
|
||||
- python: "pypy"
|
||||
- python: "pypy3"
|
||||
# install requirements
|
||||
install:
|
||||
# add the lucid repo for if we need OpenSSL 0.9.8
|
||||
|
||||
@@ -98,6 +98,7 @@ PGPy is focused on eventually reaching complete OpenPGP implementation, adhering
|
||||
.. comment::
|
||||
RFC 3156 (PGP in MIME security)?
|
||||
|
||||
|
||||
.. progress:: RFC 4398
|
||||
:text: :rfc:`4398` covers publishing and retrieving PGP public keys via DNS CERT records.
|
||||
|
||||
@@ -105,6 +106,7 @@ PGPy is focused on eventually reaching complete OpenPGP implementation, adhering
|
||||
- DNS CERT, False, Look up and retrieve keys stored in Content-based DNS CERT records
|
||||
- DNS CERT, False, Look up and retrieve keys stored in Purpose-based DNS CERT records
|
||||
|
||||
|
||||
.. progress:: RFC 5581
|
||||
:text: :rfc:`5881` extends RFC 4880 to officially add support for the Camellia cipher
|
||||
|
||||
@@ -112,6 +114,7 @@ PGPy is focused on eventually reaching complete OpenPGP implementation, adhering
|
||||
- Unprotect, True, Camellia*
|
||||
- Protect, False, Camellia*
|
||||
|
||||
|
||||
.. progress:: RFC 6637
|
||||
:text: :rfc:`6637` extends OpenPGP to officially add support for elliptic curve cryptography
|
||||
|
||||
@@ -132,6 +135,7 @@ PGPy is focused on eventually reaching complete OpenPGP implementation, adhering
|
||||
:DNS:
|
||||
- DNS PKA, False, Look up and retrieve keys stored in DNS PKA records.
|
||||
|
||||
|
||||
.. note::
|
||||
|
||||
\* Cipher depends on the currently installed OpenSSL being compiled with support for it
|
||||
|
||||
@@ -5,15 +5,20 @@ from ._author import __copyright__
|
||||
from ._author import __license__
|
||||
from ._author import __version__
|
||||
|
||||
from .errors import PGPError
|
||||
from .errors import PGPKeyDecryptionError
|
||||
from .errors import PGPOpenSSLCipherNotSupported
|
||||
from . import errors
|
||||
|
||||
from .pgp import PGPKey
|
||||
from .pgp import PGPKeyring
|
||||
from .pgp import PGPMessage
|
||||
from .pgp import PGPSignature
|
||||
|
||||
__all__ = [__author__,
|
||||
__copyright__,
|
||||
__license__,
|
||||
__version__,
|
||||
PGPError,
|
||||
PGPKeyDecryptionError,
|
||||
PGPOpenSSLCipherNotSupported,
|
||||
errors,
|
||||
PGPKey,
|
||||
PGPKeyring,
|
||||
PGPMessage,
|
||||
PGPSignature
|
||||
]
|
||||
|
||||
@@ -197,7 +197,13 @@ class Exportable(six.with_metaclass(abc.ABCMeta, FileLoader)):
|
||||
# the re.VERBOSE flag allows for:
|
||||
# - whitespace is ignored except when in a character class or escaped
|
||||
# - anything after a '#' that is not escaped or in a character class is ignored, allowing for comments
|
||||
m = re.match(r"""# armor header line; capture the variable part of the magic text
|
||||
##TODO: add methods to Exportable for dash-(un)escaping strings
|
||||
m = re.match(r"""# This capture group is optional because it will only be present in signed cleartext messages
|
||||
(^-{5}BEGIN\ PGP\ SIGNED\ MESSAGE-{5}\n
|
||||
(?P<hashes>(Hash:\ [A-Za-z0-9\-]+\n)*\n)
|
||||
(?P<cleartext>(.*\n)+)\n
|
||||
)?
|
||||
# armor header line; capture the variable part of the magic text
|
||||
^-{5}BEGIN\ PGP\ (?P<magic>[A-Z0-9 ,]+)-{5}$\n
|
||||
# try to capture all the headers into one capture group
|
||||
# if this doesn't match, m['headers'] will be None
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
cryptography==0.4
|
||||
cryptography==0.5.4
|
||||
requests
|
||||
enum34
|
||||
six
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import pytest
|
||||
|
||||
import functools
|
||||
import keyword
|
||||
import os
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
Reference in New Issue
Block a user