Bug 31862 - some SSL calls are broken (in the tests, at least)
Summary: some SSL calls are broken (in the tests, at least)
Status: CLOSED WONTFIX
Alias: None
Product: Branch p7
Classification: Distributions
Component: python3-base (show other bugs)
Version: не указана
Hardware: all Linux
: P3 normal
Assignee: Andrey Cherepanov
QA Contact: qa-p7@altlinux.org
URL: http://git.altlinux.org/beehive/logs/...
Keywords:
Depends on: 31861
Blocks:
  Show dependency tree
 
Reported: 2016-03-06 09:33 MSK by Ivan Zakharyaschev
Modified: 2020-02-18 14:14 MSK (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Zakharyaschev 2016-03-06 09:33:43 MSK
В t7 год назад по логам ошибки были, но не так много по сравнению с Sisyphus. (Как теперь, пока не знаю.)

http://git.altlinux.org/beehive/logs/p7-x86_64/archive/2015/0123/error/python3-3.3.1-alt4 :

======================================================================
FAIL: test_options (test.test_ssl.ContextTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 87, in f
    return func(*args, **kwargs)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 416, in test_options
    self.assertEqual(ssl.OP_ALL, ctx.options)
AssertionError: 2147484671 != 2164261887

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


+++ This bug was initially created as a clone of Bug #31861 +++

3.3.1-alt4 (and can be seen in python3-test-3.3.1-alt5)

может иметь значение для p7. (В Sisyphus будет python3-3.5, а у python3-3.5 тесты проходят.)

Это вылезало при пересборке 3.3, а также можно увидеть просто поставив пакет python3-test и запустив тесты. (Там ошибок будет побольше, нужно искать по словам FAIL, ERROR и test_ssl.)

openssl новый, python3 старее. Значит ли это, что что-то в SSL в питоне, используемое на практике, сейчас не работает, я не изучил.


http://git.altlinux.org/beehive/logs/Sisyphus-x86_64/archive/2016/0228/error/python3-3.3.1-alt4 :

...

test_login (test.test_ftplib.TestTLS_FTPClass) ... Exception in thread Thread-200:
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/threading.py", line 639, in _bootstrap_inner
    self.run()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 272, in run
    asyncore.loop(timeout=0.1, count=1)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 212, in loop
    poll_fun(timeout, map)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 153, in poll
    read(obj)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 87, in read
    obj.handle_error()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 83, in read
    obj.handle_read_event()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 356, in handle_read_event
    super(SSLConnection, self).handle_read_event()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 441, in handle_read_event
    self.handle_read()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asynchat.py", line 118, in handle_read
    self.handle_error()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asynchat.py", line 116, in handle_read
    data = self.recv (self.ac_in_buffer_size)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 378, in recv
    return super(SSLConnection, self).recv(buffer_size)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 379, in recv
    data = self.socket.recv(buffer_size)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 438, in recv
    return self.read(buflen)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 329, in read
    v = self._sslobj.read(len or 1024)
ssl.SSLError: [SSL] called a function you should not call (_ssl.c:1450)

Exception in thread Thread-223:
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/threading.py", line 639, in _bootstrap_inner
    self.run()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 272, in run
    asyncore.loop(timeout=0.1, count=1)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 212, in loop
    poll_fun(timeout, map)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 153, in poll
    read(obj)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 87, in read
    obj.handle_error()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/asyncore.py", line 83, in read
    obj.handle_read_event()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 352, in handle_read_event
    self._do_ssl_handshake()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 316, in _do_ssl_handshake
    self.socket.do_handshake()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 513, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLError: [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:547)

Warning -- threading._dangling was modified by test_ftplib
test test_ftplib failed
ok

======================================================================
ERROR: test_auth_ssl (test.test_ftplib.TestTLS_FTPClass)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ftplib.py", line 859, in test_auth_ssl
    self.client.auth()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ftplib.py", line 710, in auth
    ssl_version=self.ssl_version)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 590, in wrap_socket
    ciphers=ciphers)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 310, in __init__
    raise x
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 306, in __init__
    self.do_handshake()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 513, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:547)

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

...

======================================================================
ERROR: test_dh_params (test.test_ssl.ThreadedTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 1962, in test_dh_params
    chatty=True, connectionchatty=True)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 1276, in server_params_test
    s.connect((HOST, server.port))
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 543, in connect
    self._real_connect(addr, False)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 533, in _real_connect
    self.do_handshake()
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/ssl.py", line 513, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLError: [SSL] dh key too small (_ssl.c:547)

======================================================================
FAIL: test_options (test.test_ssl.ContextTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 87, in f
    return func(*args, **kwargs)
  File "/usr/src/RPM/BUILD/python3-3.3.1/Lib/test/test_ssl.py", line 416, in test_options
    self.assertEqual(ssl.OP_ALL, ctx.options)
AssertionError: 2147484671 != 2197816319

----------------------------------------------------------------------
Comment 1 Grigory Ustinov 2020-02-18 14:14:58 MSK
p7 больше не поддерживается, в поддерживаемых бранчах таких проблем давно уже нет.