Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
rfc4476.py94 linesDownload Raw Back to pyasn1_modules
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, LLC7# License: http://snmplabs.com/pyasn1/license.html8#9# Attribute Certificate Policies Extension10#11# ASN.1 source from:12# https://www.rfc-editor.org/rfc/rfc4476.txt13#14 15from pyasn1.type import char16from pyasn1.type import constraint17from pyasn1.type import namedtype18from pyasn1.type import univ19 20from pyasn1_modules import rfc528021 22MAX = float('inf')23 24 25# Imports from RFC 528026 27PolicyQualifierId = rfc5280.PolicyQualifierId28 29PolicyQualifierInfo = rfc5280.PolicyQualifierInfo30 31UserNotice = rfc5280.UserNotice32 33id_pkix = rfc5280.id_pkix34 35 36# Object Identifiers37 38id_pe = id_pkix + (1,)39 40id_pe_acPolicies = id_pe + (15,)41 42id_qt = id_pkix + (2,)43 44id_qt_acps = id_qt + (4,)45 46id_qt_acunotice = id_qt + (5,)47 48 49# Attribute Certificate Policies Extension50 51class ACUserNotice(UserNotice):52    pass53 54 55class ACPSuri(char.IA5String):56    pass57 58 59class AcPolicyId(univ.ObjectIdentifier):60    pass61 62 63class PolicyInformation(univ.Sequence):64    componentType = namedtype.NamedTypes(65        namedtype.NamedType('policyIdentifier', AcPolicyId()),66        namedtype.OptionalNamedType('policyQualifiers',67            univ.SequenceOf(componentType=PolicyQualifierInfo()).subtype(68                subtypeSpec=constraint.ValueSizeConstraint(1, MAX)))69    )70 71 72class AcPoliciesSyntax(univ.SequenceOf):73    componentType = PolicyInformation()74    subtypeSpec = constraint.ValueSizeConstraint(1, MAX)75 76 77# Update the policy qualifier map in rfc5280.py78 79_policyQualifierInfoMapUpdate = {80    id_qt_acps: ACPSuri(),81    id_qt_acunotice: UserNotice(),82}83 84rfc5280.policyQualifierInfoMap.update(_policyQualifierInfoMapUpdate)85 86 87# Update the certificate extension map in rfc5280.py88 89_certificateExtensionsMapUpdate = {90    id_pe_acPolicies: AcPoliciesSyntax(),91}92 93rfc5280.certificateExtensionsMap.update(_certificateExtensionsMapUpdate)94 
codekingpro/portable-devtools · Team Ai