wasmer_emscripten/
signal.rs

1// use super::varargs::VarArgs;
2use crate::EmEnv;
3use wasmer::FunctionEnvMut;
4
5#[allow(clippy::cast_ptr_alignment)]
6pub fn _sigemptyset(ctx: FunctionEnvMut<EmEnv>, set: u32) -> i32 {
7    debug!("emscripten::_sigemptyset");
8    let memory = ctx.data().memory(0);
9    let set_addr = emscripten_memory_pointer!(memory.view(&ctx), set) as *mut u32;
10    unsafe {
11        *set_addr = 0;
12    }
13    0
14}
15
16pub fn _sigaction(_ctx: FunctionEnvMut<EmEnv>, _signum: u32, _act: u32, _oldact: u32) -> i32 {
17    debug!("emscripten::_sigaction {}, {}, {}", _signum, _act, _oldact);
18    0
19}
20
21pub fn _siginterrupt(_ctx: FunctionEnvMut<EmEnv>, _a: u32, _b: u32) -> i32 {
22    debug!("emscripten::_siginterrupt {}, {}", _a, _b);
23    0
24}
25
26#[allow(clippy::cast_ptr_alignment)]
27pub fn _sigaddset(ctx: FunctionEnvMut<EmEnv>, set: u32, signum: u32) -> i32 {
28    debug!("emscripten::_sigaddset {}, {}", set, signum);
29    let memory = ctx.data().memory(0);
30    let set_addr = emscripten_memory_pointer!(memory.view(&ctx), set) as *mut u32;
31    unsafe {
32        *set_addr |= 1 << (signum - 1);
33    }
34    0
35}
36
37pub fn _sigsuspend(_ctx: FunctionEnvMut<EmEnv>, _one: i32) -> i32 {
38    debug!("emscripten::_sigsuspend");
39    -1
40}
41
42pub fn _sigprocmask(_ctx: FunctionEnvMut<EmEnv>, _one: i32, _two: i32, _three: i32) -> i32 {
43    debug!("emscripten::_sigprocmask");
44    0
45}
46
47pub fn _signal(_ctx: FunctionEnvMut<EmEnv>, _sig: u32, _two: i32) -> i32 {
48    debug!("emscripten::_signal ({})", _sig);
49    0
50}