classification
Title: test_ssl randomly fails on macOS GH Action: test_get_server_certificate_sni() and test_get_server_certificate_timeout()
Type: Stage: resolved
Components: SSL, Tests Versions: Python 3.11
process
Status: closed Resolution: duplicate
Dependencies: Superseder: test_ssl: test_get_server_certificate() and test_msg_callback_deadlock_bpo43577() fail randomly on the macOS CI
View: 44229
Assigned To: christian.heimes Nosy List: christian.heimes, erlendaasland, vstinner
Priority: normal Keywords:

Created on 2021-05-25 20:27 by vstinner, last changed 2021-06-24 12:29 by erlendaasland. This issue is now closed.

Messages (5)
msg394392 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2021-05-25 20:27
https://github.com/python/cpython/pull/26359/checks?check_run_id=2668874284

Error 1:

2021-05-25T20:02:41.9174160Z ======================================================================
2021-05-25T20:02:41.9268350Z ERROR: test_get_server_certificate_sni (test.test_ssl.SimpleBackgroundTests)
2021-05-25T20:02:41.9272030Z ----------------------------------------------------------------------
2021-05-25T20:02:41.9275950Z Traceback (most recent call last):
2021-05-25T20:02:41.9374600Z   File "/Users/runner/work/cpython/cpython/Lib/test/test_ssl.py", line 2147, in test_get_server_certificate_sni
2021-05-25T20:02:41.9404170Z     pem = ssl.get_server_certificate((host, port), ca_certs=SIGNING_CA)
2021-05-25T20:02:41.9483350Z   File "/Users/runner/work/cpython/cpython/Lib/ssl.py", line 1520, in get_server_certificate
2021-05-25T20:02:41.9505910Z     with create_connection(addr, timeout=timeout) as sock:
2021-05-25T20:02:41.9585510Z   File "/Users/runner/work/cpython/cpython/Lib/socket.py", line 844, in create_connection
2021-05-25T20:02:41.9607200Z     raise err
2021-05-25T20:02:41.9687730Z   File "/Users/runner/work/cpython/cpython/Lib/socket.py", line 832, in create_connection
2021-05-25T20:02:41.9708730Z     sock.connect(sa)
2021-05-25T20:02:41.9791030Z ConnectionRefusedError: [Errno 61] Connection refused

Error 2 when test_ssl is re-run:

======================================================================
FAIL: test_get_server_certificate_timeout (test.test_ssl.SimpleBackgroundTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/cpython/cpython/Lib/test/test_ssl.py", line 2165, in test_get_server_certificate_timeout
    with self.assertRaises(socket.timeout):
AssertionError: TimeoutError not raised
msg394394 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2021-05-25 20:29
It looks like a duplicate or very similar to bpo-44229.
msg394395 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2021-05-25 20:30
> https://github.com/python/cpython/pull/26359/checks?check_run_id=2668874284

test.pythoninfo:

ssl.HAS_SNI: True
ssl.OPENSSL_VERSION: OpenSSL 1.1.1k  25 Mar 2021
ssl.OPENSSL_VERSION_INFO: (1, 1, 1, 11, 15)
ssl.OP_ALL: 0x80000054
ssl.OP_NO_TLSv1_1: 0x10000000
ssl.SSLContext.maximum_version: MAXIMUM_SUPPORTED
ssl.SSLContext.minimum_version: TLSv1_2
ssl.SSLContext.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.SSLContext.protocol: PROTOCOL_TLS_CLIENT
ssl.SSLContext.verify_mode: CERT_REQUIRED
ssl.default_https_context.maximum_version: MAXIMUM_SUPPORTED
ssl.default_https_context.minimum_version: TLSv1_2
ssl.default_https_context.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.default_https_context.protocol: PROTOCOL_TLS_CLIENT
ssl.default_https_context.verify_mode: CERT_REQUIRED
ssl.stdlib_context.maximum_version: MAXIMUM_SUPPORTED
ssl.stdlib_context.minimum_version: TLSv1_2
ssl.stdlib_context.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.stdlib_context.protocol: PROTOCOL_TLS_CLIENT
ssl.stdlib_context.verify_mode: CERT_NONE
msg396413 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2021-06-23 12:11
https://github.com/python/cpython/pull/26874/checks?check_run_id=2893904059

ERROR: test_connect_cadata (test.test_ssl.SimpleBackgroundTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/runner/work/cpython/cpython/Lib/test/test_ssl.py", line 2131, in test_connect_cadata
    s.connect(self.server_addr)
  File "/Users/runner/work/cpython/cpython/Lib/ssl.py", line 1379, in connect
    self._real_connect(addr, False)
  File "/Users/runner/work/cpython/cpython/Lib/ssl.py", line 1370, in _real_connect
    self.do_handshake()
  File "/Users/runner/work/cpython/cpython/Lib/ssl.py", line 1346, in do_handshake
    self._sslobj.do_handshake()
ConnectionResetError: [Errno 54] Connection reset by peer
msg396484 - (view) Author: Erlend E. Aasland (erlendaasland) * (Python triager) Date: 2021-06-24 12:29
Marking this as a duplicate of bpo-44229. Please revert if you disagree.
History
Date User Action Args
2021-06-24 12:29:09erlendaaslandsetstatus: open -> closed
superseder: test_ssl: test_get_server_certificate() and test_msg_callback_deadlock_bpo43577() fail randomly on the macOS CI
messages: + msg396484

dependencies: - test_ssl: test_get_server_certificate() and test_msg_callback_deadlock_bpo43577() fail randomly on the macOS CI
resolution: duplicate
stage: resolved
2021-06-23 12:11:32vstinnersetmessages: + msg396413
2021-05-25 22:32:15erlendaaslandsetnosy: + erlendaasland
2021-05-25 20:30:12vstinnersetmessages: + msg394395
2021-05-25 20:29:06christian.heimessetdependencies: + test_ssl: test_get_server_certificate() and test_msg_callback_deadlock_bpo43577() fail randomly on the macOS CI
messages: + msg394394
2021-05-25 20:27:06vstinnercreate