403Webshell
Server IP : 37.9.174.138  /  Your IP : 216.73.216.117
Web Server : Apache
System : Linux vps6.backend.sk 6.12.100+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.100-1 (2026-07-30) x86_64
User : ftpuser ( 1001)
PHP Version : 8.4.24
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/acme/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/acme/__pycache__/client.cpython-313.pyc
�

�K�g�y��h�SrSSKrSSKrSSKJr SSKJr SSKrSSK	r	SSK
r
SSKJr SSKJ
r
 SSKJr SSKJr SSKJr SS	KJr SS
KJr SSKJr SSKJr SSKrSSKrSS
KJr SSKJr SSKJr SSKJr SSKJ r  SSKJ!r! SSKJ"r" \RF"\$5r%Sr&"SS5r'"SS5r(g)zACME client API.�N)�parsedate_tz)�Any)�cast)�List)�Mapping)�Optional)�Set)�Tuple)�Union)�x509)�HTTPAdapter)�parse_header_links)�
challenges)�crypto_util)�errors)�jws)�messages�-c
���\rSrSrSrS\RSSSS4SjrS	\RS\R4S
jr
S\RS\R4SjrS:S\RS
\\RS\R4SjjrS;S\RS\S\R4SjjrS:S\S\\S\R&4SjjrS\R*S\\R*\R044SjrS:S\R&S\\R4S\R&4SjjrS\R&S\R4S\R&4SjrS\R&S\R&4SjrS;S\R&S\R4S\S\R&4SjjrS;S\R&S\R4S\S\R&4SjjrS\ RBS\"SS4S jr#S\4S!jr$S"\%S#\%S\R04S$jr&S%\R0S&\S\'\4S'jr(\)S(\SSS\R4S)j5r*\)S<S%\R0S*\\S+\\S\R4S,jj5r+S\RS-\RS\R4S.jr,S"\%S#\%S\R04S/jr-S\RS\R4S0jr.S\R*S\R*4S1jr/S<S%\R0S2\\R`S*\\S\R*4S3jjr1S4\RdS%\3RhS\Rj4S5jr6\)S%\R0S6\"S\R44S7j5r7S\ RBS\"S(\SS4S8jr8S9r9g)=�ClientV2�$ziACME client for a v2 API.

:ivar messages.Directory directory:
:ivar .ClientNetwork net: Client network.
�	directory�net�
ClientNetwork�returnNc��XlX lg)zqInitialize.

:param .messages.Directory directory: Directory Resource
:param .ClientNetwork net: Client network.
N�rr)�selfrrs   �-/usr/lib/python3/dist-packages/acme/client.py�__init__�ClientV2.__init__+s��#�����new_accountc��URURSU5nURS:Xa3SUR;a#[R
"URS5eUR
U5nX0RlU$)z�Register.

:param .NewRegistration new_account:

:raises .ConflictError: in case the account already exists

:returns: Registration Resource.
:rtype: `.RegistrationResource`
�
newAccount���Location)	�_postr�status_code�headersr�
ConflictError�_regr_from_responser�account)rr#�response�regrs    rr#�ClientV2.new_account4ss���:�:�d�n�n�\�:�K�H�����3�&�:��9I�9I�+I��&�&�x�'7�'7�
�'C�D�D��'�'��1�������r"r/c�p�URUS5URlURR$)zrQuery server about registration.

:param messages.RegistrationResource regr: Existing Registration
    Resource.

T)�_get_v2_accountrr-�rr/s  r�query_registration�ClientV2.query_registrationGs-�� �/�/��d�;������x�x���r"�updatec���URU5nUcUROUn[R"S0[	U5D6nURXS9nX@RlU$)aUpdate registration.

:param messages.RegistrationResource regr: Registration Resource.
:param messages.Registration update: Updated body of the
    resource. If not provided, body will be taken from `regr`.

:returns: Updated Registration Resource.
:rtype: `.RegistrationResource`

