%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/core/17212/usr/lib/python3/dist-packages/pyasn1/codec/ber/__pycache__/
Upload File :
Create Path :
Current File : //snap/core/17212/usr/lib/python3/dist-packages/pyasn1/codec/ber/__pycache__/decoder.cpython-35.pyc



�<Uz��2@sNddlmZmZmZmZmZddlmZddlm	Z	m
Z
ddlmZm
Z
Gdd�d�ZGdd�de�ZGd	d
�d
e�ZGdd�de�Ze�ZGd
d�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd �d e�ZGd!d"�d"e�ZGd#d$�d$e�ZGd%d&�d&e�ZGd'd(�d(e�Z Gd)d*�d*e�Z!Gd+d,�d,e�Z"Gd-d.�d.e�Z#Gd/d0�d0e�Z$Gd1d2�d2e�Z%Gd3d4�d4e�Z&Gd5d6�d6e�Z'Gd7d8�d8e�Z(Gd9d:�d:e�Z)Gd;d<�d<e�Z*Gd=d>�d>e�Z+Gd?d@�d@e�Z,GdAdB�dBe�Z-ej.j/e�ej0j/e�ej1j/e�ej2j/e�ej3j/e�ej4j/e�ej5j/e�ej6j/e�ej7j/e�ej8j/e�ej9j/e�ej:j/e �ej;j/e!�ej<j/e"�ej=j/e#�ej>j/e$�ej?j/e%�ej@j/e&�ejAj/e'�ejBj/e(�ejCj/e)�ejDj/e*�ejEj/e+�ejFj/e,�ejGj/e-�iZHej8jIe�ejJjIe�ej7jIe�ejKjIe�ej9jIe�ejLjIe�iZMdCdD�eNdE�D�\
ZOZPZQZRZSZTZUZVZWZXGdFdG�dG�ZYeYeHeM�ZZdHS)I�)�tag�univ�char�useful�tagmap)�eoo)�oct2int�isOctetsType)�debug�errorc@s.eZdZdZdd�Zdd�ZdS)�AbstractDecoderNc		Cstjd|f��dS)NzDecoder not implemented for %s)r�PyAsn1Error)	�self�
fullSubstrate�	substrate�asn1Spec�tagSet�length�state�	decodeFun�substrateFun�r�:/usr/lib/python3/dist-packages/pyasn1/codec/ber/decoder.py�valueDecoder	szAbstractDecoder.valueDecoderc		Cstjd|f��dS)Nz5Indefinite length mode decoder not implemented for %s)rr
)	rrrrrrrrrrrr�indefLenValueDecoder
sz$AbstractDecoder.indefLenValueDecoder)�__name__�
__module__�__qualname__�protoComponentrrrrrrrsrc@s+eZdZejfZddd�ZdS)�AbstractSimpleDecoderNcCs}|dd|jkr=tjd|d|jj�f��|dkr\|jj||�S|dkrl|S|j|�SdS)Nr�zInvalid tag format %s for %s)�
tagFormatsrr
r�prettyPrintType�clone)rrr�valuerrr�_createComponents&z&AbstractSimpleDecoder._createComponent)rrrr�tagFormatSimpler!r%rrrrrsrc@s+eZdZejfZddd�ZdS)�AbstractConstructedDecoderNcCsg|dd|jkr=tjd|d|jj�f��|dkrY|jj|�S|j�SdS)Nrr zInvalid tag format %s for %s)r!rr
rr"r#)rrrr$rrrr%s
&z+AbstractConstructedDecoder._createComponent)rrrr�tagFormatConstructedr!r%rrrrr'sr'c@sCeZdZejd�ZejfZdd�Z	dd�Z
dS)�ExplicitTagDecoder�c	
Csk|r%||j||d�||�S|d|�||d�}	}
||	|||�\}}||
fS)Nr*)r%)
rrrrrrrrr�head�tailr$�_rrrr*s
!zExplicitTagDecoder.valueDecoderc	Cs�|r%||j||d�||�S|||||�\}	}||dd�\}
}tjj|
�r�|
tjkr�|	|fStjd��dS)Nr*�allowEooTz Missing end-of-octets terminator)r%r�endOfOctets�isSameTypeWithrr
)rrrrrrrrrr$�
terminatorrrrr5s

