summaryrefslogtreecommitdiffstats
path: root/crypto/openssl/ssl/s23_srvr.c
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2015-01-09 00:58:20 +0000
committerjkim <jkim@FreeBSD.org>2015-01-09 00:58:20 +0000
commit27e2f26e1531b869ff531fab5ac3ef06aae4d4f4 (patch)
tree11138272980644b3ccdbfe7c0ebead1536be5efb /crypto/openssl/ssl/s23_srvr.c
parent3e6f1de34088867465b6a1a87fb10c25fc811e50 (diff)
downloadFreeBSD-src-27e2f26e1531b869ff531fab5ac3ef06aae4d4f4.zip
FreeBSD-src-27e2f26e1531b869ff531fab5ac3ef06aae4d4f4.tar.gz
MFC: r276861, r276863
Merge OpenSSL 1.0.1k.
Diffstat (limited to 'crypto/openssl/ssl/s23_srvr.c')
-rw-r--r--crypto/openssl/ssl/s23_srvr.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/crypto/openssl/ssl/s23_srvr.c b/crypto/openssl/ssl/s23_srvr.c
index 93ca7d5..3178815 100644
--- a/crypto/openssl/ssl/s23_srvr.c
+++ b/crypto/openssl/ssl/s23_srvr.c
@@ -192,6 +192,7 @@ int ssl23_accept(SSL *s)
}
if (!BUF_MEM_grow(buf,SSL3_RT_MAX_PLAIN_LENGTH))
{
+ BUF_MEM_free(buf);
ret= -1;
goto end;
}
@@ -602,12 +603,14 @@ int ssl23_get_client_hello(SSL *s)
if ((type == 2) || (type == 3))
{
/* we have SSLv3/TLSv1 (type 2: SSL2 style, type 3: SSL3/TLS style) */
- s->method = ssl23_get_server_method(s->version);
- if (s->method == NULL)
+ const SSL_METHOD *new_method;
+ new_method = ssl23_get_server_method(s->version);
+ if (new_method == NULL)
{
SSLerr(SSL_F_SSL23_GET_CLIENT_HELLO,SSL_R_UNSUPPORTED_PROTOCOL);
goto err;
}
+ s->method = new_method;
if (!ssl_init_wbio_buffer(s,1)) goto err;
OpenPOWER on IntegriCloud