| ... | @@ -202,8 +202,6 @@ pub const clock_t = isize; | ... | @@ -202,8 +202,6 @@ pub const clock_t = isize; |
| 202 | pub const socklen_t = u32; | 202 | pub const socklen_t = u32; |
| 203 | pub const suseconds_t = c_long; | 203 | pub const suseconds_t = c_long; |
| 204 | | 204 | |
| 205 | pub const id_t = i64; | | |
| 206 | | | |
| 207 | /// Renamed from `kevent` to `Kevent` to avoid conflict with function name. | 205 | /// Renamed from `kevent` to `Kevent` to avoid conflict with function name. |
| 208 | pub const Kevent = extern struct { | 206 | pub const Kevent = extern struct { |
| 209 | /// Identifier for this event. | 207 | /// Identifier for this event. |
| ... | @@ -1949,128 +1947,3 @@ pub const MFD = struct { | ... | @@ -1949,128 +1947,3 @@ pub const MFD = struct { |
| 1949 | | 1947 | |
| 1950 | pub extern "c" fn memfd_create(name: [*:0]const u8, flags: c_uint) c_int; | 1948 | pub extern "c" fn memfd_create(name: [*:0]const u8, flags: c_uint) c_int; |
| 1951 | pub extern "c" fn copy_file_range(fd_in: fd_t, off_in: ?*off_t, fd_out: fd_t, off_out: ?*off_t, len: usize, flags: u32) usize; | 1949 | pub extern "c" fn copy_file_range(fd_in: fd_t, off_in: ?*off_t, fd_out: fd_t, off_out: ?*off_t, len: usize, flags: u32) usize; |
| 1952 | | | |
| 1953 | pub const idtype_t = enum(c_int) { | | |
| 1954 | P_PID = 0, | | |
| 1955 | P_PPID = 1, | | |
| 1956 | P_PGID = 2, | | |
| 1957 | P_SID = 3, | | |
| 1958 | P_CID = 4, | | |
| 1959 | P_UID = 5, | | |
| 1960 | P_GID = 6, | | |
| 1961 | P_ALL = 7, | | |
| 1962 | P_LWPID = 8, | | |
| 1963 | P_TASKID = 9, | | |
| 1964 | P_PROJID = 10, | | |
| 1965 | P_POOLID = 11, | | |
| 1966 | P_JAILID = 12, | | |
| 1967 | P_CTID = 13, | | |
| 1968 | P_CPUID = 14, | | |
| 1969 | P_PSETID = 15, | | |
| 1970 | }; | | |
| 1971 | | | |
| 1972 | pub const PROC = struct { | | |
| 1973 | // constants for the id_t argument | | |
| 1974 | pub const SPROTECT: id_t = 1; | | |
| 1975 | pub const REAP_ACQUIRE: id_t = 2; | | |
| 1976 | pub const REAP_RELEASE: id_t = 3; | | |
| 1977 | pub const REAP_STATUS: id_t = 4; | | |
| 1978 | pub const REAP_GETPIDS: id_t = 5; | | |
| 1979 | pub const REAP_KILL: id_t = 6; | | |
| 1980 | pub const TRACE_CTL: id_t = 7; | | |
| 1981 | pub const TRACE_STATUS: id_t = 8; | | |
| 1982 | pub const TRACECAP_CTL = 9; | | |
| 1983 | pub const TRACECAP_STATUS: id_t = 10; | | |
| 1984 | pub const PDEATHSIG_CTL: id_t = 11; | | |
| 1985 | pub const PDEATHSIG_STATUS: id_t = 12; | | |
| 1986 | pub const ASLR_CTL: id_t = 13; | | |
| 1987 | pub const ASLR_STATUS: id_t = 14; | | |
| 1988 | pub const PROTMAX_CTL: id_t = 15; | | |
| 1989 | pub const PROTMAX_STATUS: id_t = 16; | | |
| 1990 | pub const STACKGAP_CTL: id_t = 17; | | |
| 1991 | pub const STACKGAP_STATUS: id_t = 18; | | |
| 1992 | pub const NO_NEW_PRIVS_CTL: id_t = 19; | | |
| 1993 | pub const NO_NEW_PRIVS_STATUS: id_t = 20; | | |
| 1994 | pub const WXMAP_CTL: id_t = 21; | | |
| 1995 | pub const WXMAP_STATUS: id_t = 22; | | |
| 1996 | | | |
| 1997 | // constants for the operations | | |
| 1998 | pub const TRACE_CTL_ENABLE = 1; | | |
| 1999 | pub const TRACE_CTL_DISABLE = 2; | | |
| 2000 | pub const TRACE_CTL_DISABLE_EXEC = 3; | | |
| 2001 | pub const TRAPCAP_CTL_ENABLE = 1; | | |
| 2002 | pub const TRAPCAP_CTL_DISABLE = 2; | | |
| 2003 | pub const ASLR_FORCE_ENABLE = 1; | | |
| 2004 | pub const ASLR_FORCE_DISABLE = 2; | | |
| 2005 | pub const ASLR_FORCE_NOFORCE = 3; | | |
| 2006 | pub const ASLR_FORCE_ACTIVE = 0x80000000; | | |
| 2007 | pub const PROTMAX_FORCE_ENABLE = 1; | | |
| 2008 | pub const PROTMAX_FORCE_DISABLE = 2; | | |
| 2009 | pub const PROTMAX_FORCE_NOFORCE = 3; | | |
| 2010 | pub const PROTMAX_FORCE_ACTIVE = 0x80000000; | | |
| 2011 | pub const STACKGAP_ENABLE = 0x0001; | | |
| 2012 | pub const STACKGAP_DISABLE = 0x0002; | | |
| 2013 | pub const STACKGAP_ENABLE_EXEC = 0x0004; | | |
| 2014 | pub const STACKGAP_DISABLE_EXEC = 0x0008; | | |
| 2015 | pub const NO_NEW_PRIVS_ENABLE = 1; | | |
| 2016 | pub const NO_NEW_PRIVS_DISABLE = 2; | | |
| 2017 | pub const WX_MAPPINGS_PERMIT = 0x0001; | | |
| 2018 | pub const WX_MAPPINGS_DISALLOW_EXEC = 0x0002; | | |
| 2019 | pub const WX_MAPPINGS_ENFORCE = 0x80000000; | | |
| 2020 | }; | | |
| 2021 | | | |
| 2022 | pub const PPROT = struct { | | |
| 2023 | pub fn OP(x: i32) i32 { | | |
| 2024 | return x & 0xf; | | |
| 2025 | } | | |
| 2026 | pub const SET = 1; | | |
| 2027 | pub const CLEAR = 2; | | |
| 2028 | pub fn FLAGS(x: i32) i32 { | | |
| 2029 | return x & !0xf; | | |
| 2030 | } | | |
| 2031 | pub const DESCEND = 0x10; | | |
| 2032 | pub const INHERIT = 0x20; | | |
| 2033 | }; | | |
| 2034 | | | |
| 2035 | pub const REAPER = struct { | | |
| 2036 | pub const STATUS_OWNED = 0x00000001; | | |
| 2037 | pub const STATUS_REALINIT = 0x00000002; | | |
| 2038 | pub const PIDINFO_VALID = 0x00000001; | | |
| 2039 | pub const PIDINFO_CHILD = 0x00000002; | | |
| 2040 | pub const PIDINFO_REAPER = 0x00000004; | | |
| 2041 | pub const KILL_CHILDREN = 0x00000001; | | |
| 2042 | pub const KILL_SUBTREE = 0x00000002; | | |
| 2043 | }; | | |
| 2044 | | | |
| 2045 | pub const procctl_reaper_status = extern struct { | | |
| 2046 | rs_flags: u32, | | |
| 2047 | rs_children: u32, | | |
| 2048 | rs_descendants: u32, | | |
| 2049 | rs_reaper: pid_t, | | |
| 2050 | rs_pid: pid_t, | | |
| 2051 | rs_pad0: [15]u32, | | |
| 2052 | }; | | |
| 2053 | | | |
| 2054 | pub const procctl_reaper_pidinfo = extern struct { | | |
| 2055 | pi_pid: pid_t, | | |
| 2056 | pi_subtree: pid_t, | | |
| 2057 | pi_flags: u32, | | |
| 2058 | pi_pad0: [15]u32, | | |
| 2059 | }; | | |
| 2060 | | | |
| 2061 | pub const procctl_reaper_pids = extern struct { | | |
| 2062 | rp_count: u32, | | |
| 2063 | rp_pad0: [15]u32, | | |
| 2064 | rp_pids: [*]procctl_reaper_pidinfo, | | |
| 2065 | }; | | |
| 2066 | | | |
| 2067 | pub const procctl_reaper_kill = extern struct { | | |
| 2068 | rk_sig: c_int, | | |
| 2069 | rk_flags: u32, | | |
| 2070 | rk_subtree: pid_t, | | |
| 2071 | rk_killed: u32, | | |
| 2072 | rk_fpid: pid_t, | | |
| 2073 | rk_pad0: [15]u32, | | |
| 2074 | }; | | |
| 2075 | | | |
| 2076 | pub extern "c" fn procctl(idtype: idtype_t, id: id_t, cmd: c_int, data: ?*anyopaque) c_int; | | |