Skip to content

Commit b641737

Browse files
authored
Auto merge of rust-lang#379 - asomers:evfilt, r=alexcrichton
Move kqueue-related definitions from nix to libc This PR moves, as much as possible, kqueue and kevent related definitions from the nix crate to libc. There will be a companion PR to the nix repo.
2 parents d4f6a19 + 38c4b8b commit b641737

File tree

8 files changed

+321
-65
lines changed

8 files changed

+321
-65
lines changed

src/unix/bsd/apple/mod.rs

Lines changed: 61 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1001,46 +1001,78 @@ pub const FD_SETSIZE: usize = 1024;
10011001

10021002
pub const ST_NOSUID: ::c_ulong = 2;
10031003

1004-
pub const EVFILT_AIO: ::int16_t = 0xfffd;
1005-
pub const EVFILT_PROC: ::int16_t = 0xfffb;
1006-
pub const EVFILT_READ: ::int16_t = 0xffff;
1007-
pub const EVFILT_SIGNAL: ::int16_t = 0xfffa;
1008-
pub const EVFILT_SYSCOUNT: ::int16_t = 0xe;
1009-
pub const EVFILT_TIMER: ::int16_t = 0xfff9;
1010-
pub const EVFILT_VNODE: ::int16_t = 0xfffc;
1011-
pub const EVFILT_WRITE: ::int16_t = 0xfffe;
1012-
pub const EVFILT_FS: ::int16_t = 0xfff7;
1013-
pub const EVFILT_MACHPORT: ::int16_t = 0xfff8;
1014-
pub const EVFILT_USER: ::int16_t = 0xfff6;
1015-
pub const EVFILT_VM: ::int16_t = 0xfff4;
1016-
1004+
pub const EVFILT_READ: ::int16_t = -1;
1005+
pub const EVFILT_WRITE: ::int16_t = -2;
1006+
pub const EVFILT_AIO: ::int16_t = -3;
1007+
pub const EVFILT_VNODE: ::int16_t = -4;
1008+
pub const EVFILT_PROC: ::int16_t = -5;
1009+
pub const EVFILT_SIGNAL: ::int16_t = -6;
1010+
pub const EVFILT_TIMER: ::int16_t = -7;
1011+
pub const EVFILT_MACHPORT: ::int16_t = -8;
1012+
pub const EVFILT_FS: ::int16_t = -9;
1013+
pub const EVFILT_USER: ::int16_t = -10;
1014+
pub const EVFILT_VM: ::int16_t = -12;
1015+
1016+
pub const EV_ADD: ::uint16_t = 0x1;
1017+
pub const EV_DELETE: ::uint16_t = 0x2;
1018+
pub const EV_ENABLE: ::uint16_t = 0x4;
1019+
pub const EV_DISABLE: ::uint16_t = 0x8;
1020+
pub const EV_ONESHOT: ::uint16_t = 0x10;
1021+
pub const EV_CLEAR: ::uint16_t = 0x20;
1022+
pub const EV_RECEIPT: ::uint16_t = 0x40;
10171023
pub const EV_DISPATCH: ::uint16_t = 0x80;
10181024
pub const EV_FLAG0: ::uint16_t = 0x1000;
1019-
pub const EV_OOBAND: ::uint16_t = 0x2000;
10201025
pub const EV_POLL: ::uint16_t = 0x1000;
1021-
pub const EV_RECEIPT: ::uint16_t = 0x40;
1026+
pub const EV_FLAG1: ::uint16_t = 0x2000;
1027+
pub const EV_OOBAND: ::uint16_t = 0x2000;
1028+
pub const EV_ERROR: ::uint16_t = 0x4000;
1029+
pub const EV_EOF: ::uint16_t = 0x8000;
1030+
pub const EV_SYSFLAGS: ::uint16_t = 0xf000;
10221031

