File: //lib/python3/dist-packages/cryptography/x509/__pycache__/general_name.cpython-38.pyc
U
�)%a� �
@ s� d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dl m
Z
dddd d
ddd
dd� ZG dd� de�Z
G dd� de jd�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd � d e�ZG d!d"� d"e�ZdS )#� N)� parseaddr)�utils)�Name)�ObjectIdentifierZ otherNameZ
rfc822NameZdNSNameZx400AddressZ
directoryNameZediPartyNameZuniformResourceIdentifierZ iPAddressZregisteredID) r � � � � � � � � c s e Zd Z� fdd�Z� ZS )�UnsupportedGeneralNameTypec s t t| ��|� || _d S �N)�superr �__init__�type)�self�msgr �� __class__� �@/usr/lib/python3/dist-packages/cryptography/x509/general_name.pyr s z#UnsupportedGeneralNameType.__init__)�__name__�
__module__�__qualname__r �
__classcell__r r r r r s r c @ s e Zd Zejdd� �ZdS )�GeneralNamec C s dS )z0
Return the value of the object
Nr �r r r r �value$ s zGeneralName.valueN)r r r �abc�abstractpropertyr r r r r r # s r )� metaclassc @ sl e Zd Zed�dd�Ze�d�Zedd� �Z ed�dd �Z
eed
�dd�Z
eed
�d
d�Zed�dd�ZdS )�
RFC822Name�r c C sf t |t�r8z|�d� W q@ tk
r4 td��Y q@X ntd��t|�\}}|sT|s\td��|| _d S )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)r r �name�addressr r r r , s
�zRFC822Name.__init__r- c C s | � | �}||_|S r ��__new__r- ��clsr �instancer r r �_init_without_validationC s
z#RFC822Name._init_without_validation��returnc C s d� | j�S )Nz<RFC822Name(value={0!r})>��formatr r r r r �__repr__I s zRFC822Name.__repr__��otherr7 c C s t |t�stS | j|jkS r )r'