Skip to content

test.test_httplib.HTTPSTest.test_networked_good_cert fails with OpenSSL 4.1.0 #160823

Open

Description

@xry111

Bug report

======================================================================
ERROR: test_networked_good_cert (test.test_httplib.HTTPSTest.test_networked_good_cert)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.15/test/test_httplib.py", line 2247, in test_networked_good_cert
    h.request('GET', '/')
    ~~~~~~~~~^^^^^^^^^^^^
  File "/usr/lib/python3.15/http/client.py", line 1398, in request
    self._send_request(method, url, body, headers, encode_chunked)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/http/client.py", line 1444, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/http/client.py", line 1393, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/http/client.py", line 1153, in _send_output
    self.send(msg)
    ~~~~~~~~~^^^^^
  File "/usr/lib/python3.15/http/client.py", line 1097, in send
    self.connect()
    ~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/http/client.py", line 1543, in connect
    self.sock = self._context.wrap_socket(self.sock,
                ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
                                          server_hostname=server_hostname)
                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.15/ssl.py", line 469, in wrap_socket
    return self.sslsocket_class._create(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        sock=sock,
        ^^^^^^^^^^
    ...<5 lines>...
        session=session
        ^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.15/ssl.py", line 1103, in _create
    self.do_handshake()
    ~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.15/ssl.py", line 1434, in do_handshake
    self._sslobj.do_handshake()
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'self-signed.pythontest.net'. (_ssl.c:1147)

----------------------------------------------------------------------

Apparently this is caused by an intentional change in OpenSSL, see openssl/openssl#33420.

CPython versions tested on:

3.15

Operating systems tested on:

Linux

Activity

  1. added
    type-bugAn unexpected behavior, bug, or error
    on Oct 28, 2026
  2. picnixz commented on Oct 28, 2026

    @picnixz
    Member

    I guess we need to update the way generated certificates or update the test accordingly. But this also means that we could incorrectly (or not) reject certificates in the wild (I haven't looked at the OSSL issue in details though)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions