jay-compositor 1.15.0

The Jay compositor
use c::c_int;
use c::syscall;
use jay_algorithms::oserror::OsError;
use jay_algorithms::oserror::OsErrorExt;
use std::ptr;
use std::rc::Rc;
use uapi::OwnedFd;
use uapi::c;
use uapi::c::SYS_pidfd_send_signal;
use uapi::c::siginfo_t;
use uapi::map_err;

pub fn pidfd_send_signal(pidfd: &Rc<OwnedFd>, signal: c_int) -> Result<(), OsError> {
    let res = unsafe {
        syscall(
            SYS_pidfd_send_signal,
            pidfd.raw(),
            signal,
            ptr::null_mut::<siginfo_t>(),
            0,
        )
    };
    map_err!(res).map(drop).to_os_error()
}