aboutsummaryrefslogtreecommitdiff
path: root/ssl/ssl_lib.c
diff options
context:
space:
mode:
authorBodo Möller <bodo@openssl.org>2001-10-24 19:03:22 +0000
committerBodo Möller <bodo@openssl.org>2001-10-24 19:03:22 +0000
commit979689aa5cfa100ccbc1f25064e9398be4b7b05c (patch)
tree363dad35cdaaba2b61eb34898433e4fb0495bcde /ssl/ssl_lib.c
parenta3faebd1041576a59bffe01bbd2c68495870ec5e (diff)
downloadopenssl-979689aa5cfa100ccbc1f25064e9398be4b7b05c.zip
openssl-979689aa5cfa100ccbc1f25064e9398be4b7b05c.tar.gz
openssl-979689aa5cfa100ccbc1f25064e9398be4b7b05c.tar.bz2
Fix SSL handshake functions and SSL_clear() such that SSL_clear()
never resets s->method to s->ctx->method when called from within one of the SSL handshake functions.
Diffstat (limited to 'ssl/ssl_lib.c')
-rw-r--r--ssl/ssl_lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index 7257daa..72821a1 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -193,7 +193,7 @@ int SSL_clear(SSL *s)
#if 1
/* Check to see if we were changed into a different method, if
* so, revert back if we are not doing session-id reuse. */
- if ((s->session == NULL) && (s->method != s->ctx->method))
+ if (!s->in_handshake && (s->session == NULL) && (s->method != s->ctx->method))
{
s->method->ssl_free(s);
s->method=s->ctx->method;