Enable getitimer, setitimer, and sigprocmask
This commit is contained in:
@@ -15,7 +15,7 @@ use header::sys_ioctl::{winsize, TCGETS, TCSETS, TIOCGWINSZ};
|
||||
use header::sys_select::fd_set;
|
||||
use header::sys_stat::stat;
|
||||
use header::sys_statvfs::statvfs;
|
||||
use header::sys_time::{itimerval, timeval, timezone};
|
||||
use header::sys_time::{timeval, timezone};
|
||||
// use header::sys_times::tms;
|
||||
use header::sys_utsname::utsname;
|
||||
use header::termios::termios;
|
||||
@@ -59,9 +59,6 @@ fn e(sys: usize) -> usize {
|
||||
pub struct Sys;
|
||||
|
||||
impl Sys {
|
||||
fn getitimer(which: c_int, out: *mut itimerval) -> c_int {
|
||||
e(unsafe { syscall!(GETITIMER, which, out) }) as c_int
|
||||
}
|
||||
|
||||
// fn getrusage(who: c_int, r_usage: *mut rusage) -> c_int {
|
||||
// e(unsafe { syscall!(GETRUSAGE, who, r_usage) }) as c_int
|
||||
@@ -72,10 +69,6 @@ impl Sys {
|
||||
e(unsafe { syscall!(IOCTL, fd, request, out) }) as c_int
|
||||
}
|
||||
|
||||
fn setitimer(which: c_int, new: *const itimerval, old: *mut itimerval) -> c_int {
|
||||
e(unsafe { syscall!(SETITIMER, which, new, old) }) as c_int
|
||||
}
|
||||
|
||||
// fn times(out: *mut tms) -> clock_t {
|
||||
// unsafe { syscall!(TIMES, out) as clock_t }
|
||||
// }
|
||||
|
||||
@@ -4,14 +4,13 @@ use super::super::types::*;
|
||||
use super::super::PalSignal;
|
||||
use super::{e, Sys};
|
||||
use header::signal::{sigaction, sigset_t};
|
||||
|
||||
impl Sys {
|
||||
fn sigprocmask(how: c_int, set: *const sigset_t, oset: *mut sigset_t) -> c_int {
|
||||
e(unsafe { syscall!(RT_SIGPROCMASK, how, set, oset, mem::size_of::<sigset_t>()) }) as c_int
|
||||
}
|
||||
}
|
||||
use header::sys_time::itimerval;
|
||||
|
||||
impl PalSignal for Sys {
|
||||
fn getitimer(which: c_int, out: *mut itimerval) -> c_int {
|
||||
e(unsafe { syscall!(GETITIMER, which, out) }) as c_int
|
||||
}
|
||||
|
||||
fn kill(pid: pid_t, sig: c_int) -> c_int {
|
||||
e(unsafe { syscall!(KILL, pid, sig) }) as c_int
|
||||
}
|
||||
@@ -29,6 +28,10 @@ impl PalSignal for Sys {
|
||||
}
|
||||
}
|
||||
|
||||
fn setitimer(which: c_int, new: *const itimerval, old: *mut itimerval) -> c_int {
|
||||
e(unsafe { syscall!(SETITIMER, which, new, old) }) as c_int
|
||||
}
|
||||
|
||||
unsafe fn sigaction(sig: c_int, act: *const sigaction, oact: *mut sigaction) -> c_int {
|
||||
e(syscall!(
|
||||
RT_SIGACTION,
|
||||
@@ -38,4 +41,8 @@ impl PalSignal for Sys {
|
||||
mem::size_of::<sigset_t>()
|
||||
)) as c_int
|
||||
}
|
||||
|
||||
fn sigprocmask(how: c_int, set: *const sigset_t, oset: *mut sigset_t) -> c_int {
|
||||
e(unsafe { syscall!(RT_SIGPROCMASK, how, set, oset, mem::size_of::<sigset_t>()) }) as c_int
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user