From b7296db4061030d4a41138ac87005620f6a2edfe Mon Sep 17 00:00:00 2001 From: Addison Crump Date: Mon, 20 Feb 2023 23:34:16 +0100 Subject: [PATCH] Fix exits which may cause double-free corruption (#1086) --- libafl/src/events/mod.rs | 2 +- libafl/src/executors/inprocess.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libafl/src/events/mod.rs b/libafl/src/events/mod.rs index a970236751..55f3a73fd1 100644 --- a/libafl/src/events/mod.rs +++ b/libafl/src/events/mod.rs @@ -87,7 +87,7 @@ pub unsafe fn shutdown_handler( std::ptr::drop_in_place(sr); } log::info!("Bye!"); - std::process::exit(0); + libc::_exit(0); } #[cfg(all(unix, feature = "std"))] diff --git a/libafl/src/executors/inprocess.rs b/libafl/src/executors/inprocess.rs index ceb2ac2e19..2c998ca7b8 100644 --- a/libafl/src/executors/inprocess.rs +++ b/libafl/src/executors/inprocess.rs @@ -1536,7 +1536,7 @@ where .post_exec_child_all(state, input, &ExitKind::Ok) .expect("Failed to run post_exec on observers"); - std::process::exit(0); + libc::_exit(0); Ok(ExitKind::Ok) } @@ -1613,7 +1613,7 @@ where .post_exec_child_all(state, input, &ExitKind::Ok) .expect("Failed to run post_exec on observers"); - std::process::exit(0); + libc::_exit(0); Ok(ExitKind::Ok) }