From 55c350d5ce53dcf8cca80055c2e331c0b4a0874b Mon Sep 17 00:00:00 2001 From: Aaron Johnson Date: Thu, 27 Oct 2022 19:14:38 -0500 Subject: [PATCH 1/2] use reset_types func for reset type support --- hetzner/reset.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hetzner/reset.py b/hetzner/reset.py index 4afc310..ab36b9e 100644 --- a/hetzner/reset.py +++ b/hetzner/reset.py @@ -77,7 +77,10 @@ def observed_reboot(self, patience=300, tries=None, manual=False): is_down = False if tries is None: - tries = ['soft', 'hard'] + if 'sw' not in self.reset_types: + tries = ['hard'] + else: + tries = ['soft', 'hard'] for mode in tries: self.server.logger.info("Trying to reboot using the %r method.", From 55da099f39e7493a3733d5d65782cd03ee669419 Mon Sep 17 00:00:00 2001 From: Aaron Johnson Date: Wed, 12 Feb 2025 13:22:48 -0600 Subject: [PATCH 2/2] ssl.wrap_socket() method removed --- hetzner/util/http.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/hetzner/util/http.py b/hetzner/util/http.py index a5e6789..f04b584 100644 --- a/hetzner/util/http.py +++ b/hetzner/util/http.py @@ -63,8 +63,21 @@ def connect(self): ).encode('ascii')) ca_certs.flush() cafile = ca_certs.name - self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, - cert_reqs=ssl.CERT_REQUIRED, - ca_certs=cafile) + #self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, + # cert_reqs=ssl.CERT_REQUIRED, + # ca_certs=cafile) + context = ssl.create_default_context(cafile=cafile) + context.check_hostname = True + context.verify_mode = ssl.CERT_REQUIRED + + key_file = getattr(self, 'key_file', None) + cert_file = getattr(self, 'cert_file', None) + + if key_file and cert_file: + context.load_cert_chain(cert_file, key_file) + + hostname = self.host + self.sock = context.wrap_socket(sock, server_hostname=hostname) + if bundle is None: ca_certs.close()