@@ -200,9 +200,12 @@ pub const EVFILT_VNODE: ::int16_t = -4;
200200pub const EVFILT_PROC : :: int16_t = -5 ;
201201pub const EVFILT_SIGNAL : :: int16_t = -6 ;
202202pub const EVFILT_TIMER : :: int16_t = -7 ;
203+ pub const EVFILT_PROCDESC : :: int16_t = -8 ;
203204pub const EVFILT_FS : :: int16_t = -9 ;
204205pub const EVFILT_LIO : :: int16_t = -10 ;
205206pub const EVFILT_USER : :: int16_t = -11 ;
207+ pub const EVFILT_SENDFILE : :: int16_t = -12 ;
208+ pub const EVFILT_EMPTY : :: int16_t = -13 ;
206209
207210pub const EV_ADD : :: uint16_t = 0x1 ;
208211pub const EV_DELETE : :: uint16_t = 0x2 ;
@@ -838,6 +841,16 @@ pub const _SC_CPUSET_SIZE: ::c_int = 122;
838841pub const XU_NGROUPS : :: c_int = 16 ;
839842pub const XUCRED_VERSION : :: c_uint = 0 ;
840843
844+ // Flags which can be passed to pdfork(2)
845+ pub const PD_DAEMON : :: c_int = 0x00000001 ;
846+ pub const PD_CLOEXEC : :: c_int = 0x00000002 ;
847+ pub const PD_ALLOWED_AT_FORK : :: c_int = PD_DAEMON | PD_CLOEXEC ;
848+
849+ // Values for struct rtprio (type_ field)
850+ pub const RTP_PRIO_REALTIME : :: c_ushort = 2 ;
851+ pub const RTP_PRIO_NORMAL : :: c_ushort = 3 ;
852+ pub const RTP_PRIO_IDLE : :: c_ushort = 4 ;
853+
841854extern {
842855 pub fn __error ( ) -> * mut :: c_int ;
843856
@@ -893,6 +906,13 @@ extern {
893906 pub fn fexecve ( fd : :: c_int , argv : * const * const :: c_char ,
894907 envp : * const * const :: c_char )
895908 -> :: c_int ;
909+
910+ pub fn pdfork ( fdp : * mut :: c_int , flags : :: c_int ) -> :: pid_t ;
911+ pub fn pdgetpid ( fd : :: c_int , pidp : * mut :: pid_t ) -> :: c_int ;
912+ pub fn pdkill ( fd : :: c_int , signum : :: c_int ) -> :: c_int ;
913+
914+ pub fn rtprio_thread ( function : :: c_int , lwpid : :: lwpid_t ,
915+ rtp : * mut super :: rtprio ) -> :: c_int ;
896916}
897917
898918cfg_if ! {
0 commit comments