12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #
- # This file is part of pyasn1-modules software.
- #
- # Created by Russ Housley.
- #
- # Copyright (c) 2019, Vigil Security, LLC
- # License: http://snmplabs.com/pyasn1/license.html
- #
- # Expression of Service Names in X.509 Certificates
- #
- # ASN.1 source from:
- # https://www.rfc-editor.org/rfc/rfc4985.txt
- #
- from pyasn1.type import char
- from pyasn1.type import constraint
- from pyasn1.type import univ
- from pyasn1_modules import rfc5280
- MAX = float('inf')
- # As specified in Appendix A.2 of RFC 4985
- id_pkix = rfc5280.id_pkix
- id_on = id_pkix + (8, )
- id_on_dnsSRV = id_on + (7, )
- class SRVName(char.IA5String):
- subtypeSpec = constraint.ValueSizeConstraint(1, MAX)
- srvName = rfc5280.AnotherName()
- srvName['type-id'] = id_on_dnsSRV
- srvName['value'] = SRVName()
- # Map of Other Name OIDs to Other Name is added to the
- # ones that are in rfc5280.py
- _anotherNameMapUpdate = {
- id_on_dnsSRV: SRVName(),
- }
- rfc5280.anotherNameMap.update(_anotherNameMapUpdate)
|