AlkantarClanX12

Your IP : 18.190.253.56


Current Path : /proc/self/root/opt/alt/python311/lib64/python3.11/wsgiref/__pycache__/
Upload File :
Current File : //proc/self/root/opt/alt/python311/lib64/python3.11/wsgiref/__pycache__/util.cpython-311.opt-2.pyc

�

c��f`��j�	ddlZgd�ZGd�d��Zd�Zd�Zd
d�Zd	�Zd
�Zhd�jZ	d�Z
dS)�N)�FileWrapper�guess_scheme�application_uri�request_uri�shift_path_info�setup_testing_defaultsc�$�eZdZ	dd�Zd�Zd�ZdS)r� c�^�||_||_t|d��r|j|_dSdS)N�close)�filelike�blksize�hasattrr)�selfr
rs   �3/opt/alt/python311/lib64/python3.11/wsgiref/util.py�__init__zFileWrapper.__init__s9�� ��
�����8�G�$�$�	(�!��D�J�J�J�	(�	(�c��|S�N�)rs r�__iter__zFileWrapper.__iter__s���rc�V�|j�|j��}|r|St�r)r
�readr�
StopIteration)r�datas  r�__next__zFileWrapper.__next__s,���}�!�!�$�,�/�/���	��K��rN)r
)�__name__�
__module__�__qualname__rrrrrrrrsI������;�(�(�(�(��������rrc�:�	|�d��dvrdSdS)N�HTTPS)�yes�on�1�https�http)�get)�environs rrrs)����{�{�7���/�/�/��w��vrc�N�	|ddz}ddlm}|�d��r||dz
}nL||dz
}|ddkr|dd	kr|d
|dzz
}n|ddkr|d
|dzz
}|||�d��pd
d���z
}|S)N�wsgi.url_schemez://r��quote�	HTTP_HOST�SERVER_NAMEr%�SERVER_PORT�443�:�80�SCRIPT_NAME�/�latin1)�encoding)�urllib.parser,r')r(�urlr,s   rrr%s���J�
�#�
$�U�
*�C�"�"�"�"�"�"��{�{�;���
4��w�{�#�#����w�}�%�%���$�%��0�0��}�%��.�.��s�W�]�3�3�3����}�%��-�-��s�W�]�3�3�3���5�5����]�+�+�2�s�X�F�F�F�F�C��JrTc��	t|��}ddlm}||�dd��dd���}|�d��s||d	d�z
}n||z
}|r#|�d
��r|d|d
zz
}|S)Nrr+�	PATH_INFO�z/;=,r5)�safer6r3��QUERY_STRING�?)rr7r,r')r(�
include_queryr8r,�	path_infos     rrr9s���L�
�'�
"�
"�C�"�"�"�"�"�"���g�k�k�+�b�1�1���R�R�R�I��;�;�}�%�%���y����}�����y����-����^�4�4�-��s�W�^�,�,�,���Jrc���	|�dd��}|sdS|�d��}d�|dd�D��|dd�<|d}|d=|�dd��}tj|dz|z��}|�d��r
|dd�}|s|�d��s|dz
}||d<d�|��|d<|dkrd}|S)	Nr:r;r4c�"�g|]}|�|dk�
|��
S)�.r)�.0�ps  r�
<listcomp>z#shift_path_info.<locals>.<listcomp>Xs"��F�F�F�a�q�F�Q�#�X�X��X�X�Xrr=���r3rD)r'�split�	posixpath�normpath�endswith�join)r(rA�
path_parts�name�script_names     rrrFs������K��+�+�I����t�����%�%�J�F�F�:�a��d�#3�F�F�F�J�q��t���a�=�D��1�
��+�+�m�B�/�/�K��$�[��_�T�%9�:�:�K����C� � �'�!�#�2�#�&�����,�,�S�1�1���s���(�G�M�� �X�X�j�1�1�G�K���S�y�y����Krc�:�	|�dd��|�dd��|�d|d��|�dd��d|vr0d	|vr,|�dd
��|�d	d��|�dd
��|�dd��|�dd��|�dd��ddlm}m}|�d|����|�d|����|�dt	|����|ddkr|�dd��dS|ddkr|�dd��dSdS)Nr.z	127.0.0.1�SERVER_PROTOCOLzHTTP/1.0r-�REQUEST_METHOD�GETr3r:r;r4zwsgi.version)r=rz
wsgi.run_oncerzwsgi.multithreadzwsgi.multiprocess)�StringIO�BytesIOz
wsgi.inputzwsgi.errorsr*r&r/r2r%r0)�
setdefault�iorUrVr)r(rUrVs   rrros���
����}�[�1�1�1����(��4�4�4����{�7�=�#9�:�:�:����'��.�.�.��G�#�#��7�(B�(B����=��,�,�,����;�s�+�+�+����~�u�-�-�-������*�*�*����)�1�-�-�-����*�A�.�.�.�$�$�$�$�$�$�$�$����|�W�W�Y�Y�/�/�/����}�h�h�j�j�1�1�1����(��g�)>�)>�?�?�?�� �!�6�)�)����=�$�/�/�/�/�/�	�"�	#�W�	,�	,����=�%�0�0�0�0�0�
-�	,r>�
keep-alive�transfer-encoding�proxy-authenticate�proxy-authorization�te�upgrade�trailers�
connectionc�F�	t|�����Sr)�_hoppish�lower)�header_names r�
is_hop_by_hopre�s��I��K�%�%�'�'�(�(�(r)T)rJ�__all__rrrrrr�__contains__rbrerrr�<module>rhs���*�����������������$������(����'�'�'�R$1�$1�$1�P����		�)�)�)�)�)r