%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /snap/certbot/5911/lib64/python3.12/site-packages/acme/__pycache__/
Upload File :
Create Path :
Current File : //snap/certbot/5911/lib64/python3.12/site-packages/acme/__pycache__/messages.cpython-312.pyc

�

�h�j�k��`�dZddlmZddlZddlZddlmZddlmZddlmZddlm	Z	ddlm
Z
dd	lmZddl
Zdd
lmZddlmZddlmZdd
lmZddlmZdZidd�dd�dd�dd�dd�dd�dd�dd�d d!�d"d#�d$d%�d&d'�d(d)�d*d+�d,d-�d.d/�d0d1�d2d3d4d5d6d7d8d9d:d;�	�Ziej/�D��cic]\}}e|z|��
c}}�Zd<ed=efd>�ZGd?�d@ej8e�ZGdA�dBe�Zed$�ZedC�Z GdD�dEejB�Z"GdF�dGejBejF�Z#GdH�dIe�Z$e$dJ�Z%e$dK�Z&e$dL�Z'e$dM�Z(e$dN�Z)e$dO�Z*e$dP�Z+e$dQ�Z,GdR�dSej8�Z-GdT�dUejB�Z.GdV�dWe.�Z/GdX�dYejB�Z0GdZ�d[�Z1e
d\d]�^�Z2Gd_�d]e0�Z3Gd`�dae3�Z4Gdb�dce3�Z5Gdd�dee/�Z6Gdf�dge0�Z7Gdh�die.�Z8Gdj�dke0�Z9Gdl�dme9�Z:Gdn�doe9�Z;Gdp�dqe/�Z<Gdr�dsejB�Z=Gdt�due/�Z>Gdv�dwejB�Z?Gdx�dye0�Z@Gdz�d{e/�ZAGd|�d}e@�ZBGd~�de0�ZCycc}}w)�zACME protocol messages.�)�HashableN)�Any)�Iterator)�Mapping)�MutableMapping)�TypeVar)�x509)�
challenges)�errors)�fields)�jws)�utilzurn:ietf:params:acme:error:�accountDoesNotExistz4The request specified an account that does not exist�alreadyRevokedzOThe request specified a certificate to be revoked that has already been revoked�badCSRz2The CSR is unacceptable (e.g., due to a short key)�badNoncez1The client sent an unacceptable anti-replay nonce�badPublicKeyz>The JWS was signed by a public key the server does not support�badRevocationReasonz;The revocation reason provided is not allowed by the server�badSignatureAlgorithmz@The JWS was signed with an algorithm the server does not support�caaz\Certification Authority Authorization (CAA) records forbid the CA from issuing a certificate�compoundzBSpecific error conditions are indicated in the "subproblems" array�
connectionz?The server could not connect to the client to verify the domain�dnszAThere was a problem with a DNS query during identifier validation�dnssecz4The server could not validate a DNSSEC signed domain�incorrectResponsez;Response received didn't match the challenge's requirements�invalidEmailz1The provided email for a registration was invalid�invalidContactz$The provided contact URI was invalid�	malformedz!The request message was malformed�rejectedIdentifierz9The server will not issue certificates for the identifierzLThe request attempted to finalize an order that is not ready to be finalizedz,There were too many requests of a given typez(The server experienced an internal errorz=The server experienced a TLS error during domain verificationz)The client lacks sufficient authorizationz@A contact URL for an account used an unsupported protocol schemez*The server could not resolve a domain namez'An identifier is of an unsupported typez,The server requires external account binding)	�
orderNotReady�rateLimited�serverInternal�tls�unauthorized�unsupportedContact�unknownHost�unsupportedIdentifier�externalAccountRequired�err�returnc�`�t|t�r|j�t|jvSy)z#Check if argument is an ACME error.F)�
isinstance�Error�typ�ERROR_PREFIX)r)s �I/root/parts/certbot/install/lib/python3.12/site-packages/acme/messages.py�
is_acme_errorr1=s'���#�u��3�7�7�#6��s�w�w�&�&��c���eZdZUdZdZeZeedfe	d<deddf�fd�Z
defd�Zed	eddfd
��Z
defd�Zdedefd
�Zdefd�Z�xZS)�	_ConstantzACME constant.��name�POSSIBLE_NAMESr6r*Nc�N��t�|��||j|<||_y�N)�super�__init__r7r6��selfr6�	__class__s  �r0r;z_Constant.__init__Is%���
����$(����D�!���	r2c��|jSr9r5�r=s r0�to_partial_jsonz_Constant.to_partial_jsonNs���y�y�r2�jobjc��||jvr"tj|j�d���|j|S)Nz not recognized)r7�jose�DeserializationError�__name__��clsrBs  r0�	from_jsonz_Constant.from_jsonQs=���s�)�)�)��+�+�s�|�|�n�O�,L�M�M��!�!�$�'�'r2c�N�|jj�d|j�d�S)N�(�))r>rFr6r@s r0�__repr__z_Constant.__repr__Ws$���.�.�)�)�*�!�D�I�I�;�a�8�8r2�otherc�b�t|t|��xr|j|jk(Sr9)r,�typer6)r=rNs  r0�__eq__z_Constant.__eq__Zs%���%��d��,�H����t�y�y�1H�Hr2c�D�t|j|jf�Sr9)�hashr>r6r@s r0�__hash__z_Constant.__hash__]s���T�^�^�T�Y�Y�/�0�0r2)rF�
__module__�__qualname__�__doc__�	__slots__�NotImplementedr7�dict�str�__annotations__r;rA�classmethodrIrMr�boolrQ�intrT�
__classcell__�r>s@r0r4r4Ds������I�-;�N�D��k�)�*�;��S��T��
����(�S�(�[�(��(�
9�#�9�I�C�I�D�I�1�#�1r2r4c�*�eZdZUdZiZeeefed<y)�IdentifierTypezACME identifier type.r7N�	rFrUrVrWr7rZr[r4r\�r2r0rcrcas���+-�N�D��i��(�-r2rc�ipc��eZdZUdZej
dej��Zee	d<ej
d�Z
ee	d<y)�
IdentifierzJACME identifier.

    :ivar IdentifierType typ:
    :ivar str value:

    rP��decoderr.�valueN)rFrUrVrWrD�fieldrcrIr.r\rkr[rer2r0rhrhjs;���%�$�*�*�V�^�5M�5M�N�C��N�����G�$�E�3�$r2rhc��eZdZUdZej
ddd��Zeed<ej
dd��Z	ed	zed<ej
d
d��Z
ed	zed
<ej
dejd��Z
ed	zed<ej
d
d��Zedd	zed
<ej deeeefdedfd��Zedededdfd��Zeded	zfd��Zeded	zfd��Zdededd	fd�Zdefd�Zy	)r-a�ACME error.

    https://datatracker.ietf.org/doc/html/rfc7807

    Note: Although Error inherits from JSONObjectWithFields, which is immutable,
    we add mutability for Error to comply with the Python exception API.

    :ivar str typ:
    :ivar str title:
    :ivar str detail:
    :ivar Identifier identifier:
    :ivar tuple subproblems: An array of ACME Errors which may be present when the CA
            returns multiple errors related to the same request, `tuple` of `Error`.

    rPTzabout:blank��	omitempty�defaultr.�title�roN�detail�
identifier�rjro�subproblems)r-.rkr*c�&�td�|D��S)Nc3�FK�|]}tj|����y�wr9)r-rI)�.0�
subproblems  r0�	<genexpr>z$Error.subproblems.<locals>.<genexpr>�s����I�Z�U�_�_�Z�0�I���!��tuple�rks r0rvzError.subproblems�s���I�5�I�I�Ir2�code�kwargsc�T�|tvrtd|z��t|z}|dd|i|��S)z�Create an Error instance with an ACME Error code.

        :str code: An ACME error code, like 'dnssec'.
        :kwargs: kwargs to pass to Error.

        z4The supplied code: %s is not a known ACME error coder.re)�ERROR_CODES�
ValueErrorr/)rHr�r�r.s    r0�	with_codezError.with_code�sE���{�"��%�'+�,�-�
-��T�!���%�s�%�f�%�%r2c�@�tj|j�S)z�Hardcoded error description based on its type.

        :returns: Description if standard ACME error or ``None``.
        :rtype: str

        )�ERROR_TYPE_DESCRIPTIONS�getr.r@s r0�descriptionzError.description�s��'�*�*�4�8�8�4�4r2c�j�t|j�jdd��d}|tvr|Sy)z�ACME error code.

        Basically self.typ without the ERROR_PREFIX.

        :returns: error code if standard ACME code or ``None``.
        :rtype: str

        �:�)�maxsplit���N)r[r.�rsplitr�)r=r�s  r0r�z
Error.code�s6���4�8�8�}�#�#�C�!�#�4�R�8���;���K�r2r6c�0�tj|||�Sr9)�object�__setattr__)r=r6rks   r0r�zError.__setattr__�s���!�!�$��e�4�4r2c�v�djd�|j|j|j|jfD��j�}|jrd|jj�d�|z}|jr1t|j�dkDr|jD]
}|d|��z
}�|S)Ns :: c3�DK�|]}|�|jdd����y�w)N�ascii�backslashreplace��encode)ry�parts  r0r{z Error.__str__.<locals>.<genexpr>�s*����!�9=���
�K�K��!3�4�!�s� zProblem for z: r�
)
�joinr.r�rsrq�decodertrkrv�len)r=�resultrzs   r0�__str__z
Error.__str__�s������!�
�X�X�t�'�'����d�j�j�A�!�!�"(���	��?�?�#�D�O�O�$9�$9�#:�"�=��F�F�����D�$4�$4� 5�� 9�"�.�.�
,�
��B�z�l�+�+��
,��
r2)rFrUrVrWrDrlr.r[r\rqrsrhrIrtrvr~rj�listrZrr]r��propertyr�r�r�r�rer2r0r-r-usp����t�z�z�&�D�-�H�C��H�"��
�
�7�d�;�E�3��:�;�#����H��=�F�C�$�J�=�$.�D�J�J��j�2�2�d�%D�J�
�T�!�D�.8�d�j�j��RV�.W�K��|�$�t�+�W����J�4��S�#�X��/�J�E�,�4G�J��J��
&�S�
&�C�
&�G�
&��
&��5�S�4�Z�5��5���c�D�j����5��5�C�5�D�5�
��
r2r-c�*�eZdZUdZiZeeefed<y)�StatuszACME "status" field.r7Nrdrer2r0r�r��s���+-�N�D��i��(�-r2r��unknown�pending�
processing�valid�invalid�revoked�ready�deactivatedc��eZdZdZGd�dej
�Zdeee	fddfd�Z
dede	fd	�Zdede	fd
�Zde
ee	ffd�Zedeee	fddfd��Zy)
�	DirectoryzmDirectory.

    Directory resources must be accessed by the exact field name in RFC8555 (section 9.7.5).
    c���eZdZUdZej
dd��Zedzed<ej
dd��Z	edzed<ej
dd��Z
eed	fdzed
<ej
dd��Ze
dzed<ej
d
d��Zeeefdzed
<deddf�fd�Zededzfd��Zdeef�fd�Zdedefd�Z�xZS)�Directory.MetazDirectory Meta.�termsOfServiceTrrN�_terms_of_service�website�
caaIdentities.�caa_identitiesr(�external_account_required�profilesr�r*c���|j�D��cic]\}}|j|�|��}}}t�|�di|��ycc}}w�Nre��items�_internal_namer:r;�r=r��k�vr>s    �r0r;zDirectory.Meta.__init__�sF���<B�L�L�N�K�D�A�q�d�)�)�!�,�a�/�K�F�K��G��&�v�&��L��Ac��|jS)zURL for the CA TOS)r�r@s r0�terms_of_servicezDirectory.Meta.terms_of_service�s���)�)�)r2c#�P�K�t�|��D]}|dk(r|ddn|���y�w)Nr�r��r:�__iter__r<s  �r0r�zDirectory.Meta.__iter__�s8�������(�*�
H��"&�*=�"=�d�1�2�h�4�G�
H�s�#&r6c��|dk(rd|zS|S)Nr��_re�r=r6s  r0r�zDirectory.Meta._internal_name�s��!%�);�!;�3��:�E��Er2)rFrUrVrWrDrlr�r[r\r�r�r~r�r^r�rZrr;r�r�rr�r�r`ras@r0�Metar��s����(2��
�
�3C�t�(T��3��:�T�(�d�j�j��d�C���t��C�1;����O�W[�1\���c�3�h��$�.�\�1;����<U��2�!�4�$�;�	�*4�$�*�*�Z�4�*P��$�s�C�x�.�4�'�P�	'�S�	'�T�	'�
�	*�c�D�j�	*�
�	*�	H�h�s�m�	H�	F�s�	F�s�	Fr2r�rBr*Nc��||_yr9)�_jobj�r=rBs  r0r;zDirectory.__init__�s	����
r2r6c�X�	||S#t$r}tt|���d}~wwxYwr9)�KeyError�AttributeErrorr[)r=r6�errors   r0�__getattr__zDirectory.__getattr__�s0��	-���:����	-� ��U��,�,��	-�s��	)�$�)c�Z�	|j|S#t$rtd|�d���wxYw)NzDirectory field "z" not found)r�r�r�s  r0�__getitem__zDirectory.__getitem__s=��	B��:�:�d�#�#���	B��.�t�f�K�@�A�A�	B�s��*c�D�tj|jd��S)Nc��|Sr9re)r�s r0�<lambda>z+Directory.to_partial_json.<locals>.<lambda>s��1�r2)r�map_keysr�r@s r0rAzDirectory.to_partial_jsons���}�}�T�Z�Z��5�5r2c�n�|jj|jdi��|d<||�S)N�meta)r�rI�poprGs  r0rIzDirectory.from_jsons/���x�x�)�)�$�(�(�6�2�*>�?��V���4�y�r2)rFrUrVrWrD�JSONObjectWithFieldsr�rr[rr;r�r�rZrAr]rrIrer2r0r�r��s����
F�t�(�(�F�6�W�S�#�X�.��4��-��-��-�B��B��B�6��c�3�h��6���^�C��H�5��+���r2r�c�@�eZdZUdZej
d�Zded<y)�ResourcezOACME Resource.

    :ivar acme.messages.ResourceBody body: Resource body.

    �body�ResourceBodyN)rFrUrVrWrDrlr�r\rer2r0r�r�s���
&�4�:�:�f�-�D�.�-r2r�c�@�eZdZUdZej
d�Zeed<y)�ResourceWithURIzKACME Resource with URI.

    :ivar str uri: Location of the resource.

    �uriN)	rFrUrVrWrDrlr�r[r\rer2r0r�r�s���
�t�z�z�%� �C�� r2r�c��eZdZdZy)r�zACME Resource Body.N�rFrUrVrWrer2r0r�r�&s��r2r�c�\�eZdZdZe	d
dejdedededede	ee
ffd��Zy	)�ExternalAccountBindingzACME External Account Binding�account_public_key�kid�hmac_key�	directory�hmac_algr*c�t�tj|j��j�}tj
j
|�}|d}tjjtjjtjjd�}	|	j|�}
|
�1dj|	j��}td|�d|�d���tj j#|tj$j'|��|
d||�}|j�S)	zLCreate External Account Binding Resource from contact details, kid and hmac.�
newAccount)�HS256�HS384�HS512Nz, zInvalid value for hmac_alg: z. Expected one of: �.)�key)�json�dumpsrAr�rD�b64�	b64decode�jwar�r�r�r�r��keysr�r
�JWS�sign�jwk�JWKOct)
rHr�r�r�r�r��key_json�decoded_hmac_key�url�hmac_alg_map�alg�	supported�eabs
             r0�	from_dataz ExternalAccountBinding.from_data-s��
�:�:�0�@�@�B�C�J�J�L���8�8�-�-�h�7����%���X�X�^�^��X�X�^�^��X�X�^�^�
��
���x�(���;��	�	�,�"3�"3�"5�6�I��;�H�:�F1�1:��1�>�?�
?��g�g�l�l�8�T�X�X�_�_�9I�_�%J�����%���"�"�$�$r2N)r�)rFrUrVrWr]rD�JWKr[r�rZrrrer2r0r�r�*sS��'��8?�%�4�8�8�%�#�%��%�&�%�25�%�DH��c��N�%��%r2r��GenericRegistration�Registration)�boundc���eZdZUdZej
ddejj��Zeje	d<ej
ddd��Z
eedfe	d<ej
d	d�
�Z
edze	d	<ej
dd�
�Zedze	d<ej
d
d�
�Zedze	d<ej
dd�
�Zedze	d<ej
dd�
�Zeeefdze	d<dZdZe			d$deededzdedzdeeefdzdedefd��Zdeddf�fd�Zdedeedffd�Zdeeefdeeeffd�Zdeeeff�fd �Zdeeeff�fd!�Z e!deedffd"��Z"e!deedffd#��Z#�xZ$S)%rz�Registration Resource Body.

    :ivar jose.JWK key: Public key.
    :ivar tuple contact: Contact information following ACME spec,
        `tuple` of `str`.
    :ivar str agreement:

    r�T�rorj�contactrern.�	agreementrrN�status�termsOfServiceAgreed�terms_of_service_agreed�onlyReturnExisting�only_return_existing�externalAccountBinding�external_account_bindingztel:zmailto:rH�phone�emailr�r*c�F�d|v}t|jdd��}|�|j|j|z�|�;|j	|jd�D�cgc]}|j|z��c}�|s|rt|�|d<|r||d<|di|��Scc}w)a
        Create registration resource from contact details.

        The `contact` keyword being passed to a Registration object is meaningful, so
        this function represents empty iterables in its kwargs by passing on an empty
        `tuple`.
        r
