diff options
| author | Paul Kehrer <paul.l.kehrer@gmail.com> | 2020-08-14 23:34:04 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-15 00:34:04 -0400 |
| commit | 519cae6a2d0d7e0c3bf6ff542b716e4f753ca380 (patch) | |
| tree | 466c4213c9b0b2d31c7750eee1f4e0ba3f0dff10 /src/cryptography | |
| parent | 40bfc7f75b0a084ea10ac3d1866262e9d61b426e (diff) | |
| download | cryptography-519cae6a2d0d7e0c3bf6ff542b716e4f753ca380.tar.gz | |
x509 optional backend args (#5390)
Diffstat (limited to 'src/cryptography')
| -rw-r--r-- | src/cryptography/x509/base.py | 31 | ||||
| -rw-r--r-- | src/cryptography/x509/name.py | 4 |
2 files changed, 24 insertions, 11 deletions
diff --git a/src/cryptography/x509/base.py b/src/cryptography/x509/base.py index 102468a45..f3bc872b9 100644 --- a/src/cryptography/x509/base.py +++ b/src/cryptography/x509/base.py @@ -12,6 +12,7 @@ from enum import Enum import six from cryptography import utils +from cryptography.hazmat.backends import _get_backend from cryptography.hazmat.primitives.asymmetric import ( dsa, ec, @@ -66,27 +67,33 @@ class Version(Enum): v3 = 2 -def load_pem_x509_certificate(data, backend): +def load_pem_x509_certificate(data, backend=None): + backend = _get_backend(backend) return backend.load_pem_x509_certificate(data) -def load_der_x509_certificate(data, backend): +def load_der_x509_certificate(data, backend=None): + backend = _get_backend(backend) return backend.load_der_x509_certificate(data) -def load_pem_x509_csr(data, backend): +def load_pem_x509_csr(data, backend=None): + backend = _get_backend(backend) return backend.load_pem_x509_csr(data) -def load_der_x509_csr(data, backend): +def load_der_x509_csr(data, backend=None): + backend = _get_backend(backend) return backend.load_der_x509_csr(data) -def load_pem_x509_crl(data, backend): +def load_pem_x509_crl(data, backend=None): + backend = _get_backend(backend) return backend.load_pem_x509_crl(data) -def load_der_x509_crl(data, backend): +def load_der_x509_crl(data, backend=None): + backend = _get_backend(backend) return backend.load_der_x509_crl(data) @@ -468,10 +475,11 @@ class CertificateSigningRequestBuilder(object): self._attributes + [(oid, value)], ) - def sign(self, private_key, algorithm, backend): + def sign(self, private_key, algorithm, backend=None): """ Signs the request using the requestor's private key. """ + backend = _get_backend(backend) if self._subject_name is None: raise ValueError("A CertificateSigningRequest must have a subject") return backend.create_x509_csr(self, private_key, algorithm) @@ -672,10 +680,11 @@ class CertificateBuilder(object): self._extensions + [extension], ) - def sign(self, private_key, algorithm, backend): + def sign(self, private_key, algorithm, backend=None): """ Signs the certificate using the CA's private key. """ + backend = _get_backend(backend) if self._subject_name is None: raise ValueError("A certificate must have a subject name") @@ -801,7 +810,8 @@ class CertificateRevocationListBuilder(object): self._revoked_certificates + [revoked_certificate], ) - def sign(self, private_key, algorithm, backend): + def sign(self, private_key, algorithm, backend=None): + backend = _get_backend(backend) if self._issuer_name is None: raise ValueError("A CRL must have an issuer name") @@ -866,7 +876,8 @@ class RevokedCertificateBuilder(object): self._extensions + [extension], ) - def build(self, backend): + def build(self, backend=None): + backend = _get_backend(backend) if self._serial_number is None: raise ValueError("A revoked certificate must have a serial number") if self._revocation_date is None: diff --git a/src/cryptography/x509/name.py b/src/cryptography/x509/name.py index 6848b7a31..0be876a0e 100644 --- a/src/cryptography/x509/name.py +++ b/src/cryptography/x509/name.py @@ -9,6 +9,7 @@ from enum import Enum import six from cryptography import utils +from cryptography.hazmat.backends import _get_backend from cryptography.x509.oid import NameOID, ObjectIdentifier @@ -225,7 +226,8 @@ class Name(object): def rdns(self): return self._attributes - def public_bytes(self, backend): + def public_bytes(self, backend=None): + backend = _get_backend(backend) return backend.x509_name_bytes(self) def __eq__(self, other): |
