gh-148508: Add resilience to SSL preauth tests on iOS#148536
gh-148508: Add resilience to SSL preauth tests on iOS#148536freakboy3742 merged 1 commit intopython:mainfrom
Conversation
|
Tagging @vstinner for review on this since you added the "non_linux_skip_if_other_okay_error" handling. |
|
!buildbot iOS |
|
🤖 New build scheduled with the buildbot fleet by @freakboy3742 for commit 37b278f 🤖 Results will be shown at: https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F148536%2Fmerge The command will test the builders whose names match following regular expression: The builders matched are:
|
gpshead
left a comment
There was a problem hiding this comment.
could use a (a|b) regex instead, works either way. this is readable.
|
Thanks @freakboy3742 for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14. |
|
GH-148539 is a backport of this pull request to the 3.14 branch. |
|
GH-148540 is a backport of this pull request to the 3.13 branch. |
I only made a small change to break reference cycles. This function is quite complicated. I don't understand well why OpenSSL behaves so differently depending on the platform. I'm glad that @gpshead reviewed this change :-) |
The
test_ssl.TestPreHandshakeClose.test_preauth_data_to_tls_servertest fails intermittently on the iOS buildbot because an SSL error doesn't raise the expected TLS handshake error.This test already has an escape clause that allows a skip under certain error conditions (raising a ConnectionError, an OSError, or an SSL error with "wrong version number"). Running locally, I reliably hit the OSError handling case; the buildbot also hits the OSError case most of the time, but sometimes it raises SSLError with "[SSL: RECORD_LAYER_FAILURE] record layer failure".
This adds a check for "record layer failure" as an additional failure mode that will be accepted.