re�,r)r�r��append�phone_prefix�extend�split�email_prefixr~)rHrrrr��contact_provided�details�mails        r0rzRegistration.from_dataes���%��.���v�z�z�)�R�0�1�����N�N�3�+�+�e�3�4����N�N����C�@P�Q��C�,�,�t�3�Q�R��&� %�g��F�9��#�1I�F�-�.��}�V�}���Rs� Bc�d��d|vr|d�tj|dd�t�|�di|��y)z;Note if the user provides a value for the `contact` member.r
N�_add_contactTre)r�r�r:r;)r=r�r>s  �r0r;zRegistration.__init__�s7������6�)�#4�#@����t�^�T�:�
���"�6�"r2�prefixc�@��t�fd�|jD��S)Nc3�\�K�|]#}|j��r|t��d���%y�wr9)�
startswithr�)ryrsr!s  �r0r{z/Registration._filter_contact.<locals>.<genexpr>�s2�����*�%+�� � ��(�
�3�v�;�<� �*�s�),)r~r
)r=r!s `r0�_filter_contactzRegistration._filter_contact�s!����*�/3�|�|�*�*�	*r2rBc�H�t|dd�r|jd�|d<|S)a�
        The `contact` member of Registration objects should not be required when
        de-serializing (as it would be if the Fields' `omitempty` flag were `False`), but
        it should be included in serializations if it was provided.

        :param jobj: Dictionary containing this Registrations' data
        :type jobj: dict

        :returns: Dictionary containing Registrations data to transmit to the server
        :rtype: dict
        r Fr
)�getattrr�r�s  r0�_add_contact_if_appropriatez(Registration._add_contact_if_appropriate�s'���4���/�"�k�k�)�4�D��O��r2c�B��t�|��}|j|�S)z2Modify josepy.JSONDeserializable.to_partial_json())r:rAr(�r=rBr>s  �r0rAzRegistration.to_partial_json�s!����w�&�(���/�/��5�5r2c�B��t�|��}|j|�S)z;Modify josepy.JSONObjectWithFields.fields_to_partial_json())r:�fields_to_partial_jsonr(r*s  �r0r,z#Registration.fields_to_partial_json�s!����w�-�/���/�/��5�5r2c�8�|j|j�S)z*All phones found in the ``contact`` field.)r%rr@s r0�phoneszRegistration.phones�����#�#�D�$5�$5�6�6r2c�8�|j|j�S)z*All emails found in the ``contact`` field.)r%rr@s r0�emailszRegistration.emails�r/r2)NNN)%rFrUrVrWrDrlrrIr�r\r
r~r[rrr�rr^rrrZrrrr]rPrrr;r%r(rAr,r�r.r1r`ras@r0rrKs'�����D�J�J�u��d�h�h�>P�>P�Q�C����Q� *�t�z�z�)�t�R�P�G�U�3��8�_�P�&�D�J�J�{�d�C�I�s�T�z�C�&�D�J�J�x�4�@�F�F�T�M�@�+5�4�:�:�6L�X\�+]��T�D�[�]�(2��
�
�3G�SW�(X��$��+�X�6@�d�j�j�AY�DH�7J��d�3��8�n�t�3�J��L��L��FJ�&*�DH��t�/�0���t����t���,0��c��N�T�,A�� ��%8����@#��#��#�*�c�*�e�C��H�o�*�
��S�#�X���4��S��>��"6��c�3�h��6�
6��S�#�X��6�
�7��c�3�h��7��7��7��c�3�h��7��7r2c��eZdZdZy)�NewRegistrationzNew registration.Nr�rer2r0r3r3�s��r2r3c��eZdZdZy)�UpdateRegistrationzUpdate registration.Nr�rer2r0r5r5�s��r2r5c��eZdZUdZej
dej��Zee	d<ej
dd��Z
ee	d<ej
dd��Zee	d<y)	�RegistrationResourcez�Registration Resource.

    :ivar acme.messages.Registration body:
    :ivar str new_authzr_uri: Deprecated. Do not use.
    :ivar str terms_of_service: URL for the CA TOS.

    r�ri�new_authzr_uriTrrr�N)
