diff options
author | Dmitry Baryshkov <dbaryshkov@gmail.com> | 2020-03-07 01:09:55 +0300 |
---|---|---|
committer | Dmitry Baryshkov <dbaryshkov@gmail.com> | 2020-03-07 01:09:55 +0300 |
commit | 1ccfe3b755c71bdb5c6e9bf842ac7aaa92f5913f (patch) | |
tree | 52a137436e9e66d18ed3a746e37f108465343db2 /lib | |
parent | 41404c6e91c06c1c1f3c65c2addf0c43b6eb3174 (diff) | |
download | gnutls-1ccfe3b755c71bdb5c6e9bf842ac7aaa92f5913f.tar.gz |
lib/x509/output.c: remove occasioinal memory leak in print_issuer_sign_tool()
Remove memory leak in error handling in print_issuer_sign_tool() by
moving asn1_delete_structure to the end of the function.
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/x509/output.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/x509/output.c b/lib/x509/output.c index 2aa78b478b..1e605d8fb6 100644 --- a/lib/x509/output.c +++ b/lib/x509/output.c @@ -908,7 +908,6 @@ static void print_issuer_sign_tool(gnutls_buffer_st * str, const char *prefix, c if ((result = _asn1_strict_der_decode(&tmpasn, der->data, der->size, asn1_err)) != ASN1_SUCCESS) { gnutls_assert(); _gnutls_debug_log("_asn1_strict_der_decode: %s\n", asn1_err); - asn1_delete_structure(&tmpasn); goto hexdump; } @@ -949,6 +948,8 @@ static void print_issuer_sign_tool(gnutls_buffer_st * str, const char *prefix, c return; hexdump: + asn1_delete_structure(&tmpasn); + addf(str, _("%s\t\t\tASCII: "), prefix); _gnutls_buffer_asciiprint(str, (char*)der->data, der->size); |