aboutsummaryrefslogtreecommitdiffstats
path: root/src/cryptography/hazmat/backends/openssl/x509.py
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2015-12-20 23:42:32 -0600
committerPaul Kehrer <paul.l.kehrer@gmail.com>2015-12-20 23:43:19 -0600
commit54a837d25df0ba2fa2a15238da9553e9a359bc14 (patch)
tree45d9003c882ebcdf43b0485ec3d72025777f673d /src/cryptography/hazmat/backends/openssl/x509.py
parent394cca58a7dbd7e34d111f8c78a8f2dabda3a4b3 (diff)
downloadcryptography-54a837d25df0ba2fa2a15238da9553e9a359bc14.tar.gz
cryptography-54a837d25df0ba2fa2a15238da9553e9a359bc14.tar.bz2
cryptography-54a837d25df0ba2fa2a15238da9553e9a359bc14.zip
add a CRL public_bytes method
Diffstat (limited to 'src/cryptography/hazmat/backends/openssl/x509.py')
-rw-r--r--src/cryptography/hazmat/backends/openssl/x509.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/x509.py b/src/cryptography/hazmat/backends/openssl/x509.py
index f50a0d5d..b7a88a4a 100644
--- a/src/cryptography/hazmat/backends/openssl/x509.py
+++ b/src/cryptography/hazmat/backends/openssl/x509.py
@@ -833,6 +833,20 @@ class _CertificateRevocationList(object):
)
return self._backend._ffi.buffer(pp[0], res)[:]
+ def public_bytes(self, encoding):
+ bio = self._backend._create_mem_bio()
+ if encoding is serialization.Encoding.PEM:
+ res = self._backend._lib.PEM_write_bio_X509_CRL(
+ bio, self._x509_crl
+ )
+ elif encoding is serialization.Encoding.DER:
+ res = self._backend._lib.i2d_X509_CRL_bio(bio, self._x509_crl)
+ else:
+ raise TypeError("encoding must be an item from the Encoding enum")
+
+ self._backend.openssl_assert(res == 1)
+ return self._backend._read_mem_bio(bio)
+
def _revoked_certificates(self):
revoked = self._backend._lib.X509_CRL_get_REVOKED(self._x509_crl)
revoked_list = []