aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2015-06-22 22:21:44 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2015-06-22 22:21:44 -0500
commitc952fb18053afc59104e05ea0e35c85460402d59 (patch)
treecb28359cf3d6a01fdd13bce5dfa7addb3310d556
parent02a299d8b2d70e4e145fbd420787ea35873d96f7 (diff)
parent6858d62a5f85b7bf6953f75c2f618866c5407b65 (diff)
downloadcryptography-c952fb18053afc59104e05ea0e35c85460402d59.tar.gz
cryptography-c952fb18053afc59104e05ea0e35c85460402d59.tar.bz2
cryptography-c952fb18053afc59104e05ea0e35c85460402d59.zip
Merge pull request #2056 from alex/remove-workarounds
Remove our workarounds for pyasn.1 bugs, a new pyasn.1 is out!
-rw-r--r--setup.py4
-rw-r--r--src/cryptography/hazmat/primitives/asymmetric/utils.py6
-rw-r--r--tests/hazmat/primitives/test_asym_utils.py4
3 files changed, 4 insertions, 10 deletions
diff --git a/setup.py b/setup.py
index 4cd3b51a..987f3b99 100644
--- a/setup.py
+++ b/setup.py
@@ -33,9 +33,9 @@ VECTORS_DEPENDENCY = "cryptography_vectors=={0}".format(about['__version__'])
requirements = [
"idna>=2.0",
- "pyasn1",
+ "pyasn1>=0.1.8",
"six>=1.4.1",
- "setuptools"
+ "setuptools",
]
setup_requirements = []
diff --git a/src/cryptography/hazmat/primitives/asymmetric/utils.py b/src/cryptography/hazmat/primitives/asymmetric/utils.py
index 29390e40..a03025bb 100644
--- a/src/cryptography/hazmat/primitives/asymmetric/utils.py
+++ b/src/cryptography/hazmat/primitives/asymmetric/utils.py
@@ -4,7 +4,6 @@
from __future__ import absolute_import, division, print_function
-from pyasn1.codec.ber import eoo
from pyasn1.codec.der import decoder, encoder
from pyasn1.error import PyAsn1Error
from pyasn1.type import namedtype, univ
@@ -29,11 +28,6 @@ def decode_rfc6979_signature(signature):
raise ValueError(
"The signature contains bytes after the end of the ASN.1 sequence."
)
- # pyasn1 can erroneously return this from top-level DER decoding.
- # It's intended as a sentinel in recursive BER decoding, so it's
- # returned even though an asn1Spec is provided.
- if eoo.endOfOctets.isSameTypeWith(data) and data == eoo.endOfOctets:
- raise ValueError("Invalid signature data. Unable to decode ASN.1")
r = int(data.getComponentByName('r'))
s = int(data.getComponentByName('s'))
diff --git a/tests/hazmat/primitives/test_asym_utils.py b/tests/hazmat/primitives/test_asym_utils.py
index c3fbedf9..35b77ca4 100644
--- a/tests/hazmat/primitives/test_asym_utils.py
+++ b/tests/hazmat/primitives/test_asym_utils.py
@@ -65,6 +65,6 @@ def test_decode_rfc6979_invalid_asn1():
decode_rfc6979_signature(b"0\x07\x02\x01\x01\x02\x02\x01")
with pytest.raises(ValueError):
- # This is the BER "end-of-contents octets," which pyasn1 is
- # wrongly willing to return from top-level DER decoding.
+ # This is the BER "end-of-contents octets," which older versions of
+ # pyasn1 are wrongly willing to return from top-level DER decoding.
decode_rfc6979_signature(b"\x00\x00")