HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //usr/lib/python3.6/site-packages/pyasn1/codec/ber/__pycache__/encoder.cpython-36.pyc
3

u?�Y�G�8@stddlmZmZmZmZddlmZddlmZm	Z	m
Z
mZmZddl
mZddlmZmZdgZGdd�de�ZGd	d
�d
e�ZGdd�de�ZGd
d�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd �d e�Z ej!j"e�ej#j"e�ej$j"e�ej%j"e�ej&j"e�ej'j"e�ej(j"e�ej)j"e�ej*j"e�ej+j"e�ej,j"e�ej-j"e�ej.j"e�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�iZ<ej#j=e�ej$j=e�ej%j=e�ej&j=e�ej'j=e�ej(j=e�ej)j=e�ej*j=e�ej>j=e�ej,j=e�ej?j=e�ej+j=e�ej-j=e�ej@j=e �ej.j=e�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�iZAGd!d"�d"e�ZBeBe<eA�ZCd#S)$�)�tag�univ�char�useful)�eoo)�int2oct�oct2int�	ints2octs�null�str2octs)�to_bytes)�debug�error�encodec@s<eZdZdZdZee�Zdd�Zdd�Zdd�Z	d	d
�Z
dS)
�AbstractItemEncoder�rcCsz|\}}}||B}|r |tjO}|dkr2||BfS|d@f}|dL}x"|rfd|d@Bf|}|dL}qFW|dBf|SdS)N����)rZtagFormatConstructed)�self�	singleTag�
isConstructedZtagClassZ	tagFormatZtagIdZ
encodedTag�	substrate�r�/usr/lib/python3.6/encoder.py�	encodeTags



zAbstractItemEncoder.encodeTagcCsr|r|jrdS|dkr|fSf}x|r@|d@f|}|dL}q$Wt|�}|dkr`tjd|��d|Bf|SdS)Nr���~zLength octets overflow (%d))r)�supportIndefLenMode�lenr�PyAsn1Error)rZlength�defModerZsubstrateLenrrr�encodeLength'sz AbstractItemEncoder.encodeLengthcKstjd��dS)NzNot implemented)rr")r�value�	encodeFun�optionsrrr�encodeValue6szAbstractItemEncoder.encodeValuec
Ks�|j}|s$|j||f|�\}}}|S|jdd�}x�t|j�D]�\}	}
|}|	s�|j||f|�\}}}|jdd�rx|rx|S|s�d}|j|
|�}||jt|�|�7}|r�t|�|}|s�||j	7}q<||}|s<||j
7}q<W|s�t|�}|S)Nr#TZ
ifNotEmptyF)�tagSetr(�get�	enumerateZ	superTagsrr$r!r	�eooOctetsSubstrate�eooIntegerSubstrate)
rr%r&r'r)rrZisOctetsr#�idxrZdefModeOverride�headerrrrr9s6zAbstractItemEncoder.encodeN)rr)�__name__�
__module__�__qualname__r r-r	r,rr$r(rrrrrrsrc@seZdZdd�ZdS)�EndOfOctetsEncodercKs
tddfS)NFT)r
)rr%r&r'rrrr(mszEndOfOctetsEncoder.encodeValueN)r0r1r2r(rrrrr3lsr3c@seZdZdZdd�ZdS)�BooleanEncoderFcKs|rdp
dddfS)NrrF)r)rr)rr%r&r'rrrr(tszBooleanEncoder.encodeValueN)r0r1r2r r(rrrrr4qsr4c@seZdZdZdZdd�ZdS)�IntegerEncoderFcKs2|dkr|jrfddfSdStt|�dd�ddfS)NrFT)Zsigned�r)r6FF)�supportCompactZeror�int)rr%r&r'rrrr(|s

zIntegerEncoder.encodeValueN)r0r1r2r r7r(rrrrr5xsr5c@seZdZdd�ZdS)�BitStringEncoderc
Ks�t|�}|dr"|d|d>}n|}|jdd�}|sHt|�|dkrn|j�}tt|�d|�|ddfS|jtj|jj|jj�d�}d}t	}x:||kr�|}	t
|	|d|�}||||	|�f|�7}q�W|ddfS)Nr�maxChunkSizerFT)r))r!r*�asOctetsr�cloner�TagSetr)�baseTagr
�min)
rr%r&r'ZvalueLengthZalignedValuer:r�stop�startrrrr(�s"
zBitStringEncoder.encodeValueN)r0r1r2r(rrrrr9�sr9c@seZdZdd�ZdS)�OctetStringEncoderc	Ks�|jdd�}|st|�|kr,|j�ddfStj|jj|jj�}d}t}x<|j||||�|d�}|sjP|||f|�7}||7}qJW|ddfSdS)Nr:rFT)r))	r*r!r;rr=r)r>r
r<)	rr%r&r'r:�
baseTagSet�posr�chunkrrrr(�szOctetStringEncoder.encodeValueN)r0r1r2r(rrrrrB�srBc@seZdZdZdd�ZdS)�NullEncoderFcKs
tddfS)NFT)r
)rr%r&r'rrrr(�szNullEncoder.encodeValueN)r0r1r2r r(rrrrrF�srFc@seZdZdZdd�ZdS)�ObjectIdentifierEncoderFc

Ks�|j�}y|d}|d}Wn$tk
r@tjd|f��YnXd|koTdknr�|dkrz|df|dd�}q�|dkr�|f|dd�}q�|dkr�|df|dd�}q�tjd|f��n0|dkr�|df|dd�}ntjd|f��f}x�|D]�}d|k�od	kn�r.||f7}n`|d	k�r||d	@f}	|d
L}x&|�rpd|d	@Bf|	}	|d
L}�qLW||	7}ntjd||f���qW|d
d
fS)NrrzShort OID %s�'�(��Pz"Impossible first/second arcs at %srrrzNegative OID arc %s at %sF)ZasTuple�
IndexErrorrr")
rr%r&r'Zoid�first�secondZoctetsZsubOid�resrrrr(�s<



