From: Andrew Bartlett Date: Thu, 7 Nov 2019 03:52:48 +0000 (+1300) Subject: lib/fuzzing: Free memory after successful load in fuzz_tiniparser X-Git-Tag: ldb-2.1.0~699 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d6fbfb276ce89ad40f47784300fb99cee9d4aac9;p=thirdparty%2Fsamba.git lib/fuzzing: Free memory after successful load in fuzz_tiniparser Otherwise we have a memory leak and so fail the Google oss-fuzz check_build test. Signed-off-by: Andrew Bartlett Reviewed-by: Jeremy Allison Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Mon Nov 18 21:02:52 UTC 2019 on sn-devel-184 --- diff --git a/lib/fuzzing/fuzz_tiniparser.c b/lib/fuzzing/fuzz_tiniparser.c index ccc50da183a..6908f1815d7 100644 --- a/lib/fuzzing/fuzz_tiniparser.c +++ b/lib/fuzzing/fuzz_tiniparser.c @@ -28,6 +28,7 @@ int LLVMFuzzerInitialize(int *argc, char ***argv) int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) { FILE *fp = NULL; + struct tiniparser_dictionary *d = NULL; if (len == 0) { /* @@ -39,7 +40,10 @@ int LLVMFuzzerTestOneInput(uint8_t *buf, size_t len) fp = fmemopen(buf, len, "r"); - tiniparser_load_stream(fp); + d = tiniparser_load_stream(fp); + if (d != NULL) { + tiniparser_freedict(d); + } fclose(fp);