bpo-29781: Fix SSLObject.version before handshake (#3364)
SSLObject.version() now correctly returns None when handshake over BIO has
not been performed yet.
Signed-off-by: Christian Heimes <christian@python.org>
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index b001bca..2fa6bd2 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -1706,6 +1706,10 @@
if (self->ssl == NULL)
Py_RETURN_NONE;
+ if (!SSL_is_init_finished(self->ssl)) {
+ /* handshake not finished */
+ Py_RETURN_NONE;
+ }
version = SSL_get_version(self->ssl);
if (!strcmp(version, "unknown"))
Py_RETURN_NONE;