From 568fc09277bbd2e4bbf3b2ebebacf78c4f67cd28 Mon Sep 17 00:00:00 2001 From: 4lDO2 <4lDO2@protonmail.com> Date: Wed, 26 Jun 2024 22:10:02 +0200 Subject: [PATCH] Reset sighandler in fexec before switching addrsp. --- redox-rt/src/proc.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/redox-rt/src/proc.rs b/redox-rt/src/proc.rs index e4564bb7..a89354f2 100644 --- a/redox-rt/src/proc.rs +++ b/redox-rt/src/proc.rs @@ -421,6 +421,15 @@ where push(argc)?; + if let Ok(sighandler_fd) = syscall::dup(*open_via_dup, b"sighandler").map(FdGuard::new) { + let _ = syscall::write(*sighandler_fd, &SetSighandlerData { + user_handler: 0, + excp_handler: 0, + thread_control_addr: 0, + proc_control_addr: 0, + }); + } + unsafe { deactivate_tcb(*open_via_dup)?; } -- GitLab