Lines 33-38
Link Here
|
33 |
|
33 |
|
34 |
#include <sys/_types.h> |
34 |
#include <sys/_types.h> |
35 |
#include <sys/queue.h> |
35 |
#include <sys/queue.h> |
|
|
36 |
#include <sys/poll.h> |
36 |
|
37 |
|
37 |
#define EVFILT_READ (-1) |
38 |
#define EVFILT_READ (-1) |
38 |
#define EVFILT_WRITE (-2) |
39 |
#define EVFILT_WRITE (-2) |
Lines 58-63
Link Here
|
58 |
.fflags = (d), \ |
59 |
.fflags = (d), \ |
59 |
.data = (e), \ |
60 |
.data = (e), \ |
60 |
.udata = (f), \ |
61 |
.udata = (f), \ |
|
|
62 |
.pevents = 0, \ |
61 |
.ext = {0}, \ |
63 |
.ext = {0}, \ |
62 |
}; \ |
64 |
}; \ |
63 |
} while(0) |
65 |
} while(0) |
Lines 73-82
Link Here
|
73 |
(kevp)->fflags = (d); \ |
75 |
(kevp)->fflags = (d); \ |
74 |
(kevp)->data = (e); \ |
76 |
(kevp)->data = (e); \ |
75 |
(kevp)->udata = (f); \ |
77 |
(kevp)->udata = (f); \ |
|
|
78 |
(kevp)->pevents = 0; \ |
76 |
(kevp)->ext[0] = 0; \ |
79 |
(kevp)->ext[0] = 0; \ |
77 |
(kevp)->ext[1] = 0; \ |
80 |
(kevp)->ext[1] = 0; \ |
78 |
(kevp)->ext[2] = 0; \ |
81 |
(kevp)->ext[2] = 0; \ |
79 |
(kevp)->ext[3] = 0; \ |
|
|
80 |
} while(0) |
82 |
} while(0) |
81 |
#endif |
83 |
#endif |
82 |
|
84 |
|
Lines 87-93
struct kevent {
Link Here
|
87 |
unsigned int fflags; /* filter flag value */ |
89 |
unsigned int fflags; /* filter flag value */ |
88 |
__int64_t data; /* filter data value */ |
90 |
__int64_t data; /* filter data value */ |
89 |
void *udata; /* opaque user data identifier */ |
91 |
void *udata; /* opaque user data identifier */ |
90 |
__uint64_t ext[4]; /* extensions */ |
92 |
unsigned int pevents; /* poll events, used to Linux epoll */ |
|
|
93 |
__uint64_t ext[3]; /* extensions */ |
91 |
}; |
94 |
}; |
92 |
|
95 |
|
93 |
#if defined(_WANT_FREEBSD11_KEVENT) |
96 |
#if defined(_WANT_FREEBSD11_KEVENT) |
Lines 153-158
struct kevent32_freebsd11 {
Link Here
|
153 |
#define EV_EOF 0x8000 /* EOF detected */ |
156 |
#define EV_EOF 0x8000 /* EOF detected */ |
154 |
#define EV_ERROR 0x4000 /* error, data contains errno */ |
157 |
#define EV_ERROR 0x4000 /* error, data contains errno */ |
155 |
|
158 |
|
|
|
159 |
/* poll event */ |
160 |
#define EV_POLLIN POLLIN |
161 |
#define EV_POLLPRI POLLPRI |
162 |
#define EV_POLLOUT POLLOUT |
163 |
#define EV_POLLERR POLLERR |
164 |
#define EV_POLLHUP POLLHUP |
165 |
#define EV_POLLRDNORM POLLRDNORM |
166 |
#define EV_POLLRDHUP 0x00002000 |
167 |
|
168 |
|
156 |
/* |
169 |
/* |
157 |
* data/hint flags/masks for EVFILT_USER, shared with userspace |
170 |
* data/hint flags/masks for EVFILT_USER, shared with userspace |
158 |
* |
171 |
* |
Lines 311-316
struct knote {
Link Here
|
311 |
#define kn_fflags kn_kevent.fflags |
324 |
#define kn_fflags kn_kevent.fflags |
312 |
#define kn_data kn_kevent.data |
325 |
#define kn_data kn_kevent.data |
313 |
#define kn_fp kn_ptr.p_fp |
326 |
#define kn_fp kn_ptr.p_fp |
|
|
327 |
#define kn_pevents kn_kevent.pevents |
314 |
}; |
328 |
}; |
315 |
struct kevent_copyops { |
329 |
struct kevent_copyops { |
316 |
void *arg; |
330 |
void *arg; |