z#ObjectIdentifierEncoder.encodeValueN)r0r1r2r r(rrrrrG�srGc@s0eZdZdZdZedd��Zdd�Zdd�Zd	S)
�RealEncoderrrJcCs�d\}}|dkrd	}|dkr d
}||9}|dkrZ|dt|�d|9}t|�d|}n0|dkr�|dt|�d|9}t|�d|}x$t|�|kr�||9}|d8}q�Pq�W|t|�||fS)NrrrrJ���)rr���rT)�absr8)�m�encbase�e�msZesrrr�_dropFloatingPoint�s&zRealEncoder._dropFloatingPointcCs|\}}}dddg}|j|kr.|j||j|�S|j|krH|j||j|�S|||g}|||g}d}d}	td�}x�td�D]�}
|j||
||
||
�\}||
<||
<||
<t||
�t|�ks�t||
�t|�krv||
|krv||
}t||
�}||
}	qvW|||	|fS)NrJrrRr�infrQ)�
binEncBaserZ�float�rangerUr8)rr%rV�brXZencBaseZmantissaZ	exponentaZsignrW�irrr�_chooseEncBases$





.4zRealEncoder._chooseEncBasecKs�|jr
dS|jrdS|\}}}|s,tddfS|dkrXtd||dkrFdpHd	|f�ddfS|d
k�r�d}|j|�\}}}	}|dkr�|dO}|	d
kr�x�|d@dkr�|dL}|d7}q�Wnb|	d
kr�x |d@dkr�|dL}|d7}q�W|dO}n.x$|d@dk�r|dL}|d7}�q�W|dO}d}
x$|d@dk�r>|dL}|
d7}
�qW|
dk�rTtjd��||
d
>O}t}|dk�sx|dk�r�t|d@�}n�x(|dk�r�t|d@�|}|d
L}�q�W|dk�r�|�r�t|d�d@�r�td�|}|dk�r|�rt|d�d@�rtd�|}t	|�}|dk�r*tjd��|dk�r6n@|d
k�rJ|dO}n,|dk�r^|d
O}n|dO}t|d@�|}t}
x$|�r�t|d@�|
}
|d
L}�q|Wt|�||
}|ddfStjd|��dS) N�@F�AT�
z%dE%s%dr�+�rJrrrrrQrR�rS� zScale factor overflowrzReal exponent overflowzProhibited Real base %s�rb)riFF�rc)rjFFrTrT)rrTrT)
Z	isPlusInfZ
isMinusInfr
rrarr"rrr!)rr%r&r'rVr_rXZforYrWZsfZeo�nZporrrrr(&s|

