403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /lib64/python3.9/site-packages/hgext/fsmonitor/pywatchman/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /lib64/python3.9/site-packages/hgext/fsmonitor/pywatchman/__pycache__/pybser.cpython-39.pyc
a

�+�bH�@s.ddlmZmZmZddlZddlZddlZddlZddlZddl	m
Z
dZdZdZ
dZd	Zd
ZdZdZd
ZdZdZdZdZdZe
jr�eefZeZdd�ZeZ neefZeZdZ!dZ"dd�Z#dd�Z$Gdd�de%�Z&d.dd�Z'Gdd �d e%�Z(Gd!d"�d"e%�Z)d#d$�Z*d%d&�Z+d'd(�Z,d/d*d+�Z-d0d,d-�Z.dS)1�)�absolute_import�division�print_functionN�)�compat����������	�
���
cCst|��d�S)N�ascii)�str�encode)�i�r�G/usr/lib64/python3.9/site-packages/hgext/fsmonitor/pywatchman/pybser.py�tobytes<srsscCs�d|krdkrnndSd|kr0dkr8nndSd|krLdkrTnnd	Std
�|krptd�krxnndStd
t|���dS)z5Return the smallest size int that can store the valuei�����ri���i��i�i����l����l�����zCannot represent value: N)�long�RuntimeErrorr)�xrrr�	_int_sizeKs r#cCs&||}tjr"t|t�s"t|f�}|S�N)r�PYTHON3�
isinstance�bytes)�buf�pos�retrrr�_buf_posYs
r+c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�_bser_buffercCs�||_t�d�|_|jdkrFt�ttt��d|jdt�tt�|_	n6|jdksTJ�t�ttt
��d|jdt
�tt
�|_	dS)Ni r�srr)�bser_version�ctypesZcreate_string_bufferr(�struct�	pack_intor�len�EMPTY_HEADER�wpos�EMPTY_HEADER_V2)�self�versionrrr�__init__bs
��z_bser_buffer.__init__cCs6t�|j�|j|kr2t�|jt�|j�d�qdS)Nr)r/Zsizeofr(r4Zresize)r6�sizerrr�ensure_sizetsz_bser_buffer.ensure_sizecCs�t|�}|d}|�|�|dkr:t�d|j|jt|�nh|dkrZt�d|j|jt|�nH|dkrzt�d|j|jt|�n(|dkr�t�d|j|jt	|�nt
d	��|j|7_dS)
Nrs=cbrs=chrs=cirs=cqz Cannot represent this long value)r#r:r0r1r(r4�	BSER_INT8�
BSER_INT16�
BSER_INT32�
BSER_INT64r!)r6�valr9�to_writerrr�append_longxs
z_bser_buffer.append_longc	Cst|t�r|�d�}t|�}t|�}d||}|�|�|dkrjt�dt|�d|j	|j
tt||�n�|dkr�t�dt|�d|j	|j
tt
||�nh|dkr�t�dt|�d|j	|j
tt||�n8|d	kr�t�d
t|�d|j	|j
tt||�ntd��|j
|7_
dS)N�utf-8rr�=ccbr-�=cchr�=ccir�=ccqz"Cannot represent this string value)r&�unicoderr2r#r:r0r1rr(r4�BSER_BYTESTRINGr;r<r=r>r!)r6�sZs_lenr9r@rrr�
append_string�s`


�	�	�	�
z_bser_buffer.append_stringc	Cs*t|t�rLd}|�|�|r"t}nt}t�d|j|j|�|j|7_�n�|dur�d}|�|�t�d|j|jt	�|j|7_�n�t|t
tf�r�|�|��n�t|t
�r�|�|��njt|t�r�d}|�|�t�d|j|jt|�|j|7_�n*t|tj��r"t|tj��r"t|�}t|�}d|}|�|�|dk�r^t�d|j|jtt|�nt|dk�r�t�d|j|jtt|�nP|dk�r�t�d	|j|jtt|�n,|d
k�r�t�d|j|jtt|�ntd��|j|7_tj�r�|��}n|��}|D]\}}|�|�|� |��q��nt|tj!��rt|tj��rt|�}t|�}d|}|�|�|dk�r�t�d|j|jt"t|�nt|dk�r�t�d|j|jt"t|�nP|dk�r�t�d	|j|jt"t|�n,|d
k�r�t�d|j|jt"t|�ntd
��|j|7_|D]}|� |��q
ntd��dS)Nrs=c�	s=cdrrCrDrrErrFz#Cannot represent this mapping valuez$Cannot represent this sequence valuez#Cannot represent unknown value type)#r&�boolr:�	BSER_TRUE�
BSER_FALSEr0r1r(r4�	BSER_NULL�intr rA�STRING_TYPESrJ�float�	BSER_REAL�collections�Mapping�Sizedr2r#�BSER_OBJECTr;r<r=r>r!rr%�items�	iteritems�append_recursive�Iterable�
BSER_ARRAY)	r6r?�neededZ	to_encodeZval_lenr9rY�k�vrrrrZ�s�





�

�
�
�
�	

�

�
�
�
�	z_bser_buffer.append_recursiveN)�__name__�
__module__�__qualname__r8r:rArJrZrrrrr,as
3r,cCs�t|d�}|�|�|dkr>|jtt�}t�d|jd|�n2|jtt�}t�d|jd|�t�d|jd|�|jj	d|j�S)N)r7r�=i�r�)
r,rZr4r2r3r0r1r(r5�raw)�objr7ZcapabilitiesZbser_buf�obj_lenrrr�dumps7s

ric@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�_BunserDict��_keys�_valuescCs||_||_dSr$rk)r6�keys�valuesrrrr8Ksz_BunserDict.__init__cCs
|�|�Sr$)�__getitem__)r6�namerrr�__getattr__Osz_BunserDict.__getattr__cCsft|ttf�r|j|S|�d�r.|dd�}z|j|j�|�WSty`td|��Yn0dS)NZst_rdz_BunserDict has no key %s)	r&rPr rm�
startswithrl�index�
ValueError�KeyError)r6�keyrrrrpRs

