URL |
Status |
Linked |
Edit |
PR 5663 |
merged |
christian.heimes,
2018-02-25 12:06
|
|
PR 5923 |
merged |
miss-islington,
2018-02-27 07:56
|
|
PR 8760 |
merged |
christian.heimes,
2018-08-14 07:40
|
|
PR 8761 |
merged |
christian.heimes,
2018-08-14 07:44
|
|
PR 11612 |
merged |
vstinner,
2019-01-18 16:45
|
|
PR 11612 |
merged |
vstinner,
2019-01-18 16:45
|
|
PR 11612 |
merged |
vstinner,
2019-01-18 16:45
|
|
PR 11876 |
merged |
cstratak,
2019-02-15 14:45
|
|
msg312804 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-02-25 11:54 |
I'm using this ticket as an epos to track commits and required changes for OpenSSL 1.1.1 and TLS 1.3. Fixes need to be backported to 2.7 and 3.6 to 3.8. We might have to consider backports to 3.4 and 3.5, too.
If all goes to plan, OpenSSL 1.1.1 final is scheduled for 8th May 2018, https://www.openssl.org/policies/releasestrat.html . It will contain support for TLS 1.3. Python should either support TLS 1.3 by then or disable TLS 1.3 by default.
Fixes:
* #20995 added TLS 1.3 cipher suite support
* #29136 added OP_NO_TLSv1_3
* #30622 fixes NPN guard for OpenSSL 1.1.1
Issues:
* A new option OP_ENABLE_MIDDLEBOX_COMPAT is enabled by default. We need to expose the flag to make test pass.
* TLS 1.3 has changed session handling. The current session code cannot handle TLS 1.3 session resumption.
* Threaded echo server and asynchat based tests are failing with TLS 1.3. I haven't analyzed the issue properly. It looks like the server thread dies when a handshake error occurs.
|
msg312897 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-02-26 08:52 |
Ned, Benjamin
OpenSSL 1.1.1 is scheduled to be released just before 3.7.0rc1 will come out. I'd rather address as many issues now instead of adding last minute patches to the release candidate.
Once OpenSSL 1.1.1 is out and Python 3.7 supports it, we can discuss backports. 3.6 and 2.7 are going to need fixing, too.
|
msg317529 - (view) |
Author: Ned Deily (ned.deily) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-05-24 05:47 |
Christian, I'm not sure how this issue now differs from Issue33618 (and whether it can be closed as a duplicate) but, with the delay in OpenSSL 1.1.1 and as discussed over there, full 1.1.1 support will have to wait for 3.7.1 et al so I'm removing the "deferred blocker" status.
|
msg317575 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-05-24 14:17 |
3.7 and 3.8 support OpenSSL 1.1.1-pre7-dev. For 3.6 and 2.7 I have to backport some test fixes and documentation.
I prefer to wait until both TLS 1.3 and OpenSSL 1.1.1 have been finalized. Once 1.1.1 is out, I'll fix the outstanding issues on master and then backport all fixes to 3.6 / 2.7.
|
msg322490 - (view) |
Author: Miro Hrončok (hroncok) * |
Date: 2018-07-27 13:23 |
Note that Fedora 29 updated openssl from 1.1.0h to 1.1.1-0.pre8 and Python 3.7 tests are failing. Not 100% sure it's related, but full report at:
https://bugzilla.redhat.com/show_bug.cgi?id=1609291
|
msg322795 - (view) |
Author: Charalampos Stratakis (cstratak) * |
Date: 2018-07-31 16:07 |
Yes test_poplib and test_ftplib on fedora rawhide when run against openssl 1.1.1 pre8. Haven't tried the pr7, but assuming that the tests were fine before here is the list of changes between pre7 and pre8:
https://github.com/openssl/openssl/compare/OpenSSL_1_1_1-pre7...OpenSSL_1_1_1-pre8
|
msg323526 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-08-14 14:56 |
New changeset 2a4ee8aa01d61b6a9c8e9c65c211e61bdb471826 by Christian Heimes in branch '3.6':
bpo-32947: Fixes for TLS 1.3 and OpenSSL 1.1.1 (GH-8761)
https://github.com/python/cpython/commit/2a4ee8aa01d61b6a9c8e9c65c211e61bdb471826
|
msg323901 - (view) |
Author: Kurt Roeckx (kroeckx) * |
Date: 2018-08-22 18:59 |
This are the errors I'm currently getting testing with the pre9 verion in Debian:
https://ci.debian.net/data/autopkgtest/testing/amd64/p/python2.7/865936/log.gz
https://ci.debian.net/data/autopkgtest/testing/amd64/p/python3.6/865937/log.gz
https://ci.debian.net/data/autopkgtest/testing/amd64/p/python3.7/865938/log.gz
|
msg323903 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-08-22 19:07 |
Kurt, can you try again with a current git checkout from master? I fixed a couple of issues lately. CPython master passes all tests with vanilla OpenSSL 1.1.1-pre9. Does Debian change some default settings?
|
msg323909 - (view) |
Author: Kurt Roeckx (kroeckx) * |
Date: 2018-08-22 20:20 |
This are automated tests for the packages in Debian. I uploaded the pre9 version to unstable, and as a result of that all reverse dependencies got tested. I don't have any experience with python myself.
Anyway, the openssl.cnf in Debian contains:
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=2
So you might want to override that during the test suite by calling SSL_CTX_set_min_proto_version(ctx, 0).
|
msg325793 - (view) |
Author: Kurt Roeckx (kroeckx) * |
Date: 2018-09-19 20:16 |
Christian,
Do you have any update on this? Any idea when we can expect relased python versions that work with OpenSSL 1.1.1?
|
msg325795 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-09-19 20:18 |
Soonish, I'm still working on post handshake auth.
|
msg325926 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-09-20 19:46 |
Kurt, see #34670 for PHA for server and client side.
|
msg326719 - (view) |
Author: Kurt Roeckx (kroeckx) * |
Date: 2018-09-30 10:20 |
Do you have any idea when the next release will be? I think python is currently our biggest blocker for getting OpenSSL 1.1.1 in Debian testing.
|
msg326720 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2018-09-30 11:00 |
The release candidates came out a couple of days ago.
|
msg333990 - (view) |
Author: STINNER Victor (vstinner) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-01-18 16:52 |
On Fedora 29 with OpenSSL 1.1.1 FIPS 11 Sep 2018, test_connect_cadata() of test_ssl fails randomly:
---
$ ./python -m test -u all -F -m test_connect_cadata test_ssl
Run tests sequentially
0:00:00 load avg: 0.43 [ 1] test_ssl
test test_ssl failed -- Traceback (most recent call last):
File "/home/vstinner/prog/python/3.6/Lib/test/test_ssl.py", line 1642, in test_connect_cadata
s.connect(self.server_addr)
File "/home/vstinner/prog/python/3.6/Lib/ssl.py", line 1109, in connect
self._real_connect(addr, False)
File "/home/vstinner/prog/python/3.6/Lib/ssl.py", line 1100, in _real_connect
self.do_handshake()
File "/home/vstinner/prog/python/3.6/Lib/ssl.py", line 1077, in do_handshake
self._sslobj.do_handshake()
File "/home/vstinner/prog/python/3.6/Lib/ssl.py", line 689, in do_handshake
self._sslobj.do_handshake()
ConnectionResetError: [Errno 104] Connection reset by peer
test_ssl failed
== Tests result: FAILURE ==
1 test failed:
test_ssl
Total duration: 131 ms
Tests result: FAILURE
---
This bug has been fixed in master by commit 529525fb5a8fd9b96ab4021311a598c77588b918. It was partially backported in 3.6 with commit 2a4ee8aa01d61b6a9c8e9c65c211e61bdb471826, but the backport is incomplete.
I wrote PR 11612 to backport remaining fixes.
|
msg335623 - (view) |
Author: STINNER Victor (vstinner) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-02-15 17:27 |
New changeset 2149a9ad7a9d39d7d680ec0fb602042c91057484 by Victor Stinner (stratakis) in branch '2.7':
[2.7] bpo-32947: Fixes for TLS 1.3 and OpenSSL 1.1.1 (GH-8761) (GH-11876)
https://github.com/python/cpython/commit/2149a9ad7a9d39d7d680ec0fb602042c91057484
|
msg342616 - (view) |
Author: Benjamin Peterson (benjamin.peterson) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-05-15 23:29 |
Was using OpenSSL to verify hostnames intentionally not backported?
|
msg342617 - (view) |
Author: Christian Heimes (christian.heimes) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-05-15 23:58 |
Yes, the feature requires OpenSSL 1.0.2 and a more recent version of LibreSSL. 2.7 and 3.6 branches still target platforms with ancient versions of OpenSSL (e.g. Ubuntu 14.04 has 1.0.1f + patches). People were complain A LOT, because there were not able to install Python 3.7 on TravisCI. Like really a lot, alot.
I propose to close this bug as fixed in 3.7+
|
msg343853 - (view) |
Author: Ned Deily (ned.deily) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-05-29 02:05 |
New changeset 3dbc43f63c7e056b80d6e28f3812125a09555456 by Ned Deily (Victor Stinner) in branch '3.6':
bpo-32947: test_ssl fixes for TLS 1.3 and OpenSSL 1.1.1 (GH-11612)
https://github.com/python/cpython/commit/3dbc43f63c7e056b80d6e28f3812125a09555456
|
msg343854 - (view) |
Author: Ned Deily (ned.deily) * ![Python committer (Python committer)](@@file/committer.png) |
Date: 2019-05-29 02:06 |
I don't have a strong opinion about backporting to 3.6. With OpenSSL 1.0.2 official support ending at the end of 2019 and 3.6.z retired towards the ned of 2021, there would be a 2-year window where 3.6 is still in security-fix-only status. But, if we don't do the backport now, we could always choose to backport it later if the need arises.
|
|
Date |
User |
Action |
Args |
2022-04-11 14:58:58 | admin | set | github: 77128 |
2019-05-29 02:06:57 | ned.deily | set | status: open -> closed
messages:
+ msg343854 |
2019-05-29 02:05:01 | ned.deily | set | status: pending -> open
messages:
+ msg343853 |
2019-05-15 23:58:03 | christian.heimes | set | status: open -> pending versions:
+ Python 3.7, Python 3.8, - Python 2.7, Python 3.6 messages:
+ msg342617
resolution: fixed stage: patch review -> resolved |
2019-05-15 23:29:53 | benjamin.peterson | set | messages:
+ msg342616 |
2019-02-15 18:22:29 | yan12125 | set | nosy:
- yan12125
|
2019-02-15 17:27:47 | vstinner | set | messages:
+ msg335623 |
2019-02-15 14:45:20 | cstratak | set | pull_requests:
+ pull_request11910 |
2019-01-18 16:52:01 | vstinner | set | nosy:
+ vstinner messages:
+ msg333990
|
2019-01-18 16:46:04 | vstinner | set | pull_requests:
+ pull_request11347 |
2019-01-18 16:45:43 | vstinner | set | pull_requests:
+ pull_request11346 |
2019-01-18 16:45:21 | vstinner | set | pull_requests:
+ pull_request11345 |
2018-09-30 11:00:34 | christian.heimes | set | messages:
+ msg326720 |
2018-09-30 10:20:06 | kroeckx | set | messages:
+ msg326719 |
2018-09-20 19:46:32 | christian.heimes | set | messages:
+ msg325926 |
2018-09-19 20:18:37 | christian.heimes | set | messages:
+ msg325795 |
2018-09-19 20:16:44 | kroeckx | set | messages:
+ msg325793 |
2018-08-22 20:20:38 | kroeckx | set | messages:
+ msg323909 |
2018-08-22 19:07:54 | christian.heimes | set | messages:
+ msg323903 |
2018-08-22 18:59:45 | kroeckx | set | nosy:
+ kroeckx messages:
+ msg323901
|
2018-08-14 14:56:35 | christian.heimes | set | messages:
+ msg323526 |
2018-08-14 07:44:21 | christian.heimes | set | pull_requests:
+ pull_request8237 |
2018-08-14 07:40:21 | christian.heimes | set | pull_requests:
+ pull_request8236 |
2018-07-31 16:07:56 | cstratak | set | nosy:
+ cstratak messages:
+ msg322795
|
2018-07-30 04:56:23 | yan12125 | set | nosy:
+ yan12125
|
2018-07-27 13:23:58 | hroncok | set | nosy:
+ hroncok messages:
+ msg322490
|
2018-05-24 14:17:09 | christian.heimes | set | messages:
+ msg317575 versions:
- Python 3.7, Python 3.8 |
2018-05-24 05:47:40 | ned.deily | set | priority: deferred blocker -> high
messages:
+ msg317529 |
2018-02-27 07:56:49 | miss-islington | set | pull_requests:
+ pull_request5694 |
2018-02-26 08:52:09 | christian.heimes | set | priority: normal -> deferred blocker nosy:
+ janssen, benjamin.peterson, ned.deily, alex, dstufft messages:
+ msg312897
|
2018-02-25 12:06:34 | christian.heimes | set | keywords:
+ patch stage: patch review pull_requests:
+ pull_request5655 |
2018-02-25 11:54:40 | christian.heimes | create | |