File: //snap/certbot/4965/lib/python3.12/site-packages/acme/__pycache__/client.cpython-312.pyc
�
N�h� � �p � d Z ddlZddlZddlmZ ddlmZ ddlZddl Z ddl
Z
ddlZddlm
Z
ddlmZ ddlmZ ddlmZ ddlmZ dd lmZ ddlZddlZdd
lmZ ddlmZ ddlmZ dd
lmZ ddlmZ ddlmZ ddlm Z ejB e"� Z#dZ$ G d� d� Z% G d� d� Z&dejN de(fd�Z)y)zACME client API.� N)�parsedate_tz)�Any)�cast)�Mapping)�Optional)�Union)�x509)�HTTPAdapter)�parse_header_links)�
challenges)�crypto_util)�errors)�jws)�messages�- c
�� � e Zd ZdZdej
ddddfd�Zdej dej fd �Z d
ej dej fd�Z
d:d
ej deej dej fd
�Z
d;d
ej dedej fd�Zd:dedee dej$ fd�Zdej( deej( ej. f fd�Z d:dej$ deej2 dej$ fd�Zdej$ dej2 dej$ fd�Zdej$ dej$ fd�Z d;dej$ dej2 dedej$ fd�Z d;dej$ dej2 dedej$ fd�Zdedeeej2 ej2 f fd�Zde jB d e"ddfd!�Z#defd"�Z$d#e%d$e%dej. fd%�Z&d&ej. d'ede'e fd(�Z(e)d)edddej
fd*�� Z*e) d<d&ej. d+ee d,ee dej fd-�� Z+d
ej d.ej dej fd/�Z,d#e%d$e%dej. fd0�Z-d
ej dej fd1�Z.dej( dej( fd2�Z/ d<d&ej. d3eej` d+ee dej( fd4�Z1d5ejd d&e3jh dejj fd6�Z6e)d&ej. d7e"dej2 fd8�� Z7de jB d e"d)eddfd9�Z8y)=�ClientV2zuACME client for a v2 API.
:ivar messages.Directory directory:
:ivar .ClientNetwork net: Client network.
� directory�net�
ClientNetwork�returnNc � � || _ || _ y)z�Initialize.
:param .messages.Directory directory: Directory Resource
:param .ClientNetwork net: Client network.
N)r r )�selfr r s �{/build/snapcraft-certbot-c9561b03ef7f16aa90eb6754ca5f17a1/parts/certbot/install/lib/python3.12/site-packages/acme/client.py�__init__zClientV2.__init__) s � � #������ �new_accountc � � | j | j d |� }|j dk( r0d|j v r"t j
|j d � �| j
|� }|| j _ |S )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)r r �response�regrs r r zClientV2.new_account2 su � � �:�:�d�n�n�\�:�K�H�����3�&�:��9I�9I�+I��&�&�x�'7�'7�
�'C�D�D��'�'��1��������r r) c �p � | j |d� | j _ | j j S )z�Query server about registration.
:param messages.RegistrationResource regr: Existing Registration
Resource.
T)�_get_v2_accountr r'