summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjsing <>2014-09-29 09:30:31 +0000
committerjsing <>2014-09-29 09:30:31 +0000
commitc9beabec633f1cc45215bc550b7370c475785a2b (patch)
treedfa098282915a6ca74eface08d52efc3650c781d /src
parentc23a67af7f4a09d29116172b102fabc1c99365fe (diff)
downloadopenbsd-c9beabec633f1cc45215bc550b7370c475785a2b.tar.gz
openbsd-c9beabec633f1cc45215bc550b7370c475785a2b.tar.bz2
openbsd-c9beabec633f1cc45215bc550b7370c475785a2b.zip
When freeing the config, explicitly call ressl_config_clear_keys() rather
than rerolling our own key clearing code. ok tedu@
Diffstat (limited to 'src')
-rw-r--r--src/lib/libressl/ressl_config.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/lib/libressl/ressl_config.c b/src/lib/libressl/ressl_config.c
index 319bba330d..106527c109 100644
--- a/src/lib/libressl/ressl_config.c
+++ b/src/lib/libressl/ressl_config.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ressl_config.c,v 1.10 2014/09/28 14:46:09 jsing Exp $ */ 1/* $OpenBSD: ressl_config.c,v 1.11 2014/09/29 09:30:31 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -84,16 +84,17 @@ ressl_config_free(struct ressl_config *config)
84{ 84{
85 if (config == NULL) 85 if (config == NULL)
86 return; 86 return;
87
88 ressl_config_clear_keys(config);
89
87 free((char *)config->ca_file); 90 free((char *)config->ca_file);
88 free((char *)config->ca_path); 91 free((char *)config->ca_path);
89 free((char *)config->cert_file); 92 free((char *)config->cert_file);
90 free(config->cert_mem); 93 free(config->cert_mem);
91 free((char *)config->ciphers); 94 free((char *)config->ciphers);
92 free((char *)config->key_file); 95 free((char *)config->key_file);
93 if (config->key_mem != NULL) { 96 free(config->key_mem);
94 explicit_bzero(config->key_mem, config->key_len); 97
95 free(config->key_mem);
96 }
97 free(config); 98 free(config);
98} 99}
99 100