@@ -113,20 +113,29 @@ def get_radio_socketpool(radio):
113113 class_name = radio .__class__ .__name__
114114 if class_name not in _global_socketpool :
115115 if class_name == "Radio" :
116+ import ssl # pylint: disable=import-outside-toplevel
117+
116118 import socketpool # pylint: disable=import-outside-toplevel
117119
118120 pool = socketpool .SocketPool (radio )
121+ ssl_context = ssl .create_default_context ()
119122
120123 elif class_name == "ESP_SPIcontrol" :
121124 import adafruit_esp32spi .adafruit_esp32spi_socket as pool # pylint: disable=import-outside-toplevel
122125
126+ ssl_context = create_fake_ssl_context (pool , radio )
127+
123128 elif class_name == "WIZNET5K" :
124129 import adafruit_wiznet5k .adafruit_wiznet5k_socket as pool # pylint: disable=import-outside-toplevel
125130
131+ # Note: SSL/TLS connections are not supported by the Wiznet5k library at this time
132+ ssl_context = create_fake_ssl_context (pool , radio )
133+
126134 else :
127135 raise AttributeError (f"Unsupported radio class: { class_name } " )
128136
129137 _global_socketpool [class_name ] = pool
138+ _global_ssl_contexts [class_name ] = ssl_context
130139
131140 return _global_socketpool [class_name ]
132141
@@ -141,29 +150,7 @@ def get_radio_ssl_context(radio):
141150 * Using a WIZ5500 (Like the Adafruit Ethernet FeatherWing)
142151 """
143152 class_name = radio .__class__ .__name__
144-
145- if class_name not in _global_ssl_contexts :
146- if class_name == "Radio" :
147- import ssl # pylint: disable=import-outside-toplevel
148-
149- ssl_context = ssl .create_default_context ()
150-
151- elif class_name == "ESP_SPIcontrol" :
152- import adafruit_esp32spi .adafruit_esp32spi_socket as pool # pylint: disable=import-outside-toplevel
153-
154- ssl_context = create_fake_ssl_context (pool , radio )
155-
156- elif class_name == "WIZNET5K" :
157- import adafruit_wiznet5k .adafruit_wiznet5k_socket as pool # pylint: disable=import-outside-toplevel
158-
159- # Note: SSL/TLS connections are not supported by the Wiznet5k library at this time
160- ssl_context = create_fake_ssl_context (pool , radio )
161-
162- else :
163- raise AttributeError (f"Unsupported radio class: { class_name } " )
164-
165- _global_ssl_contexts [class_name ] = ssl_context
166-
153+ get_radio_socketpool (radio )
167154 return _global_ssl_contexts [class_name ]
168155
169156
0 commit comments