diff options
author | Erlend Egeberg Aasland <erlend.aasland@innova.no> | 2021-06-24 12:05:42 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-24 12:05:42 (GMT) |
commit | b5a52eef67997246b4235b5407e52a01e822ce56 (patch) | |
tree | cf19bf893d83ade339503a0e4a6fd5ad14445d49 | |
parent | 2c1ae09764446beda5248759fb99c859e14f1b25 (diff) | |
download | cpython-b5a52eef67997246b4235b5407e52a01e822ce56.zip cpython-b5a52eef67997246b4235b5407e52a01e822ce56.tar.gz cpython-b5a52eef67997246b4235b5407e52a01e822ce56.tar.bz2 |
bpo-44229: Ignore spurious EPROTOTYPE on macOS in test_ssl (GH-26893)
-rw-r--r-- | Lib/test/test_ssl.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index cee97a8..11f4c3c 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -2443,9 +2443,14 @@ class ThreadedEchoServer(threading.Thread): self.server.conn_errors.append(str(e)) if self.server.chatty: handle_error("\n server: bad connection attempt from " + repr(self.addr) + ":\n") - self.running = False - self.server.stop() - self.close() + + # bpo-44229, bpo-43855, bpo-44237, and bpo-33450: + # Ignore spurious EPROTOTYPE returned by write() on macOS. + # See also http://erickt.github.io/blog/2014/11/19/adventures-in-debugging-a-potential-osx-kernel-bug/ + if e.errno != errno.EPROTOTYPE and sys.platform != "darwin": + self.running = False + self.server.stop() + self.close() return False else: self.server.shared_ciphers.append(self.sslconn.shared_ciphers()) |