z'ExplicitTagDecoder.indefLenValueDecoderN)rrrr�Anyrrr(r!rrrrrrr)'sr)c@s�eZdZejd�Zddddddddd	d
ddd
ddddddddddddddd dd!iZdd�ZdS)"�IntegerDecoderr��r ���������������	�	�ÿ�þ�ý�ü�ûc	Cs�|d|�||d�}	}
|	s@|j||d�|
fS|	|jkr_|j|	}nNt|	d�}|d@r�d}nd}x"|	D]}
|d>t|
�B}q�W|j|||�|
fS)Nr�r rC���)r%�precomputedValuesr)rrrrrrrrrr+r,r$�
firstOctetZoctetrrrrZs!
	
zIntegerDecoder.valueDecoderNrL������������)rrrr�IntegerrrMrrrrrr3Fs"r3c@s.eZdZejd�Zddd�ZdS)�BooleanDecoderrNcCs"tj||||rdpd�S)Nr r)r3r%)rrrr$rrrr%mszBooleanDecoder._createComponent)rrrr�Booleanrr%rrrrrTksrTc@sIeZdZejf�ZejejfZ	dd�Z
dd�ZdS)�BitStringDecoderc	Cs�|d|�||d�}	}
|ddtjkr<|	sMtjd��t|	d�}|dkr|tjd|��|	dd�}	d}}
t|	�d}g}xt|
|kr"|
|kr�|}d}t|	|
�}x/||kr|j||?d@�|d}q�W|
d}
q�W|j|||�|
fS|j||f�}|rg||||�Sx,|	r�||	|j�\}}	||}qjW||
fS)Nrr zEmpty substraterAzTrailing bits overflow %s)	rr&rr
r�len�appendr%r)rrrrrrrrrr+r,ZtrailingBitsZlsb�p�l�b�j�o�r�	componentrrrrss:!

	zBitStringDecoder.valueDecoderc	Cs�|j||d�}	|r+||	||�Sxc|r�|||jdd�\}
}tjj|
�rt|
tjkrtP|	|
}	q.Wtjd��|	|fS)Nr*r.Tz!No EOO seen before substrate ends)r%rrr/r0r�SubstrateUnderrunError)rrrrrrrrrr^r_rrrr�s		z%BitStringDecoder.indefLenValueDecoderN)rrrr�	BitStringrrr&r(r!rrrrrrrVpsrVc@sIeZdZejd�ZejejfZ	dd�Z
dd�ZdS)�OctetStringDecoderr*c	
Cs�|d|�||d�}	}
|ddtjkrQ|j|||	�|
fS|j||d�}|r|||||�Sx,|	r�||	|j�\}}	||}qW||
fS)Nrr r*)rr&r%r)
rrrrrrrrrr+r,r^r_rrrr�s!	zOctetStringDecoder.valueDecoderc	Cs�|j||d�}	|r+||	||�Sxc|r�|||jdd�\}
}tjj|
�rt|
tjkrtP|	|
}	q.Wtjd��|	|fS)Nr*r.Tz!No EOO seen before substrate ends)r%rrr/r0rr`)rrrrrrrrrr^r_rrrr�s		z'OctetStringDecoder.indefLenValueDecoderN)rrrr�OctetStringrrr&r(r!rrrrrrrb�s
rbc@s+eZdZejd�Zdd�ZdS)�NullDecoderr*c	CsV|d|�||d�}	}
|j||�}|	rLtjd|��||
fS)Nz&Unexpected %d-octet substrate for Null)r%rr
)rrrrrrrrrr+r,r^rrrr�s
!zNullDecoder.valueDecoderN)rrrr�Nullrrrrrrrd�srdc@s+eZdZejf�Zdd�ZdS)�ObjectIdentifierDecoderc	Cs|d|�||d�}	}
|	s6tjd��f}d}t|	�}
x�||
krBt|	|�}|d7}|dkr�||f}qQ|dkr$|}d}x^|dkr|d>|d@}||
kr�tjd|f��t|	|�}|d7}q�W||d>|f}qQ|dkrQtjd��qQWd|dko^d	knrpd|}n�d
|dko�dknr�d|dd
f|dd�}nL|ddkr�d
|ddf|dd�}ntjd|	d��|j|||�|
fS)NzEmpty substraterr rKrA�z#Short substrate for sub-OID past %sz"Invalid octet 0x80 in OID encoding�'�(�O�Pr7zMalformed first OID octet: %s)r)rr
rWrr`r%)rrrrrrrrrr+r,Zoid�indexZsubstrateLenZsubIdZ	nextSubIdrrrr�s@!
 
 %%z$ObjectIdentifierDecoder.valueDecoderN)rrrr�ObjectIdentifierrrrrrrrf�srfc@s(eZdZej�Zdd�ZdS)�RealDecoderc	CsB|d|�||d�}	}
