New issue 2615: This looks like a thread-safety bug causing memory corruption
in pypy 3 ssl
https://bitbucket.org/pypy/pypy/issues/2615/this-looks-like-a-thread-safety-bug
Nathaniel Smith:
Filing on behalf of @yuvipanda, who's having some trouble with bitbucket...
The traceback here:
https://github.com/kubernetes-client/python-base/issues/23
seems to indicate that occasionally, pypy 3's `SSLSocket.getpeercert` method is
returning a corrupted string like `10.0.0.1\x005.1` for one of the
subjectAltName fields, instead of the correct `10.0.0.1`.
Given that symptom, and that it's observed to happen occasionally when running
a stress-test that uses threads, I would suspect some sort of data race
happening inside
`lib_pypy/_cffi_ssl/_stdssl/certificate.py:_get_peer_alt_names`.
That function seems to use a bunch of OpenSSL functions whose docs say things
like "The returned pointer is an internal value which must not be freed up."...
_______________________________________________
pypy-issue mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-issue