pub unsafe fn pselect6(
nfds: i32,
readfds: &mut fd_set_t,
writefds: &mut fd_set_t,
exceptfds: &mut fd_set_t,
timeout: ×pec_t,
sigmask: &sigset_t,
) -> Result<i32, Errno> {
let nfds = nfds as usize;
let readfds_ptr = readfds as *mut fd_set_t as usize;
let writefds_ptr = writefds as *mut fd_set_t as usize;
let exceptfds_ptr = exceptfds as *mut fd_set_t as usize;
let timeout_ptr = timeout as *const timespec_t as usize;
let sigmask_ptr = sigmask as *const sigset_t as usize;
syscall6(
SYS___PSELECT50,
nfds,
readfds_ptr,
writefds_ptr,
exceptfds_ptr,
timeout_ptr,
sigmask_ptr,
)
.map(|ret| ret as i32)
}