Current File : //usr/lib64/python3.9/site-packages/cryptography/x509/__pycache__/general_name.cpython-39.pyc
a

�a!�@s�ddlZddlZddlZddlmZddlmZddlmZej	ej
ejejej
fZGdd�de�ZGdd�dejd	�ZGd
d�de�ZGdd
�d
e�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZdS)�N)�	parseaddr)�Name)�ObjectIdentifierc@seZdZdS)�UnsupportedGeneralNameTypeN)�__name__�
__module__�__qualname__�r	r	�D/usr/lib64/python3.9/site-packages/cryptography/x509/general_name.pyrsrc@s"eZdZejejd�dd��ZdS)�GeneralName��returncCsdS)z0
        Return the value of the object
        Nr	��selfr	r	r
�valueszGeneralName.valueN)rrr�abc�abstractproperty�typing�Anyrr	r	r	r
rsr)�	metaclassc@s~eZdZedd�dd�Zeed�dd��Zeedd�dd	��Zed�d
d�Z	e
ed�d
d�Ze
ed�dd�Z
ed�dd�ZdS)�
RFC822NameN�rr
cCsdt|t�r6z|�d�Wq>ty2td��Yq>0ntd��t|�\}}|sR|sZtd��||_dS)N�asciiz�RFC822Name 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)�
isinstance�str�encode�UnicodeEncodeError�
ValueError�	TypeErrorr�_value)rr�nameZaddressr	r	r
�__init__$s
�zRFC822Name.__init__rcCs|jS�N�r rr	r	r
r9szRFC822Name.valuecCs|�|�}||_|Sr#��__new__r ��clsr�instancer	r	r
�_init_without_validation=s
z#RFC822Name._init_without_validationcCsd�|j�S)Nz<RFC822Name(value={0!r})>��formatrrr	r	r
�__repr__CszRFC822Name.__repr__��otherr
cCst|t�stS|j|jkSr#)rr�NotImplementedr�rr/r	r	r
�__eq__Fs
zRFC822Name.__eq__cCs
||kSr#r	r1r	r	r
�__ne__LszRFC822Name.__ne__cCs
t|j�Sr#��hashrrr	r	r
�__hash__OszRFC822Name.__hash__�rrrrr"�propertyr�classmethodr*r-�object�boolr2r3�intr6r	r	r	r
r#src@s~eZdZedd�dd�Zeed�dd��Zeedd�dd	��Zed�d
d�Z	e
ed�d
d�Ze
ed�dd�Z
ed�dd�ZdS)�DNSNameNrcCsHt|t�r6z|�d�Wq>ty2td��Yq>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.r�rrrrrrr �rrr	r	r
r"Ts
�zDNSName.__init__rcCs|jSr#r$rr	r	r
rcsz
DNSName.valuecCs|�|�}||_|Sr#r%r'r	r	r
r*gs
z DNSName._init_without_validationcCsd�|j�S)Nz<DNSName(value={0!r})>r+rr	r	r
r-mszDNSName.__repr__r.cCst|t�stS|j|jkSr#)rr=r0rr1r	r	r
r2ps
zDNSName.__eq__cCs
||kSr#r	r1r	r	r
r3vszDNSName.__ne__cCs
t|j�Sr#r4rr	r	r
r6yszDNSName.__hash__r7r	r	r	r
r=Ssr=c@s~eZdZedd�dd�Zeed�dd��Zeedd�dd	��Zed�d
d�Z	e
ed�d
d�Ze
ed�dd�Z
ed�dd�ZdS)�UniformResourceIdentifierNrcCsHt|t�r6z|�d�Wq>ty2td��Yq>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"~s
�z"UniformResourceIdentifier.__init__rcCs|jSr#r$rr	r	r
r�szUniformResourceIdentifier.valuecCs|�|�}||_|Sr#r%r'r	r	r
r*�s
z2UniformResourceIdentifier._init_without_validationcCsd�|j�S)Nz(<UniformResourceIdentifier(value={0!r})>r+rr	r	r
r-�sz"UniformResourceIdentifier.__repr__r.cCst|t�stS|j|jkSr#)rr@r0rr1r	r	r
r2�s
z UniformResourceIdentifier.__eq__cCs
||kSr#r	r1r	r	r
r3�sz UniformResourceIdentifier.__ne__cCs
t|j�Sr#r4rr	r	r
r6�sz"UniformResourceIdentifier.__hash__r7r	r	r	r
r@}s�r@c@sjeZdZedd�dd�Zeed�dd��Zed�dd	�Ze	e
d
�dd�Ze	e
d
�d
d�Ze
d�dd�ZdS)�
DirectoryNameNrcCst|t�std��||_dS)Nzvalue must be a Name)rrrr r?r	r	r
r"�s
zDirectoryName.__init__rcCs|jSr#r$rr	r	r
r�szDirectoryName.valuecCsd�|j�S)Nz<DirectoryName(value={})>r+rr	r	r
r-�szDirectoryName.__repr__r.cCst|t�stS|j|jkSr#)rrAr0rr1r	r	r
r2�s
zDirectoryName.__eq__cCs
||kSr#r	r1r	r	r
r3�szDirectoryName.__ne__cCs
t|j�Sr#r4rr	r	r
r6�szDirectoryName.__hash__)rrrrr"r8rrr-r:r;r2r3r<r6r	r	r	r
rA�srAc@sjeZdZedd�dd�Zeed�dd��Zed�dd	�Ze	e
d
�dd�Ze	e
d
�d
d�Ze
d�dd�ZdS)�RegisteredIDNrcCst|t�std��||_dS)Nz!value must be an ObjectIdentifier)rrrr r?r	r	r
r"�s
zRegisteredID.__init__rcCs|jSr#r$rr	r	r
r�szRegisteredID.valuecCsd�|j�S)Nz<RegisteredID(value={})>r+rr	r	r
r-�szRegisteredID.__repr__r.cCst|t�stS|j|jkSr#)rrBr0rr1r	r	r
r2�s
zRegisteredID.__eq__cCs
||kSr#r	r1r	r	r
r3�szRegisteredID.__ne__cCs
t|j�Sr#r4rr	r	r
r6�szRegisteredID.__hash__)rrrrr"r8rrr-r:r;r2r3r<r6r	r	r	r
rB�srBc@sxeZdZedd�dd�Zeed�dd��Zed�dd	�Ze	d�d
d�Z
eed�d
d�Z
eed�dd�Zed�dd�ZdS)�	IPAddressNrcCs,t|tjtjtjtjf�s"td��||_dS)Nzzvalue must be an instance of ipaddress.IPv4Address, ipaddress.IPv6Address, ipaddress.IPv4Network, or ipaddress.IPv6Network)r�	ipaddress�IPv4Address�IPv6Address�IPv4Network�IPv6Networkrr r?r	r	r
r"�s��	�zIPAddress.__init__rcCs|jSr#r$rr	r	r
r�szIPAddress.valuecCs4t|jtjtjf�r|jjS|jjj|jjjSdSr#)rrrDrErFZpackedZnetwork_addressZnetmaskrr	r	r
�_packed�s��zIPAddress._packedcCsd�|j�S)Nz<IPAddress(value={})>r+rr	r	r
r-szIPAddress.__repr__r.cCst|t�stS|j|jkSr#)rrCr0rr1r	r	r
r2s
zIPAddress.__eq__cCs
||kSr#r	r1r	r	r
r3	szIPAddress.__ne__cCs
t|j�Sr#r4rr	r	r
r6szIPAddress.__hash__)rrr�_IPADDRESS_TYPESr"r8r�bytesrIrr-r:r;r2r3r<r6r	r	r	r
rC�s
rCc@s~eZdZeedd�dd�Zeed�dd��Zeed�dd	��Ze	d�d
d�Z
eed�d
d�Z
eed�dd�Zed�dd�ZdS)�	OtherNameN)�type_idrr
cCs4t|t�std��t|t�s$td��||_||_dS)Nz#type_id must be an ObjectIdentifierzvalue must be a binary string)rrrrK�_type_idr )rrMrr	r	r
r"s

zOtherName.__init__rcCs|jSr#)rNrr	r	r
rMszOtherName.type_idcCs|jSr#r$rr	r	r
rszOtherName.valuecCsd�|j|j�S)Nz#<OtherName(type_id={}, value={!r})>)r,rMrrr	r	r
r-"s�zOtherName.__repr__r.cCs&t|t�stS|j|jko$|j|jkSr#)rrLr0rMrr1r	r	r
r2's
zOtherName.__eq__cCs
||kSr#r	r1r	r	r
r3-szOtherName.__ne__cCst|j|jf�Sr#)r5rMrrr	r	r
r60szOtherName.__hash__)rrrrrKr"r8rMrrr-r:r;r2r3r<r6r	r	r	r
rLs	rL)rrDrZemail.utilsrZcryptography.x509.namerZcryptography.x509.oidr�UnionrErFrGrHrJ�	Exceptionr�ABCMetarrr=r@rArBrCrLr	r	r	r
�<module>s*��0*,1