3
l_
@ sZ d dl mZmZmZ d dlZd dlZd dlmZ d dlZd dl m
Z
d dlmZ d dl
mZ ddd d
ddd
ddd ZG dd deZejejG dd deZe
jeG dd deZe
jeG dd deZe
jeG dd deZe
jeG dd deZe
jeG dd deZe
jeG dd d eZe
jeG d!d" d"eZdS )# )absolute_importdivisionprint_functionN) parseaddr)utils)Name)ObjectIdentifierZ otherNameZ
rfc822NameZdNSNameZx400AddressZ
directoryNameZediPartyNameZuniformResourceIdentifierZ iPAddressZregisteredID) r c s e Zd Z fddZ ZS )UnsupportedGeneralNameTypec s t t| j| || _d S )N)superr __init__type)selfmsgr ) __class__ $/usr/lib64/python3.6/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 abcabstractpropertyr r r r r r % s r c @ sJ e Zd Zdd ZejdZedd Zdd Z dd Z
d
d Zdd
ZdS )
RFC822Namec C sj t |tjr:y|jd W qB tk
r6 tdY qBX ntdt|\}}|sX| r`td|| _d S )NasciizRFC822Name values should be passed as an A-label string. This means unicode characters should be encoded via a library like idna.zvalue must be stringzInvalid rfc822name value)
isinstancesix text_typeencodeUnicodeEncodeError
ValueError TypeErrorr _value)r r nameZaddressr r r r 0 s
zRFC822Name.__init__r+ c C s | j | }||_|S )N)__new__r+ )clsr instancer r r _init_without_validationG s
z#RFC822Name._init_without_validationc C s dj | jS )Nz