��body�)r2r9r�UpdateRegistration�dict�_send_recv_regrrr-)rr/r6r9�updated_regrs     r�update_registration�ClientV2.update_registrationSs]���#�#�D�)��$�n����&���*�*�:�T�&�\�:���+�+�D�+�<��'�����r"�update_bodyc�r�SURlURRSS9nUR	UR
SU5nURSnURU(a-[RRUR55OURUS9nX`RlU$)NT)�only_return_existingr%r'�r9�uri)rr-r9r6r(rr*r�Registration�	from_json�json)rr/rA�only_existing_regr.�updated_uri�new_regrs       rr2�ClientV2._get_v2_accountis�������� �I�I�,�,�$�,�G���:�:�d�n�n�\�:�<M�N���&�&�z�2���;�;�"-�%-�$9�$9�$C�$C�H�M�M�O�$T�37�9�9�#.��0��$�����r"�csr_pem�profilec	��[R"U5n[R"URUR
5nUR
R
[R5nURR[R5n/nUH5nUR[R"[RUS95 M7 UH>n	UR[R"[R [#U	5S95 M@ UcSn[R$"XrS9n
UR'UR(SU
5n[R*R-UR/55n/n
UR0H1nU
RUR3UR5U5US95 M3 [R6"UUR8R;S5U
US9$![Ra /nGNrf=f)z�Request a new Order object from the server.

:param bytes csr_pem: A CSR in PEM format.

:returns: The newly created order.
:rtype: OrderResource
)�typ�value�)�identifiersrN�newOrder�rEr')r9rE�authorizationsrM)r�load_pem_x509_csrr�%get_names_from_subject_and_extensions�subject�
extensions�get_extension_for_class�SubjectAlternativeNamerQ�get_values_for_type�	IPAddress�ExtensionNotFound�appendr�
Identifier�IDENTIFIER_FQDN�
IDENTIFIER_IP�str�NewOrderr(r�OrderrGrHrV�_authzr_from_response�_post_as_get�
OrderResourcer*�get)rrMrN�csr�dnsNames�san_ext�ipNamesrS�name�ip�orderr.r9rV�urls               r�	new_order�ClientV2.new_orderus����$�$�W�-���D�D�S�[�[�RU�R`�R`�a��	H��n�n�<�<�T�=X�=X�Y�G��m�m�7�7����G�G����D����x�2�2�x�7O�7O�� �
���B����x�2�2�x�7M�7M��"�g� �
 ���?��G��!�!�k�K���:�:�d�n�n�Z�8�%�@���~�~�'�'��
�
��8�����&�&�C��!�!�$�"<�"<�T�=N�=N�s�=S�Y\�"<�"]�^�'��%�%��� � �$�$�Z�0�)��	�	��-�%�%�	��G�	�s�)G.�.H�H�authzrc��URUR5nURX!RRUR5nX24$)z�Poll Authorization Resource for status.

:param authzr: Authorization Resource
:type authzr: `.AuthorizationResource`

:returns: Updated Authorization Resource and HTTP response.

:rtype: (`.AuthorizationResource`, `requests.Response`)

)rhrErgr9�
identifier)rrur.�updated_authzrs    r�poll�
ClientV2.poll�sD���$�$�V�Z�Z�0���3�3��k�k�,�,�f�j�j�:���'�'r"�orderr�deadlinec��Uc3[RR5[R"SS9-nURX5nUR	X5$)a,Poll authorizations and finalize the order.

If no deadline is provided, this method will timeout after 90
seconds.

:param messages.OrderResource orderr: order to finalize
:param datetime.datetime deadline: when to stop polling and timeout

:returns: finalized order
:rtype: messages.OrderResource

�Z��seconds)�datetime�now�	timedelta�poll_authorizations�finalize_order)rr{r|s   r�poll_and_finalize�ClientV2.poll_and_finalize�sO�����(�(�,�,�.��1C�1C�B�1O�O�H��)�)�&�;���"�"�6�4�4r"c�n�/nURRH�n[RR5U:dM'UR	URU5US9nURR[R:waURU5 M�[R"S5 [RR5U:aM�M� [U5[URR5:a[R"5e/nUHjnURR[R:wdM-URR H#nUR"cMURU5 M% Ml U(a[R$"U5eUR'US9$)zPoll Order Resource for status.rU�)rV)r9rVr�r�rgrh�statusr�STATUS_PENDINGr`�time�sleep�lenr�TimeoutError�STATUS_VALIDr�error�ValidationErrorr6)rr{r|�	responsesrrru�failed�challs        rr��ClientV2.poll_authorizations�sF���	��;�;�-�-�C��#�#�'�'�)�H�4��3�3�D�4E�4E�c�4J�PS�3�T���;�;�%�%��)@�)@�@��$�$�V�,���
�
�1�
��#�#�'�'�)�H�4�.��y�>�C���� :� :�;�;��%�%�'�'����F��{�{�!�!�X�%:�%:�:�#�[�[�3�3�E��{�{�.��
�
�f�-�4� �
��(�(��0�0��}�}�I�}�6�6r"c�.�[R"UR5n[R"US9nURURRU5nUR[RRUR55S9nU$)z�Start the process of finalizing an order.

:param messages.OrderResource orderr: order to finalize
:param datetime.datetime deadline: when to stop polling and timeout

:returns: updated order
:rtype: messages.OrderResource
)rkr8)rrWrMr�CertificateRequestr(r9�finalizer6rfrGrH)rr{rk�wrapped_csr�ress     r�begin_finalization�ClientV2.begin_finalization�sl���$�$�V�^�^�4���1�1�c�:���j�j����-�-�{�;�����H�N�N�$<�$<�S�X�X�Z�$H��I���
r"�fetch_alternative_chainsc��[RR5U:Ga�[R"S5 UR	UR
5n[RRUR55nUR[R:XaCURb [R"UR5e[R"S5eUR[R :Xa�UR"b�UR	UR"5nUR%XVR&S9nU(aKUR)US5nUVs/sHo�R	U5R&PM n	nUR%U	S9nU$[RR5U:aGM�[R*"5es snf)z�
Poll an order that has been finalized for its status.
If it becomes valid, obtain the certificate.

:returns: finalized order (with certificate)
:rtype: messages.OrderResource
r�zPThe certificate order failed. No further information was provided by the server.)r9�
fullchain_pem�	alternate)�alternative_fullchains_pem)r�r�r�r�rhrErrfrGrHr��STATUS_INVALIDr�r�
IssuanceError�Errorr��certificater6�text�
_get_linksr�)
rr{r|r�r.r9�certificate_response�alt_chains_urlsrr�
alt_chainss
          r�poll_finalization�ClientV2.poll_finalization�sc�����#�#�%��0��J�J�q�M��(�(����4�H��>�>�+�+�H�M�M�O�<�D��{�{�h�5�5�5��:�:�)� �.�.�t�z�z�:�:��l�l�%�&�&����� 5� 5�5�$�:J�:J�:V�'+�'8�'8��9I�9I�'J�$����D�@Y�@Y��Z��+�&*�o�o�6J�K�&X�O�IX�!Y��#�"3�"3�C�"8�"=�"=��J�!Y�#�]�]�j�]�Q�F��
�#���#�#�%��0�$�!�!�#�#��"Zs�$Gc�H�URU5 URXU5$)aCFinalize an order and obtain a certificate.

:param messages.OrderResource orderr: order to finalize
:param datetime.datetime deadline: when to stop polling and timeout
:param bool fetch_alternative_chains: whether to also fetch alternative
    certificate chains

:returns: finalized order
:rtype: messages.OrderResource

)r�r�)rr{r|r�s    rr��ClientV2.finalize_order
s&��	
����'��%�%�f�8P�Q�Qr"�cert�rsnc�B�URXURS5 g)z�Revoke certificate.

:param x509.Certificate cert: `x509.Certificate`

:param int rsn: Reason code for certificate revocation.

:raises .ClientError: If revocation is unsuccessful.

�
revokeCertN)�_revoker)rr�r�s   r�revoke�ClientV2.revokes��	
���T����|� <�=r"c���[URS5=(aG [URRS5=(a  URRR$)zGChecks if ACME server requires External Account Binding authentication.�meta�external_account_required)�hasattrrr�r��rs rr��"ClientV2.external_account_required&sG���t�~�~�v�.�=��t�~�~�*�*�,G�H�=��~�~�"�"�<�<�	=r"�args�kwargsc�B�USSS-USS-nUR"U0UD6$)zW
Send GET request using the POST-as-GET protocol.
:param args:
:param kwargs:
:return:
Nr��N)r()rr�r��new_argss    rrh�ClientV2._post_as_get,s3�����8�g�%��Q�R��0���z�z�8�.�v�.�.r"r.�
relation_typec���SUR;a/$[URS5nUVs/sH#nSU;dMSU;dMUSU:XdMUSPM% sn$s snf)z�
Retrieves all Link URIs of relation_type from the response.
:param requests.Response response: The requests HTTP response.
:param str relation_type: The relation type to filter by.
�Link�relrr)r*r)rr.r��links�ls     rr��ClientV2._get_links6s}����)�)�)��I�"�8�#3�#3�F�#;�<��"'�L�%�Q��A�:��"'�1�*��12�5��]�1J���%��%�L�	L��Ls�
A�A�A�	Arrc�z�[RRURU5R	55$)a
Retrieves the ACME directory (RFC 8555 section 7.1.1) from the ACME server.
:param str url: the URL where the ACME directory is available
:param ClientNetwork net: the ClientNetwork to use to make the request

:returns: the ACME directory object
:rtype: messages.Directory
)r�	DirectoryrGrjrH)�clsrrrs   r�
get_directory�ClientV2.get_directoryDs,���!�!�+�+�C�G�G�C�L�,=�,=�,?�@�@r"rE�terms_of_servicec��SUR;aURSSn[R"[RR	UR55URRSU5US9$)Nzterms-of-servicerrr')r9rEr�)r�r�RegistrationResourcerFrGrHr*rj)r�r.rEr�s    rr,�ClientV2._regr_from_responsePsk������/�'�~�~�.@�A�%�H���,�,��&�&�0�0�����A�� � �$�$�Z��5�-�/�	/r"r9c��URURU5nURX1RURS9$)N)rEr�)r(rEr,r�)rr/r9r.s    rr=�ClientV2._send_recv_regr\s@���:�:�d�h�h��-���'�'��(�(�!�2�2�(�4�	4r"c��URS[URS55 URR"U0UD6$)zzWrapper around self.net.post that adds the newNonce URL.

This is used to retry the request in case of a badNonce error.

�
new_nonce_url�newNonce)�
setdefault�getattrrr�post�rr�r�s   rr(�ClientV2._postjs7��	���/�7�4�>�>�:�+N�O��x�x�}�}�d�-�f�-�-r"c�f�URU[RRSSS.55$)z�Deactivate registration.

