Skip to content

Commit ccd6a67

Browse files
authored
Merge pull request #125 from Geotab/ssl-deprecation-warning
Uses TLS_CLIENT for SSL context
2 parents be1d7bb + 947cfd8 commit ccd6a67

File tree

2 files changed

+7
-13
lines changed

2 files changed

+7
-13
lines changed

mygeotab/api.py

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -347,16 +347,13 @@ def get_param(self):
347347

348348

349349
class GeotabHTTPAdapter(HTTPAdapter):
350-
"""HTTP adapter to force use of TLS 1.2 for HTTPS connections."""
350+
"""HTTP adapter to enforce use of TLS for HTTPS."""
351351

352352
def init_poolmanager(self, connections, maxsize, block=False, **pool_kwargs):
353-
ssl_context = create_urllib3_context(ssl_version=ssl.PROTOCOL_TLS)
353+
ssl_context = create_urllib3_context(ssl_version=ssl.PROTOCOL_TLS_CLIENT)
354354
ssl_context.load_default_certs()
355-
ssl_context.options |= ssl.OP_NO_SSLv2
356-
ssl_context.options |= ssl.OP_NO_SSLv3
357-
ssl_context.options |= ssl.OP_NO_TLSv1
358-
ssl_context.options |= ssl.OP_NO_TLSv1_1
359-
ssl_context.options |= ssl.OP_ENABLE_MIDDLEBOX_COMPAT
355+
if hasattr(ssl, "OP_ENABLE_MIDDLEBOX_COMPAT"):
356+
ssl_context.options |= ssl.OP_ENABLE_MIDDLEBOX_COMPAT
360357
self.poolmanager = urllib3.poolmanager.PoolManager(
361358
num_pools=connections, maxsize=maxsize, block=block, ssl_context=ssl_context, **pool_kwargs
362359
)

mygeotab/api_async.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -202,13 +202,10 @@ async def _query(server, method, parameters, timeout=DEFAULT_TIMEOUT, verify_ssl
202202

203203
ssl_context = False
204204
if verify_ssl or cert:
205-
ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS)
205+
ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
206206
ssl_context.load_default_certs()
207-
ssl_context.options |= ssl.OP_NO_SSLv2
208-
ssl_context.options |= ssl.OP_NO_SSLv3
209-
ssl_context.options |= ssl.OP_NO_TLSv1
210-
ssl_context.options |= ssl.OP_NO_TLSv1_1
211-
ssl_context.options |= ssl.OP_ENABLE_MIDDLEBOX_COMPAT
207+
if hasattr(ssl, "OP_ENABLE_MIDDLEBOX_COMPAT"):
208+
ssl_context.options |= ssl.OP_ENABLE_MIDDLEBOX_COMPAT
212209
if cert:
213210
if isinstance(cert, str):
214211
ssl_context.load_cert_chain(cert)

0 commit comments

Comments
 (0)