summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjsing <>2016-12-07 13:17:33 +0000
committerjsing <>2016-12-07 13:17:33 +0000
commite34b1bb692b0e74b2b72218705509b1c7ece2a12 (patch)
tree5c9d04088eaa18a75178dc34c7c1b6acb764d332 /src/lib
parent22c2a591d6e8fb9e7f604a5254992d30f7035838 (diff)
downloadopenbsd-e34b1bb692b0e74b2b72218705509b1c7ece2a12.tar.gz
openbsd-e34b1bb692b0e74b2b72218705509b1c7ece2a12.tar.bz2
openbsd-e34b1bb692b0e74b2b72218705509b1c7ece2a12.zip
Ensure that we zero memory used to hold the ASN.1 encoded session, since
this contains the session master key. ok deraadt@ doug@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/ssl_asn1.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/libssl/ssl_asn1.c b/src/lib/libssl/ssl_asn1.c
index 1b93886868..a27858c955 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.44 2016/12/03 12:34:35 jsing Exp $ */ 1/* $OpenBSD: ssl_asn1.c,v 1.45 2016/12/07 13:17:33 jsing Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2016 Joel Sing <jsing@openbsd.org> 4 * Copyright (c) 2016 Joel Sing <jsing@openbsd.org>
@@ -206,6 +206,9 @@ i2d_SSL_SESSION(SSL_SESSION *s, unsigned char **pp)
206 rv = (int)data_len; 206 rv = (int)data_len;
207 207
208 err: 208 err:
209 if (data != NULL)
210 explicit_bzero(data, data_len);
211
209 CBB_cleanup(&session); 212 CBB_cleanup(&session);
210 free(peer_cert_bytes); 213 free(peer_cert_bytes);
211 free(data); 214 free(data);