]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
fuzz: fix leaks in PKCS#12 fuzzer
authorNikos Mavrogiannopoulos <nmav@redhat.com>
Fri, 28 Apr 2017 21:12:19 +0000 (23:12 +0200)
committerNikos Mavrogiannopoulos <nmav@redhat.com>
Fri, 28 Apr 2017 21:12:19 +0000 (23:12 +0200)
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
devel/fuzz/gnutls_pkcs12_key_parser_fuzzer.cc

index 1c3c15cce94f1a800b9691a9350a1ac4b7e1a96c..84f1ddb153f87e96d7d6e53c318b4cf591e3ecd2 100644 (file)
@@ -53,10 +53,16 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
        gnutls_x509_privkey_deinit(key);
        if (crl)
                gnutls_x509_crl_deinit(crl);
-       for (i=0;i<extras_len;i++)
-               gnutls_x509_crt_deinit(extras[i]);
-       for (i=0;i<chain_len;i++)
-               gnutls_x509_crt_deinit(chain[i]);
+       if (extras_len > 0) {
+               for (i=0;i<extras_len;i++)
+                       gnutls_x509_crt_deinit(extras[i]);
+               gnutls_free(extras);
+       }
+       if (chain_len > 0) {
+               for (i=0;i<chain_len;i++)
+                       gnutls_x509_crt_deinit(chain[i]);
+               gnutls_free(chain);
+       }
     }
 
  cleanup: