From 8b2a002e676a1ebcc49ff6a8b80be8614098d8c8 Mon Sep 17 00:00:00 2001 From: nopnop2002 Date: Sun, 9 Jun 2024 07:29:57 +0900 Subject: [PATCH] Changes when sys.implementation is a namespace --- adafruit_connection_manager.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/adafruit_connection_manager.py b/adafruit_connection_manager.py index 58dcb0c..a8aa40e 100644 --- a/adafruit_connection_manager.py +++ b/adafruit_connection_manager.py @@ -149,15 +149,16 @@ def get_radio_socketpool(radio): # versions of the Wiznet5k library or on boards withouut the ssl module # see https://docs.circuitpython.org/en/latest/shared-bindings/support_matrix.html ssl_context = None - cp_version = sys.implementation[1] - if pool.SOCK_STREAM == 1 and cp_version >= WIZNET5K_SSL_SUPPORT_VERSION: - try: - import ssl # pylint: disable=import-outside-toplevel - - ssl_context = ssl.create_default_context() - except ImportError: - # if SSL not on board, default to fake_ssl_context - pass + if isinstance(sys.implementation, list): + cp_version = sys.implementation[1] + if pool.SOCK_STREAM == 1 and cp_version >= WIZNET5K_SSL_SUPPORT_VERSION: + try: + import ssl # pylint: disable=import-outside-toplevel + + ssl_context = ssl.create_default_context() + except ImportError: + # if SSL not on board, default to fake_ssl_context + pass if ssl_context is None: ssl_context = create_fake_ssl_context(pool, radio)