OwlCyberSecurity - MANAGER
Edit File: fields.cpython-311.pyc
� �������h�!�����������������������������d�dl�mZ�d�dlZd�dlZd�dlZddlmZ�dd�Zd��Z dd d �Z e ���������������������d���ed�d������������D����������������������������d ��Z d��ZeZ�G�d��de������������ZdS�)�����)�absolute_importN����)�six�application/octet-streamc������������������B�����|�rt����������j��������|�������������d���������p|S�|S�)z� Guess the "Content-Type" of a file. :param filename: The filename to guess the "Content-Type" of using :mod:`mimetypes`. :param default: If no "Content-Type" can be guessed, default to `default`. r���)� mimetypes� guess_type)�filename�defaults��� �E/opt/imunify360/venv/lib64/python3.11/site-packages/urllib3/fields.py�guess_content_typer ��� ���s,���������<��#�H�-�-�a�0�;�G�;��N�����c������������������������t�����������t����������j��������������������r����������������������d�������������t �����������fd�dD���������������������������s7|��d��d�} �|���������������������d�������������|S�#�t����������t����������f$�r�Y�nw�xY�wt����������j��������r����������������������d�������������t����������j ������������������������������d�������������|��d����t����������j��������r����������������������d��������������S�)a!�� Helper function to format and quote a single header parameter using the strategy defined in RFC 2231. Particularly useful for header parameters which might contain non-ASCII values, like file names. This follows `RFC 2388 Section 4.4 <https://tools.ietf.org/html/rfc2388#section-4.4>`_. :param name: The name of the parameter, a string expected to be ASCII only. :param value: The value of the parameter, provided as ``bytes`` or `str``. :ret: An RFC-2231-formatted unicode string. �utf-8c��������������3���� ����K����|�]}|�v�V���� d�S��N��)�.0�ch�values��� �r���� <genexpr>z.format_header_param_rfc2231.<locals>.<genexpr>+���s'�����������/�/�r�r�U�{�/�/�/�/�/�/r���z"\ �="�"�asciiz*=)� isinstancer����binary_type�decode�any�encode�UnicodeEncodeError�UnicodeDecodeError�PY2�email�utils�encode_rfc2231)�namer����results��� ` r����format_header_param_rfc2231r(������s ������ ��%���)�)��&����W�%�%���/�/�/�/�Y�/�/�/�/�/���#�t�t�U�U�U�+�� ��M�M�'�"�"�"���M���#�$6�7�� �� �� ��D� ���� ��w��&����W�%�%��� �K�&�&�u�g�6�6�E����e�e�$�E� �w��&����W�%�%���Ls����A,��,B��?B�z%22z\\)r����\c������������������f�����i�|�].}|d�v�t����������j��������|������������d���������������������|��������������/S�))����z%{:02X})r����unichr�format)r����ccs��� r���� <dictcomp>r/���J���sE������������� �W���� � �2��� �)�)�"�-�-���r���� ���c��������������������������fd�}t����������j��������d���������������������d��������������������������������������D���������������������������������������}|���������������������||�������������}|S�)Nc������������������:�������|�����������������������d���������������������S�)Nr���)�group)�match�needles_and_replacementss��� �r����replacerz#_replace_multiple.<locals>.replacerS���s�������'����A���7�7r����|c������������������6�����g�|�]}t����������j��������|��������������S�r���)�re�escape)r����needles��� r���� <listcomp>z%_replace_multiple.<locals>.<listcomp>W���s"������S�S�S��2�9�V�$�$�S�S�Sr���)r9����compile�join�keys�sub)r���r5���r6����patternr'���s��� ` r����_replace_multiplerB���R���st�������8��8��8��8��8���j�� � �S�S�3K�3P�3P�3R�3R�S�S�S�T�T����G���[�[��5� )� )�F��Mr���c�����������������������t����������|t����������j��������������������r|���������������������d������������}t ����������|t ����������������������}|��d|�d�S�)a��� Helper function to format and quote a single header parameter using the HTML5 strategy. Particularly useful for header parameters which might contain non-ASCII values, like file names. This follows the `HTML5 Working Draft Section 4.10.22.7`_ and matches the behavior of curl and modern browsers. .. _HTML5 Working Draft Section 4.10.22.7: https://w3c.github.io/html/sec-forms.html#multipart-form-data :param name: The name of the parameter, a string expected to be ASCII only. :param value: The value of the parameter, provided as ``bytes`` or `str``. :ret: A unicode string, stripped of troublesome characters. r���r���r���)r���r���r���r���rB����_HTML5_REPLACEMENTS)r&���r���s��� r����format_header_param_html5rE���_���sL������&��%���)�)��&����W�%�%���e�%8�9�9�E����u�u�u�%�%r���c��������������������V�����e�Zd�ZdZddefd�Zeefd���������������Zd��Zd��Z d��Z �d d�ZdS�) �RequestFielda�� A data container for request body parameters. :param name: The name of this request field. Must be unicode. :param data: The data/value body. :param filename: An optional filename of the request field. Must be unicode. :param headers: An optional dict-like object of headers to initially use for the field. :param header_formatter: An optional callable that is used to encode and format the headers. By default, this is :func:`format_header_param_html5`. Nc������������������x�����||�_���������||�_��������||�_��������i�|�_��������|rt ����������|������������|�_��������||�_��������d�S�r���)�_name� _filename�data�headers�dict�header_formatter)�selfr&���rK���r ���rL���rN���s��� r����__init__zRequestField.__init__����sC��������� �!����� ������ )���=�=�D�L� 0����r���c������������������������t����������|t����������������������r/t����������|������������dk����r|\��}}}n|\��}}t����������|������������}nd}d}|}�|�||||�������������}|���������������������|��������������|S�)a��� A :class:`~urllib3.fields.RequestField` factory from old-style tuple parameters. Supports constructing :class:`~urllib3.fields.RequestField` from parameter of key/value strings AND key/filetuple. A filetuple is a (filename, data, MIME type) tuple where the MIME type is optional. For example:: 'foo': 'bar', 'fakefile': ('foofile.txt', 'contents of foofile'), 'realfile': ('barfile.txt', open('realfile').read()), 'typedfile': ('bazfile.bin', open('bazfile').read(), 'image/jpeg'), 'nonamefile': 'contents of nonamefile field', Field names and filenames must be unicode. ����N)r ���rN���)�content_type)r����tuple�lenr ����make_multipart)�cls� fieldnamer���rN���r ���rK���rS���� request_params��� r����from_tupleszRequestField.from_tuples����s�������$��e�U�#�#�� ��5�z�z�Q���/4�,��$���!&���$�1�(�;�;����H��L��D����t�h�AQ� �� �� � �� �$�$�,�$�?�?�?��r���c������������������.�����|�����������������������||������������S�)aI�� Overridable helper function to format a single header parameter. By default, this calls ``self.header_formatter``. :param name: The name of the parameter, a string expected to be ASCII only. :param value: The value of the parameter, provided as a unicode string. )rN���)rO���r&���r���s��� r����_render_partzRequestField._render_part����s��������$�$�T�5�1�1�1r���c������������������������g�}|}t����������|t����������������������r|�����������������������������������}|D�]0\��}}|�)|���������������������|����������������������||��������������������������1d���������������������|������������S�)aO�� Helper function to format and quote a single header. Useful for single headers that are composed of multiple items. E.g., 'Content-Disposition' fields. :param header_parts: A sequence of (k, v) tuples or a :class:`dict` of (k, v) to format as `k1="v1"; k2="v2"; ...`. N�; )r���rM����items�appendr\���r>���)rO����header_parts�parts�iterabler&���r���s��� r���� _render_partszRequestField._render_parts����s������������l�D�)�)�� ,�#�)�)�+�+�H�#�� =�� =�K�D�%�� ����T�.�.�t�U�;�;�<�<�<���z�z�%� � � r���c������������������j����g�}g�d�}|D�]B}|�j������������������������������|d������������r%|���������������������|�d|�j���������|�������������������������C|�j��������������������������������������������D�]%\��}}||vr|r|���������������������|�d|����������������&|���������������������d�������������d���������������������|������������S�)z= Renders the headers for this request field. )�Content-Disposition�Content-Type�Content-LocationFz: z )rL����getr`���r_���r>���)rO����lines� sort_keys�sort_key�header_name�header_values��� r����render_headerszRequestField.render_headers����s����������O�O�O� �!�� M�� M�H��|����%�0�0�� M����(�(�(�D�L��4J�4J�K�L�L�L��)-��);�);�)=�)=�� J�� J�%�K���)�+�+���J��L�L�k�k�k�<�<�!H�I�I�I�� ���W�����|�|�E�"�"�"r���c������������������������|pd|�j���������d<���|�j���������dxx���������d���������������������d|����������������������d|�j��������fd|�j��������ff������������g������������z ��cc<���||�j���������d<���||�j���������d<���d S�) a|�� Makes this request field into a multipart request field. This method overrides "Content-Disposition", "Content-Type" and "Content-Location" headers to the request parameter. :param content_type: The 'Content-Type' of the request body. :param content_location: The 'Content-Location' of the request body. z form-datarf���r^�����r&���r ���rg���rh���N)rL���r>���rd���rI���rJ���)rO����content_dispositionrS����content_locations��� r���rV���zRequestField.make_multipart����s��������/B�.Q�\���*�+���*�+�+�+�u�z�z���"�"��t�z�*�[�$�.�,I�J���� �0 ��0 �� �+�+�+��(4���^�$�+;���'�(�(�(r���)NNN)�__name__� __module__�__qualname__�__doc__rE���rP����classmethodrZ���r\���rd���ro���rV���r���r���r���rG���rG���~���s������������������(���2� 1��1��1��1� ��<U��!��!��!���[�!�F2��2��2�!��!��!�,#��#��#�(�MQ�<��<��<��<��<��<r���rG���)r���)� __future__r����email.utilsr#���r���r9����packagesr���r ���r(���rD����update�rangerB���rE����format_header_param�objectrG���r���r���r����<module>r�������s)�����&��&��&��&��&��&������������������ � � � ��������������������'��'��'�V������������������%��h�'�'����������� �� �� �&��&��&�8�0���T<��T<��T<��T<��T<�6��T<��T<��T<��T<��T<r���