use core::{ffi::c_int, ptr::NonNull}; use super::{sys_time::__ygg_timeval_t, sys_types::id_t}; pub type rlim_t = u64; pub type __ygg_rusage_t = rusage; pub const PRIO_PROCESS: c_int = 0; pub const PRIO_PGRP: c_int = 1; pub const PRIO_USER: c_int = 2; pub const RLIM_INFINITY: rlim_t = u64::MAX; pub const RLIM_SAVED_MAX: rlim_t = RLIM_INFINITY; pub const RLIM_SAVED_CUR: rlim_t = RLIM_INFINITY; pub const RUSAGE_SELF: c_int = 0; pub const RLIMIT_CORE: c_int = 1; pub const RLIMIT_CPU: c_int = 2; pub const RLIMIT_DATA: c_int = 3; pub const RLIMIT_FSIZE: c_int = 4; pub const RLIMIT_NOFILE: c_int = 5; pub const RLIMIT_STACK: c_int = 6; pub const RLIMIT_AS: c_int = 7; #[repr(C)] pub struct rlimit { pub rlim_cur: rlim_t, pub rlim_max: rlim_t } #[repr(C)] pub struct rusage { pub ru_utime: __ygg_timeval_t, pub ru_stime: __ygg_timeval_t } #[no_mangle] unsafe extern "C" fn getpriority(_which: c_int, _who: id_t) -> c_int { todo!() } #[no_mangle] unsafe extern "C" fn getrlimit(_which: c_int, rlimit: *mut rlimit) -> c_int { if let Some(rlimit) = NonNull::new(rlimit) { rlimit.write(rlimit { rlim_cur: 0, rlim_max: 0, }); } -1 } #[no_mangle] unsafe extern "C" fn getrusage(_which: c_int, _rusage: *mut rusage) -> c_int { todo!() } #[no_mangle] unsafe extern "C" fn setpriority(_which: c_int, _who: id_t, _prio: c_int) -> c_int { todo!() } #[no_mangle] unsafe extern "C" fn setrlimit(_which: c_int, _rlimit: *const rlimit) -> c_int { todo!() }