summaryrefslogtreecommitdiffstats
path: root/lib/libssl/src
diff options
context:
space:
mode:
authormiod <miod@openbsd.org>2014-06-18 04:51:31 +0000
committermiod <miod@openbsd.org>2014-06-18 04:51:31 +0000
commit25bd0b34e1b2f0a8b14a3bd5f3d3426f6e1faa3f (patch)
tree7f546e7ee4e614a3310ba374a5de10ce53619b59 /lib/libssl/src
parentMissinc calloc() return value check; ok deraadt@ (diff)
downloadwireguard-openbsd-25bd0b34e1b2f0a8b14a3bd5f3d3426f6e1faa3f.tar.xz
wireguard-openbsd-25bd0b34e1b2f0a8b14a3bd5f3d3426f6e1faa3f.zip
In ssl3_send_newsession_ticket(), fix a memory leak in an error path.
Diffstat (limited to 'lib/libssl/src')
-rw-r--r--lib/libssl/src/ssl/s3_srvr.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libssl/src/ssl/s3_srvr.c b/lib/libssl/src/ssl/s3_srvr.c
index c37cd421dce..cab034d18f5 100644
--- a/lib/libssl/src/ssl/s3_srvr.c
+++ b/lib/libssl/src/ssl/s3_srvr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: s3_srvr.c,v 1.64 2014/06/12 15:49:31 deraadt Exp $ */
+/* $OpenBSD: s3_srvr.c,v 1.65 2014/06/18 04:51:31 miod Exp $ */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
@@ -2960,8 +2960,10 @@ ssl3_send_newsession_ticket(SSL *s)
*/
if (!BUF_MEM_grow(s->init_buf,
26 + EVP_MAX_IV_LENGTH + EVP_MAX_BLOCK_LENGTH +
- EVP_MAX_MD_SIZE + slen))
+ EVP_MAX_MD_SIZE + slen)) {
+ free(senc);
return (-1);
+ }
p = (unsigned char *)s->init_buf->data;
/* do the header */