summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2021-03-15 10:48:49 +0100
committerDaiki Ueno <ueno@gnu.org>2021-03-15 10:48:49 +0100
commited697832ca8274132357279ff67cfaeda1a8df63 (patch)
tree5f996d1203fb031ab91a6570cc24c35313a1943c
parente4950b12282fb33847270169d470d0d35c966cf7 (diff)
downloadgnutls-ed697832ca8274132357279ff67cfaeda1a8df63.tar.gz
gnutls-cli-debug: avoid resource leak in saving DHE params
Signed-off-by: Daiki Ueno <ueno@gnu.org>
-rw-r--r--src/tests.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/tests.c b/src/tests.c
index 067531bd8e..7d1530b14c 100644
--- a/src/tests.c
+++ b/src/tests.c
@@ -587,17 +587,26 @@ test_code_t test_dhe_group(gnutls_session_t session)
gnutls_datum_t p3;
ret2 = gnutls_dh_params_init(&dhp);
- if (ret2 < 0)
+ if (ret2 < 0) {
+ fclose(fp);
return TEST_FAILED;
+ }
ret2 = gnutls_dh_params_import_raw(dhp, &prime, &gen);
- if (ret2 < 0)
+ if (ret2 < 0) {
+ gnutls_dh_params_deinit(dhp);
+ fclose(fp);
return TEST_FAILED;
+ }
ret2 = gnutls_dh_params_export2_pkcs3(dhp, GNUTLS_X509_FMT_PEM, &p3);
- if (ret2 < 0)
+ if (ret2 < 0) {
+ gnutls_dh_params_deinit(dhp);
+ fclose(fp);
return TEST_FAILED;
+ }
+ gnutls_dh_params_deinit(dhp);
fprintf(fp, "\n%s\n", p3.data);
gnutls_free(p3.data);
}