rFrUrVrWrDrlrrIr�r\r8r[r�rer2r0r7r7�sW���$����F�L�4J�4J�K�D�,�K�$�$�*�*�%5��F�N�C�F�&�D�J�J�'9�T�J��c�Jr2r7c���eZdZUdZdZejddd��Zee	d<ejde
jde�	�Z
e
e	d<ejd
d��Zej"dze	d
<ejdejdd�	�Zedze	d<d
eddf�fd�Zdedef�fd�Zdeeeff�fd�Zedeeefdeeeff�fd��Zedefd��Zdedefd�Zdeef�fd�Z dedefd�Z!�xZ"S)�
ChallengeBodya>Challenge Resource Body.

    .. todo::
       Confusingly, this has a similar name to `.challenges.Challenge`,
       as well as `.achallenges.AnnotatedChallenge`. Please use names
       such as ``challb`` to distinguish instances of this class from
       ``achall``.

    :ivar acme.challenges.Challenge: Wrapped challenge.
        Conveniently, all challenge fields are proxied, i.e. you can
        call ``challb.x`` to get ``challb.chall.x`` contents.
    :ivar acme.messages.Status status:
    :ivar datetime.datetime validated:
    :ivar messages.Error error:

    )�challr�TNrn�_urlr)rjrorp�	validatedrrr�r�r*c���|j�D��cic]\}}|j|�|��}}}t�|�di|��ycc}}wr�r�r�s    �r0r;zChallengeBody.__init__�sF���8>����G���1�$�%�%�a�(�!�+�G��G�
���"�6�"��Hr�r6c�@��t�|�|j|��Sr9)r:r�r�r<s  �r0r�zChallengeBody.encode�s����w�~�d�1�1�$�7�8�8r2c�v��t�|��}|j|jj��|Sr9)r:rA�updater;r*s  �r0rAzChallengeBody.to_partial_json�s.����w�&�(�����D�J�J�.�.�0�1��r2rBc�j��t�|�|�}tjj	|�|d<|S)Nr;)r:�fields_from_jsonr
�	ChallengerI)rHrB�jobj_fieldsr>s   �r0rCzChallengeBody.fields_from_json�s3����g�.�t�4��)�3�3�=�=�d�C��G���r2c��|jS)zThe URL of this challenge.)r<r@s r0r�zChallengeBody.uri�s���y�y�r2c�.�t|j|�Sr9)r'r;r�s  r0r�zChallengeBody.__getattr__s���t�z�z�4�(�(r2c#�J�K�t�|��D]
}|dk(rdn|���y�w)Nr<r�r�r<s  �r0r�zChallengeBody.__iter__s.������G�$�&�	4�D��6�>�%�t�3�	4�s� #c��|dk(rdS|S)Nr�r<rer�s  r0r�zChallengeBody._internal_name
s�����v�0�D�0r2)#rFrUrVrWrXrDrlr<r[r\r�rI�STATUS_PENDINGrr�rfc3339r=�datetimer-r�rr;r�rZrAr]rrCr�r�r�rr�r�r`ras@r0r:r:�s[���� �I�
��
�
�5�D�$�?�D�#�?��T�Z�Z��&�2B�2B�"&��@�F�F�@�*8�&�.�.��PT�*U�I�x� � �4�'�U�$�$�*�*�W�e�o�o�!%�t�5�E�5�4�<�5�#��#��#�9�3�9�3�9���c�3�h���
��G�C��H�$5��$�s�C�x�.����
��S����)��)��)�4�(�3�-�4�1�3�1�3�1r2r:c��eZdZUdZej
dej��Zee	d<ej
d�Z
ee	d<edefd��Z
y)�ChallengeResourcez�Challenge Resource.

    :ivar acme.messages.ChallengeBody body:
    :ivar str authzr_uri: URI found in the 'up' ``Link`` header.

    r�ri�
