aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2015-07-14 07:23:06 -0400
committerAlex Gaynor <alex.gaynor@gmail.com>2015-07-14 07:23:06 -0400
commitb5458f33b0421d5a67a349b9570ad628185fe632 (patch)
tree2d91b47ad3bc57a91e644e296696f36e6547e21e /src
parent677c3d55cdbb332723fd1e0e5fe8829465d90c50 (diff)
parent1b830538ff74d5425f26fcbce55b2ffb5212e76c (diff)
downloadcryptography-b5458f33b0421d5a67a349b9570ad628185fe632.tar.gz
cryptography-b5458f33b0421d5a67a349b9570ad628185fe632.tar.bz2
cryptography-b5458f33b0421d5a67a349b9570ad628185fe632.zip
Merge pull request #2150 from reaperhulk/encode-uri
support URI general name encoding
Diffstat (limited to 'src')
-rw-r--r--src/cryptography/hazmat/backends/openssl/backend.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/cryptography/hazmat/backends/openssl/backend.py b/src/cryptography/hazmat/backends/openssl/backend.py
index bba407db..7ccb39a4 100644
--- a/src/cryptography/hazmat/backends/openssl/backend.py
+++ b/src/cryptography/hazmat/backends/openssl/backend.py
@@ -230,9 +230,17 @@ def _encode_subject_alt_name(backend, san):
)
gn.type = backend._lib.GEN_EMAIL
gn.d.rfc822Name = asn1_str
+ elif isinstance(alt_name, x509.UniformResourceIdentifier):
+ gn = backend._lib.GENERAL_NAME_new()
+ assert gn != backend._ffi.NULL
+ asn1_str = _encode_asn1_str(
+ backend, alt_name._encoded, len(alt_name._encoded)
+ )
+ gn.type = backend._lib.GEN_URI
+ gn.d.uniformResourceIdentifier = asn1_str
else:
- raise NotImplementedError(
- "Only DNSName and RegisteredID supported right now"
+ raise ValueError(
+ "{0} is an unknown GeneralName type".format(alt_name)
)
res = backend._lib.sk_GENERAL_NAME_push(general_names, gn)