nc 0.9.8

Access system calls directly
Documentation
1
2
3
4
5
6
7
8
/// Create a file descriptor to accept signals.
pub unsafe fn signalfd4(fd: i32, mask: &sigset_t, flags: i32) -> Result<i32, Errno> {
    let fd = fd as usize;
    let mask_ptr = core::ptr::from_ref(mask) as usize;
    let size_mask = core::mem::size_of::<sigset_t>();
    let flags = flags as usize;
    unsafe { syscall4(SYS_SIGNALFD4, fd, mask_ptr, size_mask, flags).map(|ret| ret as i32) }
}