diff options
author | Alex Gaynor <alex.gaynor@gmail.com> | 2014-03-01 08:50:16 -0800 |
---|---|---|
committer | Alex Gaynor <alex.gaynor@gmail.com> | 2014-03-01 08:50:16 -0800 |
commit | e5dadb2d3c6c0e7062dc73f8a50aa6f7b457b64f (patch) | |
tree | 5fd07ef370919114d4ae9e0e27fc996e752e3a36 /cryptography | |
parent | bf1241307711a2f081d448e5132a435922c05681 (diff) | |
parent | 53ecc9837e39f596bb6b17980aef19c1668c732b (diff) | |
download | cryptography-e5dadb2d3c6c0e7062dc73f8a50aa6f7b457b64f.tar.gz cryptography-e5dadb2d3c6c0e7062dc73f8a50aa6f7b457b64f.tar.bz2 cryptography-e5dadb2d3c6c0e7062dc73f8a50aa6f7b457b64f.zip |
Merge pull request #699 from public/max-md-size
Use buffer of EVP_MAX_MD_SIZE bytes for digests
Diffstat (limited to 'cryptography')
-rw-r--r-- | cryptography/hazmat/backends/openssl/backend.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/cryptography/hazmat/backends/openssl/backend.py b/cryptography/hazmat/backends/openssl/backend.py index aa6dc83a..0dc6803e 100644 --- a/cryptography/hazmat/backends/openssl/backend.py +++ b/cryptography/hazmat/backends/openssl/backend.py @@ -534,14 +534,14 @@ class _HashContext(object): def finalize(self): buf = self._backend._ffi.new("unsigned char[]", - self.algorithm.digest_size) + self._backend._lib.EVP_MAX_MD_SIZE) outlen = self._backend._ffi.new("unsigned int *") res = self._backend._lib.EVP_DigestFinal_ex(self._ctx, buf, outlen) assert res != 0 assert outlen[0] == self.algorithm.digest_size res = self._backend._lib.EVP_MD_CTX_cleanup(self._ctx) assert res == 1 - return self._backend._ffi.buffer(buf)[:] + return self._backend._ffi.buffer(buf)[:outlen[0]] @utils.register_interface(interfaces.HashContext) @@ -593,7 +593,7 @@ class _HMACContext(object): def finalize(self): buf = self._backend._ffi.new("unsigned char[]", - self.algorithm.digest_size) + self._backend._lib.EVP_MAX_MD_SIZE) outlen = self._backend._ffi.new("unsigned int *") res = self._backend._lib.Cryptography_HMAC_Final( self._ctx, buf, outlen @@ -601,7 +601,7 @@ class _HMACContext(object): assert res != 0 assert outlen[0] == self.algorithm.digest_size self._backend._lib.HMAC_CTX_cleanup(self._ctx) - return self._backend._ffi.buffer(buf)[:] + return self._backend._ffi.buffer(buf)[:outlen[0]] @utils.register_interface(interfaces.AsymmetricSignatureContext) |