|	s@|j||d�|
fSt|	d�}|	dd�}	|d@r*|	stjd��|d@d}|dkr�t|	d�}|	dd�}	|	d|�|	|d�}
}	|
s�|	r�tjd��t|
d�d@rdpd}x8|
rQ|d	K}|t|
d�O}|
dd�}
qW|d?d@}|d
kr{tjd��|dkr�|d9}n|d
kr�|d9}d}x8|	r�|d	K}|t|	d�O}|	dd�}	q�W|d@r�|}|d
?d@}|d
|9}|d
|f}n�|d@rM|d@rDd
pGd}n�|d@dkr|	srtjd��y}|d@dkr�t|	�ddf}nQ|d@d
kr�t|	�}n2|d@dkr�t|	�}ntjd|��Wq)tk
rtjd��Yq)Xntjd|��|j|||�|
fS)Ngrr rKzIncomplete floating-point valuer9r;zReal exponent screwedrCr7zIllegal Real base�@z-inf�inf��
zUnknown NR (tag %s)zBad character Real syntaxzUnknown encoding (tag %s)rL)r%rrr
�int�floatr`�
ValueError)rrrrrrrrrr+r,Zfo�nZeo�er[rYZsfr$rrrrsr!
! 	


	




zRealDecoder.valueDecoderN)rrrr�Realrrrrrrrnsrnc@sLeZdZej�Zdd�Zdd�Zdd�Zdd�Z	d	S)
�SequenceDecodercCs1y|j|�SWntjk
r,dSYnXdS)N)ZgetComponentTagMapNearPositionrr
)rr^�idxrrr�_getComponentTagMapDsz#SequenceDecoder._getComponentTagMapcCs|j||�S)N)ZgetComponentPositionNearType)rr^�trzrrr�_getComponentPositionByTypeJsz+SequenceDecoder._getComponentPositionByTypec	Cs�|d|�||d�}	}
|j||�}d}|rO||||�Sxo|	r�|j||�}||	|�\}
}	|j||
j�|�}|j||
|dk�|d}qRW|j�|j�||
fS)Nrr )r%r{r}�getEffectiveTagSet�setComponentByPosition�setDefaultComponents�verifySizeSpec)rrrrrrrrrr+r,r^rzr_rrrrMs!	

zSequenceDecoder.valueDecoderc	Cs�|j||�}	|r(||	||�Sd}
x�|r�|j|	|
�}|||dd�\}}tjj|�r�|tjkr�P|j|	|j�|
�}
|	j|
||dk�|
d}
q1Wtj	d��|	j
�|	j�|	|fS)Nrr.Tr z!No EOO seen before substrate ends)r%r{rr/r0r}r~rrr`r�r�)rrrrrrrrrr^rzr_rrrr`s&		

z$SequenceDecoder.indefLenValueDecoderN)
rrrr�Sequencerr{r}rrrrrrryBs
ryc@s4eZdZej�Zdd�Zdd�ZdS)�SequenceOfDecoderc	Cs�|d|�||d�}	}
|j||�}|rI||||�S|j�}d}xB|	r�||	|�\}
}	|j||
|dk�|d}q^W|j�||
fS)Nrr )r%�getComponentTyperr�)rrrrrrrrrr+r,r^rzr_rrrr{s!	
zSequenceOfDecoder.valueDecoderc	Cs�|j||�}	|r(||	||�S|	j�}d}
xy|r�|||dd�\}}tjj|�r�|tjkr�P|	j|
||dk�|
d}
q=Wtjd��|	j�|	|fS)Nrr.Tr z!No EOO seen before substrate ends)	r%r�rr/r0rrr`r�)rrrrrrrrrr^rzr_rrrr�s 		
z&SequenceOfDecoder.indefLenValueDecoderN)rrrr�
SequenceOfrrrrrrrr�ysr�c@s4eZdZej�Zdd�Zdd�ZdS)�
SetDecodercCs
|j�S)N)�getComponentTagMap)rr^rzrrrr{�szSetDecoder._getComponentTagMapcCs'|j|�}|dkr|S|SdS)N)ZgetComponentPositionByType)rr^r|rzZnextIdxrrrr}�sz&SetDecoder._getComponentPositionByTypeN)rrrr�Setrr{r}rrrrr��sr�c@seZdZej�ZdS)�SetOfDecoderN)rrrr�SetOfrrrrrr��sr�c@sFeZdZej�ZejejfZ	dd�Z
dd�ZdS)�
ChoiceDecoderc	Cs�|d|�||d�}	}
|j||�}|rI||||�S|j�|kry||	|j��\}}	n$||	|j�|||�\}}	t|tj�r�|j�}
n|j�}
|j|
|d|dk�||
fS)Nr)r%�	getTagSetr��
isinstancer�Choicer~�setComponentByType)rrrrrrrrrr+r,r^r_�effectiveTagSetrrrr�s!!zChoiceDecoder.valueDecoderc	
Cs|j||�}	|r(||	||�S|	j�|kr�|||	j��\}
}||dd�\}}tjj|�s�|tjkr�tjd��n$|||	j�|||�\}
}t|
t	j
�r�|
j�}n|
j�}|	j||
d|dk�|	|fS)Nr.Tz!No EOO seen before substrate endsr)
r%r�r�rr/r0rr
r�rr�r~r�)
rrrrrrrrrr^r_Z	eooMarkerr�rrrr�s !z"ChoiceDecoder.indefLenValueDecoderN)rrrrr�rrr&r(r!rrrrrrr��sr�c@sFeZdZej�ZejejfZ	dd�Z
dd�ZdS)�
AnyDecoderc	Cs�|dks*|dk	rJ||j�krJ|t|�t|�}|}|rl||j||�||�S|d|�||d�}	}
|j||d|	�|
fS)Nr$)r�rWr%)rrrrrrrrrr+r,rrrr�s
!zAnyDecoder.valueDecoderc	Cs�|dk	r'||j�kr'd}	n|dt|��}	|j|||	�}
|j}|rr||
||�Sx`|r�|||dd�\}}tjj|�r�|tjkr�P|
|}
quWtjd��|
|fS)Nr*r.Tz!No EOO seen before substrate ends)	r�rWr%rrr/r0rr`)rrrrrrrrr�headerr^r_rrrr�s 				zAnyDecoder.indefLenValueDecoderN)rrrrr2rrr&r(r!rrrrrrr��s
r�c@seZdZej�ZdS)�UTF8StringDecoderN)rrrr�
UTF8Stringrrrrrr�
sr�c@seZdZej�ZdS)�NumericStringDecoderN)rrrr�
NumericStringrrrrrr�sr�c@seZdZej�ZdS)�PrintableStringDecoderN)rrrr�PrintableStringrrrrrr�sr�c@seZdZej�ZdS)�TeletexStringDecoderN)rrrr�
TeletexStringrrrrrr�sr�c@seZdZej�ZdS)�VideotexStringDecoderN)rrrr�VideotexStringrrrrrr�sr�c@seZdZej�ZdS)�IA5StringDecoderN)rrrr�	IA5Stringrrrrrr�sr�c@seZdZej�ZdS)�GraphicStringDecoderN)rrrr�
GraphicStringrrrrrr�sr�c@seZdZej�ZdS)�VisibleStringDecoderN)rrrr�
VisibleStringrrrrrr�sr�c@seZdZej�ZdS)�GeneralStringDecoderN)rrrr�
GeneralStringrrrrrr�sr�c@seZdZej�ZdS)�UniversalStringDecoderN)rrrr�UniversalStringrrrrrr�sr�c@seZdZej�ZdS)�BMPStringDecoderN)rrrr�	BMPStringrrrrrr�sr�c@seZdZej�ZdS)�ObjectDescriptorDecoderN)rrrr�ObjectDescriptorrrrrrr�"sr�c@seZdZej�ZdS)�GeneralizedTimeDecoderN)rrrr�GeneralizedTimerrrrrr�$sr�c@seZdZej�ZdS)�UTCTimeDecoderN)rrrr�UTCTimerrrrrr�&sr�cCsg|]}|�qSrr)�.0�xrrr�
<listcomp>Ss	r�rrc	@sUeZdZeZe�ZdZidd�Zddde	ddddd�Z
dS)	�DecoderTcCs(||_||_i|_i|_dS)N)�_Decoder__tagMap�_Decoder__typeMap�_Decoder__tagCache�_Decoder__tagSetCache)r�tagMap�typeMaprrr�__init__Zs			zDecoder.__init__Nr Fc		Cs+tjtj@r?tjdtj|t|�tj|�f�|}	x�
|tkr�
|tkr�|sutj	d��t
|�r�t|tj
�r�tjd��|d}
|dd�}|
|jkr�|j|
}npt|
�}|dkr�|r~t|d�dkr~|rl|jrltjoEtjtj@oEtjd�tj|dd�}
}t}qHq�tjd��ntjd��|d	@}|d
@}|d@}|dkrd}xV|s�tj	d��t|d�}|d
>|d@B}|dd�}|d@s�Pq�Wtjd|d|d|�}|dkrM||j|
<|dkr�|
|jkrx|j|
}q�tjf|�}|
|jkr�||j|
<n
||}t}tjo�tjtj@o�tjd|�|tkr�|stj	d��t|d�}
|
dkr/d}d/}n�|
dkrK|
d}}n�|
d@}d}|d|d�}t|�|kr�tj	d|t|�|f��x"|D]}|d>t|�B}q�W|d}||d�}|d0krt|�|krtj	d|t|���|d1kr@|jr@tjd�t}tjo�tjtj@o�tjd|tj|d2kr�|p�|d|��f�|tkr�|dkr�t}nt}|tkr�||jkr�|j|}nd}|rt}nJ|dd�}||jkr1|j|}nd}|rFt}nt}tjr�tjtj@r�tjd|r�|jj p�d|tkr�dp�df�tjj!|dkr�dp�|j"jj �|tkr�t|t#t$j%f�r�||kr||}nd}tjr5tjtj@r5tjd�x=|j&�j'�D])\}}tjd ||jj f�qGW|j(�r�tjd!�x=|j(�j'�D])\}}tjd ||jj f�q�Wtjd"|dkr�dp�|j)�|f�n6|}tjo4tjtj@o4tjd#|jj �|dk	rB||j*�kse||j+�krB|j,}|j-dk	r�|j-|j.kr�|j.|j-}tjo�tjtj@o�tjd$|j-f�nR||jkr|j|}tjotjtj@otjd%|f�nd}|r9|}t}qNt}nd}t}tjr�tjtj@r�tjd&|tkr�|jj p�d|tkr�dp�df�tjj!|dkr�dp�|jj �|tkr�	|r	|ddtj/kr	|ddtj0kr	t1}t}nd}|j2}tjo�	tjtj@o�	tjd'|rb	|jj pe	d|tkrw	dpz	d(f�|t3kr�	|j4}tjo�	tjtj@o�	tjd)|jj �t}|tkr�
|dkr�	|r�	d*d+�}|d3kr1
|j5|	||||t||�\}
}n*|j6|	||||t||�\}
}t}tjo�
tjtj@o�
tjd,|jj |
jj |
j7�|r�
tj|�p�
df�|t8krHtjd-||f��qHWtjr!tjtj@r!tjj9�tjd.tj�|
|fS)4NzWdecoder called at scope %s with state %d, working with up to %d octets of substrate: %sz"Short octet stream on tag decodingzBad octet stream typerr zend-of-octets sentinel foundz#Unexpected end-of-contents sentinelzZero tag encounteredrq� �z'Short octet stream on long tag decodingrArgrK�tagClass�	tagFormat�tagIdz$tag decoded into %s, decoding lengthz%Short octet stream on length decodingz%s<%s at %srCz%d-octet shortz6Indefinite length encoding not supported by this codecz6value length decoded into %d, payload substrate is: %sz/codec %s chosen by a built-in type, decoding %sz<none>r$zas explicit tag�?z!candidate ASN.1 spec is a map of:z
  %s -> %szbut neither of: z,new candidate ASN.1 spec is %s, chosen by %szcandidate ASN.1 spec is %sz8value decoder chosen for an ambiguous type by type ID %szvalue decoder chosen by base %sz*codec %s chosen by ASN.1 spec, decoding %szcodec %s chosen, decoding %sz
