| pub type nto_job_t = ::sync_t; |
| |
| s! { |
| pub struct syspage_entry_info { |
| pub entry_off: u16, |
| pub entry_size: u16, |
| } |
| pub struct syspage_array_info { |
| entry_off: u16, |
| entry_size: u16, |
| element_size: u16, |
| } |
| |
| pub struct intrspin { |
| pub value: ::c_uint, // volatile |
| } |
| |
| pub struct iov_t { |
| pub iov_base: *mut ::c_void, // union |
| pub iov_len: ::size_t, |
| } |
| |
| pub struct _itimer { |
| pub nsec: u64, |
| pub interval_nsec: u64, |
| } |
| |
| pub struct _msg_info64 { |
| pub nd: u32, |
| pub srcnd: u32, |
| pub pid: ::pid_t, |
| pub tid: i32, |
| pub chid: i32, |
| pub scoid: i32, |
| pub coid: i32, |
| pub priority: i16, |
| pub flags: i16, |
| pub msglen: isize, |
| pub srcmsglen: isize, |
| pub dstmsglen: isize, |
| pub type_id: u32, |
| reserved: u32, |
| } |
| |
| pub struct _cred_info { |
| pub ruid: ::uid_t, |
| pub euid: ::uid_t, |
| pub suid: ::uid_t, |
| pub rgid: ::gid_t, |
| pub egid: ::gid_t, |
| pub sgid: ::gid_t, |
| pub ngroups: u32, |
| pub grouplist: [::gid_t; 8], |
| } |
| |
| pub struct _client_info { |
| pub nd: u32, |
| pub pid: ::pid_t, |
| pub sid: ::pid_t, |
| pub flags: u32, |
| pub cred: ::_cred_info, |
| } |
| |
| pub struct _client_able { |
| pub ability: u32, |
| pub flags: u32, |
| pub range_lo: u64, |
| pub range_hi: u64, |
| } |
| |
| pub struct nto_channel_config { |
| pub event: ::sigevent, |
| pub num_pulses: ::c_uint, |
| pub rearm_threshold: ::c_uint, |
| pub options: ::c_uint, |
| reserved: [::c_uint; 3], |
| } |
| |
| // TODO: The following structures are defined in a header file which doesn't |
| // appear as part of the default headers found in a standard installation |
| // of Neutrino 7.1 SDP. Commented out for now. |
| //pub struct _asyncmsg_put_header { |
| // pub err: ::c_int, |
| // pub iov: *mut ::iov_t, |
| // pub parts: ::c_int, |
| // pub handle: ::c_uint, |
| // pub cb: ::Option< |
| // unsafe extern "C" fn( |
| // err: ::c_int, |
| // buf: *mut ::c_void, |
| // handle: ::c_uint, |
| // ) -> ::c_int>, |
| // pub put_hdr_flags: ::c_uint, |
| //} |
| |
| //pub struct _asyncmsg_connection_attr { |
| // pub call_back: ::Option< |
| // unsafe extern "C" fn( |
| // err: ::c_int, |
| // buff: *mut ::c_void, |
| // handle: ::c_uint, |
| // ) -> ::c_int>, |
| // pub buffer_size: ::size_t, |
| // pub max_num_buffer: ::c_uint, |
| // pub trigger_num_msg: ::c_uint, |
| // pub trigger_time: ::_itimer, |
| // reserve: ::c_uint, |
| //} |
| |
| //pub struct _asyncmsg_connection_descriptor { |
| // pub flags: ::c_uint, |
| // pub sendq_size: ::c_uint, |
| // pub sendq_head: ::c_uint, |
| // pub sendq_tail: ::c_uint, |
| // pub sendq_free: ::c_uint, |
| // pub err: ::c_int, |
| // pub ev: ::sigevent, |
| // pub num_curmsg: ::c_uint, |
| // pub ttimer: ::timer_t, |
| // pub block_con: ::pthread_cond_t, |
| // pub mu: ::pthread_mutex_t, |
| // reserved: ::c_uint, |
| // pub attr: ::_asyncmsg_connection_attr, |
| // pub reserves: [::c_uint; 3], |
| // pub sendq: [::_asyncmsg_put_header; 1], // flexarray |
| //} |
| |
| pub struct __c_anonymous_struct_ev { |
| pub event: ::sigevent, |
| pub coid: ::c_int, |
| } |
| |
| pub struct _channel_connect_attr { // union |
| pub ev: ::__c_anonymous_struct_ev, |
| } |
| |
| pub struct _sighandler_info { |
| pub siginfo: ::siginfo_t, |
| pub handler: ::Option<unsafe extern "C" fn(value: ::c_int)>, |
| pub context: *mut ::c_void, |
| } |
| |
| pub struct __c_anonymous_struct_time { |
| pub length: ::c_uint, |
| pub scale: ::c_uint, |
| } |
| |
| pub struct _idle_hook { |
| pub hook_size: ::c_uint, |
| pub cmd: ::c_uint, |
| pub mode: ::c_uint, |
| pub latency: ::c_uint, |
| pub next_fire: u64, |
| pub curr_time: u64, |
| pub tod_adjust: u64, |
| pub resp: ::c_uint, |
| pub time: __c_anonymous_struct_time, |
| pub trigger: ::sigevent, |
| pub intrs: *mut ::c_uint, |
| pub block_stack_size: ::c_uint, |
| } |
| |
| pub struct _clockadjust { |
| pub tick_count: u32, |
| pub tick_nsec_inc: i32, |
| } |
| |
| pub struct qtime_entry { |
| pub cycles_per_sec: u64, |
| pub nsec_tod_adjust: u64, // volatile |
| pub nsec: u64, // volatile |
| pub nsec_inc: u32, |
| pub boot_time: u32, |
| pub adjust: _clockadjust, |
| pub timer_rate: u32, |
| pub timer_scale: i32, |
| pub timer_load: u32, |
| pub intr: i32, |
| pub epoch: u32, |
| pub flags: u32, |
| pub rr_interval_mul: u32, |
| pub timer_load_hi: u32, |
| pub nsec_stable: u64, // volatile |
| pub timer_load_max: u64, |
| pub timer_prog_time: u32, |
| spare: [u32; 7], |
| } |
| |
| pub struct _sched_info { |
| pub priority_min: ::c_int, |
| pub priority_max: ::c_int, |
| pub interval: u64, |
| pub priority_priv: ::c_int, |
| reserved: [::c_int; 11], |
| } |
| |
| pub struct _timer_info { |
| pub itime: ::_itimer, |
| pub otime: ::_itimer, |
| pub flags: u32, |
| pub tid: i32, |
| pub notify: i32, |
| pub clockid: ::clockid_t, |
| pub overruns: u32, |
| pub event: ::sigevent, // union |
| } |
| |
| pub struct _clockperiod { |
| pub nsec: u32, |
| pub fract: i32, |
| } |
| } |
| |
| s_no_extra_traits! { |
| |
| #[repr(align(8))] |
| pub struct syspage_entry { |
| pub size: u16, |
| pub total_size: u16, |
| pub type_: u16, |
| pub num_cpu: u16, |
| pub system_private: syspage_entry_info, |
| pub old_asinfo: syspage_entry_info, |
| pub __mangle_name_to_cause_compilation_errs_meminfo: syspage_entry_info, |
| pub hwinfo: syspage_entry_info, |
| pub old_cpuinfo: syspage_entry_info, |
| pub old_cacheattr: syspage_entry_info, |
| pub qtime: syspage_entry_info, |
| pub callout: syspage_entry_info, |
| pub callin: syspage_entry_info, |
| pub typed_strings: syspage_entry_info, |
| pub strings: syspage_entry_info, |
| pub old_intrinfo: syspage_entry_info, |
| pub smp: syspage_entry_info, |
| pub pminfo: syspage_entry_info, |
| pub old_mdriver: syspage_entry_info, |
| spare0: [u32; 1], |
| __reserved: [u8; 160], // anonymous union with architecture dependent structs |
| pub new_asinfo: syspage_array_info, |
| pub new_cpuinfo: syspage_array_info, |
| pub new_cacheattr: syspage_array_info, |
| pub new_intrinfo: syspage_array_info, |
| pub new_mdriver: syspage_array_info, |
| } |
| } |
| |
| pub const SYSMGR_PID: u32 = 1; |
| pub const SYSMGR_CHID: u32 = 1; |
| pub const SYSMGR_COID: u32 = _NTO_SIDE_CHANNEL; |
| pub const SYSMGR_HANDLE: u32 = 0; |
| |
| pub const STATE_DEAD: ::c_int = 0x00; |
| pub const STATE_RUNNING: ::c_int = 0x01; |
| pub const STATE_READY: ::c_int = 0x02; |
| pub const STATE_STOPPED: ::c_int = 0x03; |
| pub const STATE_SEND: ::c_int = 0x04; |
| pub const STATE_RECEIVE: ::c_int = 0x05; |
| pub const STATE_REPLY: ::c_int = 0x06; |
| pub const STATE_STACK: ::c_int = 0x07; |
| pub const STATE_WAITTHREAD: ::c_int = 0x08; |
| pub const STATE_WAITPAGE: ::c_int = 0x09; |
| pub const STATE_SIGSUSPEND: ::c_int = 0x0a; |
| pub const STATE_SIGWAITINFO: ::c_int = 0x0b; |
| pub const STATE_NANOSLEEP: ::c_int = 0x0c; |
| pub const STATE_MUTEX: ::c_int = 0x0d; |
| pub const STATE_CONDVAR: ::c_int = 0x0e; |
| pub const STATE_JOIN: ::c_int = 0x0f; |
| pub const STATE_INTR: ::c_int = 0x10; |
| pub const STATE_SEM: ::c_int = 0x11; |
| pub const STATE_WAITCTX: ::c_int = 0x12; |
| pub const STATE_NET_SEND: ::c_int = 0x13; |
| pub const STATE_NET_REPLY: ::c_int = 0x14; |
| pub const STATE_MAX: ::c_int = 0x18; |
| |
| pub const _NTO_TIMEOUT_RECEIVE: i32 = 1 << STATE_RECEIVE; |
| pub const _NTO_TIMEOUT_SEND: i32 = 1 << STATE_SEND; |
| pub const _NTO_TIMEOUT_REPLY: i32 = 1 << STATE_REPLY; |
| pub const _NTO_TIMEOUT_SIGSUSPEND: i32 = 1 << STATE_SIGSUSPEND; |
| pub const _NTO_TIMEOUT_SIGWAITINFO: i32 = 1 << STATE_SIGWAITINFO; |
| pub const _NTO_TIMEOUT_NANOSLEEP: i32 = 1 << STATE_NANOSLEEP; |
| pub const _NTO_TIMEOUT_MUTEX: i32 = 1 << STATE_MUTEX; |
| pub const _NTO_TIMEOUT_CONDVAR: i32 = 1 << STATE_CONDVAR; |
| pub const _NTO_TIMEOUT_JOIN: i32 = 1 << STATE_JOIN; |
| pub const _NTO_TIMEOUT_INTR: i32 = 1 << STATE_INTR; |
| pub const _NTO_TIMEOUT_SEM: i32 = 1 << STATE_SEM; |
| |
| pub const _NTO_MI_ENDIAN_BIG: u32 = 1; |
| pub const _NTO_MI_ENDIAN_DIFF: u32 = 2; |
| pub const _NTO_MI_UNBLOCK_REQ: u32 = 256; |
| pub const _NTO_MI_NET_CRED_DIRTY: u32 = 512; |
| pub const _NTO_MI_CONSTRAINED: u32 = 1024; |
| pub const _NTO_MI_CHROOT: u32 = 2048; |
| pub const _NTO_MI_BITS_64: u32 = 4096; |
| pub const _NTO_MI_BITS_DIFF: u32 = 8192; |
| pub const _NTO_MI_SANDBOX: u32 = 16384; |
| |
| pub const _NTO_CI_ENDIAN_BIG: u32 = 1; |
| pub const _NTO_CI_BKGND_PGRP: u32 = 4; |
| pub const _NTO_CI_ORPHAN_PGRP: u32 = 8; |
| pub const _NTO_CI_STOPPED: u32 = 128; |
| pub const _NTO_CI_UNABLE: u32 = 256; |
| pub const _NTO_CI_TYPE_ID: u32 = 512; |
| pub const _NTO_CI_CHROOT: u32 = 2048; |
| pub const _NTO_CI_BITS_64: u32 = 4096; |
| pub const _NTO_CI_SANDBOX: u32 = 16384; |
| pub const _NTO_CI_LOADER: u32 = 32768; |
| pub const _NTO_CI_FULL_GROUPS: u32 = 2147483648; |
| |
| pub const _NTO_TI_ACTIVE: u32 = 1; |
| pub const _NTO_TI_ABSOLUTE: u32 = 2; |
| pub const _NTO_TI_EXPIRED: u32 = 4; |
| pub const _NTO_TI_TOD_BASED: u32 = 8; |
| pub const _NTO_TI_TARGET_PROCESS: u32 = 16; |
| pub const _NTO_TI_REPORT_TOLERANCE: u32 = 32; |
| pub const _NTO_TI_PRECISE: u32 = 64; |
| pub const _NTO_TI_TOLERANT: u32 = 128; |
| pub const _NTO_TI_WAKEUP: u32 = 256; |
| pub const _NTO_TI_PROCESS_TOLERANT: u32 = 512; |
| pub const _NTO_TI_HIGH_RESOLUTION: u32 = 1024; |
| |
| pub const _PULSE_TYPE: u32 = 0; |
| pub const _PULSE_SUBTYPE: u32 = 0; |
| pub const _PULSE_CODE_UNBLOCK: i32 = -32; |
| pub const _PULSE_CODE_DISCONNECT: i32 = -33; |
| pub const _PULSE_CODE_THREADDEATH: i32 = -34; |
| pub const _PULSE_CODE_COIDDEATH: i32 = -35; |
| pub const _PULSE_CODE_NET_ACK: i32 = -36; |
| pub const _PULSE_CODE_NET_UNBLOCK: i32 = -37; |
| pub const _PULSE_CODE_NET_DETACH: i32 = -38; |
| pub const _PULSE_CODE_RESTART: i32 = -39; |
| pub const _PULSE_CODE_NORESTART: i32 = -40; |
| pub const _PULSE_CODE_UNBLOCK_RESTART: i32 = -41; |
| pub const _PULSE_CODE_UNBLOCK_TIMER: i32 = -42; |
| pub const _PULSE_CODE_MINAVAIL: u32 = 0; |
| pub const _PULSE_CODE_MAXAVAIL: u32 = 127; |
| |
| pub const _NTO_HARD_FLAGS_END: u32 = 1; |
| |
| pub const _NTO_PULSE_IF_UNIQUE: u32 = 4096; |
| pub const _NTO_PULSE_REPLACE: u32 = 8192; |
| |
| pub const _NTO_PF_NOCLDSTOP: u32 = 1; |
| pub const _NTO_PF_LOADING: u32 = 2; |
| pub const _NTO_PF_TERMING: u32 = 4; |
| pub const _NTO_PF_ZOMBIE: u32 = 8; |
| pub const _NTO_PF_NOZOMBIE: u32 = 16; |
| pub const _NTO_PF_FORKED: u32 = 32; |
| pub const _NTO_PF_ORPHAN_PGRP: u32 = 64; |
| pub const _NTO_PF_STOPPED: u32 = 128; |
| pub const _NTO_PF_DEBUG_STOPPED: u32 = 256; |
| pub const _NTO_PF_BKGND_PGRP: u32 = 512; |
| pub const _NTO_PF_NOISYNC: u32 = 1024; |
| pub const _NTO_PF_CONTINUED: u32 = 2048; |
| pub const _NTO_PF_CHECK_INTR: u32 = 4096; |
| pub const _NTO_PF_COREDUMP: u32 = 8192; |
| pub const _NTO_PF_RING0: u32 = 32768; |
| pub const _NTO_PF_SLEADER: u32 = 65536; |
| pub const _NTO_PF_WAITINFO: u32 = 131072; |
| pub const _NTO_PF_DESTROYALL: u32 = 524288; |
| pub const _NTO_PF_NOCOREDUMP: u32 = 1048576; |
| pub const _NTO_PF_WAITDONE: u32 = 4194304; |
| pub const _NTO_PF_TERM_WAITING: u32 = 8388608; |
| pub const _NTO_PF_ASLR: u32 = 16777216; |
| pub const _NTO_PF_EXECED: u32 = 33554432; |
| pub const _NTO_PF_APP_STOPPED: u32 = 67108864; |
| pub const _NTO_PF_64BIT: u32 = 134217728; |
| pub const _NTO_PF_NET: u32 = 268435456; |
| pub const _NTO_PF_NOLAZYSTACK: u32 = 536870912; |
| pub const _NTO_PF_NOEXEC_STACK: u32 = 1073741824; |
| pub const _NTO_PF_LOADER_PERMS: u32 = 2147483648; |
| |
| pub const _NTO_TF_INTR_PENDING: u32 = 65536; |
| pub const _NTO_TF_DETACHED: u32 = 131072; |
| pub const _NTO_TF_SHR_MUTEX: u32 = 262144; |
| pub const _NTO_TF_SHR_MUTEX_EUID: u32 = 524288; |
| pub const _NTO_TF_THREADS_HOLD: u32 = 1048576; |
| pub const _NTO_TF_UNBLOCK_REQ: u32 = 4194304; |
| pub const _NTO_TF_ALIGN_FAULT: u32 = 16777216; |
| pub const _NTO_TF_SSTEP: u32 = 33554432; |
| pub const _NTO_TF_ALLOCED_STACK: u32 = 67108864; |
| pub const _NTO_TF_NOMULTISIG: u32 = 134217728; |
| pub const _NTO_TF_LOW_LATENCY: u32 = 268435456; |
| pub const _NTO_TF_IOPRIV: u32 = 2147483648; |
| |
| pub const _NTO_TCTL_IO_PRIV: u32 = 1; |
| pub const _NTO_TCTL_THREADS_HOLD: u32 = 2; |
| pub const _NTO_TCTL_THREADS_CONT: u32 = 3; |
| pub const _NTO_TCTL_RUNMASK: u32 = 4; |
| pub const _NTO_TCTL_ALIGN_FAULT: u32 = 5; |
| pub const _NTO_TCTL_RUNMASK_GET_AND_SET: u32 = 6; |
| pub const _NTO_TCTL_PERFCOUNT: u32 = 7; |
| pub const _NTO_TCTL_ONE_THREAD_HOLD: u32 = 8; |
| pub const _NTO_TCTL_ONE_THREAD_CONT: u32 = 9; |
| pub const _NTO_TCTL_RUNMASK_GET_AND_SET_INHERIT: u32 = 10; |
| pub const _NTO_TCTL_NAME: u32 = 11; |
| pub const _NTO_TCTL_RCM_GET_AND_SET: u32 = 12; |
| pub const _NTO_TCTL_SHR_MUTEX: u32 = 13; |
| pub const _NTO_TCTL_IO: u32 = 14; |
| pub const _NTO_TCTL_NET_KIF_GET_AND_SET: u32 = 15; |
| pub const _NTO_TCTL_LOW_LATENCY: u32 = 16; |
| pub const _NTO_TCTL_ADD_EXIT_EVENT: u32 = 17; |
| pub const _NTO_TCTL_DEL_EXIT_EVENT: u32 = 18; |
| pub const _NTO_TCTL_IO_LEVEL: u32 = 19; |
| pub const _NTO_TCTL_RESERVED: u32 = 2147483648; |
| pub const _NTO_TCTL_IO_LEVEL_INHERIT: u32 = 1073741824; |
| pub const _NTO_IO_LEVEL_NONE: u32 = 1; |
| pub const _NTO_IO_LEVEL_1: u32 = 2; |
| pub const _NTO_IO_LEVEL_2: u32 = 3; |
| |
| pub const _NTO_THREAD_NAME_MAX: u32 = 100; |
| |
| pub const _NTO_CHF_FIXED_PRIORITY: u32 = 1; |
| pub const _NTO_CHF_UNBLOCK: u32 = 2; |
| pub const _NTO_CHF_THREAD_DEATH: u32 = 4; |
| pub const _NTO_CHF_DISCONNECT: u32 = 8; |
| pub const _NTO_CHF_NET_MSG: u32 = 16; |
| pub const _NTO_CHF_SENDER_LEN: u32 = 32; |
| pub const _NTO_CHF_COID_DISCONNECT: u32 = 64; |
| pub const _NTO_CHF_REPLY_LEN: u32 = 128; |
| pub const _NTO_CHF_PULSE_POOL: u32 = 256; |
| pub const _NTO_CHF_ASYNC_NONBLOCK: u32 = 512; |
| pub const _NTO_CHF_ASYNC: u32 = 1024; |
| pub const _NTO_CHF_GLOBAL: u32 = 2048; |
| pub const _NTO_CHF_PRIVATE: u32 = 4096; |
| pub const _NTO_CHF_MSG_PAUSING: u32 = 8192; |
| pub const _NTO_CHF_INHERIT_RUNMASK: u32 = 16384; |
| pub const _NTO_CHF_UNBLOCK_TIMER: u32 = 32768; |
| |
| pub const _NTO_CHO_CUSTOM_EVENT: u32 = 1; |
| |
| pub const _NTO_COF_CLOEXEC: u32 = 1; |
| pub const _NTO_COF_DEAD: u32 = 2; |
| pub const _NTO_COF_NOSHARE: u32 = 64; |
| pub const _NTO_COF_NETCON: u32 = 128; |
| pub const _NTO_COF_NONBLOCK: u32 = 256; |
| pub const _NTO_COF_ASYNC: u32 = 512; |
| pub const _NTO_COF_GLOBAL: u32 = 1024; |
| pub const _NTO_COF_NOEVENT: u32 = 2048; |
| pub const _NTO_COF_INSECURE: u32 = 4096; |
| pub const _NTO_COF_REG_EVENTS: u32 = 8192; |
| pub const _NTO_COF_UNREG_EVENTS: u32 = 16384; |
| pub const _NTO_COF_MASK: u32 = 65535; |
| |
| pub const _NTO_SIDE_CHANNEL: u32 = 1073741824; |
| |
| pub const _NTO_CONNECTION_SCOID: u32 = 65536; |
| pub const _NTO_GLOBAL_CHANNEL: u32 = 1073741824; |
| |
| pub const _NTO_TIMEOUT_MASK: u32 = (1 << STATE_MAX) - 1; |
| pub const _NTO_TIMEOUT_ACTIVE: u32 = 1 << STATE_MAX; |
| pub const _NTO_TIMEOUT_IMMEDIATE: u32 = 1 << (STATE_MAX + 1); |
| |
| pub const _NTO_IC_LATENCY: u32 = 0; |
| |
| pub const _NTO_INTR_FLAGS_END: u32 = 1; |
| pub const _NTO_INTR_FLAGS_NO_UNMASK: u32 = 2; |
| pub const _NTO_INTR_FLAGS_PROCESS: u32 = 4; |
| pub const _NTO_INTR_FLAGS_TRK_MSK: u32 = 8; |
| pub const _NTO_INTR_FLAGS_ARRAY: u32 = 16; |
| pub const _NTO_INTR_FLAGS_EXCLUSIVE: u32 = 32; |
| pub const _NTO_INTR_FLAGS_FPU: u32 = 64; |
| |
| pub const _NTO_INTR_CLASS_EXTERNAL: u32 = 0; |
| pub const _NTO_INTR_CLASS_SYNTHETIC: u32 = 2147418112; |
| |
| pub const _NTO_INTR_SPARE: u32 = 2147483647; |
| |
| pub const _NTO_HOOK_IDLE: u32 = 2147418113; |
| pub const _NTO_HOOK_OVERDRIVE: u32 = 2147418114; |
| pub const _NTO_HOOK_LAST: u32 = 2147418114; |
| pub const _NTO_HOOK_IDLE2_FLAG: u32 = 32768; |
| |
| pub const _NTO_IH_CMD_SLEEP_SETUP: u32 = 1; |
| pub const _NTO_IH_CMD_SLEEP_BLOCK: u32 = 2; |
| pub const _NTO_IH_CMD_SLEEP_WAKEUP: u32 = 4; |
| pub const _NTO_IH_CMD_SLEEP_ONLINE: u32 = 8; |
| pub const _NTO_IH_RESP_NEEDS_BLOCK: u32 = 1; |
| pub const _NTO_IH_RESP_NEEDS_WAKEUP: u32 = 2; |
| pub const _NTO_IH_RESP_NEEDS_ONLINE: u32 = 4; |
| pub const _NTO_IH_RESP_SYNC_TIME: u32 = 16; |
| pub const _NTO_IH_RESP_SYNC_TLB: u32 = 32; |
| pub const _NTO_IH_RESP_SUGGEST_OFFLINE: u32 = 256; |
| pub const _NTO_IH_RESP_SLEEP_MODE_REACHED: u32 = 512; |
| pub const _NTO_IH_RESP_DELIVER_INTRS: u32 = 1024; |
| |
| pub const _NTO_READIOV_SEND: u32 = 0; |
| pub const _NTO_READIOV_REPLY: u32 = 1; |
| |
| pub const _NTO_KEYDATA_VTID: u32 = 2147483648; |
| |
| pub const _NTO_KEYDATA_PATHSIGN: u32 = 32768; |
| pub const _NTO_KEYDATA_OP_MASK: u32 = 255; |
| pub const _NTO_KEYDATA_VERIFY: u32 = 0; |
| pub const _NTO_KEYDATA_CALCULATE: u32 = 1; |
| pub const _NTO_KEYDATA_CALCULATE_REUSE: u32 = 2; |
| pub const _NTO_KEYDATA_PATHSIGN_VERIFY: u32 = 32768; |
| pub const _NTO_KEYDATA_PATHSIGN_CALCULATE: u32 = 32769; |
| pub const _NTO_KEYDATA_PATHSIGN_CALCULATE_REUSE: u32 = 32770; |
| |
| pub const _NTO_SCTL_SETPRIOCEILING: u32 = 1; |
| pub const _NTO_SCTL_GETPRIOCEILING: u32 = 2; |
| pub const _NTO_SCTL_SETEVENT: u32 = 3; |
| pub const _NTO_SCTL_MUTEX_WAKEUP: u32 = 4; |
| pub const _NTO_SCTL_MUTEX_CONSISTENT: u32 = 5; |
| pub const _NTO_SCTL_SEM_VALUE: u32 = 6; |
| |
| pub const _NTO_CLIENTINFO_GETGROUPS: u32 = 1; |
| pub const _NTO_CLIENTINFO_GETTYPEID: u32 = 2; |
| |
| extern "C" { |
| pub fn ChannelCreate(__flags: ::c_uint) -> ::c_int; |
| pub fn ChannelCreate_r(__flags: ::c_uint) -> ::c_int; |
| pub fn ChannelCreatePulsePool( |
| __flags: ::c_uint, |
| __config: *const nto_channel_config, |
| ) -> ::c_int; |
| pub fn ChannelCreateExt( |
| __flags: ::c_uint, |
| __mode: ::mode_t, |
| __bufsize: usize, |
| __maxnumbuf: ::c_uint, |
| __ev: *const ::sigevent, |
| __cred: *mut _cred_info, |
| ) -> ::c_int; |
| pub fn ChannelDestroy(__chid: ::c_int) -> ::c_int; |
| pub fn ChannelDestroy_r(__chid: ::c_int) -> ::c_int; |
| pub fn ConnectAttach( |
| __nd: u32, |
| __pid: ::pid_t, |
| __chid: ::c_int, |
| __index: ::c_uint, |
| __flags: ::c_int, |
| ) -> ::c_int; |
| pub fn ConnectAttach_r( |
| __nd: u32, |
| __pid: ::pid_t, |
| __chid: ::c_int, |
| __index: ::c_uint, |
| __flags: ::c_int, |
| ) -> ::c_int; |
| |
| // TODO: The following function uses a structure defined in a header file |
| // which doesn't appear as part of the default headers found in a |
| // standard installation of Neutrino 7.1 SDP. Commented out for now. |
| //pub fn ConnectAttachExt( |
| // __nd: u32, |
| // __pid: ::pid_t, |
| // __chid: ::c_int, |
| // __index: ::c_uint, |
| // __flags: ::c_int, |
| // __cd: *mut _asyncmsg_connection_descriptor, |
| //) -> ::c_int; |
| pub fn ConnectDetach(__coid: ::c_int) -> ::c_int; |
| pub fn ConnectDetach_r(__coid: ::c_int) -> ::c_int; |
| pub fn ConnectServerInfo(__pid: ::pid_t, __coid: ::c_int, __info: *mut _msg_info64) -> ::c_int; |
| pub fn ConnectServerInfo_r( |
| __pid: ::pid_t, |
| __coid: ::c_int, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn ConnectClientInfoExtraArgs( |
| __scoid: ::c_int, |
| __info_pp: *mut _client_info, |
| __ngroups: ::c_int, |
| __abilities: *mut _client_able, |
| __nable: ::c_int, |
| __type_id: *mut ::c_uint, |
| ) -> ::c_int; |
| pub fn ConnectClientInfoExtraArgs_r( |
| __scoid: ::c_int, |
| __info_pp: *mut _client_info, |
| __ngroups: ::c_int, |
| __abilities: *mut _client_able, |
| __nable: ::c_int, |
| __type_id: *mut ::c_uint, |
| ) -> ::c_int; |
| pub fn ConnectClientInfo( |
| __scoid: ::c_int, |
| __info: *mut _client_info, |
| __ngroups: ::c_int, |
| ) -> ::c_int; |
| pub fn ConnectClientInfo_r( |
| __scoid: ::c_int, |
| __info: *mut _client_info, |
| __ngroups: ::c_int, |
| ) -> ::c_int; |
| pub fn ConnectClientInfoExt( |
| __scoid: ::c_int, |
| __info_pp: *mut *mut _client_info, |
| flags: ::c_int, |
| ) -> ::c_int; |
| pub fn ClientInfoExtFree(__info_pp: *mut *mut _client_info) -> ::c_int; |
| pub fn ConnectClientInfoAble( |
| __scoid: ::c_int, |
| __info_pp: *mut *mut _client_info, |
| flags: ::c_int, |
| abilities: *mut _client_able, |
| nable: ::c_int, |
| ) -> ::c_int; |
| pub fn ConnectFlags( |
| __pid: ::pid_t, |
| __coid: ::c_int, |
| __mask: ::c_uint, |
| __bits: ::c_uint, |
| ) -> ::c_int; |
| pub fn ConnectFlags_r( |
| __pid: ::pid_t, |
| __coid: ::c_int, |
| __mask: ::c_uint, |
| __bits: ::c_uint, |
| ) -> ::c_int; |
| pub fn ChannelConnectAttr( |
| __id: ::c_uint, |
| __old_attr: *mut _channel_connect_attr, |
| __new_attr: *mut _channel_connect_attr, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn MsgSend( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSend_r( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendnc( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendnc_r( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendsv( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendsv_r( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendsvnc( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendsvnc_r( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvs( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvs_r( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvsnc( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvsnc_r( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| ) -> ::c_long; |
| pub fn MsgSendv( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendv_r( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvnc( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgSendvnc_r( |
| __coid: ::c_int, |
| __siov: *const ::iovec, |
| __sparts: usize, |
| __riov: *const ::iovec, |
| __rparts: usize, |
| ) -> ::c_long; |
| pub fn MsgReceive( |
| __chid: ::c_int, |
| __msg: *mut ::c_void, |
| __bytes: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceive_r( |
| __chid: ::c_int, |
| __msg: *mut ::c_void, |
| __bytes: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivev( |
| __chid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivev_r( |
| __chid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivePulse( |
| __chid: ::c_int, |
| __pulse: *mut ::c_void, |
| __bytes: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivePulse_r( |
| __chid: ::c_int, |
| __pulse: *mut ::c_void, |
| __bytes: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivePulsev( |
| __chid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReceivePulsev_r( |
| __chid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __info: *mut _msg_info64, |
| ) -> ::c_int; |
| pub fn MsgReply( |
| __rcvid: ::c_int, |
| __status: ::c_long, |
| __msg: *const ::c_void, |
| __bytes: usize, |
| ) -> ::c_int; |
| pub fn MsgReply_r( |
| __rcvid: ::c_int, |
| __status: ::c_long, |
| __msg: *const ::c_void, |
| __bytes: usize, |
| ) -> ::c_int; |
| pub fn MsgReplyv( |
| __rcvid: ::c_int, |
| __status: ::c_long, |
| __iov: *const ::iovec, |
| __parts: usize, |
| ) -> ::c_int; |
| pub fn MsgReplyv_r( |
| __rcvid: ::c_int, |
| __status: ::c_long, |
| __iov: *const ::iovec, |
| __parts: usize, |
| ) -> ::c_int; |
| pub fn MsgReadiov( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| __flags: ::c_int, |
| ) -> isize; |
| pub fn MsgReadiov_r( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| __flags: ::c_int, |
| ) -> isize; |
| pub fn MsgRead( |
| __rcvid: ::c_int, |
| __msg: *mut ::c_void, |
| __bytes: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgRead_r( |
| __rcvid: ::c_int, |
| __msg: *mut ::c_void, |
| __bytes: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgReadv( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgReadv_r( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgWrite( |
| __rcvid: ::c_int, |
| __msg: *const ::c_void, |
| __bytes: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgWrite_r( |
| __rcvid: ::c_int, |
| __msg: *const ::c_void, |
| __bytes: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgWritev( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgWritev_r( |
| __rcvid: ::c_int, |
| __iov: *const ::iovec, |
| __parts: usize, |
| __offset: usize, |
| ) -> isize; |
| pub fn MsgSendPulse( |
| __coid: ::c_int, |
| __priority: ::c_int, |
| __code: ::c_int, |
| __value: ::c_int, |
| ) -> ::c_int; |
| pub fn MsgSendPulse_r( |
| __coid: ::c_int, |
| __priority: ::c_int, |
| __code: ::c_int, |
| __value: ::c_int, |
| ) -> ::c_int; |
| pub fn MsgSendPulsePtr( |
| __coid: ::c_int, |
| __priority: ::c_int, |
| __code: ::c_int, |
| __value: *mut ::c_void, |
| ) -> ::c_int; |
| pub fn MsgSendPulsePtr_r( |
| __coid: ::c_int, |
| __priority: ::c_int, |
| __code: ::c_int, |
| __value: *mut ::c_void, |
| ) -> ::c_int; |
| pub fn MsgDeliverEvent(__rcvid: ::c_int, __event: *const ::sigevent) -> ::c_int; |
| pub fn MsgDeliverEvent_r(__rcvid: ::c_int, __event: *const ::sigevent) -> ::c_int; |
| pub fn MsgVerifyEvent(__rcvid: ::c_int, __event: *const ::sigevent) -> ::c_int; |
| pub fn MsgVerifyEvent_r(__rcvid: ::c_int, __event: *const ::sigevent) -> ::c_int; |
| pub fn MsgRegisterEvent(__event: *mut ::sigevent, __coid: ::c_int) -> ::c_int; |
| pub fn MsgRegisterEvent_r(__event: *mut ::sigevent, __coid: ::c_int) -> ::c_int; |
| pub fn MsgUnregisterEvent(__event: *const ::sigevent) -> ::c_int; |
| pub fn MsgUnregisterEvent_r(__event: *const ::sigevent) -> ::c_int; |
| pub fn MsgInfo(__rcvid: ::c_int, __info: *mut _msg_info64) -> ::c_int; |
| pub fn MsgInfo_r(__rcvid: ::c_int, __info: *mut _msg_info64) -> ::c_int; |
| pub fn MsgKeyData( |
| __rcvid: ::c_int, |
| __oper: ::c_int, |
| __key: u32, |
| __newkey: *mut u32, |
| __iov: *const ::iovec, |
| __parts: ::c_int, |
| ) -> ::c_int; |
| pub fn MsgKeyData_r( |
| __rcvid: ::c_int, |
| __oper: ::c_int, |
| __key: u32, |
| __newkey: *mut u32, |
| __iov: *const ::iovec, |
| __parts: ::c_int, |
| ) -> ::c_int; |
| pub fn MsgError(__rcvid: ::c_int, __err: ::c_int) -> ::c_int; |
| pub fn MsgError_r(__rcvid: ::c_int, __err: ::c_int) -> ::c_int; |
| pub fn MsgCurrent(__rcvid: ::c_int) -> ::c_int; |
| pub fn MsgCurrent_r(__rcvid: ::c_int) -> ::c_int; |
| pub fn MsgSendAsyncGbl( |
| __coid: ::c_int, |
| __smsg: *const ::c_void, |
| __sbytes: usize, |
| __msg_prio: ::c_uint, |
| ) -> ::c_int; |
| pub fn MsgSendAsync(__coid: ::c_int) -> ::c_int; |
| pub fn MsgReceiveAsyncGbl( |
| __chid: ::c_int, |
| __rmsg: *mut ::c_void, |
| __rbytes: usize, |
| __info: *mut _msg_info64, |
| __coid: ::c_int, |
| ) -> ::c_int; |
| pub fn MsgReceiveAsync(__chid: ::c_int, __iov: *const ::iovec, __parts: ::c_uint) -> ::c_int; |
| pub fn MsgPause(__rcvid: ::c_int, __cookie: ::c_uint) -> ::c_int; |
| pub fn MsgPause_r(__rcvid: ::c_int, __cookie: ::c_uint) -> ::c_int; |
| |
| pub fn SignalKill( |
| __nd: u32, |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __signo: ::c_int, |
| __code: ::c_int, |
| __value: ::c_int, |
| ) -> ::c_int; |
| pub fn SignalKill_r( |
| __nd: u32, |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __signo: ::c_int, |
| __code: ::c_int, |
| __value: ::c_int, |
| ) -> ::c_int; |
| pub fn SignalKillSigval( |
| __nd: u32, |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __signo: ::c_int, |
| __code: ::c_int, |
| __value: *const ::sigval, |
| ) -> ::c_int; |
| pub fn SignalKillSigval_r( |
| __nd: u32, |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __signo: ::c_int, |
| __code: ::c_int, |
| __value: *const ::sigval, |
| ) -> ::c_int; |
| pub fn SignalReturn(__info: *mut _sighandler_info) -> ::c_int; |
| pub fn SignalFault(__sigcode: ::c_uint, __regs: *mut ::c_void, __refaddr: usize) -> ::c_int; |
| pub fn SignalAction( |
| __pid: ::pid_t, |
| __sigstub: unsafe extern "C" fn(), |
| __signo: ::c_int, |
| __act: *const ::sigaction, |
| __oact: *mut ::sigaction, |
| ) -> ::c_int; |
| pub fn SignalAction_r( |
| __pid: ::pid_t, |
| __sigstub: unsafe extern "C" fn(), |
| __signo: ::c_int, |
| __act: *const ::sigaction, |
| __oact: *mut ::sigaction, |
| ) -> ::c_int; |
| pub fn SignalProcmask( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __how: ::c_int, |
| __set: *const ::sigset_t, |
| __oldset: *mut ::sigset_t, |
| ) -> ::c_int; |
| pub fn SignalProcmask_r( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __how: ::c_int, |
| __set: *const ::sigset_t, |
| __oldset: *mut ::sigset_t, |
| ) -> ::c_int; |
| pub fn SignalSuspend(__set: *const ::sigset_t) -> ::c_int; |
| pub fn SignalSuspend_r(__set: *const ::sigset_t) -> ::c_int; |
| pub fn SignalWaitinfo(__set: *const ::sigset_t, __info: *mut ::siginfo_t) -> ::c_int; |
| pub fn SignalWaitinfo_r(__set: *const ::sigset_t, __info: *mut ::siginfo_t) -> ::c_int; |
| pub fn SignalWaitinfoMask( |
| __set: *const ::sigset_t, |
| __info: *mut ::siginfo_t, |
| __mask: *const ::sigset_t, |
| ) -> ::c_int; |
| pub fn SignalWaitinfoMask_r( |
| __set: *const ::sigset_t, |
| __info: *mut ::siginfo_t, |
| __mask: *const ::sigset_t, |
| ) -> ::c_int; |
| pub fn ThreadCreate( |
| __pid: ::pid_t, |
| __func: unsafe extern "C" fn(__arg: *mut ::c_void) -> *mut ::c_void, |
| __arg: *mut ::c_void, |
| __attr: *const ::_thread_attr, |
| ) -> ::c_int; |
| pub fn ThreadCreate_r( |
| __pid: ::pid_t, |
| __func: unsafe extern "C" fn(__arg: *mut ::c_void) -> *mut ::c_void, |
| __arg: *mut ::c_void, |
| __attr: *const ::_thread_attr, |
| ) -> ::c_int; |
| |
| pub fn ThreadDestroy(__tid: ::c_int, __priority: ::c_int, __status: *mut ::c_void) -> ::c_int; |
| pub fn ThreadDestroy_r(__tid: ::c_int, __priority: ::c_int, __status: *mut ::c_void) |
| -> ::c_int; |
| pub fn ThreadDetach(__tid: ::c_int) -> ::c_int; |
| pub fn ThreadDetach_r(__tid: ::c_int) -> ::c_int; |
| pub fn ThreadJoin(__tid: ::c_int, __status: *mut *mut ::c_void) -> ::c_int; |
| pub fn ThreadJoin_r(__tid: ::c_int, __status: *mut *mut ::c_void) -> ::c_int; |
| pub fn ThreadCancel(__tid: ::c_int, __canstub: unsafe extern "C" fn()) -> ::c_int; |
| pub fn ThreadCancel_r(__tid: ::c_int, __canstub: unsafe extern "C" fn()) -> ::c_int; |
| pub fn ThreadCtl(__cmd: ::c_int, __data: *mut ::c_void) -> ::c_int; |
| pub fn ThreadCtl_r(__cmd: ::c_int, __data: *mut ::c_void) -> ::c_int; |
| pub fn ThreadCtlExt( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __cmd: ::c_int, |
| __data: *mut ::c_void, |
| ) -> ::c_int; |
| pub fn ThreadCtlExt_r( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __cmd: ::c_int, |
| __data: *mut ::c_void, |
| ) -> ::c_int; |
| |
| pub fn InterruptHookTrace( |
| __handler: ::Option<unsafe extern "C" fn(arg1: ::c_int) -> *const ::sigevent>, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptHookIdle( |
| __handler: ::Option<unsafe extern "C" fn(arg1: *mut u64, arg2: *mut qtime_entry)>, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptHookIdle2( |
| __handler: ::Option< |
| unsafe extern "C" fn(arg1: ::c_uint, arg2: *mut syspage_entry, arg3: *mut _idle_hook), |
| >, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptHookOverdriveEvent(__event: *const ::sigevent, __flags: ::c_uint) -> ::c_int; |
| pub fn InterruptAttachEvent( |
| __intr: ::c_int, |
| __event: *const ::sigevent, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptAttachEvent_r( |
| __intr: ::c_int, |
| __event: *const ::sigevent, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptAttach( |
| __intr: ::c_int, |
| __handler: ::Option< |
| unsafe extern "C" fn(__area: *mut ::c_void, __id: ::c_int) -> *const ::sigevent, |
| >, |
| __area: *const ::c_void, |
| __size: ::c_int, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptAttach_r( |
| __intr: ::c_int, |
| __handler: ::Option< |
| unsafe extern "C" fn(__area: *mut ::c_void, __id: ::c_int) -> *const ::sigevent, |
| >, |
| __area: *const ::c_void, |
| __size: ::c_int, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptAttachArray( |
| __intr: ::c_int, |
| __handler: ::Option< |
| unsafe extern "C" fn(__area: *mut ::c_void, __id: ::c_int) -> *const *const ::sigevent, |
| >, |
| __area: *const ::c_void, |
| __size: ::c_int, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptAttachArray_r( |
| __intr: ::c_int, |
| __handler: ::Option< |
| unsafe extern "C" fn(__area: *mut ::c_void, __id: ::c_int) -> *const *const ::sigevent, |
| >, |
| __area: *const ::c_void, |
| __size: ::c_int, |
| __flags: ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptDetach(__id: ::c_int) -> ::c_int; |
| pub fn InterruptDetach_r(__id: ::c_int) -> ::c_int; |
| pub fn InterruptWait(__flags: ::c_int, __timeout: *const u64) -> ::c_int; |
| pub fn InterruptWait_r(__flags: ::c_int, __timeout: *const u64) -> ::c_int; |
| pub fn InterruptCharacteristic( |
| __type: ::c_int, |
| __id: ::c_int, |
| __new: *mut ::c_uint, |
| __old: *mut ::c_uint, |
| ) -> ::c_int; |
| pub fn InterruptCharacteristic_r( |
| __type: ::c_int, |
| __id: ::c_int, |
| __new: *mut ::c_uint, |
| __old: *mut ::c_uint, |
| ) -> ::c_int; |
| |
| pub fn SchedGet(__pid: ::pid_t, __tid: ::c_int, __param: *mut ::sched_param) -> ::c_int; |
| pub fn SchedGet_r(__pid: ::pid_t, __tid: ::c_int, __param: *mut ::sched_param) -> ::c_int; |
| pub fn SchedGetCpuNum() -> ::c_uint; |
| pub fn SchedSet( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __algorithm: ::c_int, |
| __param: *const ::sched_param, |
| ) -> ::c_int; |
| pub fn SchedSet_r( |
| __pid: ::pid_t, |
| __tid: ::c_int, |
| __algorithm: ::c_int, |
| __param: *const ::sched_param, |
| ) -> ::c_int; |
| pub fn SchedInfo(__pid: ::pid_t, __algorithm: ::c_int, __info: *mut ::_sched_info) -> ::c_int; |
| pub fn SchedInfo_r(__pid: ::pid_t, __algorithm: ::c_int, __info: *mut ::_sched_info) |
| -> ::c_int; |
| pub fn SchedYield() -> ::c_int; |
| pub fn SchedYield_r() -> ::c_int; |
| pub fn SchedCtl(__cmd: ::c_int, __data: *mut ::c_void, __length: usize) -> ::c_int; |
| pub fn SchedCtl_r(__cmd: ::c_int, __data: *mut ::c_void, __length: usize) -> ::c_int; |
| pub fn SchedJobCreate(__job: *mut nto_job_t) -> ::c_int; |
| pub fn SchedJobCreate_r(__job: *mut nto_job_t) -> ::c_int; |
| pub fn SchedJobDestroy(__job: *mut nto_job_t) -> ::c_int; |
| pub fn SchedJobDestroy_r(__job: *mut nto_job_t) -> ::c_int; |
| pub fn SchedWaypoint( |
| __job: *mut nto_job_t, |
| __new: *const i64, |
| __max: *const i64, |
| __old: *mut i64, |
| ) -> ::c_int; |
| pub fn SchedWaypoint_r( |
| __job: *mut nto_job_t, |
| __new: *const i64, |
| __max: *const i64, |
| __old: *mut i64, |
| ) -> ::c_int; |
| |
| pub fn TimerCreate(__id: ::clockid_t, __notify: *const ::sigevent) -> ::c_int; |
| pub fn TimerCreate_r(__id: ::clockid_t, __notify: *const ::sigevent) -> ::c_int; |
| pub fn TimerDestroy(__id: ::timer_t) -> ::c_int; |
| pub fn TimerDestroy_r(__id: ::timer_t) -> ::c_int; |
| pub fn TimerSettime( |
| __id: ::timer_t, |
| __flags: ::c_int, |
| __itime: *const ::_itimer, |
| __oitime: *mut ::_itimer, |
| ) -> ::c_int; |
| pub fn TimerSettime_r( |
| __id: ::timer_t, |
| __flags: ::c_int, |
| __itime: *const ::_itimer, |
| __oitime: *mut ::_itimer, |
| ) -> ::c_int; |
| pub fn TimerInfo( |
| __pid: ::pid_t, |
| __id: ::timer_t, |
| __flags: ::c_int, |
| __info: *mut ::_timer_info, |
| ) -> ::c_int; |
| pub fn TimerInfo_r( |
| __pid: ::pid_t, |
| __id: ::timer_t, |
| __flags: ::c_int, |
| __info: *mut ::_timer_info, |
| ) -> ::c_int; |
| pub fn TimerAlarm( |
| __id: ::clockid_t, |
| __itime: *const ::_itimer, |
| __otime: *mut ::_itimer, |
| ) -> ::c_int; |
| pub fn TimerAlarm_r( |
| __id: ::clockid_t, |
| __itime: *const ::_itimer, |
| __otime: *mut ::_itimer, |
| ) -> ::c_int; |
| pub fn TimerTimeout( |
| __id: ::clockid_t, |
| __flags: ::c_int, |
| __notify: *const ::sigevent, |
| __ntime: *const u64, |
| __otime: *mut u64, |
| ) -> ::c_int; |
| pub fn TimerTimeout_r( |
| __id: ::clockid_t, |
| __flags: ::c_int, |
| __notify: *const ::sigevent, |
| __ntime: *const u64, |
| __otime: *mut u64, |
| ) -> ::c_int; |
| |
| pub fn SyncTypeCreate( |
| __type: ::c_uint, |
| __sync: *mut ::sync_t, |
| __attr: *const ::_sync_attr, |
| ) -> ::c_int; |
| pub fn SyncTypeCreate_r( |
| __type: ::c_uint, |
| __sync: *mut ::sync_t, |
| __attr: *const ::_sync_attr, |
| ) -> ::c_int; |
| pub fn SyncDestroy(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncDestroy_r(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncCtl(__cmd: ::c_int, __sync: *mut ::sync_t, __data: *mut ::c_void) -> ::c_int; |
| pub fn SyncCtl_r(__cmd: ::c_int, __sync: *mut ::sync_t, __data: *mut ::c_void) -> ::c_int; |
| pub fn SyncMutexEvent(__sync: *mut ::sync_t, event: *const ::sigevent) -> ::c_int; |
| pub fn SyncMutexEvent_r(__sync: *mut ::sync_t, event: *const ::sigevent) -> ::c_int; |
| pub fn SyncMutexLock(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncMutexLock_r(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncMutexUnlock(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncMutexUnlock_r(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncMutexRevive(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncMutexRevive_r(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncCondvarWait(__sync: *mut ::sync_t, __mutex: *mut ::sync_t) -> ::c_int; |
| pub fn SyncCondvarWait_r(__sync: *mut ::sync_t, __mutex: *mut ::sync_t) -> ::c_int; |
| pub fn SyncCondvarSignal(__sync: *mut ::sync_t, __all: ::c_int) -> ::c_int; |
| pub fn SyncCondvarSignal_r(__sync: *mut ::sync_t, __all: ::c_int) -> ::c_int; |
| pub fn SyncSemPost(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncSemPost_r(__sync: *mut ::sync_t) -> ::c_int; |
| pub fn SyncSemWait(__sync: *mut ::sync_t, __tryto: ::c_int) -> ::c_int; |
| pub fn SyncSemWait_r(__sync: *mut ::sync_t, __tryto: ::c_int) -> ::c_int; |
| |
| pub fn ClockTime(__id: ::clockid_t, _new: *const u64, __old: *mut u64) -> ::c_int; |
| pub fn ClockTime_r(__id: ::clockid_t, _new: *const u64, __old: *mut u64) -> ::c_int; |
| pub fn ClockAdjust( |
| __id: ::clockid_t, |
| _new: *const ::_clockadjust, |
| __old: *mut ::_clockadjust, |
| ) -> ::c_int; |
| pub fn ClockAdjust_r( |
| __id: ::clockid_t, |
| _new: *const ::_clockadjust, |
| __old: *mut ::_clockadjust, |
| ) -> ::c_int; |
| pub fn ClockPeriod( |
| __id: ::clockid_t, |
| _new: *const ::_clockperiod, |
| __old: *mut ::_clockperiod, |
| __reserved: ::c_int, |
| ) -> ::c_int; |
| pub fn ClockPeriod_r( |
| __id: ::clockid_t, |
| _new: *const ::_clockperiod, |
| __old: *mut ::_clockperiod, |
| __reserved: ::c_int, |
| ) -> ::c_int; |
| pub fn ClockId(__pid: ::pid_t, __tid: ::c_int) -> ::c_int; |
| pub fn ClockId_r(__pid: ::pid_t, __tid: ::c_int) -> ::c_int; |
| |
| // |
| //TODO: The following commented out functions are implemented in assembly. |
| // We can implmement them either via a C stub or rust's inline assembly. |
| // |
| //pub fn InterruptEnable(); |
| //pub fn InterruptDisable(); |
| pub fn InterruptMask(__intr: ::c_int, __id: ::c_int) -> ::c_int; |
| pub fn InterruptUnmask(__intr: ::c_int, __id: ::c_int) -> ::c_int; |
| //pub fn InterruptLock(__spin: *mut ::intrspin); |
| //pub fn InterruptUnlock(__spin: *mut ::intrspin); |
| //pub fn InterruptStatus() -> ::c_uint; |
| } |