authzr_urir*c�.�|jjS)zThe URL of the challenge body.)r�r�r@s r0r�zChallengeResource.uris���y�y�}�}�r2N)rFrUrVrWrDrlr:rIr�r\rOr[r�r�rer2r0rNrNsT���%�$�*�*�V�]�5L�5L�M�D�-�M� �d�j�j��.�J��.�
��S���r2rNc��eZdZUdZej
dejd��Zee	d<ej
dd��Z
eee	d<ej
dde
j��Ze
e	d<ej d	d��Zej$d
ze	d	<ej
dd��Zed
ze	d<e
j*deeeefd
eedffd��Z
y
)�
Authorizationz�Authorization Resource Body.

    :ivar acme.messages.Identifier identifier:
    :ivar list challenges: `list` of `.ChallengeBody`
    :ivar acme.messages.Status status:
    :ivar datetime.datetime expires:

    rtTrur
rrrr	�expiresN�wildcardrkr*.c�&�td�|D��S)Nc3�FK�|]}tj|����y�wr9)r:rI)ryr;s  r0r{z+Authorization.challenges.<locals>.<genexpr>6s����G��]�,�,�U�3�G�r|r}rs r0r
zAuthorization.challenges4s���G��G�G�Gr2)rFrUrVrWrDrlrhrIrtr\r
r�r:r�rrrKrSrLrTr^rjrZr[rr~rer2r0rRrRs����(�T�Z�Z��j�>R�>R�^b�c�J�
�c�&0�d�j�j���&N�J��]�#�N��T�Z�Z��D�&�BR�BR�S�F�F�S�
)7����y�D�(Q�G�X�
�
��
%�Q�&�D�J�J�z�T�B�H�d�T�k�B����H�$�t�C��H�~�.�H�5���9K�3L�H��Hr2rRc��eZdZdZy)�NewAuthorizationzNew authorization.Nr�rer2r0rXrX9s��r2rXc��eZdZdZy)�UpdateAuthorizationzUpdate authorization.Nr�rer2r0rZrZ=s��r2rZc��eZdZUdZej
dej��Zee	d<ej
dd��Z
ee	d<y)�AuthorizationResourcez~Authorization Resource.

    :ivar acme.messages.Authorization body:
    :ivar str new_cert_uri: Deprecated. Do not use.

    r�ri�new_cert_uriTrrN)rFrUrVrWrDrlrRrIr�r\r]r[rer2r0r\r\As=���%�$�*�*�V�]�5L�5L�M�D�-�M�"��
