diff options
author | beck <> | 2021-10-24 09:15:00 +0000 |
---|---|---|
committer | beck <> | 2021-10-24 09:15:00 +0000 |
commit | 9059b593fa5fd68624bb685dd770051e01a34bd5 (patch) | |
tree | 2fb3da965b31b32f987d58bc71041f507e605a75 /src | |
parent | 60967ccf50764d2c4a71fe0a183c78a0e8a931d7 (diff) | |
download | openbsd-9059b593fa5fd68624bb685dd770051e01a34bd5.tar.gz openbsd-9059b593fa5fd68624bb685dd770051e01a34bd5.tar.bz2 openbsd-9059b593fa5fd68624bb685dd770051e01a34bd5.zip |
Don't leak internal->verfied_chain, clean it up in ssl3_clear and free.
spotted by and ok jsing@
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libssl/s3_lib.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c index e78b70f0d8..8a96a2cdef 100644 --- a/src/lib/libssl/s3_lib.c +++ b/src/lib/libssl/s3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_lib.c,v 1.215 2021/09/08 12:56:14 tb Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.216 2021/10/24 09:15:00 beck Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -1574,6 +1574,7 @@ ssl3_free(SSL *s) | |||
1574 | tls13_clienthello_hash_clear(&S3I(s)->hs.tls13); | 1574 | tls13_clienthello_hash_clear(&S3I(s)->hs.tls13); |
1575 | 1575 | ||
1576 | sk_X509_NAME_pop_free(S3I(s)->hs.tls12.ca_names, X509_NAME_free); | 1576 | sk_X509_NAME_pop_free(S3I(s)->hs.tls12.ca_names, X509_NAME_free); |
1577 | sk_X509_pop_free(s->internal->verified_chain, X509_free); | ||
1577 | 1578 | ||
1578 | tls1_transcript_free(s); | 1579 | tls1_transcript_free(s); |
1579 | tls1_transcript_hash_free(s); | 1580 | tls1_transcript_hash_free(s); |
@@ -1595,6 +1596,8 @@ ssl3_clear(SSL *s) | |||
1595 | 1596 | ||
1596 | tls1_cleanup_key_block(s); | 1597 | tls1_cleanup_key_block(s); |
1597 | sk_X509_NAME_pop_free(S3I(s)->hs.tls12.ca_names, X509_NAME_free); | 1598 | sk_X509_NAME_pop_free(S3I(s)->hs.tls12.ca_names, X509_NAME_free); |
1599 | sk_X509_pop_free(s->internal->verified_chain, X509_free); | ||
1600 | s->internal->verified_chain = NULL; | ||
1598 | 1601 | ||
1599 | DH_free(S3I(s)->tmp.dh); | 1602 | DH_free(S3I(s)->tmp.dh); |
1600 | S3I(s)->tmp.dh = NULL; | 1603 | S3I(s)->tmp.dh = NULL; |