1023-
pub const NOTE_ABSOLUTE: ::uint32_t = 0x8;
1024-
pub const NOTE_EXITSTATUS: ::uint32_t = 0x04000000;
1025-
pub const NOTE_EXIT_REPARENTED: ::uint32_t = 0x00080000;
1032+
pub const NOTE_TRIGGER: ::uint32_t = 0x01000000;
1033+
pub const NOTE_FFNOP: ::uint32_t = 0x00000000;
10261034
pub const NOTE_FFAND: ::uint32_t = 0x40000000;
1035+
pub const NOTE_FFOR: ::uint32_t = 0x80000000;
10271036
pub const NOTE_FFCOPY: ::uint32_t = 0xc0000000;
10281037
pub const NOTE_FFCTRLMASK: ::uint32_t = 0xc0000000;
10291038
pub const NOTE_FFLAGSMASK: ::uint32_t = 0x00ffffff;
1030-
pub const NOTE_FFNOP: ::uint32_t = 0x0;
1031-
pub const NOTE_FFOR: ::uint32_t = 0x80000000;
1032-
pub const NOTE_NONE: ::uint32_t = 0x80;
1033-
pub const NOTE_NSECONDS: ::uint32_t = 0x4;
1039+
pub const NOTE_LOWAT: ::uint32_t = 0x00000001;
1040+
pub const NOTE_DELETE: ::uint32_t = 0x00000001;
1041+
pub const NOTE_WRITE: ::uint32_t = 0x00000002;
1042+
pub const NOTE_EXTEND: ::uint32_t = 0x00000004;
1043+
pub const NOTE_ATTRIB: ::uint32_t = 0x00000008;
1044+
pub const NOTE_LINK: ::uint32_t = 0x00000010;
1045+
pub const NOTE_RENAME: ::uint32_t = 0x00000020;
1046+
pub const NOTE_REVOKE: ::uint32_t = 0x00000040;
1047+
pub const NOTE_NONE: ::uint32_t = 0x00000080;
1048+
pub const NOTE_EXIT: ::uint32_t = 0x80000000;
1049+
pub const NOTE_FORK: ::uint32_t = 0x40000000;
1050+
pub const NOTE_EXEC: ::uint32_t = 0x20000000;
10341051
pub const NOTE_REAP: ::uint32_t = 0x10000000;
1035-
pub const NOTE_SECONDS: ::uint32_t = 0x1;
1036-
pub const NOTE_SIGNAL: ::uint32_t = 0x8000000;
1037-
pub const NOTE_TRIGGER: ::uint32_t = 0x01000000;
1038-
pub const NOTE_USECONDS: ::uint32_t = 0x2;
1039-
pub const NOTE_VM_ERROR: ::uint32_t = 0x10000000;
1052+
pub const NOTE_SIGNAL: ::uint32_t = 0x08000000;
1053+
pub const NOTE_EXITSTATUS: ::uint32_t = 0x04000000;
1054+
pub const NOTE_EXIT_DETAIL: ::uint32_t = 0x02000000;
1055+
pub const NOTE_PDATAMASK: ::uint32_t = 0x000fffff;
1056+
pub const NOTE_PCTRLMASK: ::uint32_t = 0xfff00000;
1057+
pub const NOTE_EXIT_REPARENTED: ::uint32_t = 0x00080000;
1058+
pub const NOTE_EXIT_DETAIL_MASK: ::uint32_t = 0x00070000;
1059+
pub const NOTE_EXIT_DECRYPTFAIL: ::uint32_t = 0x00010000;
1060+
pub const NOTE_EXIT_MEMORY: ::uint32_t = 0x00020000;
1061+
pub const NOTE_EXIT_CSERROR: ::uint32_t = 0x00040000;
10401062
pub const NOTE_VM_PRESSURE: ::uint32_t = 0x80000000;
1041-
pub const NOTE_VM_PRESSURE_SUDDEN_TERMINATE: ::uint32_t = 0x20000000;
10421063
pub const NOTE_VM_PRESSURE_TERMINATE: ::uint32_t = 0x40000000;
1043-
pub const NOTE_PCTRLMASK: ::uint32_t = 0xfff00000;
1064+
pub const NOTE_VM_PRESSURE_SUDDEN_TERMINATE: ::uint32_t = 0x20000000;
1065+
pub const NOTE_VM_ERROR: ::uint32_t = 0x10000000;
1066+
pub const NOTE_SECONDS: ::uint32_t = 0x00000001;
1067+
pub const NOTE_USECONDS: ::uint32_t = 0x00000002;
1068+
pub const NOTE_NSECONDS: ::uint32_t = 0x00000004;
1069+
pub const NOTE_ABSOLUTE: ::uint32_t = 0x00000008;
1070+
pub const NOTE_LEEWAY: ::uint32_t = 0x00000010;
1071+
pub const NOTE_CRITICAL: ::uint32_t = 0x00000020;
1072+
pub const NOTE_BACKGROUND: ::uint32_t = 0x00000040;
1073+
pub const NOTE_TRACK: ::uint32_t = 0x00000001;
1074+
pub const NOTE_TRACKERR: ::uint32_t = 0x00000002;
1075+
pub const NOTE_CHILD: ::uint32_t = 0x00000004;
10441076