�
�>�T�B�L�#�Br2r\c��eZdZUdZej
dejej��Ze	jed<y)�CertificateRequestzlACME newOrder request.

    :ivar x509.CertificateSigningRequest csr: `x509.CertificateSigningRequest`

    �csr�rj�encoderN)rFrUrVrWrDrl�
decode_csr�
encode_csrr`r	�CertificateSigningRequestr\rer2r0r_r_Ls7���
+5�$�*�*�
�t������+A�C��	'�	'�Ar2r_c�x�eZdZUdZej
d�Zeed<ej
d�Z	e
edfed<y)�CertificateResourcez�Certificate Resource.

    :ivar x509.Certificate body: `x509.Certificate`
    :ivar str cert_chain_uri: URI found in the 'up' ``Link`` header
    :ivar tuple authzrs: `tuple` of `AuthorizationResource`.

    �cert_chain_uri�authzrs.N)rFrUrVrWrDrlrhr[r\rir~r\rer2r0rgrgVs?���%�$�*�*�%5�6�N�C�6�1;����I�1F�G�U�(�#�-�
.�Fr2rgc��eZdZUdZej
dejej��Ze	jed<ej
d�Ze
ed<y)�
RevocationzURevocation message.

    :ivar x509.Certificate certificate: `x509.Certificate`

    �certificatera�reasonN)rFrUrVrWrDrl�decode_cert�encode_certrlr	�Certificater\rmr_rer2r0rkrkbsP���
%/�D�J�J��t�/�/��9I�9I�%K�K��!�!�K��$�*�*�X�&�F�C�&r2rkc�N�eZdZUdZej
dd��Zedzed<ej
dd��Z	e
eed<ej
dejd��Zeed<ej
d	d��Ze
eed	<ej
d
d��Zedzed
<ej
dd��Zeed<ej&dd��Zej*dzed<ej
d
dej��Zedzed
<e	j0de
eeefdeedffd��Z	y)�Ordera�Order Resource Body.

    :ivar profile: The profile to request.
    :vartype profile: str
    :ivar identifiers: List of identifiers for the certificate.
    :vartype identifiers: `list` of `.Identifier`
    :ivar acme.messages.Status status:
    :ivar authorizations: URLs of authorizations.
    :vartype authorizations: `list` of `str`
    :ivar str certificate: URL to download certificate as a fullchain PEM.
    :ivar str finalize: URL to POST to to request issuance once all
        authorizations have "valid" status.
    :ivar datetime.datetime expires: When the order expires.
    :ivar ~.Error error: Any error that occurred during finalization, if applicable.
    �profileTrrN�identifiersrru�authorizationsrl�finalizerSr�r	rkr*.c�&�td�|D��S)Nc3�FK�|]}tj|����y�wr9)rhrI)ryrts  r0r{z$Order.identifiers.<locals>.<genexpr>�s����N�*�Z�)�)�*�5�N�r|r}rs r0rtzOrder.identifiers�s���N��N�N�Nr2)rFrUrVrWrDrlrsr[r\rtr�rhr�rIrrurlrvrrKrSrLr-r�rjrZrr~rer2r0rrrrms2��� %�$�*�*�Y�$�?�G�S�4�Z�?�$.�D�J�J�}��$M�K��j�!�M��T�Z�Z��&�2B�2B�d�S�F�F�S� *��
�
�+;�t� L�N�D��I�L�(�d�j�j��$�G�K��t��G��D�J�J�z�T�:�H�c�:�(6����y�D�(Q�G�X�
�
��
%�Q�$�$�*�*�W��e�o�o�V�E�5�4�<�V����O�4��S�#�X��/�O�E�*�c�/�4J�O��Or2rrc�x�eZdZUdZej
dej��Zee	d<ej
ddd�d���Z
ee	d<ej
d	�Ze
ee	d	<ej
d
d��Zee	d
<ej
dd��Ze
ee	d<ej$d
e
eeefdeedffd��Zy)�
OrderResourcea�Order Resource.

    :ivar acme.messages.Order body:
    :ivar bytes csr_pem: The CSR this Order will be finalized with.
    :ivar authorizations: Fully-fetched AuthorizationResource objects.
    :vartype authorizations: `list` of `acme.messages.AuthorizationResource`
    :ivar str fullchain_pem: The fetched contents of the certificate URL
        produced once the order was finalized, if it's present.
    :ivar alternative_fullchains_pem: The fetched contents of alternative certificate
        chain URLs produced once the order was finalized, if present and requested during
        finalization.
    :vartype alternative_fullchains_pem: `list` of `str`
    r�ri�csr_pemTc�$�|jd�S�Nzutf-8r�)�ss r0r�zOrderResource.<lambda>����!�(�(�7�2C�r2c�$�|jd�Sr})r�)�bs r0r�zOrderResource.<lambda>�rr2)rorjrbru�
fullchain_pemrr�alternative_fullchains_pemrkr*.c�&�td�|D��S)Nc3�FK�|]}tj|����y�wr9)r\rI)ry�authzs  r0r{z/OrderResource.authorizations.<locals>.<genexpr>�s����O��*�4�4�U�;�O�r|r}rs r0ruzOrderResource.authorizations�s���O��O�O�Or2N)rFrUrVrWrDrlrrrIr�r\r{�bytesrur�r\r�r[r�rjrZrr~rer2r0rzrz�s�����$�*�*�V�U�_�_�=�D�%�=��T�Z�Z�	�T�)D�(C�	E�G�U�	E�3=�$�*�*�=M�2N�N�D�.�/�N�#����O�t�D�M�3�D�,6�D�J�J�7S�AE�-G���S�	�G�
���P�d�4��S��>�2�P�u�=R�TW�=W�7X�P��Pr2rzc��eZdZdZy)�NewOrderz
New order.Nr�rer2r0r�r��s��r2r�c��eZdZUdZGd�dej
�Zejdej��Z	ee
d<y)�RenewalInfoznRenewal Info Resource Body.
    :ivar acme.messages.SuggestedWindow window: The suggested renewal window.
    c��eZdZUdZej
dd��Zejed<ej
dd��Z	ejed<y)�RenewalInfo.SuggestedWindowz�Suggested Renewal Window, sub-resource of Renewal Info Resource.
        :ivar datetime.datetime start: Beginning of suggested renewal window
        :ivar datetime.datetime end: End of suggested renewal window (inclusive)
        �startTrr�endN)
rFrUrVrWrrKr�rLr\r�rer2r0�SuggestedWindowr��sC��	�$2�6�>�>�'�T�#J��x� � �J�!/������!F��X�
�
�Fr2r��suggestedWindowri�suggested_windowN)rFrUrVrWrDr�r�rlrIr�r\rer2r0r�r��sC���G�$�3�3�G�)3��
�
�3D�;J�;T�;T�)V��o�Vr2r�)DrW�collections.abcrrLr��typingrrrrr�cryptographyr	�josepyrD�acmer
rrr
rr/r�r�r��
BaseExceptionr^r1�JSONDeSerializabler4rc�IDENTIFIER_FQDN�
IDENTIFIER_IPr�rhr-r��STATUS_UNKNOWNrJ�STATUS_PROCESSING�STATUS_VALID�STATUS_INVALID�STATUS_REVOKED�STATUS_READY�STATUS_DEACTIVATEDr�r�r�r�r�rrr3r5r7r:rNrRrXrZr\r_rgrkrrrzr�r�)r6�descs00r0�<module>r�s����$������!���������,����Q�����
�B�	�
�C���T�
��X���_��
����T�����
�N��
�D�� �X�!�$�G�%�&�<�'�(�4�)�*�U�+�,d�A�@�J�?�\�?�F�M�=��B�0;�0A�0A�0C��",�$��L�4�������
�}����1��'�'��1�:.�Y�.�
!��'���t�$�
�%��*�*�%�T�D�%�%�v�|�|�T�n.�Y�.�
�	�"���	�"���<�(���g����	�"���	�"���g����M�*��6��'�'�6�r.�t�(�(�.�!�h�!��4�,�,��%�%�<�3�>�J��j7�<�j7�Z�l�����
K�?�
K�>1�L�>1�B
��
� H�L�H�6�}�� �-� �C�O�C�A��2�2�A�	G�/�	G�'��*�*�'�O�L�O�B#P�O�#P�L�u��
V�,�
V��As�.J*

Zerion Mini Shell 1.0
GEPRES Tracking

República de Moçambique

Ministério da Economia e Finanças