@@ -370,6 +370,16 @@ s! {
370
370
pub t_sw: i16 ,
371
371
pub t_pad: [ u16 ; 3 ] ,
372
372
}
373
+
374
+ pub struct rusage_ext {
375
+ pub rux_runtime: u64 ,
376
+ pub rux_uticks: u64 ,
377
+ pub rux_sticks: u64 ,
378
+ pub rux_iticks: u64 ,
379
+ pub rux_uu: u64 ,
380
+ pub rux_su: u64 ,
381
+ pub rux_tu: u64 ,
382
+ }
373
383
}
374
384
375
385
s_no_extra_traits ! {
@@ -1897,6 +1907,164 @@ pub const _POSIX2_EXPR_NEST_MAX: ::c_int = 32;
1897
1907
pub const _POSIX2_LINE_MAX: :: c_int = 2048 ;
1898
1908
pub const _POSIX2_RE_DUP_MAX: :: c_int = 255 ;
1899
1909
1910
+ // sys/proc.h
1911
+ pub const TDF_BORROWING : :: c_int = 0x00000001 ;
1912
+ pub const TDF_INPANIC : :: c_int = 0x00000002 ;
1913
+ pub const TDF_INMEM : :: c_int = 0x00000004 ;
1914
+ pub const TDF_SINTR : :: c_int = 0x00000008 ;
1915
+ pub const TDF_TIMEOUT : :: c_int = 0x00000010 ;
1916
+ pub const TDF_IDLETD : :: c_int = 0x00000020 ;
1917
+ pub const TDF_CANSWAP : :: c_int = 0x00000040 ;
1918
+ pub const TDF_KTH_SUSP : :: c_int = 0x00000100 ;
1919
+ pub const TDF_ALLPROCSUSP : :: c_int = 0x00000200 ;
1920
+ pub const TDF_BOUNDARY : :: c_int = 0x00000400 ;
1921
+ pub const TDF_ASTPENDING : :: c_int = 0x00000800 ;
1922
+ pub const TDF_SBDRY : :: c_int = 0x00002000 ;
1923
+ pub const TDF_UPIBLOCKED : :: c_int = 0x00004000 ;
1924
+ pub const TDF_NEEDSUSPCHK : :: c_int = 0x00008000 ;
1925
+ pub const TDF_NEEDRESCHED : :: c_int = 0x00010000 ;
1926
+ pub const TDF_NEEDSIGCHK : :: c_int = 0x00020000 ;
1927
+ pub const TDF_NOLOAD : :: c_int = 0x00040000 ;
1928
+ pub const TDF_SERESTART : :: c_int = 0x00080000 ;
1929
+ pub const TDF_THRWAKEUP : :: c_int = 0x00100000 ;
1930
+ pub const TDF_SEINTR : :: c_int = 0x00200000 ;
1931
+ pub const TDF_SWAPINREQ : :: c_int = 0x00400000 ;
1932
+ pub const TDF_UNUSED23 : :: c_int = 0x00800000 ;
1933
+ pub const TDF_SCHED0 : :: c_int = 0x01000000 ;
1934
+ pub const TDF_SCHED1 : :: c_int = 0x02000000 ;
1935
+ pub const TDF_SCHED2 : :: c_int = 0x04000000 ;
1936
+ pub const TDF_SCHED3 : :: c_int = 0x08000000 ;
1937
+ pub const TDF_ALRMPEND : :: c_int = 0x10000000 ;
1938
+ pub const TDF_PROFPEND : :: c_int = 0x20000000 ;
1939
+ pub const TDF_MACPEND : :: c_int = 0x40000000 ;
1940
+
1941
+ pub const TDB_SUSPEND : :: c_int = 0x00000001 ;
1942
+ pub const TDB_XSIG : :: c_int = 0x00000002 ;
1943
+ pub const TDB_USERWR : :: c_int = 0x00000004 ;
1944
+ pub const TDB_SCE : :: c_int = 0x00000008 ;
1945
+ pub const TDB_SCX : :: c_int = 0x00000010 ;
1946
+ pub const TDB_EXEC : :: c_int = 0x00000020 ;
1947
+ pub const TDB_FORK : :: c_int = 0x00000040 ;
1948
+ pub const TDB_STOPATFORK : :: c_int = 0x00000080 ;
1949
+ pub const TDB_CHILD : :: c_int = 0x00000100 ;
1950
+ pub const TDB_BORN : :: c_int = 0x00000200 ;
1951
+ pub const TDB_EXIT : :: c_int = 0x00000400 ;
1952
+ pub const TDB_VFORK : :: c_int = 0x00000800 ;
1953
+ pub const TDB_FSTP : :: c_int = 0x00001000 ;
1954
+ pub const TDB_STEP : :: c_int = 0x00002000 ;
1955
+
1956
+ pub const TDP_OLDMASK : :: c_int = 0x00000001 ;
1957
+ pub const TDP_INKTR : :: c_int = 0x00000002 ;
1958
+ pub const TDP_INKTRACE : :: c_int = 0x00000004 ;
1959
+ pub const TDP_BUFNEED : :: c_int = 0x00000008 ;
1960
+ pub const TDP_COWINPROGRESS : :: c_int = 0x00000010 ;
1961
+ pub const TDP_ALTSTACK : :: c_int = 0x00000020 ;
1962
+ pub const TDP_DEADLKTREAT : :: c_int = 0x00000040 ;
1963
+ pub const TDP_NOFAULTING : :: c_int = 0x00000080 ;
1964
+ pub const TDP_OWEUPC : :: c_int = 0x00000200 ;
1965
+ pub const TDP_ITHREAD : :: c_int = 0x00000400 ;
1966
+ pub const TDP_SYNCIO : :: c_int = 0x00000800 ;
1967
+ pub const TDP_SCHED1 : :: c_int = 0x00001000 ;
1968
+ pub const TDP_SCHED2 : :: c_int = 0x00002000 ;
1969
+ pub const TDP_SCHED3 : :: c_int = 0x00004000 ;
1970
+ pub const TDP_SCHED4 : :: c_int = 0x00008000 ;
1971
+ pub const TDP_GEOM : :: c_int = 0x00010000 ;
1972
+ pub const TDP_SOFTDEP : :: c_int = 0x00020000 ;
1973
+ pub const TDP_NORUNNINGBUF : :: c_int = 0x00040000 ;
1974
+ pub const TDP_WAKEUP : :: c_int = 0x00080000 ;
1975
+ pub const TDP_INBDFLUSH : :: c_int = 0x00100000 ;
1976
+ pub const TDP_KTHREAD : :: c_int = 0x00200000 ;
1977
+ pub const TDP_CALLCHAIN : :: c_int = 0x00400000 ;
1978
+ pub const TDP_IGNSUSP : :: c_int = 0x00800000 ;
1979
+ pub const TDP_AUDITREC : :: c_int = 0x01000000 ;
1980
+ pub const TDP_RFPPWAIT : :: c_int = 0x02000000 ;
1981
+ pub const TDP_RESETSPUR : :: c_int = 0x04000000 ;
1982
+ pub const TDP_NERRNO : :: c_int = 0x08000000 ;
1983
+ pub const TDP_EXECVMSPC : :: c_int = 0x40000000 ;
1984
+
1985
+ pub const TDI_SUSPENDED : :: c_int = 0x0001 ;
1986
+ pub const TDI_SLEEPING : :: c_int = 0x0002 ;
1987
+ pub const TDI_SWAPPED : :: c_int = 0x0004 ;
1988
+ pub const TDI_LOCK : :: c_int = 0x0008 ;
1989
+ pub const TDI_IWAIT : :: c_int = 0x0010 ;
1990
+
1991
+ pub const P_ADVLOCK : :: c_int = 0x00000001 ;
1992
+ pub const P_CONTROLT : :: c_int = 0x00000002 ;
1993
+ pub const P_KPROC : :: c_int = 0x00000004 ;
1994
+ pub const P_UNUSED3 : :: c_int = 0x00000008 ;
1995
+ pub const P_PPWAIT : :: c_int = 0x00000010 ;
1996
+ pub const P_PROFIL : :: c_int = 0x00000020 ;
1997
+ pub const P_STOPPROF : :: c_int = 0x00000040 ;
1998
+ pub const P_HADTHREADS : :: c_int = 0x00000080 ;
1999
+ pub const P_SUGID : :: c_int = 0x00000100 ;
2000
+ pub const P_SYSTEM : :: c_int = 0x00000200 ;
2001
+ pub const P_SINGLE_EXIT : :: c_int = 0x00000400 ;
2002
+ pub const P_TRACED : :: c_int = 0x00000800 ;
2003
+ pub const P_WAITED : :: c_int = 0x00001000 ;
2004
+ pub const P_WEXIT : :: c_int = 0x00002000 ;
2005
+ pub const P_EXEC : :: c_int = 0x00004000 ;
2006
+ pub const P_WKILLED : :: c_int = 0x00008000 ;
2007
+ pub const P_CONTINUED : :: c_int = 0x00010000 ;
2008
+ pub const P_STOPPED_SIG : :: c_int = 0x00020000 ;
2009
+ pub const P_STOPPED_TRACE : :: c_int = 0x00040000 ;
2010
+ pub const P_STOPPED_SINGLE : :: c_int = 0x00080000 ;
2011
+ pub const P_PROTECTED : :: c_int = 0x00100000 ;
2012
+ pub const P_SIGEVENT : :: c_int = 0x00200000 ;
2013
+ pub const P_SINGLE_BOUNDARY : :: c_int = 0x00400000 ;
2014
+ pub const P_HWPMC : :: c_int = 0x00800000 ;
2015
+ pub const P_JAILED : :: c_int = 0x01000000 ;
2016
+ pub const P_TOTAL_STOP : :: c_int = 0x02000000 ;
2017
+ pub const P_INEXEC : :: c_int = 0x04000000 ;
2018
+ pub const P_STATCHILD : :: c_int = 0x08000000 ;
2019
+ pub const P_INMEM : :: c_int = 0x10000000 ;
2020
+ pub const P_SWAPPINGOUT : :: c_int = 0x20000000 ;
2021
+ pub const P_SWAPPINGIN : :: c_int = 0x40000000 ;
2022
+ pub const P_PPTRACE : :: c_int = 0x80000000 ;
2023
+ pub const P_STOPPED : :: c_int = P_STOPPED_SIG | P_STOPPED_SINGLE | P_STOPPED_TRACE ;
2024
+
2025
+ pub const P2_INHERIT_PROTECTED : :: c_int = 0x00000001 ;
2026
+ pub const P2_NOTRACE : :: c_int = 0x00000002 ;
2027
+ pub const P2_NOTRACE_EXEC : :: c_int = 0x00000004 ;
2028
+ pub const P2_AST_SU : :: c_int = 0x00000008 ;
2029
+ pub const P2_PTRACE_FSTP : :: c_int = 0x00000010 ;
2030
+ pub const P2_TRAPCAP : :: c_int = 0x00000020 ;
2031
+ pub const P2_STKGAP_DISABLE : :: c_int = 0x00000800 ;
2032
+ pub const P2_STKGAP_DISABLE_EXEC : :: c_int = 0x00001000 ;
2033
+
2034
+ pub const P_TREE_ORPHANED : :: c_int = 0x00000001 ;
2035
+ pub const P_TREE_FIRST_ORPHAN : :: c_int = 0x00000002 ;
2036
+ pub const P_TREE_REAPER : :: c_int = 0x00000004 ;
2037
+
2038
+ pub const SIDL : :: c_char = 1 ;
2039
+ pub const SRUN : :: c_char = 2 ;
2040
+ pub const SSLEEP : :: c_char = 3 ;
2041
+ pub const SSTOP : :: c_char = 4 ;
2042
+ pub const SZOMB : :: c_char = 5 ;
2043
+ pub const SWAIT : :: c_char = 6 ;
2044
+ pub const SLOCK : :: c_char = 7 ;
2045
+
2046
+ pub const P_MAGIC : :: c_int = 0xbeefface ;
2047
+
2048
+ cfg_if ! {
2049
+ if #[ cfg( freebsd13) ] {
2050
+ pub const TDP_SIGFASTBLOCK : :: c_int = 0x00000100 ;
2051
+ pub const TDP_UIOHELD : :: c_int = 0x10000000 ;
2052
+ pub const TDP_SIGFASTPENDING : :: c_int = 0x80000000 ;
2053
+ pub const TDP2_COMPAT32RB : :: c_int = 0x00000002 ;
2054
+ pub const P2_PROTMAX_ENABLE : :: c_int = 0x00000200 ;
2055
+ pub const P2_PROTMAX_DISABLE : :: c_int = 0x00000400 ;
2056
+ }
2057
+ }
2058
+ cfg_if ! {
2059
+ if #[ cfg( any( freebsd12, freebsd13) ) ] {
2060
+ pub const TDP2_SBPAGES : :: c_int = 0x00000001 ;
2061
+ pub const P2_ASLR_ENABLE : :: c_int = 0x00000040 ;
2062
+ pub const P2_ASLR_DISABLE : :: c_int = 0x00000080 ;
2063
+ pub const P2_ASLR_IGNSTART : :: c_int = 0x00000100 ;
2064
+ pub const P_TREE_GRPEXITED : :: c_int = 0x00000008 ;
2065
+ }
2066
+ }
2067
+
1900
2068
const_fn ! {
1901
2069
{ const } fn _ALIGN( p: usize ) -> usize {
1902
2070
( p + _ALIGNBYTES) & !_ALIGNBYTES
0 commit comments