Add a FuzzerClean() function
authorKurt Roeckx <kurt@roeckx.be>
Sat, 19 Nov 2016 16:13:10 +0000 (17:13 +0100)
committerKurt Roeckx <kurt@roeckx.be>
Fri, 2 Dec 2016 23:14:14 +0000 (00:14 +0100)
This allows to free everything we allocated, so we can detect memory
leaks.

Reviewed-by: Rich Salz <rsalz@openssl.org>
GH: #2023

13 files changed:
fuzz/asn1.c
fuzz/asn1parse.c
fuzz/bignum.c
fuzz/bndiv.c
fuzz/cms.c
fuzz/conf.c
fuzz/crl.c
fuzz/ct.c
fuzz/driver.c
fuzz/fuzzer.h
fuzz/server.c
fuzz/test-corpus.c
fuzz/x509.c

index 0644ed7..f7b5571 100644 (file)
@@ -222,3 +222,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
 
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 2fba1c4..edb4d02 100644 (file)
@@ -33,3 +33,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     (void)ASN1_parse_dump(bio_out, buf, len, 0, 0);
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 9e110f6..d6e8637 100644 (file)
@@ -94,3 +94,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
 
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 9319878..eb17f29 100644 (file)
@@ -107,3 +107,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
 
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 71d8b69..c4477ef 100644 (file)
@@ -36,3 +36,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     BIO_free(in);
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 49edb3e..27429c5 100644 (file)
@@ -38,3 +38,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
 
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 51d1843..decf19e 100644 (file)
@@ -35,3 +35,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     }
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index 636b195..47b0fc3 100644 (file)
--- a/fuzz/ct.c
+++ b/fuzz/ct.c
@@ -40,3 +40,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     }
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}
index d4b11cd..21bbb25 100644 (file)
@@ -40,6 +40,8 @@ int main(int argc, char** argv)
         FuzzerTestOneInput(buf, size);
         free(buf);
     }
+
+    FuzzerCleanup();
     return 0;
 }
 
index 04d605d..5f9efa4 100644 (file)
@@ -10,3 +10,4 @@
 
 int FuzzerTestOneInput(const uint8_t *buf, size_t len);
 int FuzzerInitialize(int *argc, char ***argv);
+void FuzzerCleanup(void);
index 26ef4da..b8a3ac4 100644 (file)
@@ -250,3 +250,8 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     SSL_free(server);
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+    SSL_CTX_free(ctx);
+}
index c553697..9cef01f 100644 (file)
@@ -42,5 +42,8 @@ int main(int argc, char **argv) {
         free(buf);
         fclose(f);
     }
+
+    FuzzerCleanup();
+
     return 0;
 }
index 4c5b732..78fef6c 100644 (file)
@@ -36,3 +36,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len)
     }
     return 0;
 }
+
+void FuzzerCleanup(void)
+{
+}