1#
2# This file is part of pyasn1-modules software.
3#
4# Created by Russ Housley with assistance from asn1ate v.0.6.0.
5#
6# Copyright (c) 2019, Vigil Security, LLC
7# License: http://snmplabs.com/pyasn1/license.html
8#
9# Authority Clearance Constraints Certificate Extension
10#
11# ASN.1 source from:
12# https://www.rfc-editor.org/rfc/rfc5913.txt
13# https://www.rfc-editor.org/errata/eid5890
14#
15
16from pyasn1.type import constraint
17from pyasn1.type import univ
18
19from pyasn1_modules import rfc5280
20from pyasn1_modules import rfc5755
21
22MAX = float('inf')
23
24
25# Authority Clearance Constraints Certificate Extension
26
27id_pe_clearanceConstraints = univ.ObjectIdentifier('1.3.6.1.5.5.7.1.21')
28
29id_pe_authorityClearanceConstraints = id_pe_clearanceConstraints
30
31
32class AuthorityClearanceConstraints(univ.SequenceOf):
33    componentType = rfc5755.Clearance()
34    subtypeSpec=constraint.ValueSizeConstraint(1, MAX)
35
36
37# Map of Certificate Extension OIDs to Extensions added to the
38# ones that are in rfc5280.py
39
40_certificateExtensionsMapUpdate = {
41    id_pe_clearanceConstraints: AuthorityClearanceConstraints(),
42}
43
44rfc5280.certificateExtensionsMap.update(_certificateExtensionsMapUpdate)
45