10451077
pub const NL0: ::c_int = 0x00000000;
10461078
pub const NL1: ::c_int = 0x00000100;

src/unix/bsd/freebsdlike/dragonfly/mod.rs

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,56 @@ pub const CTL_P1003_1B_SIGQUEUE_MAX: ::c_int = 24;
243243
pub const CTL_P1003_1B_TIMER_MAX: ::c_int = 25;
244244
pub const CTL_P1003_1B_MAXID: ::c_int = 26;
245245

246+
pub const EVFILT_READ: ::int16_t = -1;
247+
pub const EVFILT_WRITE: ::int16_t = -2;
248+
pub const EVFILT_AIO: ::int16_t = -3;
249+
pub const EVFILT_VNODE: ::int16_t = -4;
250+
pub const EVFILT_PROC: ::int16_t = -5;
251+
pub const EVFILT_SIGNAL: ::int16_t = -6;
252+
pub const EVFILT_TIMER: ::int16_t = -7;
253+
pub const EVFILT_PROCDESC: ::int16_t = -8;
254+
pub const EVFILT_USER: ::int16_t = -9;
255+
pub const EVFILT_FS: ::int16_t = -10;
256+
257+
pub const EV_ADD: ::uint16_t = 0x1;
258+
pub const EV_DELETE: ::uint16_t = 0x2;
259+
pub const EV_ENABLE: ::uint16_t = 0x4;
260+
pub const EV_DISABLE: ::uint16_t = 0x8;
261+
pub const EV_ONESHOT: ::uint16_t = 0x10;
262+
pub const EV_CLEAR: ::uint16_t = 0x20;
263+
pub const EV_RECEIPT: ::uint16_t = 0x40;
264+
pub const EV_DISPATCH: ::uint16_t = 0x80;
265+
pub const EV_NODATA: ::uint16_t = 0x1000;
266+
pub const EV_FLAG1: ::uint16_t = 0x2000;
267+
pub const EV_ERROR: ::uint16_t = 0x4000;
268+
pub const EV_EOF: ::uint16_t = 0x8000;
269+
pub const EV_SYSFLAGS: ::uint16_t = 0xf000;
270+
271+
pub const NOTE_TRIGGER: ::uint32_t = 0x01000000;
272+
pub const NOTE_FFNOP: ::uint32_t = 0x00000000;
273+
pub const NOTE_FFAND: ::uint32_t = 0x40000000;
274+
pub const NOTE_FFOR: ::uint32_t = 0x80000000;
275+
pub const NOTE_FFCOPY: ::uint32_t = 0xc0000000;
276+
pub const NOTE_FFCTRLMASK: ::uint32_t = 0xc0000000;
277+
pub const NOTE_FFLAGSMASK: ::uint32_t = 0x00ffffff;
278+
pub const NOTE_LOWAT: ::uint32_t = 0x00000001;
279+
pub const NOTE_OOB: ::uint32_t = 0x00000002;
280+
pub const NOTE_DELETE: ::uint32_t = 0x00000001;
281+
pub const NOTE_WRITE: ::uint32_t = 0x00000002;
282+
pub const NOTE_EXTEND: ::uint32_t = 0x00000004;
283+
pub const NOTE_ATTRIB: ::uint32_t = 0x00000008;
284+
pub const NOTE_LINK: ::uint32_t = 0x00000010;
285+
pub const NOTE_RENAME: ::uint32_t = 0x00000020;
286+
pub const NOTE_REVOKE: ::uint32_t = 0x00000040;
287+
pub const NOTE_EXIT: ::uint32_t = 0x80000000;
288+
pub const NOTE_FORK: ::uint32_t = 0x40000000;
289+
pub const NOTE_EXEC: ::uint32_t = 0x20000000;
290+
pub const NOTE_PDATAMASK: ::uint32_t = 0x000fffff;
291+
pub const NOTE_PCTRLMASK: ::uint32_t = 0xf0000000;
292+
pub const NOTE_TRACK: ::uint32_t = 0x00000001;
293+
pub const NOTE_TRACKERR: ::uint32_t = 0x00000002;
294+
pub const NOTE_CHILD: ::uint32_t = 0x00000004;
295+
246296
extern {
247297
pub fn mprotect(addr: *mut ::c_void, len: ::size_t, prot: ::c_int)
248298
-> ::c_int;

src/unix/bsd/freebsdlike/freebsd/mod.rs

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,59 @@ pub const POSIX_FADV_WILLNEED: ::c_int = 3;
5757
pub const POSIX_FADV_DONTNEED: ::c_int = 4;
5858
pub const POSIX_FADV_NOREUSE: ::c_int = 5;
5959

60+
pub const EVFILT_READ: ::int16_t = -1;
61+
pub const EVFILT_WRITE: ::int16_t = -2;
62+
pub const EVFILT_AIO: ::int16_t = -3;
63+
pub const EVFILT_VNODE: ::int16_t = -4;
64+
pub const EVFILT_PROC: ::int16_t = -5;
65+
pub const EVFILT_SIGNAL: ::int16_t = -6;
66+
pub const EVFILT_TIMER: ::int16_t = -7;
67+
pub const EVFILT_FS: ::int16_t = -9;
68+
pub const EVFILT_LIO: ::int16_t = -10;
69+
pub const EVFILT_USER: ::int16_t = -11;
70+
71+
pub const EV_ADD: ::uint16_t = 0x1;
72+
pub const EV_DELETE: ::uint16_t = 0x2;
73+
pub const EV_ENABLE: ::uint16_t = 0x4;
74+
pub const EV_DISABLE: ::uint16_t = 0x8;
75+
pub const EV_ONESHOT: ::uint16_t = 0x10;
76+
pub const EV_CLEAR: ::uint16_t = 0x20;
77+
pub const EV_RECEIPT: ::uint16_t = 0x40;
78+
pub const EV_DISPATCH: ::uint16_t = 0x80;
79+
pub const EV_DROP: ::uint16_t = 0x1000;
80+
pub const EV_FLAG1: ::uint16_t = 0x2000;
81+
pub const EV_ERROR: ::uint16_t = 0x4000;
82+
pub const EV_EOF: ::uint16_t = 0x8000;
83+
pub const EV_SYSFLAGS: ::uint16_t = 0xf000;
84+
85+
pub const NOTE_TRIGGER: ::uint32_t = 0x01000000;
86+
pub const NOTE_FFNOP: ::uint32_t = 0x00000000;
87+
pub const NOTE_FFAND: ::uint32_t = 0x40000000;
88+
pub const NOTE_FFOR: ::uint32_t = 0x80000000;
89+
pub const NOTE_FFCOPY: ::uint32_t = 0xc0000000;
90+
pub const NOTE_FFCTRLMASK: ::uint32_t = 0xc0000000;
91+
pub const NOTE_FFLAGSMASK: ::uint32_t = 0x00ffffff;
92+
pub const NOTE_LOWAT: ::uint32_t = 0x00000001;
93+
pub const NOTE_DELETE: ::uint32_t = 0x00000001;
94+
pub const NOTE_WRITE: ::uint32_t = 0x00000002;
95+
pub const NOTE_EXTEND: ::uint32_t = 0x00000004;
96+
pub const NOTE_ATTRIB: ::uint32_t = 0x00000008;
97+
pub const NOTE_LINK: ::uint32_t = 0x00000010;
98+
pub const NOTE_RENAME: ::uint32_t = 0x00000020;
99+
pub const NOTE_REVOKE: ::uint32_t = 0x00000040;
100+
pub const NOTE_EXIT: ::uint32_t = 0x80000000;
101+
pub const NOTE_FORK: ::uint32_t = 0x40000000;
102+
pub const NOTE_EXEC: ::uint32_t = 0x20000000;
103+
pub const NOTE_PDATAMASK: ::uint32_t = 0x000fffff;
104+
pub const NOTE_PCTRLMASK: ::uint32_t = 0xf0000000;
105+
pub const NOTE_TRACK: ::uint32_t = 0x00000001;
106+
pub const NOTE_TRACKERR: ::uint32_t = 0x00000002;
107+
pub const NOTE_CHILD: ::uint32_t = 0x00000004;
108+
pub const NOTE_SECONDS: ::uint32_t = 0x00000001;
109+
pub const NOTE_MSECONDS: ::uint32_t = 0x00000002;
110+
pub const NOTE_USECONDS: ::uint32_t = 0x00000004;
111+
pub const NOTE_NSECONDS: ::uint32_t = 0x00000008;
112+
60113
pub const MADV_PROTECT: ::c_int = 10;
61114
pub const RUSAGE_THREAD: ::c_int = 1;
62115

src/unix/bsd/freebsdlike/mod.rs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,15 @@ s! {
4444
__unused8: *mut ::c_void,
4545
}
4646

47+
pub struct kevent {
48+
pub ident: ::uintptr_t,
49+
pub filter: ::c_short,
50+
pub flags: ::c_ushort,
51+
pub fflags: ::c_uint,
52+
pub data: ::intptr_t,
53+
pub udata: *mut ::c_void,
54+
}
55+
4756
pub struct sockaddr_storage {
4857
pub ss_len: u8,
4958
pub ss_family: ::sa_family_t,
@@ -743,6 +752,12 @@ extern {
743752
serv: *mut ::c_char,
744753
servlen: ::size_t,
745754
flags: ::c_int) -> ::c_int;
755+
pub fn kevent(kq: ::c_int,
756+
changelist: *const ::kevent,
757+
nchanges: ::c_int,
758+
eventlist: *mut ::kevent,
759+
nevents: ::c_int,
760+
timeout: *const ::timespec) -> ::c_int;
746761
pub fn mincore(addr: *const ::c_void, len: ::size_t,
747762
vec: *mut ::c_char) -> ::c_int;
748763
pub fn sysctlnametomib(name: *const ::c_char,

src/unix/bsd/mod.rs

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -179,33 +179,6 @@ pub const IPV6_V6ONLY: ::c_int = 27;
179179

180180
pub const ST_RDONLY: ::c_ulong = 1;
181181

182-
pub const EV_ADD: ::uint16_t = 0x1;
183-
pub const EV_CLEAR: ::uint16_t = 0x20;
184-
pub const EV_DELETE: ::uint16_t = 0x2;
185-
pub const EV_DISABLE: ::uint16_t = 0x8;
186-
pub const EV_ENABLE: ::uint16_t = 0x4;
187-
pub const EV_EOF: ::uint16_t = 0x8000;
188-
pub const EV_ERROR: ::uint16_t = 0x4000;
189-
pub const EV_FLAG1: ::uint16_t = 0x2000;
190-
pub const EV_ONESHOT: ::uint16_t = 0x10;
191-
pub const EV_SYSFLAGS: ::uint16_t = 0xf000;
192-
193-
pub const NOTE_ATTRIB: ::uint32_t = 0x8;
194-
pub const NOTE_CHILD: ::uint32_t = 0x4;
195-
pub const NOTE_DELETE: ::uint32_t = 0x1;
196-
pub const NOTE_EXEC: ::uint32_t = 0x20000000;
197-
pub const NOTE_EXIT: ::uint32_t = 0x80000000;
198-
pub const NOTE_EXTEND: ::uint32_t = 0x4;
199-
pub const NOTE_FORK: ::uint32_t = 0x40000000;
200-
pub const NOTE_LINK: ::uint32_t = 0x10;
201-
pub const NOTE_LOWAT: ::uint32_t = 0x1;
202-
pub const NOTE_PDATAMASK: ::uint32_t = 0x000fffff;
203-
pub const NOTE_RENAME: ::uint32_t = 0x20;
204-
pub const NOTE_REVOKE: ::uint32_t = 0x40;
205-
pub const NOTE_TRACK: ::uint32_t = 0x1;
206-
pub const NOTE_TRACKERR: ::uint32_t = 0x2;
207-
pub const NOTE_WRITE: ::uint32_t = 0x2;
208-
209182
pub const NCCS: usize = 20;
210183

211184
pub const O_ASYNC: ::c_int = 0x40;

src/unix/bsd/openbsdlike/bitrig.rs

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,15 @@ s! {
3838
__unused7: *mut ::c_void,
3939
}
4040

41+
pub struct kevent {
42+
pub ident: ::uintptr_t,
43+
pub filter: ::c_short,
44+
pub flags: ::c_ushort,
45+
pub fflags: ::c_uint,
46+
pub data: ::int64_t,
47+
pub udata: *mut ::c_void,
48+
}
49+
4150
pub struct stat {
4251
pub st_mode: ::mode_t,
4352
pub st_dev: ::dev_t,
@@ -278,6 +287,44 @@ pub const PTHREAD_MUTEX_NORMAL: ::c_int = 3;
278287
pub const PTHREAD_MUTEX_STRICT_NP: ::c_int = 4;
279288
pub const PTHREAD_MUTEX_DEFAULT: ::c_int = PTHREAD_MUTEX_STRICT_NP;
280289

290+
pub const EVFILT_AIO: ::int16_t = -3;
291+
pub const EVFILT_PROC: ::int16_t = -5;
292+
pub const EVFILT_READ: ::int16_t = -1;
293+
pub const EVFILT_SIGNAL: ::int16_t = -6;
294+
pub const EVFILT_TIMER: ::int16_t = -7;
295+
pub const EVFILT_VNODE: ::int16_t = -4;
296+
pub const EVFILT_WRITE: ::int16_t = -2;
297+
298+
pub const EV_ADD: ::uint16_t = 0x1;
299+
pub const EV_DELETE: ::uint16_t = 0x2;
300+
pub const EV_ENABLE: ::uint16_t = 0x4;
301+
pub const EV_DISABLE: ::uint16_t = 0x8;
302+
pub const EV_ONESHOT: ::uint16_t = 0x10;
303+
pub const EV_CLEAR: ::uint16_t = 0x20;
304+
pub const EV_FLAG1: ::uint16_t = 0x2000;
305+
pub const EV_ERROR: ::uint16_t = 0x4000;
306+
pub const EV_EOF: ::uint16_t = 0x8000;
307+
pub const EV_SYSFLAGS: ::uint16_t = 0xf000;
308+
309+
pub const NOTE_LOWAT: ::uint32_t = 0x00000001;
310+
pub const NOTE_EOF: ::uint32_t = 0x00000002;
311+
pub const NOTE_DELETE: ::uint32_t = 0x00000001;
312+
pub const NOTE_WRITE: ::uint32_t = 0x00000002;
313+
pub const NOTE_EXTEND: ::uint32_t = 0x00000004;
314+
pub const NOTE_ATTRIB: ::uint32_t = 0x00000008;
315+
pub const NOTE_LINK: ::uint32_t = 0x00000010;
316+
pub const NOTE_RENAME: ::uint32_t = 0x00000020;
317+
pub const NOTE_REVOKE: ::uint32_t = 0x00000040;
318+
pub const NOTE_TRUNCATE: ::uint32_t = 0x00000080;
319+
pub const NOTE_EXIT: ::uint32_t = 0x80000000;
320+
pub const NOTE_FORK: ::uint32_t = 0x40000000;
321+
pub const NOTE_EXEC: ::uint32_t = 0x20000000;
322+
pub const NOTE_PDATAMASK: ::uint32_t = 0x000fffff;
323+
pub const NOTE_PCTRLMASK: ::uint32_t = 0xf0000000;
324+
pub const NOTE_TRACK: ::uint32_t = 0x00000001;
325+
pub const NOTE_TRACKERR: ::uint32_t = 0x00000002;
326+
pub const NOTE_CHILD: ::uint32_t = 0x00000004;
327+
281328
pub const TMP_MAX : ::c_uint = 0x7fffffff;
282329

283330
pub const NI_MAXHOST: ::size_t = 256;
@@ -407,6 +454,12 @@ extern {
407454
serv: *mut ::c_char,
408455
servlen: ::size_t,
409456
flags: ::c_int) -> ::c_int;
457+
pub fn kevent(kq: ::c_int,
458+
changelist: *const ::kevent,
459+
nchanges: ::c_int,
460+
eventlist: *mut ::kevent,
461+
nevents: ::c_int,
462+
timeout: *const ::timespec) -> ::c_int;
410463
pub fn mprotect(addr: *const ::c_void, len: ::size_t, prot: ::c_int)
411464
-> ::c_int;
412465
pub fn pthread_main_np() -> ::c_int;

0 commit comments

Comments
 (0)