-
Notifications
You must be signed in to change notification settings - Fork 424
Closed
Labels
Description
OpenSSL.test.test_ssl.ContextTests.test_set_default_verify_paths() triggers error when network connection is absent. It is the only test in pyOpenSSL test suite with this problem.
======================================================================
ERROR: test_set_default_verify_paths (OpenSSL.test.test_ssl.ContextTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/tmp/pyopenssl/OpenSSL/test/test_ssl.py", line 930, in test_set_default_verify_paths
client.connect(('verisign.com', 443))
socket.gaierror: [Errno -3] Temporary failure in name resolution
======================================================================
Possible fix:
--- OpenSSL/test/test_ssl.py
+++ OpenSSL/test/test_ssl.py
@@ -8,7 +8,7 @@
from gc import collect, get_referrers
from errno import ECONNREFUSED, EINPROGRESS, EWOULDBLOCK, EPIPE, ESHUTDOWN
from sys import platform, version_info
-from socket import SHUT_RDWR, error, socket
+from socket import SHUT_RDWR, error, gaierror, socket
from os import makedirs
from os.path import join
from unittest import main
@@ -927,7 +927,11 @@
lambda conn, cert, errno, depth, preverify_ok: preverify_ok)
client = socket()
- client.connect(('verisign.com', 443))
+ try:
+ client.connect(('verisign.com', 443))
+ except gaierror:
+ # Absent network connection or verisign.com inaccessible.
+ return
clientSSL = Connection(context, client)
clientSSL.set_connect_state()
clientSSL.do_handshake()
Reactions are currently unavailable