| |
@@ -0,0 +1,49 @@
|
| |
+ From 7b5cecf595cd1f4d0fb5b73e97f5fe2e00c4e255 Mon Sep 17 00:00:00 2001
|
| |
+ From: Jeremy Cline <jeremy@jcline.org>
|
| |
+ Date: Thu, 7 Sep 2017 20:11:08 -0400
|
| |
+ Subject: [PATCH] Provide a destructor for the CRL object (#690)
|
| |
+
|
| |
+ This frees the memory allocated for the CRL object. Prior to this
|
| |
+ commit, the following script would leak memory:
|
| |
+
|
| |
+ ```
|
| |
+ from OpenSSL.crypto import load_crl, FILETYPE_PEM
|
| |
+
|
| |
+ crl = """
|
| |
+ -----BEGIN X509 CRL-----
|
| |
+ MIIBfDCB5jANBgkqhkiG9w0BAQsFADCBoDELMAkGA1UEBhMCVVMxCzAJBgNVBAgT
|
| |
+ Ak5DMRAwDgYDVQQHEwdSYWxlaWdoMRcwFQYDVQQKEw5GZWRvcmEgUHJvamVjdDEP
|
| |
+ MA0GA1UECxMGZmVkbXNnMQ8wDQYDVQQDEwZmZWRtc2cxDzANBgNVBCkTBmZlZG1z
|
| |
+ ZzEmMCQGCSqGSIb3DQEJARYXYWRtaW5AZmVkb3JhcHJvamVjdC5vcmcXDTE3MDYx
|
| |
+ NTIxMDMwOFoXDTM3MDYxMDIxMDMwOFowFDASAgECFw0xMjA3MTUyMTE4NTJaMA0G
|
| |
+ CSqGSIb3DQEBCwUAA4GBAGOBuDxmRFNcYP71LBsCOfFzKij00qpxM01d5/G6+0kM
|
| |
+ WJT8oTajMQoY6oISvQDq6TkwEoKc1yl6Ld1/XTtCNOhbybzRBAVf/Lxi/nRPP1JO
|
| |
+ qOdZs5jMLLQq1mRJz+MgKHHTDlnvpbjHMuyTss1RblFDr4iZPHMcBNKPGIj3pmpA
|
| |
+ -----END X509 CRL-----
|
| |
+ """
|
| |
+
|
| |
+ for _ in range(0, 1000000):
|
| |
+ load_crl(FILETYPE_PEM, crl)
|
| |
+ ```
|
| |
+
|
| |
+ Signed-off-by: Jeremy Cline <jeremy@jcline.org>
|
| |
+ ---
|
| |
+ src/OpenSSL/crypto.py | 2 +-
|
| |
+ 1 file changed, 1 insertion(+), 1 deletion(-)
|
| |
+
|
| |
+ diff --git a/src/OpenSSL/crypto.py b/src/OpenSSL/crypto.py
|
| |
+ index 52fcdaf..85c60b7 100644
|
| |
+ --- a/src/OpenSSL/crypto.py
|
| |
+ +++ b/src/OpenSSL/crypto.py
|
| |
+ @@ -2758,7 +2758,7 @@ def load_crl(type, buffer):
|
| |
+ _raise_current_error()
|
| |
+
|
| |
+ result = CRL.__new__(CRL)
|
| |
+ - result._crl = crl
|
| |
+ + result._crl = _ffi.gc(crl, _lib.X509_CRL_free)
|
| |
+ return result
|
| |
+
|
| |
+
|
| |
+ --
|
| |
+ 2.13.5
|
| |
+
|
| |
Koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=21726239
Signed-off-by: Jeremy Cline jeremy@jcline.org