%PDF- %PDF-
Direktori : /snap/core20/current/lib/python3/dist-packages/cryptography/x509/__pycache__/ |
Current File : //snap/core20/current/lib/python3/dist-packages/cryptography/x509/__pycache__/name.cpython-38.pyc |
U �e�]� � @ s d dl mZmZmZ d dlmZ d dlZd dlmZ d dl m Z mZ G dd� de�Ze dd � eD ��Ze� Ze jeje jeje jeje jeje jeje jejiZe jd e jde jde jd e jde jde jde jde j di Z!dd� Z"G dd� de�Z#G dd� de�Z$G dd� de�Z%dS )� )�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 T61String� 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! ZCN�LZST�OZOU�CZSTREETZDCZUIDc C s� | � dd�} | � dd�} | � dd�} | � dd�} | � d d �} | � dd�} | � d d�} | � dd�} | d dkrtd| } | d dkr�| dd� d } | S )z>Escape special characters in RFC4514 Distinguished Name value.�\z\\�"z\"�+z\+�,z\,�;z\;�<z\<�>z\>� z\00r )�#� ���r. Nz\ )�replace)�valr r r �_escape_dn_value6 s r2 c @ sT e Zd Zefdd�Ze�d�Ze�d�Zdd� Z dd� Z d d � Zdd� Zd d� Z dS )� NameAttributec C s� t |t�std��t |tj�s&td��|tjks:|tjkrTt|� d��dkrTt d��t|�dkrht d��|tkr~t� |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 �COUNTRY_NAME�JURISDICTION_COUNTRY_NAME�len�encode� ValueError� _SENTINEL�_NAMEOID_DEFAULT_TYPE�getr r �_oid�_value�_type)�self�oidr rC r r r �__init__L s2 ����� zNameAttribute.__init__rA rB c C s$ t �| j| jj�}d|t| j�f S )z� Format as RFC4514 Distinguished Name string. Use short attribute name if available, otherwise fall back to OID dotted string. z%s=%s)�_NAMEOID_TO_NAMEr@ rE Z dotted_stringr2 r )rD �keyr r r �rfc4514_stringv s zNameAttribute.rfc4514_stringc C s&