I still see the same problem:

=================================== FAILURES ===================================
____________________________ SSLTest.test_ssl_close ____________________________
[gw2] linux -- Python 3.13.1 /usr/bin/python3.13

self = <tests.ssl_test.SSLTest testMethod=test_ssl_close>

    def test_ssl_close(self):
        def serve(listener):
            sock, addr = listener.accept()
            sock.recv(8192)
            try:
                self.assertEqual(b'', sock.recv(8192))
            except greenio.SSL.ZeroReturnError:
                pass
    
        sock = listen_ssl_socket()
    
        server_coro = eventlet.spawn(serve, sock)
    
        raw_client = eventlet.connect(sock.getsockname())
        client = ssl.wrap_socket(raw_client)
        client.sendall(b'X')
        greenio.shutdown_safe(client)
        client.close()
>       server_coro.wait()

tests/ssl_test.py:95: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
eventlet/greenthread.py:225: in wait
    return self._exit_event.wait()
eventlet/event.py:124: in wait
    result = hub.switch()
eventlet/hubs/hub.py:310: in switch
    return self.greenlet.switch()
eventlet/greenthread.py:265: in main
    result = function(*args, **kwargs)
tests/ssl_test.py:82: in serve
    self.assertEqual(b'', sock.recv(8192))
eventlet/green/ssl.py:255: in recv
    return self._base_recv(buflen, flags, into=False)
eventlet/green/ssl.py:282: in _base_recv
    read = self.read(nbytes)
eventlet/green/ssl.py:196: in read
    return self._call_trampolining(
eventlet/green/ssl.py:166: in _call_trampolining
    return func(*a, **kw)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <eventlet.green.ssl.GreenSSLSocket fd=18, family=2, type=1, proto=0, 
laddr=('127.0.0.1', 52217)>
len = 8192, buffer = None

    def read(self, len=1024, buffer=None):
        """Read up to LEN bytes and return them.
        Return zero-length string on EOF."""
    
        self._checkClosed()
        if self._sslobj is None:
            raise ValueError("Read on closed or unwrapped SSL socket.")
        try:
            if buffer is not None:
                return self._sslobj.read(len, buffer)
            else:
>               return self._sslobj.read(len)
E               ssl.SSLError: [SYS] unknown error (_ssl.c:2639)

/usr/lib/python3.13/ssl.py:1140: SSLError
----------------------------- Captured stderr call -----------------------------
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/eventlet/hubs/poll.py", line 111, in wait
    listener.cb(fileno)
    ~~~~~~~~~~~^^^^^^^^
  File "/<<PKGBUILDDIR>>/eventlet/greenthread.py", line 265, in main
    result = function(*args, **kwargs)
  File "/<<PKGBUILDDIR>>/tests/ssl_test.py", line 82, in serve
    self.assertEqual(b'', sock.recv(8192))
                          ~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/eventlet/green/ssl.py", line 255, in recv
    return self._base_recv(buflen, flags, into=False)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/eventlet/green/ssl.py", line 282, in _base_recv
    read = self.read(nbytes)
  File "/<<PKGBUILDDIR>>/eventlet/green/ssl.py", line 196, in read
    return self._call_trampolining(
           ~~~~~~~~~~~~~~~~~~~~~~~^
        super().read, len, buffer)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/eventlet/green/ssl.py", line 166, in _call_trampolining
    return func(*a, **kw)
  File "/usr/lib/python3.13/ssl.py", line 1140, in read
    return self._sslobj.read(len)
           ~~~~~~~~~~~~~~~~~^^^^^
ssl.SSLError: [SYS] unknown error (_ssl.c:2639)

However for now I'm going to patch the eventlet test that's failing to
deal with this.

Line 2639 is the zero return handling code - the error is not getting
translated correctly into ssl.SSLZeroReturnError - whether this is some
nuance of eventlet or a problem in Python translating the error remains
to be seen!

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2091540

Title:
  ssl test failures with openssl >= 3.4.0

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-eventlet/+bug/2091540/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to