diff options
Diffstat (limited to 'utils/aflpp_driver/aflpp_driver.c')
-rw-r--r-- | utils/aflpp_driver/aflpp_driver.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/utils/aflpp_driver/aflpp_driver.c b/utils/aflpp_driver/aflpp_driver.c index 9ffb2383..6e992266 100644 --- a/utils/aflpp_driver/aflpp_driver.c +++ b/utils/aflpp_driver/aflpp_driver.c @@ -80,6 +80,7 @@ extern unsigned int __afl_map_size; /*__attribute__((weak))*/ int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size); __attribute__((weak)) int LLVMFuzzerInitialize(int *argc, char ***argv); +__attribute__((weak)) void LLVMFuzzerCleanup(void); __attribute__((weak)) int LLVMFuzzerRunDriver( int *argc, char ***argv, int (*callback)(const uint8_t *data, size_t size)); @@ -338,6 +339,7 @@ __attribute__((weak)) int LLVMFuzzerRunDriver( output_file = stderr; maybe_duplicate_stderr(); maybe_close_fd_mask(); + if (LLVMFuzzerInitialize) { fprintf(stderr, "Running LLVMFuzzerInitialize ...\n"); @@ -441,6 +443,14 @@ __attribute__((weak)) int LLVMFuzzerRunDriver( } + if (LLVMFuzzerCleanup) { + + fprintf(stderr, "Running LLVMFuzzerCleanup ...\n"); + LLVMFuzzerCleanup(); + fprintf(stderr, "Exiting ...\n"); + + } + return 0; } |