z_BunserDict.__getitem__cCs
t|j�Sr$)r2rl)r6rrr�__len__^sz_BunserDict.__len__N)r`rarb�	__slots__r8rrrprxrrrrrjHs
rjc@sReZdZddd�Zedd��Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)�BunserTNcCs6||_||_|durd|_n|dur,d|_n||_dS)N�strict��mutable�value_encoding�value_errors)r6r}r~rrrrr8cszBunser.__init__cCs�zt||�}Wnty(td��Yn0|tkr<d}d}nR|tkrNd}d}n@|tkr`d}d}n.|tkrrd}d	}ntd
t�|��	d�|f��t
�|||d�d
}|||fS)Nz+Invalid bser int encoding, pos out of rangers=brds=h�rcrKs=qz-Invalid bser int encoding 0x%s at position %srrr)r+�
IndexErrorrur;r<r=r>�binascii�hexlify�decoder0�unpack_from)r(r)Zint_typer]ZfmtZint_valrrr�	unser_intns.��zBunser.unser_intcCs@|�||d�\}}t�t|�d||�d}|�d�||fS)Nrr-rrB)r�r0r�rr��r6r(r)Zstr_lenZstr_valrrr�unser_utf8_string�szBunser.unser_utf8_stringcCsT|�||d�\}}t�t|�d||�d}|jdurH|�|j|j�}|||fS)Nrr-r)r�r0r�rr~r�rr�rrr�unser_bytestring�s

zBunser.unser_bytestringcCsV|�||d�\}}g}t|�D]}|�||�\}}|�|�q |jsNt|�}||fS�Nr)r��range�loads_recursive�appendr}�tuple)r6r(r)Zarr_len�arr�_Zarr_itemrrr�unser_array�szBunser.unser_arrayc
Cs�|�||d�\}}|jr i}ng}g}t|�D]H}|�||�\}}|�||�\}	}|jrd|	||<q0|�|�|�|	�q0|js�t||�}||fSr�)r�r}r�r�r�r�rj)
r6r(r)rhrgrn�valsr�rwr?rrr�unser_object�s


zBunser.unser_objectcCs�t||d�}|tkrtd��t|jdd�}|�||d�\}}|�||�\}}g}t|�D]�}|jrli}	ng}
tt|��D]R}t||�t	kr�|d7}d}n|�
||�\}}|jr�||}
||	|
<q||
�|�q||js�t||
�}	|�|	�q\||fS)NrzExpect ARRAY to follow TEMPLATErB)r}r~)
r+r\r!rzr}r�r�r�r2�	BSER_SKIPr�r�rj)r6r(r)�val_typeZkeys_bunserrnZnitemsr�r�rgr�ZkeyidxZelerwrrr�unser_template�s0

zBunser.unser_templatecCst||�}|tks*|tks*|tks*|tkr6|�||�S|tkr`t�d||d�d}||dfS|t	krtd|dfS|t
kr�d|dfS|tkr�d|dfS|tkr�|�
||�S|tkr�|�||�S|tkr�|�||�S|tkr�|�||�S|tk�r|�||�Stdt�|��d���dS)	Ns=drrrKTFzunhandled bser opcode 0x%sr)r+r;r<r=r>r�rSr0r�rMrNrOrHr��BSER_UTF8STRINGr�r\r�rWr��
BSER_TEMPLATEr�rur�r�r�)r6r(r)r�r?rrrr��sD
����
��zBunser.loads_recursive)TNN)r`rarbr8�staticmethodr�r�r�r�r�r�r�rrrrrzbs

"rzcCs�|dd�tdd�kr2d}d}t�|d�\}}n\|dd�tdd�kr�t|�dkr^td��d}t�d|d�d}t�|d�\}}ntd��||||fS)NrrrrzInvalid BSER header�I�)r3rzr�r5r2rur0r�)r(r.Zbser_capabilities�expected_lenZpos2rrr�_pdu_info_helper�sr�cCs&t|�}|d|d|d|dfS)Nrrrrd�r��r(�inforrr�pdu_info
sr�cCst|�}|d|dS)Nrrdr�r�rrr�pdu_lensr�TcCs^t|�}|d}|d}t|�||kr@td||t|�f��t|||d�}|�||�dS)auDeserialize a BSER-encoded blob.

    @param buf: The buffer to deserialize.
    @type buf: bytes

    @param mutable: Whether to return mutable results.
    @type mutable: bool

    @param value_encoding: Optional codec to use to decode values. If
                           unspecified or None, return values as bytestrings.
    @type value_encoding: str

    @param value_errors: Optional error handler for codec. 'strict' by default.
                         The other most common argument is 'surrogateescape' on
                         Python 3. If value_encoding is None, this is ignored.
    @type value_errors: str
    rrdz!bser data len %d != header len %dr|r)r�r2rurzr�)r(r}r~rr�r�r)Zbunserrrr�loadss��r�cCsddlm}|�||||�S)Nr)�load)�r�)�fpr}r~rr�rrrr�<sr�)rr)TNN)TNN)/Z
__future__rrrr�rTr/r0�sysr�rr\rWrHr;r<r=r>rSrMrNrOr�r�r�r%rr'rQrGrrPr r3r5r#r+�objectr,rirjrzr�r�r�r�r�rrrr�<module>sTW

%

Youez - 2016 - github.com/yon3zu
LinuXploit