aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2015-06-28 22:17:14 -0400
committerAlex Gaynor <alex.gaynor@gmail.com>2015-06-28 22:17:14 -0400
commita0a22d66f2e7433411f9dbd5c70a9f8409c4c377 (patch)
treef6b756927e354ded839abf467b634bf8926dae0b
parent169c257a31875596c303bcb2feaafc585ce1f85f (diff)
parent7f6b118ad2ecdd823609c0f11c7e09e88d3e0f6e (diff)
downloadcryptography-a0a22d66f2e7433411f9dbd5c70a9f8409c4c377.tar.gz
cryptography-a0a22d66f2e7433411f9dbd5c70a9f8409c4c377.tar.bz2
cryptography-a0a22d66f2e7433411f9dbd5c70a9f8409c4c377.zip
Merge pull request #2087 from reaperhulk/fix-2082
fix a memory leak in basic constraints encoding
-rw-r--r--src/cryptography/hazmat/backends/openssl/backend.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py
index 18faecb3..88a17de0 100644
--- a/src/cryptography/hazmat/backends/openssl/backend.py
+++ b/src/cryptography/hazmat/backends/openssl/backend.py
@@ -119,6 +119,9 @@ def _encode_basic_constraints(backend, basic_constraints, critical):
obj = _txt2obj(backend, x509.OID_BASIC_CONSTRAINTS.dotted_string)
assert obj is not None
constraints = backend._lib.BASIC_CONSTRAINTS_new()
+ constraints = backend._ffi.gc(
+ constraints, backend._lib.BASIC_CONSTRAINTS_free
+ )
constraints.ca = 255 if basic_constraints.ca else 0
if basic_constraints.ca:
constraints.pathlen = _encode_asn1_int(