summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjsing <>2017-04-11 13:14:08 +0000
committerjsing <>2017-04-11 13:14:08 +0000
commit97f100b6ccb83dadea1de6b0bf12416a8ed1c845 (patch)
tree4582d80f6a35381be6c7b87894adde869f0d120b /src/lib
parentc163c62659b97e5b32b33c12c507cc2d25f2fa30 (diff)
downloadopenbsd-97f100b6ccb83dadea1de6b0bf12416a8ed1c845.tar.gz
openbsd-97f100b6ccb83dadea1de6b0bf12416a8ed1c845.tar.bz2
openbsd-97f100b6ccb83dadea1de6b0bf12416a8ed1c845.zip
Revert ssl_asn1.c r1.50 - CBB and freezero(3) do not play nicely together.
Back this out while we investigate and implement a solution. Found the hard way by sthen@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/ssl_asn1.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl_asn1.c b/src/lib/libssl/ssl_asn1.c
index 5110ca3cc8..aca34f8c3e 100644
--- a/src/lib/libssl/ssl_asn1.c
+++ b/src/lib/libssl/ssl_asn1.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_asn1.c,v 1.50 2017/04/10 16:47:08 jsing Exp $ */ 1/* $OpenBSD: ssl_asn1.c,v 1.51 2017/04/11 13:14:08 jsing Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2016 Joel Sing <jsing@openbsd.org> 4 * Copyright (c) 2016 Joel Sing <jsing@openbsd.org>
@@ -205,9 +205,12 @@ i2d_SSL_SESSION(SSL_SESSION *s, unsigned char **pp)
205 rv = (int)data_len; 205 rv = (int)data_len;
206 206
207 err: 207 err:
208 if (data != NULL)
209 explicit_bzero(data, data_len);
210
208 CBB_cleanup(&session); 211 CBB_cleanup(&session);
209 freezero(data, data_len);
210 free(peer_cert_bytes); 212 free(peer_cert_bytes);
213 free(data);
211 214
212 return rv; 215 return rv;
213} 216}