aboutsummaryrefslogtreecommitdiff
path: root/pyasn1_modules/rfc5913.py
diff options
context:
space:
mode:
authorRuss Housley <housley@vigilsec.com>2019-11-10 03:39:55 -0500
committerIlya Etingof <etingof@gmail.com>2019-11-10 09:39:55 +0100
commit5032fad108757efdf3f646cee1fe9c94e09b5004 (patch)
treefd95658617652f7bece93d0beb7b939e3a5101b6 /pyasn1_modules/rfc5913.py
parent745eed006e93ae89dc0e6e5c366160d6239490e9 (diff)
downloadpyasn1-modules-5032fad108757efdf3f646cee1fe9c94e09b5004.tar.gz
Add support for RFC 3114, RFC 5755, RFC 5913, and RFC 5917 (#103)
Adds support for RFC 3114, RFC 5755, RFC 5913, and RFC 5917
Diffstat (limited to 'pyasn1_modules/rfc5913.py')
-rw-r--r--pyasn1_modules/rfc5913.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/pyasn1_modules/rfc5913.py b/pyasn1_modules/rfc5913.py
new file mode 100644
index 0000000..0bd0653
--- /dev/null
+++ b/pyasn1_modules/rfc5913.py
@@ -0,0 +1,44 @@
+#
+# This file is part of pyasn1-modules software.
+#
+# Created by Russ Housley with assistance from asn1ate v.0.6.0.
+#
+# Copyright (c) 2019, Vigil Security, LLC
+# License: http://snmplabs.com/pyasn1/license.html
+#
+# Authority Clearance Constraints Certificate Extension
+#
+# ASN.1 source from:
+# https://www.rfc-editor.org/rfc/rfc5913.txt
+# https://www.rfc-editor.org/errata/eid5890
+#
+
+from pyasn1.type import constraint
+from pyasn1.type import univ
+
+from pyasn1_modules import rfc5280
+from pyasn1_modules import rfc5755
+
+MAX = float('inf')
+
+
+# Authority Clearance Constraints Certificate Extension
+
+id_pe_clearanceConstraints = univ.ObjectIdentifier('1.3.6.1.5.5.7.1.21')
+
+id_pe_authorityClearanceConstraints = id_pe_clearanceConstraints
+
+
+class AuthorityClearanceConstraints(univ.SequenceOf):
+ componentType = rfc5755.Clearance()
+ subtypeSpec=constraint.ValueSizeConstraint(1, MAX)
+
+
+# Map of Certificate Extension OIDs to Extensions added to the
+# ones that are in rfc5280.py
+
+_certificateExtensionsMapUpdate = {
+ id_pe_clearanceConstraints: AuthorityClearanceConstraints(),
+}
+
+rfc5280.certificateExtensionsMap.update(_certificateExtensionsMapUpdate)