as failurezcodec %s chosen, decoding valuecSs||d|�fS)Nr)�ar[�crrr�<lambda>0sz"Decoder.__call__.<locals>.<lambda>z@codec %s yields type %s, value:
%s
...remaining substrate is: %sz%s not in asn1Spec: %sz%decoder left scope %s, call completedrLrLrLrLrL):r
ZloggerZflagDecoderZscoperWZhexdump�stStop�stDecodeTagrr`r	r�rrcr
r�r�supportIndefLengthrr/rZTagr�ZTagSet�stDecodeLength�stGetValueDecoder�stGetValueDecoderByTag�stGetValueDecoderByAsn1Specr��
stDecodeValue�stTryAsExplicitTag�	__class__r�pushr�dictrZTagMapZ	getPosMap�itemsZ	getNegMapr"r�Z	getTagMap�
baseTagSet�typeIdr�r(ZtagClassUniversal�explicitTagDecoder�defaultErrorState�stDumpRawValue�defaultRawDecoderrrZprettyPrint�stErrorCondition�pop)rrrrrrZ
recursiveFlagrr.rrNZlastTagr|r$r�r�r��sizeZlengthStringrZconcreteDecoderZ_kZ_Decoder__chosenSpec�vr�rrr�__call__asR/	

&


	
	

*		



U			;+

!
!20	3
0		A(		T	0]
zDecoder.__call__)rrrr�r�r�r�r�r�r�r�rrrrr�Us		r�N)[Zpyasn1.typerrrrrZpyasn1.codec.berrZpyasn1.compat.octetsrr	Zpyasn1r
rrrr'r)r�r3rTrVrbrdrfrnryr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rSrrUrarcrermZ
Enumeratedrxr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r2r��ranger�r�r�r�r�r�r�r�r�r�r��decoderrrr�<module>s�(

	%4"
0B7&/-7�

Zerion Mini Shell 1.0