This will allow running address sanitizer as part of the fuzz.
lib_init();
lib_signals_init();
lib_signals_ignore(SIGPIPE, TRUE);
+ fuzz_ctx->lib_initialized = TRUE;
}
fuzz_ctx->fd = -1;
fuzz_ctx->fd_pump = -1;
(void)close(fuzz_ctx->fd_pump);
if (fuzz_ctx->ioloop != NULL)
io_loop_destroy(&fuzz_ctx->ioloop);
+ if (fuzz_ctx->lib_initialized) {
+ lib_signals_deinit();
+ lib_deinit();
+ }
}
static void pump_finished(enum iostream_pump_status status ATTR_UNUSED,
int fd, fd_pump;
struct iostream_pump *pump;
struct ioloop *ioloop;
+
+ bool lib_initialized:1;
};
#define FUZZ_BEGIN_DATA(data_arg, size_arg) \