From 271bd04f6f0cadb53d09a182fcf2379e0b022956 Mon Sep 17 00:00:00 2001 From: skofisk Date: Sun, 17 Oct 2021 01:49:17 +0200 Subject: [PATCH] Move from BackwardsCompatibleClientV2 to ClientV2 Removes deprecated warning from acme lib --- acmebot | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/acmebot b/acmebot index 3163f37..ae0dbe7 100755 --- a/acmebot +++ b/acmebot @@ -1853,14 +1853,16 @@ class AcmeManager(object): try: network = client.ClientNetwork(self.client_key, account=registration, user_agent=self._user_agent(), verify_ssl=self._setting('acme_directory_verify_ssl')) - self.acme_client = client.BackwardsCompatibleClientV2(network, self.client_key, self._setting('acme_directory_url')) + directory = messages.Directory.from_json(network.get(self._setting('acme_directory_url')).json()) + self.acme_client = client.ClientV2(directory, net=network) except Exception as error: self._fatal("Can't connect to ACME service.\n", error, '\n') else: self._detail('Registering client\n') try: network = client.ClientNetwork(self.client_key, user_agent=self._user_agent(), verify_ssl=self._setting('acme_directory_verify_ssl')) - self.acme_client = client.BackwardsCompatibleClientV2(network, self.client_key, self._setting('acme_directory_url')) + directory = messages.Directory.from_json(network.get(self._setting('acme_directory_url')).json()) + self.acme_client = client.ClientV2(directory, net=network) except Exception as error: self._fatal("Can't connect to ACME service.\n", error, '\n') @@ -1873,10 +1875,13 @@ class AcmeManager(object): self._detail('Terms of service accepted.\n') else: self._status('Auto-accepting TOS: ', tos, '\n') + return True try: - reg = messages.NewRegistration.from_data(email=self._account('email')) - registration = self.acme_client.new_account_and_tos(reg, _accept_tos) + reg = messages.NewRegistration.from_data(email=self._account('email'), + terms_of_service_agreed=_accept_tos(self.acme_client.directory.meta.terms_of_service)) + registration = self.acme_client.new_account(reg) + except Exception as error: self._fatal("Can't register with ACME service.\n", error, '\n') @@ -2178,17 +2183,7 @@ class AcmeManager(object): order.update(authorizations=[authorization_resource for authorization_resource in authorization_resources.values()]) def _create_auth_order(self, domain_names): - if (1 == self.acme_client.acme_version): - authorizations = [] - for domain_name in domain_names: - try: - authorizations.append(self.acme_client.client.request_domain_challenges(domain_name)) - except Exception as error: - self._error('Unable to request authorization for ', domain_name, '\n', self._indent(error), '\n') - continue - if (authorizations): - return messages.OrderResource(authorizations=authorizations) - else: + if (2 == self.acme_client.acme_version): identifiers = [] for domain_name in domain_names: @@ -2197,7 +2192,7 @@ class AcmeManager(object): if (identifiers): order = messages.NewOrder(identifiers=identifiers) try: - response = self.acme_client.client._post(self.acme_client.client.directory['newOrder'], order) + response = self.acme_client._post(self.acme_client.directory['newOrder'], order) except Exception as error: self._error('Unable to create authorization order\n', self._indent(error), '\n') return None @@ -2205,7 +2200,7 @@ class AcmeManager(object): authorizations = [] for url in body.authorizations: try: - authorizations.append(self.acme_client.client._authzr_from_response(self.acme_client.client._post_as_get(url), uri=url)) + authorizations.append(self.acme_client._authzr_from_response(self.acme_client._post_as_get(url), uri=url)) except Exception as error: self._error('Unable to request authorization for ', domain_name, '\n', self._indent(error), '\n') continue