|
36 | 36 | pub offset: ::u_long,
|
37 | 37 | pub len: ::size_t,
|
38 | 38 | }
|
| 39 | + |
| 40 | + pub struct kinfo_proc { |
| 41 | + pub ki_structsize: ::c_int, |
| 42 | + pub ki_layout: ::c_int, |
| 43 | + pub ki_args: *mut ::pargs, |
| 44 | + // This is normally "struct proc". |
| 45 | + pub ki_paddr: *mut ::c_void, |
| 46 | + // This is normally "struct user". |
| 47 | + pub ki_addr: *mut ::c_void, |
| 48 | + // This is normally "struct vnode". |
| 49 | + pub ki_tracep: *mut ::c_void, |
| 50 | + // This is normally "struct vnode". |
| 51 | + pub ki_textvp: *mut ::c_void, |
| 52 | + // This is normally "struct filedesc". |
| 53 | + pub ki_fd: *mut ::c_void, |
| 54 | + // This is normally "struct vmspace". |
| 55 | + pub ki_vmspace: *mut ::c_void, |
| 56 | + pub ki_wchan: *mut ::c_void, |
| 57 | + pub ki_pid: ::pid_t, |
| 58 | + pub ki_ppid: ::pid_t, |
| 59 | + pub ki_pgid: ::pid_t, |
| 60 | + pub ki_tpgid: ::pid_t, |
| 61 | + pub ki_sid: ::pid_t, |
| 62 | + pub ki_tsid: ::pid_t, |
| 63 | + pub ki_jobc: ::c_short, |
| 64 | + pub ki_spare_short1: ::c_short, |
| 65 | + pub ki_tdev_freebsd11: u32, |
| 66 | + pub ki_siglist: ::sigset_t, |
| 67 | + pub ki_sigmask: ::sigset_t, |
| 68 | + pub ki_sigignore: ::sigset_t, |
| 69 | + pub ki_sigcatch: ::sigset_t, |
| 70 | + pub ki_uid: ::uid_t, |
| 71 | + pub ki_ruid: ::uid_t, |
| 72 | + pub ki_svuid: ::uid_t, |
| 73 | + pub ki_rgid: ::gid_t, |
| 74 | + pub ki_svgid: ::gid_t, |
| 75 | + pub ki_ngroups: ::c_short, |
| 76 | + pub ki_spare_short2: ::c_short, |
| 77 | + pub ki_groups: [::gid_t; ::KI_NGROUPS], |
| 78 | + pub ki_size: ::vm_size_t, |
| 79 | + pub ki_rssize: ::segsz_t, |
| 80 | + pub ki_swrss: ::segsz_t, |
| 81 | + pub ki_tsize: ::segsz_t, |
| 82 | + pub ki_dsize: ::segsz_t, |
| 83 | + pub ki_ssize: ::segsz_t, |
| 84 | + pub ki_xstat: ::u_short, |
| 85 | + pub ki_acflag: ::u_short, |
| 86 | + pub ki_pctcpu: ::fixpt_t, |
| 87 | + pub ki_estcpu: ::u_int, |
| 88 | + pub ki_slptime: ::u_int, |
| 89 | + pub ki_swtime: ::u_int, |
| 90 | + pub ki_cow: ::u_int, |
| 91 | + pub ki_runtime: u64, |
| 92 | + pub ki_start: ::timeval, |
| 93 | + pub ki_childtime: ::timeval, |
| 94 | + pub ki_flag: ::c_long, |
| 95 | + pub ki_kiflag: ::c_long, |
| 96 | + pub ki_traceflag: ::c_int, |
| 97 | + pub ki_stat: ::c_char, |
| 98 | + pub ki_nice: i8, // signed char |
| 99 | + pub ki_lock: ::c_char, |
| 100 | + pub ki_rqindex: ::c_char, |
| 101 | + pub ki_oncpu_old: ::c_uchar, |
| 102 | + pub ki_lastcpu_old: ::c_uchar, |
| 103 | + pub ki_tdname: [::c_char; ::TDNAMLEN + 1], |
| 104 | + pub ki_wmesg: [::c_char; ::WMESGLEN + 1], |
| 105 | + pub ki_login: [::c_char; ::LOGNAMELEN + 1], |
| 106 | + pub ki_lockname: [::c_char; ::LOCKNAMELEN + 1], |
| 107 | + pub ki_comm: [::c_char; ::COMMLEN + 1], |
| 108 | + pub ki_emul: [::c_char; ::KI_EMULNAMELEN + 1], |
| 109 | + pub ki_loginclass: [::c_char; ::LOGINCLASSLEN + 1], |
| 110 | + pub ki_moretdname: [::c_char; ::MAXCOMLEN - ::TDNAMLEN + 1], |
| 111 | + pub ki_sparestrings: [[::c_char; 23]; 2], // little hack to allow PartialEq |
| 112 | + pub ki_spareints: [::c_int; ::KI_NSPARE_INT], |
| 113 | + pub ki_tdev: ::dev_t, |
| 114 | + pub ki_oncpu: ::c_int, |
| 115 | + pub ki_lastcpu: ::c_int, |
| 116 | + pub ki_tracer: ::c_int, |
| 117 | + pub ki_flag2: ::c_int, |
| 118 | + pub ki_fibnum: ::c_int, |
| 119 | + pub ki_cr_flags: ::u_int, |
| 120 | + pub ki_jid: ::c_int, |
| 121 | + pub ki_numthreads: ::c_int, |
| 122 | + pub ki_tid: ::lwpid_t, |
| 123 | + pub ki_pri: ::priority, |
| 124 | + pub ki_rusage: ::rusage, |
| 125 | + pub ki_rusage_ch: ::rusage, |
| 126 | + // This is normally "struct pcb". |
| 127 | + pub ki_pcb: *mut ::c_void, |
| 128 | + pub ki_kstack: *mut ::c_void, |
| 129 | + pub ki_udata: *mut ::c_void, |
| 130 | + // This is normally "struct thread". |
| 131 | + pub ki_tdaddr: *mut ::c_void, |
| 132 | + pub ki_spareptrs: [*mut ::c_void; ::KI_NSPARE_PTR], |
| 133 | + pub ki_sparelongs: [::c_long; ::KI_NSPARE_LONG], |
| 134 | + pub ki_sflag: ::c_long, |
| 135 | + pub ki_tdflags: ::c_long, |
| 136 | + } |
39 | 137 | }
|
40 | 138 |
|
41 | 139 | s_no_extra_traits! {
|
@@ -207,6 +305,8 @@ pub const ELAST: ::c_int = 97;
|
207 | 305 | pub const SPECNAMELEN: ::c_int = 63;
|
208 | 306 | pub const KI_NSPARE_PTR: usize = 6;
|
209 | 307 |
|
| 308 | +pub const MINCORE_SUPER: ::c_int = 0x20; |
| 309 | + |
210 | 310 | extern "C" {
|
211 | 311 | pub fn setgrent();
|
212 | 312 | pub fn mprotect(addr: *mut ::c_void, len: ::size_t, prot: ::c_int) -> ::c_int;
|
|
0 commit comments