File: //snap/core18/2956/usr/lib/python3/dist-packages/cryptography/x509/__pycache__/name.cpython-36.pyc
3
�dZ� � @ s� d dl mZmZmZ d dlmZ d dlZd dlmZ d dl m
Z
mZ G dd� de�Ze
dd � eD ��Ze� ZG d
d� de�ZG dd
� d
e�ZG dd� de�ZdS )� )�absolute_import�division�print_function)�EnumN)�utils)�NameOID�ObjectIdentifierc @ s4 e Zd ZdZdZdZdZdZdZdZ dZ
d Zd
ZdS )� _ASN1Type� � � � � � � � � � N)
�__name__�
__module__�__qualname__�
UTF8StringZ
NumericString�PrintableStringZ T61StringZ IA5StringZUTCTimeZGeneralizedTimeZ
VisibleStringZUniversalStringZ BMPString� r r �8/usr/lib/python3/dist-packages/cryptography/x509/name.pyr s r c c s | ]}|j |fV qd S )N)�value)�.0�ir r r � <genexpr> s r c @ sL e Zd Zefdd�Zejd�Zejd�Zdd� Z dd� Z
d d
� Zdd� Zd
S )�
NameAttributec C s� t |t�std��t |tj�s&td��|tjks:|tjkrbt|j d��dkrTt
d��|tkrbtj
}t|�dkrvt
d��|tkr�tj}t |t�s�td��|| _|| _|| _d S ) Nz2oid argument must be an ObjectIdentifier instance.z#value argument must be a text type.�utf8� z/Country name must be a 2 character country coder zValue cannot be an empty stringz%_type must be from the _ASN1Type enum)�
isinstancer � TypeError�sixZ text_typer ZCOUNTRY_NAMEZJURISDICTION_COUNTRY_NAME�len�encode�
ValueError� _SENTINELr r r �_oid�_value�_type)�self�oidr r+ r r r �__init__! s,
zNameAttribute.__init__r) r* c C s&