wasmer_wasix/syscalls/wasix/
proc_signal.rs1use super::*;
2use crate::syscalls::*;
3
4#[instrument(level = "trace", skip_all, fields(%pid, ?sig), ret)]
12pub fn proc_signal(
13 mut ctx: FunctionEnvMut<'_, WasiEnv>,
14 pid: Pid,
15 sig: Signal,
16) -> Result<Errno, WasiError> {
17 let result = if (pid as i32) <= 0 {
21 Errno::Success
22 } else if let Some(process) = ctx.data().control_plane.get_process(pid.into()) {
23 process.signal_process(sig);
24 Errno::Success
25 } else {
26 Errno::Srch
27 };
28
29 WasiEnv::do_pending_operations(&mut ctx)?;
30
31 Ok(result)
32}