rfc3770.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  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. # Certificate Extensions and Attributes Supporting Authentication
  10. # in PPP and Wireless LAN Networks
  11. #
  12. # ASN.1 source from:
  13. # https://www.rfc-editor.org/rfc/rfc3770.txt
  14. # https://www.rfc-editor.org/errata/eid234
  15. #
  16. from pyasn1.type import constraint
  17. from pyasn1.type import univ
  18. from pyasn1_modules import rfc5280
  19. MAX = float('inf')
  20. # Extended Key Usage Values
  21. id_kp_eapOverLAN = univ.ObjectIdentifier('1.3.6.1.5.5.7.3.14')
  22. id_kp_eapOverPPP = univ.ObjectIdentifier('1.3.6.1.5.5.7.3.13')
  23. # Wireless LAN SSID Extension
  24. id_pe_wlanSSID = univ.ObjectIdentifier('1.3.6.1.5.5.7.1.13')
  25. class SSID(univ.OctetString):
  26. pass
  27. SSID.subtypeSpec = constraint.ValueSizeConstraint(1, 32)
  28. class SSIDList(univ.SequenceOf):
  29. pass
  30. SSIDList.componentType = SSID()
  31. SSIDList.subtypeSpec=constraint.ValueSizeConstraint(1, MAX)
  32. # Wireless LAN SSID Attribute Certificate Attribute
  33. # Uses same syntax as the certificate extension: SSIDList
  34. # Correction for https://www.rfc-editor.org/errata/eid234
  35. id_aca_wlanSSID = univ.ObjectIdentifier('1.3.6.1.5.5.7.10.7')
  36. # Map of Certificate Extension OIDs to Extensions
  37. # To be added to the ones that are in rfc5280.py
  38. _certificateExtensionsMap = {
  39. id_pe_wlanSSID: SSIDList(),
  40. }
  41. rfc5280.certificateExtensionsMap.update(_certificateExtensionsMap)
  42. # Map of AttributeType OIDs to AttributeValue added to the
  43. # ones that are in rfc5280.py
  44. _certificateAttributesMapUpdate = {
  45. id_aca_wlanSSID: SSIDList(),
  46. }
  47. rfc5280.certificateAttributesMap.update(_certificateAttributesMapUpdate)