a oe@sddlmZddlZddlZddlZddlmZddlmZddl m Z ej ej ej ejejfZGdddeZGdd d ejd ZGd d d eZGd ddeZGdddeZGdddeZGdddeZGdddeZGdddeZdS)) annotationsN) parseaddr)Name)ObjectIdentifierc@s eZdZdS)UnsupportedGeneralNameTypeN)__name__ __module__ __qualname__r r ?C:\Program Files\Certbot\pkgs\cryptography\x509\general_name.pyrsrc@s$eZdZeejddddZdS) GeneralNamez typing.AnyreturncCsdS)z0 Return the value of the object Nr selfr r r valueszGeneralName.valueN)rrr propertyabcabstractmethodrr r r r r sr ) metaclassc@sneZdZdddddZeddddZedddd d Zddd d Zd ddddZ ddddZ dS) RFC822NamestrNonerrcCsdt|tr6z|dWq>ty2tdYq>0ntdt|\}}|sR|sZtd||_dS)NasciizRFC822Name values should be passed as an A-label string. This means unicode characters should be encoded via a library like idna.value must be stringzInvalid rfc822name value) isinstancerencodeUnicodeEncodeError ValueError TypeErrorr_value)rrnameZaddressr r r __init__%s    zRFC822Name.__init__r cCs|jSNr!rr r r r:szRFC822Name.valuecCs||}||_|Sr$__new__r!clsrinstancer r r _init_without_validation>s z#RFC822Name._init_without_validationcCsd|jdS)Nzrrr r r __repr__DszRFC822Name.__repr__objectboolotherrcCst|tstS|j|jkSr$)rrNotImplementedrrr2r r r __eq__Gs zRFC822Name.__eq__intcCs t|jSr$hashrrr r r __hash__MszRFC822Name.__hash__N rrr r#rr classmethodr+r.r5r9r r r r r$src@sneZdZdddddZeddddZedddd d Zddd d Zd ddddZ ddddZ dS)DNSNamerrrcCsHt|tr6z|dWq>ty2tdYq>0ntd||_dS)Nrz~DNSName values should be passed as an A-label string. This means unicode characters should be encoded via a library like idna.rrrrrrr r!rrr r r r#Rs   zDNSName.__init__r cCs|jSr$r%rr r r rasz DNSName.valuecCs||}||_|Sr$r&r(r r r r+es z DNSName._init_without_validationcCsd|jdS)Nzty2tdYq>0ntd||_dS)NrzzURI values should be passed as an A-label string. This means unicode characters should be encoded via a library like idna.rr=r>r r r r#ys   z"UniformResourceIdentifier.__init__r cCs|jSr$r%rr r r rszUniformResourceIdentifier.valuecCs||}||_|Sr$r&r(r r r r+s z2UniformResourceIdentifier._init_without_validationcCsd|jdS)Nz!r r r r#s zDirectoryName.__init__r cCs|jSr$r%rr r r rszDirectoryName.valuercCsd|jdS)Nzr r r r#s zRegisteredID.__init__r cCs|jSr$r%rr r r rszRegisteredID.valuercCsd|jdS)Nzr r r r#s zIPAddress.__init__r cCs|jSr$r%rr r r rszIPAddress.valuebytescCs4t|jtjtjfr|jjS|jjj|jjjSdSr$)rrrErFrGZpackedZnetwork_addressZnetmaskrr r r _packeds zIPAddress._packedrcCsd|jdS)Nz)formatrMrrr r r r.szOtherName.__repr__r/r0r1cCs&t|tstS|j|jko$|j|jkSr$)rrLr3rMrr4r r r r5s zOtherName.__eq__r6cCst|j|jfSr$)r8rMrrr r r r9szOtherName.__hash__N) rrr r#rrMrr.r5r9r r r r rLs rL)Z __future__rrrEtypingZ email.utilsrZcryptography.x509.namerZcryptography.x509.oidrUnionrFrGrHrIrD ExceptionrABCMetar rr<r?r@rBrCrLr r r r s,     -''.