$



"$







zRealEncoder.encodeValueN)	r0r1r2r r\�staticmethodrZrar(rrrrrP�s
rPc@seZdZdd�ZdS)�SequenceEncodercKs�|j�|j}t}t|�}xb|dkr||d8}|rf||jrH||jrHq||jrf||||jkrfq|||f|�|}qW|ddfS)NrrT)�verifySizeSpecZ
componentTyper
r!Z
isOptionalZisValueZisDefaultedZ
asn1Object)rr%r&r'Z
namedTypesrr.rrrr(ms
zSequenceEncoder.encodeValueN)r0r1r2r(rrrrrmlsrmc@seZdZdd�ZdS)�SequenceOfEncodercKsH|j�t}t|�}x(|dkr<|d8}|||f|�|}qW|ddfS)NrrT)rnr
r!)rr%r&r'rr.rrrr(�s
zSequenceOfEncoder.encodeValueN)r0r1r2r(rrrrro�sroc@seZdZdd�ZdS)�
ChoiceEncodercKs||j�f|�ddfS)NT)ZgetComponent)rr%r&r'rrrr(�szChoiceEncoder.encodeValueN)r0r1r2r(rrrrrp�srpc@seZdZdd�ZdS)�
AnyEncodercKs|j�|jdd�dfS)Nr#T)r;r*)rr%r&r'rrrr(�szAnyEncoder.encodeValueN)r0r1r2r(rrrrrq�srqc@s(eZdZdZdZifdd�Zdd�ZdS)�EncoderNcCs||_||_dS)N)�_Encoder__tagMap�_Encoder__typeMap)r�tagMap�typeMaprrr�__init__�szEncoder.__init__cKsFtjtj@rtj}nd}|rR|d|jdd�r2dp4d|jdd�|j�|j�f�|jdk	rj|j|jd�|jdk	r�|j|jd	�|j	}y|j
|j}Wn\tk
r�t
j|j	j|j	j�}y|j|}Wn$tk
r�tjd
|f��YnXYnX|�r|d|jj|f�|j||f|�}|�rB|d|t|�tj|�f�|S)
NzBencoder called in %sdef mode, chunk size %s for type %s, value:
%sr#T�inrfr:r)r#)r:zNo encoder for %sz!using value codec %s chosen by %sz;codec %s built %s octets of substrate: %s
encoder completed)r
�loggerZflagEncoderr*ZprettyPrintTypeZprettyPrint�fixedDefLengthMode�update�fixedChunkSizer)rt�typeId�KeyErrorrr=r>rsrr"�	__class__r0rr!Zhexdump)rr%r'ryr)ZconcreteEncoderrCrrrr�__call__�s06

zEncoder.__call__)r0r1r2rzr|rwr�rrrrrr�srrN)DZpyasn1.typerrrrZpyasn1.codec.berrZpyasn1.compat.octetsrrr	r
rZpyasn1.compat.integerrZpyasn1r
r�__all__�objectrr3r4r5r9rBrFrGrPrmrorprqZendOfOctetsr)ZBooleanZIntegerZ	BitStringZOctetStringZNullZObjectIdentifierZ
EnumeratedZRealZ
SequenceOfZSetOfZChoiceZ
UTF8StringZ
NumericStringZPrintableStringZ
TeletexStringZVideotexStringZ	IA5StringZ
GraphicStringZ
VisibleStringZ
GeneralStringZUniversalStringZ	BMPStringZObjectDescriptorZGeneralizedTimeZUTCTimerur}�Set�SequenceZAnyrvrrrrrrr�<module>s�\2y



















































K