:param messages.RegistrationResource regr: The Registration Resource
    to be deactivated.

:returns: The Registration resource that was deactivated.
:rtype: `.RegistrationResource`

�deactivatedN)r��contact)r?rrFrGr3s  r�deactivate_registration� ClientV2.deactivate_registrationss4���'�'��h�.C�.C�.M�.M�$��6�/8�9�	9r"c���[R"SS9nURURU5nUR	UUR
RUR5$)z�Deactivate authorization.

:param messages.AuthorizationResource authzr: The Authorization resource
    to be deactivated.

:returns: The Authorization resource that was deactivated.
:rtype: `.AuthorizationResource`

r�)r�)r�UpdateAuthorizationr(rErgr9rw)rrur9r.s    r�deactivate_authorization�!ClientV2.deactivate_authorization�sP���+�+�=�A���:�:�f�j�j�$�/���)�)�(��K�K�"�"�F�J�J�0�	0r"rwc� �[R"[RRUR	55UR
R
SU5S9nUb0URRU:wa[R"U5eU$)Nr'rD)r�AuthorizationResource�
AuthorizationrGrHr*rjr9rwr�UnexpectedUpdate)rr.rwrErus     rrg�ClientV2._authzr_from_response�ss���/�/��'�'�1�1�(�-�-�/�B�� � �$�$�Z��5�7���!�f�k�k�&<�&<�
�&J��)�)�&�1�1��
r"�challbc��URURU5nURSSn[R"U[RRUR55S9nURUR:wa [R"UR5eU$![a [R
"S5ef=f)a(Answer challenge.

:param challb: Challenge Resource body.
:type challb: `.ChallengeBody`

:param response: Corresponding Challenge response
:type response: `.challenges.ChallengeResponse`

:returns: Challenge Resource with updated body.
:rtype: `.ChallengeResource`

:raises .UnexpectedUpdate:

�uprrz"up" Link header missing)�
authzr_urir9)r(rEr��KeyErrorr�ClientErrorr�ChallengeResource�
ChallengeBodyrGrHr�)rr�r.�respr��challrs      r�answer_challenge�ClientV2.answer_challenge�s��� �z�z�&�*�*�h�/��	A����D�)�%�0�J��+�+�!��'�'�1�1�$�)�)�+�>�@���:�:����#��)�)�&�*�*�5�5��
���	A��$�$�%?�@�@�	A�s�B,�,!C
�defaultc��URRS[U55n[U5n[RR5[R"US9-$![af [U5nUbS[R"USbUSOS5n[R"USS6U-
s$![[4a Of=fUnN�f=f)a�Compute next `poll` time based on response ``Retry-After`` header.

Handles integers and various datestring formats per
https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.37

:param requests.Response response: Response from `poll`.
:param int default: Default value (in seconds), used when
    ``Retry-After`` header is not present or invalid.

:returns: Time point when next `poll` should be performed.
:rtype: `datetime.datetime`

zRetry-AfterN���r�r)
r*rjrd�int�
ValueErrorrr�r��
OverflowErrorr�)r�r.r��retry_afterr��when�tz_secss       rr��ClientV2.retry_after�s����&�&�*�*�=�#�g�,�G��	��+�&�G�� � �$�$�&��);�);�G�)L�L�L���
	� ��,�D����&�0�0�T�"�X�=Q��b��WX�Y�G�#�,�,�d�2�A�h�7�'�A�A��"�M�2������G�
	�s5�A%�%C�>9B:�7C�:C
�
C�C
�
C�Cc��URU[R"UUS95nUR[R
:wa[R"S5eg)z�Revoke certificate.

:param .x509.Certificate cert: `x509.Certificate`

:param int rsn: Reason code for certificate revocation.

:param str url: ACME URL to post to

:raises .ClientError: If revocation is unsuccessful.

)r��reasonz0Successful revocation must return HTTP OK statusN)r(r�
Revocationr)�http_client�OKrr�)rr�r�rrr.s     rr��ClientV2._revoke�sY���:�:�c�&�1�1�,0�'*�,�-�����;�>�>�1��$�$�B�D�
D�2r"rr�)F)NN):�__name__�
__module__�__qualname__�__firstlineno__�__doc__rr�r �NewRegistrationr�r#r4rrFr?�boolr2�bytesrdrirsr�r
�requests�Responseryr�r�r�r�r�r�r�Certificater�r�r�rrhrr��classmethodr�r,r=r(r�r�rargr�r�ChallengeResponser�r�r�r��__static_attributes__r:r"rrr$s�����(�"4�"4��?��t���x�'?�'?��H�Da�Da��&
 �x�'D�'D�
 � (� =� =�
 �GK���(E�(E��$,�X�-B�-B�$C��!)�!>�!>��,
�H�$A�$A�
�PT�
�$�9�9�
�&��&��#��&�(�J`�J`�&�P(�8�9�9�(���6�6��8I�8I�I�J�(�$CG�5��(>�(>�5�$,�X�->�->�$?�5�KS�Ka�Ka�5�&7�(�*@�*@�7�H�L]�L]�7�!)�!7�!7�7�2��)?�)?�� (� 6� 6��$<A�$��(>�(>�$�$,�$5�$5�$�48�$� (�5�5�$�B9>�R�X�%;�%;�R�x�GX�GX�R�15�R�BJ�BX�BX�R� 
>�4�+�+�
>�#�
>�$�
>�=�4�=�/�#�/��/��9J�9J�/�L�8�#4�#4�L�S�L�T�RU�Y�L��	A��	A�/�	A�h�>P�>P�	A��	A��SW�>B�	/�8�+<�+<�	/�8�C�=�	/�.6�s�m�	/�!)�!>�!>�	/��	/�4�H�$A�$A�4�&�3�3�4�8@�8U�8U�4�.�3�.�#�.�(�2C�2C�.�9�H�,I�,I�9�%-�%B�%B�9�0�)1�)G�)G�0�&.�&D�&D�0�$KO�37��h�.?�.?��*2�8�3F�3F�*G��#+�C�=��<D�<Z�<Z���x�'=�'=��#-�#?�#?��DL�D^�D^��:�M�8�#4�#4�M�s�M�x�GX�GX�M��M�>D�D�,�,�D�3�D�S�D�T�Dr"rc��\rSrSrSrSrSrSrSrS\	RSS	\4S
\	RS\
\RS\	R S
\S\S\SS4SjjrS&SjrS\	R,S\S\S\4Sjr\S'S\R4S\
\S\R44Sjj5rS\S\S\S\S\R44
SjrS\S\S\R44Sjr\4S\S\S\S\R44SjjrS\R4SS4S jr S\S!\S\4S"jr!S\S\S\R44S#jr"\4S\S\	R,S\S\S\R44
S$jjr#S%r$g)(ri�znWrapper around requests that signs POSTs for authentication.

Also adds user agent, and handles Content-Type.
zapplication/jsonzapplication/jose+jsonzapplication/problem+jsonzReplay-NonceNTzacme-python�keyr-�alg�
verify_ssl�
user_agent�timeoutrc�"�XlX lX0lX@l[	5UlXPl[R"5Ul	X`l
[5nURRSU5 URRSU5 g)Nzhttp://zhttps://)
rr-rr�set�_noncesrr�Session�session�_default_timeoutr
�mount)rrr-rrrr�adapters        rr �ClientNetwork.__init__sk��������$��!$����$���'�'�)��� '���-�������9�g�.������:�w�/r"c�Z�URR5 g![a gf=fr�)r �close�	Exceptionr�s r�__del__�ClientNetwork.__del__s)��	��L�L��� ���	��	�s��
*�*�obj�noncerrc	��U(aURSS9R5OSn[RSU5 URUUS.nUR
bUR
SUS'URUS'[RR"U40[[[[4U5D6RSS9$)	z�Wrap `JSONDeSerializable` object in JWS.

.. todo:: Implement ``acmePath``.

:param josepy.JSONDeSerializable obj:
:param str url: The URL to which this object will be POSTed
:param str nonce:
:rtype: str

�)�indentr"zJWS payload:
%s)rr+rrrE�kidr)�
json_dumps�encode�logger�debugrr-rr�JWS�signrrrdr)rr*r+rr�jobjr�s      r�_wrap_in_jws�ClientNetwork._wrap_in_jwss���58�s�~�~�Q�~�'�.�.�0�S�����'��.��8�8���
���<�<�#� �L�L��/�F�5�M�����u�
��w�w�|�|�D�D�D���c��):�F�$C�D�O�O�WX�O�Y�Yr"r.�content_typec�@�URRS5nU(a"URS5SR5nUR	5nURS:Xa0[R"URRSS55eUR(d^UbEX0R:wa[RSU5 [RRU5e[R$"U5eUb%X0R&:wa[RS	U5 X R&:XaUc[R$"S
U35eU$![
a SnGNf=f![ R"an[R$"X45eSnAff=f)a_Check response content and its type.

.. note::
   Checking is not strict: wrong server response ``Content-Type``
   HTTP header is ignored if response is an expected JSON object
   (c.f. Boulder #56).

:param str content_type: Expected Content-Type response header.
    If JSON is expected and not present in server response, this
    function will raise an error. Otherwise, wrong Content-Type
    is ignored, but logged.

:raises .messages.Error: If server response body
    carries HTTP Problem (https://datatracker.ietf.org/doc/html/rfc7807).
:raises .ClientError: In case of other networking errors.

�Content-Type�;rNi�r'zUNKNOWN-LOCATIONz/Ignoring wrong Content-Type (%r) for JSON Errorz<Ignoring wrong Content-Type (%r) for JSON decodable responsez"Unexpected response Content-Type: )r*rj�split�striprHr�r)rr+�ok�JSON_ERROR_CONTENT_TYPEr2r3rr�rG�jose�DeserializationErrorr��JSON_CONTENT_TYPE)r�r.r9�response_ctr6r�s      r�_check_response�ClientNetwork._check_response4ss��(�&�&�*�*�>�:���%�+�+�C�0��3�9�9�;�K�	��=�=�?�D����3�&��&�&�x�'7�'7�';�';�J�HZ�'[�\�\��{�{����"=�"=�=��L�L�I�#�%�@�"�.�.�2�2�4�8�8��(�(��2�2���K�3H�3H�$H����� +�-��4�4�4����(�(�+M�k�]�)[�\�\����;�	��D�	���0�0�@� �,�,�h�->�?�?��@�s*�E�E-�E*�)E*�-F�F�F�methodr�r�c	�l�US:Xa[RSX$S5 O[RSX5 URUS'URS05 USRSUR5 URSUR
5 URR"X/UQ70UD6nS
US;a![ R""UR$5n
OSUlUR(n
[RSUR*SR-SUR.R1555U
5 U$![RRaRnS	n[R"U[U55nUceUR5up�p�[SU	U
SU35eS
nAff=f)a�Send HTTP request.

Makes sure that `verify_ssl` is respected. Logs request and
response (with headers). For allowed parameters please see
`requests.request`.

:param str method: method for the new `requests.Request` object
:param str url: URL for the new `requests.Request` object

:raises requests.exceptions.RequestException: in case of any problems

:returns: HTTP Response
:rtype: `requests.Response`


�POSTzSending POST request to %s:
%s�datazSending %s request to %s.�verifyr*z
User-AgentrzT.*host='(\S*)'.*Max retries exceeded with url\: (\/\w*).*(\[Errno \d+\])([A-Za-z ]*)NzRequesting �:�Acceptzutf-8z!Received response:
HTTP %d
%s

%s�
c3�H# �UHupSRX5v� M g7f)z{0}: {1}N)�format)�.0�k�vs   r�	<genexpr>�.ClientNetwork._send_request.<locals>.<genexpr>�s(���F�,D�D�A� *�0�0��6�6�,D�s� ")r2r3rr�rr!r �requestr�
exceptions�RequestException�re�matchrd�groupsr��base64�	b64encode�content�encodingr�r)�joinr*�items)rrGrrr�r�r.�e�	err_regex�m�host�path�_err_no�err_msg�
debug_contents              r�
_send_request�ClientNetwork._send_requestos���"�V���L�L�:��f�~�
/�
�L�L�4�f�B��?�?��x�����)�R�(��y��$�$�\�4�?�?�C����)�T�%:�%:�;�	C��|�|�+�+�F�I�$�I�&�I�H�8�v�i�(�(�"�,�,�X�-=�-=�>�M�!(�H��$�M�M�M����<��)�)��Y�Y�F�,4�,<�,<�,B�,B�,D�F�F�"�		$�
���S�"�"�3�3�	C�
/�p�I�����C��F�+�A��y��+,�8�8�:�(�D���{�4�&���a��y�A�B�B��+	C�s� E�F3�!A
F.�.F3c�.�UR"S/UQ70UD6$)z�Send HEAD request without checking the response.

Note, that `_check_response` is not called, as it is expected
that status code other than successfully 2xx will be returned, or
messages2.Error will be raised by the server.

�HEAD)rjr�s   r�head�ClientNetwork.head�s���!�!�&�:�4�:�6�:�:r"c�F�URUR"SU40UD6US9$)z$Send GET request and check response.�GET�r9)rErj)rrrr9r�s    rrj�ClientNetwork.get�s5���#�#����u�c�4�V�4�<�$�Q�	Qr"c��URUR;axURURn[RRSRU5n[RSU5 URRU5 g[R"U5e![Ran[R"X$5eSnAff=f)Nr+zStoring nonce: %s)�REPLAY_NONCE_HEADERr*r�Header�_fields�decoderArBr�BadNoncer2r3r�add�MissingNonce)rr.r+�
decoded_noncer�s     r�
_add_nonce�ClientNetwork._add_nonce�s����#�#�x�'7�'7�7��$�$�T�%=�%=�>�E�
4� #�
�
� 2� 2�7� ;� B� B�5� I�
�
�L�L�,�e�4��L�L���]�+��%�%�h�/�/���,�,�
4��o�o�e�3�3��
4�s�,B)�)C�=C�Cr�c��UR(dZ[RS5 UcURU5nOUR	URU5SS9nURU5 URR
5$)NzRequesting fresh noncerr)rr2r3rnrEr}�pop)rrrr�r.s    r�
_get_nonce�ClientNetwork._get_nonce�si���|�|��L�L�1�2��$��9�9�S�>�� �/�/��	�	�-�0H�W[�/�\���O�O�H�%��|�|���!�!r"c���UR"U0UD6$![RaCnURS:Xa-[RSU5 UR"U0UD6sSnA$eSnAff=f)z�POST object wrapped in `.JWS` and check response.

If the server responded with a badNonce error, the request will
be retried once.

�badNoncez Retrying request after error:
%sN)�
_post_oncerr��coder2r3)rr�r�r�s    rr��ClientNetwork.post�sa��	��?�?�D�3�F�3�3���~�~�	��z�z�Z�'����@�%�H�����7��7�7���		�s ��A+�7A&�A+�%A&�&A+c��URSS5nURX RX5U5nURSSU05 UR"SU4SU0UD6nURXsS9nUR
U5 U$)Nr�r*r;rIrJrr)r�r7r�r�rjrEr})rrrr*r9r�r�rJr.s        rr��ClientNetwork._post_once�s����
�
�?�D�9�
�� � ��o�o�c�&I�3�O�����)�n�l�%C�D��%�%�f�c�G��G��G���'�'��'�L������!��r")r!rr-rrr rr)rNr�)%rr	r
rrrC�JOSE_CONTENT_TYPEr@rurA�RS256�DEFAULT_NETWORK_TIMEOUT�JWKrrr��JWASignaturerrdr�r r(�JSONDeSerializabler7rrrrErrjrnrjr}r�r�r�rr:r"rrr�s���+��/��8��(��
�Z^�*.�*�*��#0�AX�0�D�H�H�0�x��8U�8U�/V�0��'�'�0�BF�0� �0�;>�0�]a�0� �Z�� 7� 7�Z��Z�#�Z�RU�Z�2�6:�8�x�'8�'8�8�&.�s�m�8�?G�?P�?P�8��8�tE�C�E�c�E�#�E��E�QY�Qb�Qb�E�N;�#�;��;��1B�1B�;�1B�Q�s�Q�#�Q��Q�&�/�/�Q�
0�8�#4�#4�
0��
0�	"�c�	"�#�	"�#�	"�
�#�
��
��1B�1B�
� (9��c���(?�(?��!$��DG��LT�L]�L]��r"r))rr\r��email.utilsr�http.client�clientr�loggingrYr��typingrrrrrr	r
r�cryptographyr�josepyrAr�requests.adaptersr
�requests.utilsr�acmerrrrr�	getLoggerrr2r�rrr:r"r�<module>r�s����
��$�!��	�������������)�-������	�	�	�8�	$����GD�GD�TF�Fr"

Youez - 2016 - github.com/yon3zu
LinuXploit