epolltable-internal.h revision 1.2.6.2 1 1.2.6.2 snj /* $NetBSD: epolltable-internal.h,v 1.2.6.2 2014/12/25 02:28:14 snj Exp $ */
2 1.2.6.2 snj
3 1.2.6.2 snj /*
4 1.2.6.2 snj * Copyright (c) 2000-2007 Niels Provos <provos (at) citi.umich.edu>
5 1.2.6.2 snj * Copyright (c) 2007-2012 Niels Provos and Nick Mathewson
6 1.2.6.2 snj *
7 1.2.6.2 snj * Redistribution and use in source and binary forms, with or without
8 1.2.6.2 snj * modification, are permitted provided that the following conditions
9 1.2.6.2 snj * are met:
10 1.2.6.2 snj * 1. Redistributions of source code must retain the above copyright
11 1.2.6.2 snj * notice, this list of conditions and the following disclaimer.
12 1.2.6.2 snj * 2. Redistributions in binary form must reproduce the above copyright
13 1.2.6.2 snj * notice, this list of conditions and the following disclaimer in the
14 1.2.6.2 snj * documentation and/or other materials provided with the distribution.
15 1.2.6.2 snj * 3. The name of the author may not be used to endorse or promote products
16 1.2.6.2 snj * derived from this software without specific prior written permission.
17 1.2.6.2 snj *
18 1.2.6.2 snj * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19 1.2.6.2 snj * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20 1.2.6.2 snj * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21 1.2.6.2 snj * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22 1.2.6.2 snj * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23 1.2.6.2 snj * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24 1.2.6.2 snj * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25 1.2.6.2 snj * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 1.2.6.2 snj * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 1.2.6.2 snj * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 1.2.6.2 snj */
29 1.2.6.2 snj #ifndef EPOLLTABLE_INTERNAL_H_INCLUDED_
30 1.2.6.2 snj #define EPOLLTABLE_INTERNAL_H_INCLUDED_
31 1.2.6.2 snj
32 1.2.6.2 snj /*
33 1.2.6.2 snj Here are the values we're masking off to decide what operations to do.
34 1.2.6.2 snj Note that since EV_READ|EV_WRITE.
35 1.2.6.2 snj
36 1.2.6.2 snj Note also that this table is a little sparse, since ADD+DEL is
37 1.2.6.2 snj nonsensical ("xxx" in the list below.)
38 1.2.6.2 snj
39 1.2.6.2 snj Note also also that we are shifting old_events by only 5 bits, since
40 1.2.6.2 snj EV_READ is 2 and EV_WRITE is 4.
41 1.2.6.2 snj
42 1.2.6.2 snj The table was auto-generated with a python script, according to this
43 1.2.6.2 snj pseudocode:[*0]
44 1.2.6.2 snj
45 1.2.6.2 snj If either the read or the write change is add+del:
46 1.2.6.2 snj This is impossible; Set op==-1, events=0.
47 1.2.6.2 snj Else, if either the read or the write change is add:
48 1.2.6.2 snj Set events to 0.
49 1.2.6.2 snj If the read change is add, or
50 1.2.6.2 snj (the read change is not del, and ev_read is in old_events):
51 1.2.6.2 snj Add EPOLLIN to events.
52 1.2.6.2 snj If the write change is add, or
53 1.2.6.2 snj (the write change is not del, and ev_write is in old_events):
54 1.2.6.2 snj Add EPOLLOUT to events.
55 1.2.6.2 snj
56 1.2.6.2 snj If old_events is set:
57 1.2.6.2 snj Set op to EPOLL_CTL_MOD [*1,*2]
58 1.2.6.2 snj Else:
59 1.2.6.2 snj Set op to EPOLL_CTL_ADD [*3]
60 1.2.6.2 snj
61 1.2.6.2 snj Else, if the read or the write change is del:
62 1.2.6.2 snj Set op to EPOLL_CTL_DEL.
63 1.2.6.2 snj If the read change is del:
64 1.2.6.2 snj If the write change is del:
65 1.2.6.2 snj Set events to EPOLLIN|EPOLLOUT
66 1.2.6.2 snj Else if ev_write is in old_events:
67 1.2.6.2 snj Set events to EPOLLOUT
68 1.2.6.2 snj Set op to EPOLL_CTL_MOD
69 1.2.6.2 snj Else
70 1.2.6.2 snj Set events to EPOLLIN
71 1.2.6.2 snj Else:
72 1.2.6.2 snj {The write change is del.}
73 1.2.6.2 snj If ev_read is in old_events:
74 1.2.6.2 snj Set events to EPOLLIN
75 1.2.6.2 snj Set op to EPOLL_CTL_MOD
76 1.2.6.2 snj Else:
77 1.2.6.2 snj Set the events to EPOLLOUT
78 1.2.6.2 snj
79 1.2.6.2 snj Else:
80 1.2.6.2 snj There is no read or write change; set op to 0 and events to 0.
81 1.2.6.2 snj
82 1.2.6.2 snj The logic is a little tricky, since we had no events set on the fd before,
83 1.2.6.2 snj we need to set op="ADD" and set events=the events we want to add. If we
84 1.2.6.2 snj had any events set on the fd before, and we want any events to remain on
85 1.2.6.2 snj the fd, we need to say op="MOD" and set events=the events we want to
86 1.2.6.2 snj remain. But if we want to delete the last event, we say op="DEL" and
87 1.2.6.2 snj set events=(any non-null pointer).
88 1.2.6.2 snj
89 1.2.6.2 snj [*0] Actually, the Python script has gotten a bit more complicated, to
90 1.2.6.2 snj support EPOLLRDHUP.
91 1.2.6.2 snj
92 1.2.6.2 snj [*1] This MOD is only a guess. MOD might fail with ENOENT if the file was
93 1.2.6.2 snj closed and a new file was opened with the same fd. If so, we'll retry
94 1.2.6.2 snj with ADD.
95 1.2.6.2 snj
96 1.2.6.2 snj [*2] We can't replace this with a no-op even if old_events is the same as
97 1.2.6.2 snj the new events: if the file was closed and reopened, we need to retry
98 1.2.6.2 snj with an ADD. (We do a MOD in this case since "no change" is more
99 1.2.6.2 snj common than "close and reopen", so we'll usually wind up doing 1
100 1.2.6.2 snj syscalls instead of 2.)
101 1.2.6.2 snj
102 1.2.6.2 snj [*3] This ADD is only a guess. There is a fun Linux kernel issue where if
103 1.2.6.2 snj you have two fds for the same file (via dup) and you ADD one to an
104 1.2.6.2 snj epfd, then close it, then re-create it with the same fd (via dup2 or an
105 1.2.6.2 snj unlucky dup), then try to ADD it again, you'll get an EEXIST, since the
106 1.2.6.2 snj struct epitem is not actually removed from the struct eventpoll until
107 1.2.6.2 snj the file itself is closed.
108 1.2.6.2 snj
109 1.2.6.2 snj EV_CHANGE_ADD==1
110 1.2.6.2 snj EV_CHANGE_DEL==2
111 1.2.6.2 snj EV_READ ==2
112 1.2.6.2 snj EV_WRITE ==4
113 1.2.6.2 snj EV_CLOSED ==0x80
114 1.2.6.2 snj
115 1.2.6.2 snj Bit 0: close change is add
116 1.2.6.2 snj Bit 1: close change is del
117 1.2.6.2 snj Bit 2: read change is add
118 1.2.6.2 snj Bit 3: read change is del
119 1.2.6.2 snj Bit 4: write change is add
120 1.2.6.2 snj Bit 5: write change is del
121 1.2.6.2 snj Bit 6: old events had EV_READ
122 1.2.6.2 snj Bit 7: old events had EV_WRITE
123 1.2.6.2 snj Bit 8: old events had EV_CLOSED
124 1.2.6.2 snj */
125 1.2.6.2 snj
126 1.2.6.2 snj #define EPOLL_OP_TABLE_INDEX(c) \
127 1.2.6.2 snj ( (((c)->close_change&(EV_CHANGE_ADD|EV_CHANGE_DEL))) | \
128 1.2.6.2 snj (((c)->read_change&(EV_CHANGE_ADD|EV_CHANGE_DEL)) << 2) | \
129 1.2.6.2 snj (((c)->write_change&(EV_CHANGE_ADD|EV_CHANGE_DEL)) << 4) | \
130 1.2.6.2 snj (((c)->old_events&(EV_READ|EV_WRITE)) << 5) | \
131 1.2.6.2 snj (((c)->old_events&(EV_CLOSED)) << 1) \
132 1.2.6.2 snj )
133 1.2.6.2 snj
134 1.2.6.2 snj #if EV_READ != 2 || EV_WRITE != 4 || EV_CLOSED != 0x80 || EV_CHANGE_ADD != 1 || EV_CHANGE_DEL != 2
135 1.2.6.2 snj #error "Libevent's internals changed! Regenerate the op_table in epolltable-internal.h"
136 1.2.6.2 snj #endif
137 1.2.6.2 snj
138 1.2.6.2 snj static const struct operation {
139 1.2.6.2 snj int events;
140 1.2.6.2 snj int op;
141 1.2.6.2 snj } epoll_op_table[] = {
142 1.2.6.2 snj /* old= 0, write: 0, read: 0, close: 0 */
143 1.2.6.2 snj { 0, 0 },
144 1.2.6.2 snj /* old= 0, write: 0, read: 0, close:add */
145 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_ADD },
146 1.2.6.2 snj /* old= 0, write: 0, read: 0, close:del */
147 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_DEL },
148 1.2.6.2 snj /* old= 0, write: 0, read: 0, close:xxx */
149 1.2.6.2 snj { 0, 255 },
150 1.2.6.2 snj /* old= 0, write: 0, read:add, close: 0 */
151 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_ADD },
152 1.2.6.2 snj /* old= 0, write: 0, read:add, close:add */
153 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_ADD },
154 1.2.6.2 snj /* old= 0, write: 0, read:add, close:del */
155 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_ADD },
156 1.2.6.2 snj /* old= 0, write: 0, read:add, close:xxx */
157 1.2.6.2 snj { 0, 255 },
158 1.2.6.2 snj /* old= 0, write: 0, read:del, close: 0 */
159 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_DEL },
160 1.2.6.2 snj /* old= 0, write: 0, read:del, close:add */
161 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_ADD },
162 1.2.6.2 snj /* old= 0, write: 0, read:del, close:del */
163 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
164 1.2.6.2 snj /* old= 0, write: 0, read:del, close:xxx */
165 1.2.6.2 snj { 0, 255 },
166 1.2.6.2 snj /* old= 0, write: 0, read:xxx, close: 0 */
167 1.2.6.2 snj { 0, 255 },
168 1.2.6.2 snj /* old= 0, write: 0, read:xxx, close:add */
169 1.2.6.2 snj { 0, 255 },
170 1.2.6.2 snj /* old= 0, write: 0, read:xxx, close:del */
171 1.2.6.2 snj { 0, 255 },
172 1.2.6.2 snj /* old= 0, write: 0, read:xxx, close:xxx */
173 1.2.6.2 snj { 0, 255 },
174 1.2.6.2 snj /* old= 0, write:add, read: 0, close: 0 */
175 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_ADD },
176 1.2.6.2 snj /* old= 0, write:add, read: 0, close:add */
177 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
178 1.2.6.2 snj /* old= 0, write:add, read: 0, close:del */
179 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_ADD },
180 1.2.6.2 snj /* old= 0, write:add, read: 0, close:xxx */
181 1.2.6.2 snj { 0, 255 },
182 1.2.6.2 snj /* old= 0, write:add, read:add, close: 0 */
183 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_ADD },
184 1.2.6.2 snj /* old= 0, write:add, read:add, close:add */
185 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
186 1.2.6.2 snj /* old= 0, write:add, read:add, close:del */
187 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_ADD },
188 1.2.6.2 snj /* old= 0, write:add, read:add, close:xxx */
189 1.2.6.2 snj { 0, 255 },
190 1.2.6.2 snj /* old= 0, write:add, read:del, close: 0 */
191 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_ADD },
192 1.2.6.2 snj /* old= 0, write:add, read:del, close:add */
193 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
194 1.2.6.2 snj /* old= 0, write:add, read:del, close:del */
195 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_ADD },
196 1.2.6.2 snj /* old= 0, write:add, read:del, close:xxx */
197 1.2.6.2 snj { 0, 255 },
198 1.2.6.2 snj /* old= 0, write:add, read:xxx, close: 0 */
199 1.2.6.2 snj { 0, 255 },
200 1.2.6.2 snj /* old= 0, write:add, read:xxx, close:add */
201 1.2.6.2 snj { 0, 255 },
202 1.2.6.2 snj /* old= 0, write:add, read:xxx, close:del */
203 1.2.6.2 snj { 0, 255 },
204 1.2.6.2 snj /* old= 0, write:add, read:xxx, close:xxx */
205 1.2.6.2 snj { 0, 255 },
206 1.2.6.2 snj /* old= 0, write:del, read: 0, close: 0 */
207 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_DEL },
208 1.2.6.2 snj /* old= 0, write:del, read: 0, close:add */
209 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_ADD },
210 1.2.6.2 snj /* old= 0, write:del, read: 0, close:del */
211 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
212 1.2.6.2 snj /* old= 0, write:del, read: 0, close:xxx */
213 1.2.6.2 snj { 0, 255 },
214 1.2.6.2 snj /* old= 0, write:del, read:add, close: 0 */
215 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_ADD },
216 1.2.6.2 snj /* old= 0, write:del, read:add, close:add */
217 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_ADD },
218 1.2.6.2 snj /* old= 0, write:del, read:add, close:del */
219 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_ADD },
220 1.2.6.2 snj /* old= 0, write:del, read:add, close:xxx */
221 1.2.6.2 snj { 0, 255 },
222 1.2.6.2 snj /* old= 0, write:del, read:del, close: 0 */
223 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
224 1.2.6.2 snj /* old= 0, write:del, read:del, close:add */
225 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_ADD },
226 1.2.6.2 snj /* old= 0, write:del, read:del, close:del */
227 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
228 1.2.6.2 snj /* old= 0, write:del, read:del, close:xxx */
229 1.2.6.2 snj { 0, 255 },
230 1.2.6.2 snj /* old= 0, write:del, read:xxx, close: 0 */
231 1.2.6.2 snj { 0, 255 },
232 1.2.6.2 snj /* old= 0, write:del, read:xxx, close:add */
233 1.2.6.2 snj { 0, 255 },
234 1.2.6.2 snj /* old= 0, write:del, read:xxx, close:del */
235 1.2.6.2 snj { 0, 255 },
236 1.2.6.2 snj /* old= 0, write:del, read:xxx, close:xxx */
237 1.2.6.2 snj { 0, 255 },
238 1.2.6.2 snj /* old= 0, write:xxx, read: 0, close: 0 */
239 1.2.6.2 snj { 0, 255 },
240 1.2.6.2 snj /* old= 0, write:xxx, read: 0, close:add */
241 1.2.6.2 snj { 0, 255 },
242 1.2.6.2 snj /* old= 0, write:xxx, read: 0, close:del */
243 1.2.6.2 snj { 0, 255 },
244 1.2.6.2 snj /* old= 0, write:xxx, read: 0, close:xxx */
245 1.2.6.2 snj { 0, 255 },
246 1.2.6.2 snj /* old= 0, write:xxx, read:add, close: 0 */
247 1.2.6.2 snj { 0, 255 },
248 1.2.6.2 snj /* old= 0, write:xxx, read:add, close:add */
249 1.2.6.2 snj { 0, 255 },
250 1.2.6.2 snj /* old= 0, write:xxx, read:add, close:del */
251 1.2.6.2 snj { 0, 255 },
252 1.2.6.2 snj /* old= 0, write:xxx, read:add, close:xxx */
253 1.2.6.2 snj { 0, 255 },
254 1.2.6.2 snj /* old= 0, write:xxx, read:del, close: 0 */
255 1.2.6.2 snj { 0, 255 },
256 1.2.6.2 snj /* old= 0, write:xxx, read:del, close:add */
257 1.2.6.2 snj { 0, 255 },
258 1.2.6.2 snj /* old= 0, write:xxx, read:del, close:del */
259 1.2.6.2 snj { 0, 255 },
260 1.2.6.2 snj /* old= 0, write:xxx, read:del, close:xxx */
261 1.2.6.2 snj { 0, 255 },
262 1.2.6.2 snj /* old= 0, write:xxx, read:xxx, close: 0 */
263 1.2.6.2 snj { 0, 255 },
264 1.2.6.2 snj /* old= 0, write:xxx, read:xxx, close:add */
265 1.2.6.2 snj { 0, 255 },
266 1.2.6.2 snj /* old= 0, write:xxx, read:xxx, close:del */
267 1.2.6.2 snj { 0, 255 },
268 1.2.6.2 snj /* old= 0, write:xxx, read:xxx, close:xxx */
269 1.2.6.2 snj { 0, 255 },
270 1.2.6.2 snj /* old= r, write: 0, read: 0, close: 0 */
271 1.2.6.2 snj { 0, 0 },
272 1.2.6.2 snj /* old= r, write: 0, read: 0, close:add */
273 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
274 1.2.6.2 snj /* old= r, write: 0, read: 0, close:del */
275 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
276 1.2.6.2 snj /* old= r, write: 0, read: 0, close:xxx */
277 1.2.6.2 snj { 0, 255 },
278 1.2.6.2 snj /* old= r, write: 0, read:add, close: 0 */
279 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
280 1.2.6.2 snj /* old= r, write: 0, read:add, close:add */
281 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
282 1.2.6.2 snj /* old= r, write: 0, read:add, close:del */
283 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
284 1.2.6.2 snj /* old= r, write: 0, read:add, close:xxx */
285 1.2.6.2 snj { 0, 255 },
286 1.2.6.2 snj /* old= r, write: 0, read:del, close: 0 */
287 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_DEL },
288 1.2.6.2 snj /* old= r, write: 0, read:del, close:add */
289 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
290 1.2.6.2 snj /* old= r, write: 0, read:del, close:del */
291 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
292 1.2.6.2 snj /* old= r, write: 0, read:del, close:xxx */
293 1.2.6.2 snj { 0, 255 },
294 1.2.6.2 snj /* old= r, write: 0, read:xxx, close: 0 */
295 1.2.6.2 snj { 0, 255 },
296 1.2.6.2 snj /* old= r, write: 0, read:xxx, close:add */
297 1.2.6.2 snj { 0, 255 },
298 1.2.6.2 snj /* old= r, write: 0, read:xxx, close:del */
299 1.2.6.2 snj { 0, 255 },
300 1.2.6.2 snj /* old= r, write: 0, read:xxx, close:xxx */
301 1.2.6.2 snj { 0, 255 },
302 1.2.6.2 snj /* old= r, write:add, read: 0, close: 0 */
303 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
304 1.2.6.2 snj /* old= r, write:add, read: 0, close:add */
305 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
306 1.2.6.2 snj /* old= r, write:add, read: 0, close:del */
307 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
308 1.2.6.2 snj /* old= r, write:add, read: 0, close:xxx */
309 1.2.6.2 snj { 0, 255 },
310 1.2.6.2 snj /* old= r, write:add, read:add, close: 0 */
311 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
312 1.2.6.2 snj /* old= r, write:add, read:add, close:add */
313 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
314 1.2.6.2 snj /* old= r, write:add, read:add, close:del */
315 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
316 1.2.6.2 snj /* old= r, write:add, read:add, close:xxx */
317 1.2.6.2 snj { 0, 255 },
318 1.2.6.2 snj /* old= r, write:add, read:del, close: 0 */
319 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
320 1.2.6.2 snj /* old= r, write:add, read:del, close:add */
321 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
322 1.2.6.2 snj /* old= r, write:add, read:del, close:del */
323 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
324 1.2.6.2 snj /* old= r, write:add, read:del, close:xxx */
325 1.2.6.2 snj { 0, 255 },
326 1.2.6.2 snj /* old= r, write:add, read:xxx, close: 0 */
327 1.2.6.2 snj { 0, 255 },
328 1.2.6.2 snj /* old= r, write:add, read:xxx, close:add */
329 1.2.6.2 snj { 0, 255 },
330 1.2.6.2 snj /* old= r, write:add, read:xxx, close:del */
331 1.2.6.2 snj { 0, 255 },
332 1.2.6.2 snj /* old= r, write:add, read:xxx, close:xxx */
333 1.2.6.2 snj { 0, 255 },
334 1.2.6.2 snj /* old= r, write:del, read: 0, close: 0 */
335 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
336 1.2.6.2 snj /* old= r, write:del, read: 0, close:add */
337 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
338 1.2.6.2 snj /* old= r, write:del, read: 0, close:del */
339 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
340 1.2.6.2 snj /* old= r, write:del, read: 0, close:xxx */
341 1.2.6.2 snj { 0, 255 },
342 1.2.6.2 snj /* old= r, write:del, read:add, close: 0 */
343 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
344 1.2.6.2 snj /* old= r, write:del, read:add, close:add */
345 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
346 1.2.6.2 snj /* old= r, write:del, read:add, close:del */
347 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
348 1.2.6.2 snj /* old= r, write:del, read:add, close:xxx */
349 1.2.6.2 snj { 0, 255 },
350 1.2.6.2 snj /* old= r, write:del, read:del, close: 0 */
351 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
352 1.2.6.2 snj /* old= r, write:del, read:del, close:add */
353 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
354 1.2.6.2 snj /* old= r, write:del, read:del, close:del */
355 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
356 1.2.6.2 snj /* old= r, write:del, read:del, close:xxx */
357 1.2.6.2 snj { 0, 255 },
358 1.2.6.2 snj /* old= r, write:del, read:xxx, close: 0 */
359 1.2.6.2 snj { 0, 255 },
360 1.2.6.2 snj /* old= r, write:del, read:xxx, close:add */
361 1.2.6.2 snj { 0, 255 },
362 1.2.6.2 snj /* old= r, write:del, read:xxx, close:del */
363 1.2.6.2 snj { 0, 255 },
364 1.2.6.2 snj /* old= r, write:del, read:xxx, close:xxx */
365 1.2.6.2 snj { 0, 255 },
366 1.2.6.2 snj /* old= r, write:xxx, read: 0, close: 0 */
367 1.2.6.2 snj { 0, 255 },
368 1.2.6.2 snj /* old= r, write:xxx, read: 0, close:add */
369 1.2.6.2 snj { 0, 255 },
370 1.2.6.2 snj /* old= r, write:xxx, read: 0, close:del */
371 1.2.6.2 snj { 0, 255 },
372 1.2.6.2 snj /* old= r, write:xxx, read: 0, close:xxx */
373 1.2.6.2 snj { 0, 255 },
374 1.2.6.2 snj /* old= r, write:xxx, read:add, close: 0 */
375 1.2.6.2 snj { 0, 255 },
376 1.2.6.2 snj /* old= r, write:xxx, read:add, close:add */
377 1.2.6.2 snj { 0, 255 },
378 1.2.6.2 snj /* old= r, write:xxx, read:add, close:del */
379 1.2.6.2 snj { 0, 255 },
380 1.2.6.2 snj /* old= r, write:xxx, read:add, close:xxx */
381 1.2.6.2 snj { 0, 255 },
382 1.2.6.2 snj /* old= r, write:xxx, read:del, close: 0 */
383 1.2.6.2 snj { 0, 255 },
384 1.2.6.2 snj /* old= r, write:xxx, read:del, close:add */
385 1.2.6.2 snj { 0, 255 },
386 1.2.6.2 snj /* old= r, write:xxx, read:del, close:del */
387 1.2.6.2 snj { 0, 255 },
388 1.2.6.2 snj /* old= r, write:xxx, read:del, close:xxx */
389 1.2.6.2 snj { 0, 255 },
390 1.2.6.2 snj /* old= r, write:xxx, read:xxx, close: 0 */
391 1.2.6.2 snj { 0, 255 },
392 1.2.6.2 snj /* old= r, write:xxx, read:xxx, close:add */
393 1.2.6.2 snj { 0, 255 },
394 1.2.6.2 snj /* old= r, write:xxx, read:xxx, close:del */
395 1.2.6.2 snj { 0, 255 },
396 1.2.6.2 snj /* old= r, write:xxx, read:xxx, close:xxx */
397 1.2.6.2 snj { 0, 255 },
398 1.2.6.2 snj /* old= w, write: 0, read: 0, close: 0 */
399 1.2.6.2 snj { 0, 0 },
400 1.2.6.2 snj /* old= w, write: 0, read: 0, close:add */
401 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
402 1.2.6.2 snj /* old= w, write: 0, read: 0, close:del */
403 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
404 1.2.6.2 snj /* old= w, write: 0, read: 0, close:xxx */
405 1.2.6.2 snj { 0, 255 },
406 1.2.6.2 snj /* old= w, write: 0, read:add, close: 0 */
407 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
408 1.2.6.2 snj /* old= w, write: 0, read:add, close:add */
409 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
410 1.2.6.2 snj /* old= w, write: 0, read:add, close:del */
411 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
412 1.2.6.2 snj /* old= w, write: 0, read:add, close:xxx */
413 1.2.6.2 snj { 0, 255 },
414 1.2.6.2 snj /* old= w, write: 0, read:del, close: 0 */
415 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
416 1.2.6.2 snj /* old= w, write: 0, read:del, close:add */
417 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
418 1.2.6.2 snj /* old= w, write: 0, read:del, close:del */
419 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
420 1.2.6.2 snj /* old= w, write: 0, read:del, close:xxx */
421 1.2.6.2 snj { 0, 255 },
422 1.2.6.2 snj /* old= w, write: 0, read:xxx, close: 0 */
423 1.2.6.2 snj { 0, 255 },
424 1.2.6.2 snj /* old= w, write: 0, read:xxx, close:add */
425 1.2.6.2 snj { 0, 255 },
426 1.2.6.2 snj /* old= w, write: 0, read:xxx, close:del */
427 1.2.6.2 snj { 0, 255 },
428 1.2.6.2 snj /* old= w, write: 0, read:xxx, close:xxx */
429 1.2.6.2 snj { 0, 255 },
430 1.2.6.2 snj /* old= w, write:add, read: 0, close: 0 */
431 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
432 1.2.6.2 snj /* old= w, write:add, read: 0, close:add */
433 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
434 1.2.6.2 snj /* old= w, write:add, read: 0, close:del */
435 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
436 1.2.6.2 snj /* old= w, write:add, read: 0, close:xxx */
437 1.2.6.2 snj { 0, 255 },
438 1.2.6.2 snj /* old= w, write:add, read:add, close: 0 */
439 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
440 1.2.6.2 snj /* old= w, write:add, read:add, close:add */
441 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
442 1.2.6.2 snj /* old= w, write:add, read:add, close:del */
443 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
444 1.2.6.2 snj /* old= w, write:add, read:add, close:xxx */
445 1.2.6.2 snj { 0, 255 },
446 1.2.6.2 snj /* old= w, write:add, read:del, close: 0 */
447 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
448 1.2.6.2 snj /* old= w, write:add, read:del, close:add */
449 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
450 1.2.6.2 snj /* old= w, write:add, read:del, close:del */
451 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
452 1.2.6.2 snj /* old= w, write:add, read:del, close:xxx */
453 1.2.6.2 snj { 0, 255 },
454 1.2.6.2 snj /* old= w, write:add, read:xxx, close: 0 */
455 1.2.6.2 snj { 0, 255 },
456 1.2.6.2 snj /* old= w, write:add, read:xxx, close:add */
457 1.2.6.2 snj { 0, 255 },
458 1.2.6.2 snj /* old= w, write:add, read:xxx, close:del */
459 1.2.6.2 snj { 0, 255 },
460 1.2.6.2 snj /* old= w, write:add, read:xxx, close:xxx */
461 1.2.6.2 snj { 0, 255 },
462 1.2.6.2 snj /* old= w, write:del, read: 0, close: 0 */
463 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_DEL },
464 1.2.6.2 snj /* old= w, write:del, read: 0, close:add */
465 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
466 1.2.6.2 snj /* old= w, write:del, read: 0, close:del */
467 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
468 1.2.6.2 snj /* old= w, write:del, read: 0, close:xxx */
469 1.2.6.2 snj { 0, 255 },
470 1.2.6.2 snj /* old= w, write:del, read:add, close: 0 */
471 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
472 1.2.6.2 snj /* old= w, write:del, read:add, close:add */
473 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
474 1.2.6.2 snj /* old= w, write:del, read:add, close:del */
475 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
476 1.2.6.2 snj /* old= w, write:del, read:add, close:xxx */
477 1.2.6.2 snj { 0, 255 },
478 1.2.6.2 snj /* old= w, write:del, read:del, close: 0 */
479 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
480 1.2.6.2 snj /* old= w, write:del, read:del, close:add */
481 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
482 1.2.6.2 snj /* old= w, write:del, read:del, close:del */
483 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
484 1.2.6.2 snj /* old= w, write:del, read:del, close:xxx */
485 1.2.6.2 snj { 0, 255 },
486 1.2.6.2 snj /* old= w, write:del, read:xxx, close: 0 */
487 1.2.6.2 snj { 0, 255 },
488 1.2.6.2 snj /* old= w, write:del, read:xxx, close:add */
489 1.2.6.2 snj { 0, 255 },
490 1.2.6.2 snj /* old= w, write:del, read:xxx, close:del */
491 1.2.6.2 snj { 0, 255 },
492 1.2.6.2 snj /* old= w, write:del, read:xxx, close:xxx */
493 1.2.6.2 snj { 0, 255 },
494 1.2.6.2 snj /* old= w, write:xxx, read: 0, close: 0 */
495 1.2.6.2 snj { 0, 255 },
496 1.2.6.2 snj /* old= w, write:xxx, read: 0, close:add */
497 1.2.6.2 snj { 0, 255 },
498 1.2.6.2 snj /* old= w, write:xxx, read: 0, close:del */
499 1.2.6.2 snj { 0, 255 },
500 1.2.6.2 snj /* old= w, write:xxx, read: 0, close:xxx */
501 1.2.6.2 snj { 0, 255 },
502 1.2.6.2 snj /* old= w, write:xxx, read:add, close: 0 */
503 1.2.6.2 snj { 0, 255 },
504 1.2.6.2 snj /* old= w, write:xxx, read:add, close:add */
505 1.2.6.2 snj { 0, 255 },
506 1.2.6.2 snj /* old= w, write:xxx, read:add, close:del */
507 1.2.6.2 snj { 0, 255 },
508 1.2.6.2 snj /* old= w, write:xxx, read:add, close:xxx */
509 1.2.6.2 snj { 0, 255 },
510 1.2.6.2 snj /* old= w, write:xxx, read:del, close: 0 */
511 1.2.6.2 snj { 0, 255 },
512 1.2.6.2 snj /* old= w, write:xxx, read:del, close:add */
513 1.2.6.2 snj { 0, 255 },
514 1.2.6.2 snj /* old= w, write:xxx, read:del, close:del */
515 1.2.6.2 snj { 0, 255 },
516 1.2.6.2 snj /* old= w, write:xxx, read:del, close:xxx */
517 1.2.6.2 snj { 0, 255 },
518 1.2.6.2 snj /* old= w, write:xxx, read:xxx, close: 0 */
519 1.2.6.2 snj { 0, 255 },
520 1.2.6.2 snj /* old= w, write:xxx, read:xxx, close:add */
521 1.2.6.2 snj { 0, 255 },
522 1.2.6.2 snj /* old= w, write:xxx, read:xxx, close:del */
523 1.2.6.2 snj { 0, 255 },
524 1.2.6.2 snj /* old= w, write:xxx, read:xxx, close:xxx */
525 1.2.6.2 snj { 0, 255 },
526 1.2.6.2 snj /* old= rw, write: 0, read: 0, close: 0 */
527 1.2.6.2 snj { 0, 0 },
528 1.2.6.2 snj /* old= rw, write: 0, read: 0, close:add */
529 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
530 1.2.6.2 snj /* old= rw, write: 0, read: 0, close:del */
531 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
532 1.2.6.2 snj /* old= rw, write: 0, read: 0, close:xxx */
533 1.2.6.2 snj { 0, 255 },
534 1.2.6.2 snj /* old= rw, write: 0, read:add, close: 0 */
535 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
536 1.2.6.2 snj /* old= rw, write: 0, read:add, close:add */
537 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
538 1.2.6.2 snj /* old= rw, write: 0, read:add, close:del */
539 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
540 1.2.6.2 snj /* old= rw, write: 0, read:add, close:xxx */
541 1.2.6.2 snj { 0, 255 },
542 1.2.6.2 snj /* old= rw, write: 0, read:del, close: 0 */
543 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
544 1.2.6.2 snj /* old= rw, write: 0, read:del, close:add */
545 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
546 1.2.6.2 snj /* old= rw, write: 0, read:del, close:del */
547 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
548 1.2.6.2 snj /* old= rw, write: 0, read:del, close:xxx */
549 1.2.6.2 snj { 0, 255 },
550 1.2.6.2 snj /* old= rw, write: 0, read:xxx, close: 0 */
551 1.2.6.2 snj { 0, 255 },
552 1.2.6.2 snj /* old= rw, write: 0, read:xxx, close:add */
553 1.2.6.2 snj { 0, 255 },
554 1.2.6.2 snj /* old= rw, write: 0, read:xxx, close:del */
555 1.2.6.2 snj { 0, 255 },
556 1.2.6.2 snj /* old= rw, write: 0, read:xxx, close:xxx */
557 1.2.6.2 snj { 0, 255 },
558 1.2.6.2 snj /* old= rw, write:add, read: 0, close: 0 */
559 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
560 1.2.6.2 snj /* old= rw, write:add, read: 0, close:add */
561 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
562 1.2.6.2 snj /* old= rw, write:add, read: 0, close:del */
563 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
564 1.2.6.2 snj /* old= rw, write:add, read: 0, close:xxx */
565 1.2.6.2 snj { 0, 255 },
566 1.2.6.2 snj /* old= rw, write:add, read:add, close: 0 */
567 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
568 1.2.6.2 snj /* old= rw, write:add, read:add, close:add */
569 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
570 1.2.6.2 snj /* old= rw, write:add, read:add, close:del */
571 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
572 1.2.6.2 snj /* old= rw, write:add, read:add, close:xxx */
573 1.2.6.2 snj { 0, 255 },
574 1.2.6.2 snj /* old= rw, write:add, read:del, close: 0 */
575 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
576 1.2.6.2 snj /* old= rw, write:add, read:del, close:add */
577 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
578 1.2.6.2 snj /* old= rw, write:add, read:del, close:del */
579 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
580 1.2.6.2 snj /* old= rw, write:add, read:del, close:xxx */
581 1.2.6.2 snj { 0, 255 },
582 1.2.6.2 snj /* old= rw, write:add, read:xxx, close: 0 */
583 1.2.6.2 snj { 0, 255 },
584 1.2.6.2 snj /* old= rw, write:add, read:xxx, close:add */
585 1.2.6.2 snj { 0, 255 },
586 1.2.6.2 snj /* old= rw, write:add, read:xxx, close:del */
587 1.2.6.2 snj { 0, 255 },
588 1.2.6.2 snj /* old= rw, write:add, read:xxx, close:xxx */
589 1.2.6.2 snj { 0, 255 },
590 1.2.6.2 snj /* old= rw, write:del, read: 0, close: 0 */
591 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
592 1.2.6.2 snj /* old= rw, write:del, read: 0, close:add */
593 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
594 1.2.6.2 snj /* old= rw, write:del, read: 0, close:del */
595 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
596 1.2.6.2 snj /* old= rw, write:del, read: 0, close:xxx */
597 1.2.6.2 snj { 0, 255 },
598 1.2.6.2 snj /* old= rw, write:del, read:add, close: 0 */
599 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
600 1.2.6.2 snj /* old= rw, write:del, read:add, close:add */
601 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
602 1.2.6.2 snj /* old= rw, write:del, read:add, close:del */
603 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
604 1.2.6.2 snj /* old= rw, write:del, read:add, close:xxx */
605 1.2.6.2 snj { 0, 255 },
606 1.2.6.2 snj /* old= rw, write:del, read:del, close: 0 */
607 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
608 1.2.6.2 snj /* old= rw, write:del, read:del, close:add */
609 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
610 1.2.6.2 snj /* old= rw, write:del, read:del, close:del */
611 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
612 1.2.6.2 snj /* old= rw, write:del, read:del, close:xxx */
613 1.2.6.2 snj { 0, 255 },
614 1.2.6.2 snj /* old= rw, write:del, read:xxx, close: 0 */
615 1.2.6.2 snj { 0, 255 },
616 1.2.6.2 snj /* old= rw, write:del, read:xxx, close:add */
617 1.2.6.2 snj { 0, 255 },
618 1.2.6.2 snj /* old= rw, write:del, read:xxx, close:del */
619 1.2.6.2 snj { 0, 255 },
620 1.2.6.2 snj /* old= rw, write:del, read:xxx, close:xxx */
621 1.2.6.2 snj { 0, 255 },
622 1.2.6.2 snj /* old= rw, write:xxx, read: 0, close: 0 */
623 1.2.6.2 snj { 0, 255 },
624 1.2.6.2 snj /* old= rw, write:xxx, read: 0, close:add */
625 1.2.6.2 snj { 0, 255 },
626 1.2.6.2 snj /* old= rw, write:xxx, read: 0, close:del */
627 1.2.6.2 snj { 0, 255 },
628 1.2.6.2 snj /* old= rw, write:xxx, read: 0, close:xxx */
629 1.2.6.2 snj { 0, 255 },
630 1.2.6.2 snj /* old= rw, write:xxx, read:add, close: 0 */
631 1.2.6.2 snj { 0, 255 },
632 1.2.6.2 snj /* old= rw, write:xxx, read:add, close:add */
633 1.2.6.2 snj { 0, 255 },
634 1.2.6.2 snj /* old= rw, write:xxx, read:add, close:del */
635 1.2.6.2 snj { 0, 255 },
636 1.2.6.2 snj /* old= rw, write:xxx, read:add, close:xxx */
637 1.2.6.2 snj { 0, 255 },
638 1.2.6.2 snj /* old= rw, write:xxx, read:del, close: 0 */
639 1.2.6.2 snj { 0, 255 },
640 1.2.6.2 snj /* old= rw, write:xxx, read:del, close:add */
641 1.2.6.2 snj { 0, 255 },
642 1.2.6.2 snj /* old= rw, write:xxx, read:del, close:del */
643 1.2.6.2 snj { 0, 255 },
644 1.2.6.2 snj /* old= rw, write:xxx, read:del, close:xxx */
645 1.2.6.2 snj { 0, 255 },
646 1.2.6.2 snj /* old= rw, write:xxx, read:xxx, close: 0 */
647 1.2.6.2 snj { 0, 255 },
648 1.2.6.2 snj /* old= rw, write:xxx, read:xxx, close:add */
649 1.2.6.2 snj { 0, 255 },
650 1.2.6.2 snj /* old= rw, write:xxx, read:xxx, close:del */
651 1.2.6.2 snj { 0, 255 },
652 1.2.6.2 snj /* old= rw, write:xxx, read:xxx, close:xxx */
653 1.2.6.2 snj { 0, 255 },
654 1.2.6.2 snj /* old= c, write: 0, read: 0, close: 0 */
655 1.2.6.2 snj { 0, 0 },
656 1.2.6.2 snj /* old= c, write: 0, read: 0, close:add */
657 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
658 1.2.6.2 snj /* old= c, write: 0, read: 0, close:del */
659 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_DEL },
660 1.2.6.2 snj /* old= c, write: 0, read: 0, close:xxx */
661 1.2.6.2 snj { 0, 255 },
662 1.2.6.2 snj /* old= c, write: 0, read:add, close: 0 */
663 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
664 1.2.6.2 snj /* old= c, write: 0, read:add, close:add */
665 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
666 1.2.6.2 snj /* old= c, write: 0, read:add, close:del */
667 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
668 1.2.6.2 snj /* old= c, write: 0, read:add, close:xxx */
669 1.2.6.2 snj { 0, 255 },
670 1.2.6.2 snj /* old= c, write: 0, read:del, close: 0 */
671 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
672 1.2.6.2 snj /* old= c, write: 0, read:del, close:add */
673 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
674 1.2.6.2 snj /* old= c, write: 0, read:del, close:del */
675 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
676 1.2.6.2 snj /* old= c, write: 0, read:del, close:xxx */
677 1.2.6.2 snj { 0, 255 },
678 1.2.6.2 snj /* old= c, write: 0, read:xxx, close: 0 */
679 1.2.6.2 snj { 0, 255 },
680 1.2.6.2 snj /* old= c, write: 0, read:xxx, close:add */
681 1.2.6.2 snj { 0, 255 },
682 1.2.6.2 snj /* old= c, write: 0, read:xxx, close:del */
683 1.2.6.2 snj { 0, 255 },
684 1.2.6.2 snj /* old= c, write: 0, read:xxx, close:xxx */
685 1.2.6.2 snj { 0, 255 },
686 1.2.6.2 snj /* old= c, write:add, read: 0, close: 0 */
687 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
688 1.2.6.2 snj /* old= c, write:add, read: 0, close:add */
689 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
690 1.2.6.2 snj /* old= c, write:add, read: 0, close:del */
691 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
692 1.2.6.2 snj /* old= c, write:add, read: 0, close:xxx */
693 1.2.6.2 snj { 0, 255 },
694 1.2.6.2 snj /* old= c, write:add, read:add, close: 0 */
695 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
696 1.2.6.2 snj /* old= c, write:add, read:add, close:add */
697 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
698 1.2.6.2 snj /* old= c, write:add, read:add, close:del */
699 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
700 1.2.6.2 snj /* old= c, write:add, read:add, close:xxx */
701 1.2.6.2 snj { 0, 255 },
702 1.2.6.2 snj /* old= c, write:add, read:del, close: 0 */
703 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
704 1.2.6.2 snj /* old= c, write:add, read:del, close:add */
705 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
706 1.2.6.2 snj /* old= c, write:add, read:del, close:del */
707 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
708 1.2.6.2 snj /* old= c, write:add, read:del, close:xxx */
709 1.2.6.2 snj { 0, 255 },
710 1.2.6.2 snj /* old= c, write:add, read:xxx, close: 0 */
711 1.2.6.2 snj { 0, 255 },
712 1.2.6.2 snj /* old= c, write:add, read:xxx, close:add */
713 1.2.6.2 snj { 0, 255 },
714 1.2.6.2 snj /* old= c, write:add, read:xxx, close:del */
715 1.2.6.2 snj { 0, 255 },
716 1.2.6.2 snj /* old= c, write:add, read:xxx, close:xxx */
717 1.2.6.2 snj { 0, 255 },
718 1.2.6.2 snj /* old= c, write:del, read: 0, close: 0 */
719 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
720 1.2.6.2 snj /* old= c, write:del, read: 0, close:add */
721 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
722 1.2.6.2 snj /* old= c, write:del, read: 0, close:del */
723 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
724 1.2.6.2 snj /* old= c, write:del, read: 0, close:xxx */
725 1.2.6.2 snj { 0, 255 },
726 1.2.6.2 snj /* old= c, write:del, read:add, close: 0 */
727 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
728 1.2.6.2 snj /* old= c, write:del, read:add, close:add */
729 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
730 1.2.6.2 snj /* old= c, write:del, read:add, close:del */
731 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
732 1.2.6.2 snj /* old= c, write:del, read:add, close:xxx */
733 1.2.6.2 snj { 0, 255 },
734 1.2.6.2 snj /* old= c, write:del, read:del, close: 0 */
735 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
736 1.2.6.2 snj /* old= c, write:del, read:del, close:add */
737 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
738 1.2.6.2 snj /* old= c, write:del, read:del, close:del */
739 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
740 1.2.6.2 snj /* old= c, write:del, read:del, close:xxx */
741 1.2.6.2 snj { 0, 255 },
742 1.2.6.2 snj /* old= c, write:del, read:xxx, close: 0 */
743 1.2.6.2 snj { 0, 255 },
744 1.2.6.2 snj /* old= c, write:del, read:xxx, close:add */
745 1.2.6.2 snj { 0, 255 },
746 1.2.6.2 snj /* old= c, write:del, read:xxx, close:del */
747 1.2.6.2 snj { 0, 255 },
748 1.2.6.2 snj /* old= c, write:del, read:xxx, close:xxx */
749 1.2.6.2 snj { 0, 255 },
750 1.2.6.2 snj /* old= c, write:xxx, read: 0, close: 0 */
751 1.2.6.2 snj { 0, 255 },
752 1.2.6.2 snj /* old= c, write:xxx, read: 0, close:add */
753 1.2.6.2 snj { 0, 255 },
754 1.2.6.2 snj /* old= c, write:xxx, read: 0, close:del */
755 1.2.6.2 snj { 0, 255 },
756 1.2.6.2 snj /* old= c, write:xxx, read: 0, close:xxx */
757 1.2.6.2 snj { 0, 255 },
758 1.2.6.2 snj /* old= c, write:xxx, read:add, close: 0 */
759 1.2.6.2 snj { 0, 255 },
760 1.2.6.2 snj /* old= c, write:xxx, read:add, close:add */
761 1.2.6.2 snj { 0, 255 },
762 1.2.6.2 snj /* old= c, write:xxx, read:add, close:del */
763 1.2.6.2 snj { 0, 255 },
764 1.2.6.2 snj /* old= c, write:xxx, read:add, close:xxx */
765 1.2.6.2 snj { 0, 255 },
766 1.2.6.2 snj /* old= c, write:xxx, read:del, close: 0 */
767 1.2.6.2 snj { 0, 255 },
768 1.2.6.2 snj /* old= c, write:xxx, read:del, close:add */
769 1.2.6.2 snj { 0, 255 },
770 1.2.6.2 snj /* old= c, write:xxx, read:del, close:del */
771 1.2.6.2 snj { 0, 255 },
772 1.2.6.2 snj /* old= c, write:xxx, read:del, close:xxx */
773 1.2.6.2 snj { 0, 255 },
774 1.2.6.2 snj /* old= c, write:xxx, read:xxx, close: 0 */
775 1.2.6.2 snj { 0, 255 },
776 1.2.6.2 snj /* old= c, write:xxx, read:xxx, close:add */
777 1.2.6.2 snj { 0, 255 },
778 1.2.6.2 snj /* old= c, write:xxx, read:xxx, close:del */
779 1.2.6.2 snj { 0, 255 },
780 1.2.6.2 snj /* old= c, write:xxx, read:xxx, close:xxx */
781 1.2.6.2 snj { 0, 255 },
782 1.2.6.2 snj /* old= cr, write: 0, read: 0, close: 0 */
783 1.2.6.2 snj { 0, 0 },
784 1.2.6.2 snj /* old= cr, write: 0, read: 0, close:add */
785 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
786 1.2.6.2 snj /* old= cr, write: 0, read: 0, close:del */
787 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
788 1.2.6.2 snj /* old= cr, write: 0, read: 0, close:xxx */
789 1.2.6.2 snj { 0, 255 },
790 1.2.6.2 snj /* old= cr, write: 0, read:add, close: 0 */
791 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
792 1.2.6.2 snj /* old= cr, write: 0, read:add, close:add */
793 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
794 1.2.6.2 snj /* old= cr, write: 0, read:add, close:del */
795 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
796 1.2.6.2 snj /* old= cr, write: 0, read:add, close:xxx */
797 1.2.6.2 snj { 0, 255 },
798 1.2.6.2 snj /* old= cr, write: 0, read:del, close: 0 */
799 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
800 1.2.6.2 snj /* old= cr, write: 0, read:del, close:add */
801 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
802 1.2.6.2 snj /* old= cr, write: 0, read:del, close:del */
803 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
804 1.2.6.2 snj /* old= cr, write: 0, read:del, close:xxx */
805 1.2.6.2 snj { 0, 255 },
806 1.2.6.2 snj /* old= cr, write: 0, read:xxx, close: 0 */
807 1.2.6.2 snj { 0, 255 },
808 1.2.6.2 snj /* old= cr, write: 0, read:xxx, close:add */
809 1.2.6.2 snj { 0, 255 },
810 1.2.6.2 snj /* old= cr, write: 0, read:xxx, close:del */
811 1.2.6.2 snj { 0, 255 },
812 1.2.6.2 snj /* old= cr, write: 0, read:xxx, close:xxx */
813 1.2.6.2 snj { 0, 255 },
814 1.2.6.2 snj /* old= cr, write:add, read: 0, close: 0 */
815 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
816 1.2.6.2 snj /* old= cr, write:add, read: 0, close:add */
817 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
818 1.2.6.2 snj /* old= cr, write:add, read: 0, close:del */
819 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
820 1.2.6.2 snj /* old= cr, write:add, read: 0, close:xxx */
821 1.2.6.2 snj { 0, 255 },
822 1.2.6.2 snj /* old= cr, write:add, read:add, close: 0 */
823 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
824 1.2.6.2 snj /* old= cr, write:add, read:add, close:add */
825 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
826 1.2.6.2 snj /* old= cr, write:add, read:add, close:del */
827 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
828 1.2.6.2 snj /* old= cr, write:add, read:add, close:xxx */
829 1.2.6.2 snj { 0, 255 },
830 1.2.6.2 snj /* old= cr, write:add, read:del, close: 0 */
831 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
832 1.2.6.2 snj /* old= cr, write:add, read:del, close:add */
833 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
834 1.2.6.2 snj /* old= cr, write:add, read:del, close:del */
835 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
836 1.2.6.2 snj /* old= cr, write:add, read:del, close:xxx */
837 1.2.6.2 snj { 0, 255 },
838 1.2.6.2 snj /* old= cr, write:add, read:xxx, close: 0 */
839 1.2.6.2 snj { 0, 255 },
840 1.2.6.2 snj /* old= cr, write:add, read:xxx, close:add */
841 1.2.6.2 snj { 0, 255 },
842 1.2.6.2 snj /* old= cr, write:add, read:xxx, close:del */
843 1.2.6.2 snj { 0, 255 },
844 1.2.6.2 snj /* old= cr, write:add, read:xxx, close:xxx */
845 1.2.6.2 snj { 0, 255 },
846 1.2.6.2 snj /* old= cr, write:del, read: 0, close: 0 */
847 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
848 1.2.6.2 snj /* old= cr, write:del, read: 0, close:add */
849 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
850 1.2.6.2 snj /* old= cr, write:del, read: 0, close:del */
851 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
852 1.2.6.2 snj /* old= cr, write:del, read: 0, close:xxx */
853 1.2.6.2 snj { 0, 255 },
854 1.2.6.2 snj /* old= cr, write:del, read:add, close: 0 */
855 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
856 1.2.6.2 snj /* old= cr, write:del, read:add, close:add */
857 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
858 1.2.6.2 snj /* old= cr, write:del, read:add, close:del */
859 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
860 1.2.6.2 snj /* old= cr, write:del, read:add, close:xxx */
861 1.2.6.2 snj { 0, 255 },
862 1.2.6.2 snj /* old= cr, write:del, read:del, close: 0 */
863 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
864 1.2.6.2 snj /* old= cr, write:del, read:del, close:add */
865 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
866 1.2.6.2 snj /* old= cr, write:del, read:del, close:del */
867 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
868 1.2.6.2 snj /* old= cr, write:del, read:del, close:xxx */
869 1.2.6.2 snj { 0, 255 },
870 1.2.6.2 snj /* old= cr, write:del, read:xxx, close: 0 */
871 1.2.6.2 snj { 0, 255 },
872 1.2.6.2 snj /* old= cr, write:del, read:xxx, close:add */
873 1.2.6.2 snj { 0, 255 },
874 1.2.6.2 snj /* old= cr, write:del, read:xxx, close:del */
875 1.2.6.2 snj { 0, 255 },
876 1.2.6.2 snj /* old= cr, write:del, read:xxx, close:xxx */
877 1.2.6.2 snj { 0, 255 },
878 1.2.6.2 snj /* old= cr, write:xxx, read: 0, close: 0 */
879 1.2.6.2 snj { 0, 255 },
880 1.2.6.2 snj /* old= cr, write:xxx, read: 0, close:add */
881 1.2.6.2 snj { 0, 255 },
882 1.2.6.2 snj /* old= cr, write:xxx, read: 0, close:del */
883 1.2.6.2 snj { 0, 255 },
884 1.2.6.2 snj /* old= cr, write:xxx, read: 0, close:xxx */
885 1.2.6.2 snj { 0, 255 },
886 1.2.6.2 snj /* old= cr, write:xxx, read:add, close: 0 */
887 1.2.6.2 snj { 0, 255 },
888 1.2.6.2 snj /* old= cr, write:xxx, read:add, close:add */
889 1.2.6.2 snj { 0, 255 },
890 1.2.6.2 snj /* old= cr, write:xxx, read:add, close:del */
891 1.2.6.2 snj { 0, 255 },
892 1.2.6.2 snj /* old= cr, write:xxx, read:add, close:xxx */
893 1.2.6.2 snj { 0, 255 },
894 1.2.6.2 snj /* old= cr, write:xxx, read:del, close: 0 */
895 1.2.6.2 snj { 0, 255 },
896 1.2.6.2 snj /* old= cr, write:xxx, read:del, close:add */
897 1.2.6.2 snj { 0, 255 },
898 1.2.6.2 snj /* old= cr, write:xxx, read:del, close:del */
899 1.2.6.2 snj { 0, 255 },
900 1.2.6.2 snj /* old= cr, write:xxx, read:del, close:xxx */
901 1.2.6.2 snj { 0, 255 },
902 1.2.6.2 snj /* old= cr, write:xxx, read:xxx, close: 0 */
903 1.2.6.2 snj { 0, 255 },
904 1.2.6.2 snj /* old= cr, write:xxx, read:xxx, close:add */
905 1.2.6.2 snj { 0, 255 },
906 1.2.6.2 snj /* old= cr, write:xxx, read:xxx, close:del */
907 1.2.6.2 snj { 0, 255 },
908 1.2.6.2 snj /* old= cr, write:xxx, read:xxx, close:xxx */
909 1.2.6.2 snj { 0, 255 },
910 1.2.6.2 snj /* old= cw, write: 0, read: 0, close: 0 */
911 1.2.6.2 snj { 0, 0 },
912 1.2.6.2 snj /* old= cw, write: 0, read: 0, close:add */
913 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
914 1.2.6.2 snj /* old= cw, write: 0, read: 0, close:del */
915 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
916 1.2.6.2 snj /* old= cw, write: 0, read: 0, close:xxx */
917 1.2.6.2 snj { 0, 255 },
918 1.2.6.2 snj /* old= cw, write: 0, read:add, close: 0 */
919 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
920 1.2.6.2 snj /* old= cw, write: 0, read:add, close:add */
921 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
922 1.2.6.2 snj /* old= cw, write: 0, read:add, close:del */
923 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
924 1.2.6.2 snj /* old= cw, write: 0, read:add, close:xxx */
925 1.2.6.2 snj { 0, 255 },
926 1.2.6.2 snj /* old= cw, write: 0, read:del, close: 0 */
927 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
928 1.2.6.2 snj /* old= cw, write: 0, read:del, close:add */
929 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
930 1.2.6.2 snj /* old= cw, write: 0, read:del, close:del */
931 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
932 1.2.6.2 snj /* old= cw, write: 0, read:del, close:xxx */
933 1.2.6.2 snj { 0, 255 },
934 1.2.6.2 snj /* old= cw, write: 0, read:xxx, close: 0 */
935 1.2.6.2 snj { 0, 255 },
936 1.2.6.2 snj /* old= cw, write: 0, read:xxx, close:add */
937 1.2.6.2 snj { 0, 255 },
938 1.2.6.2 snj /* old= cw, write: 0, read:xxx, close:del */
939 1.2.6.2 snj { 0, 255 },
940 1.2.6.2 snj /* old= cw, write: 0, read:xxx, close:xxx */
941 1.2.6.2 snj { 0, 255 },
942 1.2.6.2 snj /* old= cw, write:add, read: 0, close: 0 */
943 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
944 1.2.6.2 snj /* old= cw, write:add, read: 0, close:add */
945 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
946 1.2.6.2 snj /* old= cw, write:add, read: 0, close:del */
947 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
948 1.2.6.2 snj /* old= cw, write:add, read: 0, close:xxx */
949 1.2.6.2 snj { 0, 255 },
950 1.2.6.2 snj /* old= cw, write:add, read:add, close: 0 */
951 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
952 1.2.6.2 snj /* old= cw, write:add, read:add, close:add */
953 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
954 1.2.6.2 snj /* old= cw, write:add, read:add, close:del */
955 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
956 1.2.6.2 snj /* old= cw, write:add, read:add, close:xxx */
957 1.2.6.2 snj { 0, 255 },
958 1.2.6.2 snj /* old= cw, write:add, read:del, close: 0 */
959 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
960 1.2.6.2 snj /* old= cw, write:add, read:del, close:add */
961 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
962 1.2.6.2 snj /* old= cw, write:add, read:del, close:del */
963 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
964 1.2.6.2 snj /* old= cw, write:add, read:del, close:xxx */
965 1.2.6.2 snj { 0, 255 },
966 1.2.6.2 snj /* old= cw, write:add, read:xxx, close: 0 */
967 1.2.6.2 snj { 0, 255 },
968 1.2.6.2 snj /* old= cw, write:add, read:xxx, close:add */
969 1.2.6.2 snj { 0, 255 },
970 1.2.6.2 snj /* old= cw, write:add, read:xxx, close:del */
971 1.2.6.2 snj { 0, 255 },
972 1.2.6.2 snj /* old= cw, write:add, read:xxx, close:xxx */
973 1.2.6.2 snj { 0, 255 },
974 1.2.6.2 snj /* old= cw, write:del, read: 0, close: 0 */
975 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
976 1.2.6.2 snj /* old= cw, write:del, read: 0, close:add */
977 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
978 1.2.6.2 snj /* old= cw, write:del, read: 0, close:del */
979 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
980 1.2.6.2 snj /* old= cw, write:del, read: 0, close:xxx */
981 1.2.6.2 snj { 0, 255 },
982 1.2.6.2 snj /* old= cw, write:del, read:add, close: 0 */
983 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
984 1.2.6.2 snj /* old= cw, write:del, read:add, close:add */
985 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
986 1.2.6.2 snj /* old= cw, write:del, read:add, close:del */
987 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
988 1.2.6.2 snj /* old= cw, write:del, read:add, close:xxx */
989 1.2.6.2 snj { 0, 255 },
990 1.2.6.2 snj /* old= cw, write:del, read:del, close: 0 */
991 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
992 1.2.6.2 snj /* old= cw, write:del, read:del, close:add */
993 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
994 1.2.6.2 snj /* old= cw, write:del, read:del, close:del */
995 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
996 1.2.6.2 snj /* old= cw, write:del, read:del, close:xxx */
997 1.2.6.2 snj { 0, 255 },
998 1.2.6.2 snj /* old= cw, write:del, read:xxx, close: 0 */
999 1.2.6.2 snj { 0, 255 },
1000 1.2.6.2 snj /* old= cw, write:del, read:xxx, close:add */
1001 1.2.6.2 snj { 0, 255 },
1002 1.2.6.2 snj /* old= cw, write:del, read:xxx, close:del */
1003 1.2.6.2 snj { 0, 255 },
1004 1.2.6.2 snj /* old= cw, write:del, read:xxx, close:xxx */
1005 1.2.6.2 snj { 0, 255 },
1006 1.2.6.2 snj /* old= cw, write:xxx, read: 0, close: 0 */
1007 1.2.6.2 snj { 0, 255 },
1008 1.2.6.2 snj /* old= cw, write:xxx, read: 0, close:add */
1009 1.2.6.2 snj { 0, 255 },
1010 1.2.6.2 snj /* old= cw, write:xxx, read: 0, close:del */
1011 1.2.6.2 snj { 0, 255 },
1012 1.2.6.2 snj /* old= cw, write:xxx, read: 0, close:xxx */
1013 1.2.6.2 snj { 0, 255 },
1014 1.2.6.2 snj /* old= cw, write:xxx, read:add, close: 0 */
1015 1.2.6.2 snj { 0, 255 },
1016 1.2.6.2 snj /* old= cw, write:xxx, read:add, close:add */
1017 1.2.6.2 snj { 0, 255 },
1018 1.2.6.2 snj /* old= cw, write:xxx, read:add, close:del */
1019 1.2.6.2 snj { 0, 255 },
1020 1.2.6.2 snj /* old= cw, write:xxx, read:add, close:xxx */
1021 1.2.6.2 snj { 0, 255 },
1022 1.2.6.2 snj /* old= cw, write:xxx, read:del, close: 0 */
1023 1.2.6.2 snj { 0, 255 },
1024 1.2.6.2 snj /* old= cw, write:xxx, read:del, close:add */
1025 1.2.6.2 snj { 0, 255 },
1026 1.2.6.2 snj /* old= cw, write:xxx, read:del, close:del */
1027 1.2.6.2 snj { 0, 255 },
1028 1.2.6.2 snj /* old= cw, write:xxx, read:del, close:xxx */
1029 1.2.6.2 snj { 0, 255 },
1030 1.2.6.2 snj /* old= cw, write:xxx, read:xxx, close: 0 */
1031 1.2.6.2 snj { 0, 255 },
1032 1.2.6.2 snj /* old= cw, write:xxx, read:xxx, close:add */
1033 1.2.6.2 snj { 0, 255 },
1034 1.2.6.2 snj /* old= cw, write:xxx, read:xxx, close:del */
1035 1.2.6.2 snj { 0, 255 },
1036 1.2.6.2 snj /* old= cw, write:xxx, read:xxx, close:xxx */
1037 1.2.6.2 snj { 0, 255 },
1038 1.2.6.2 snj /* old=crw, write: 0, read: 0, close: 0 */
1039 1.2.6.2 snj { 0, 0 },
1040 1.2.6.2 snj /* old=crw, write: 0, read: 0, close:add */
1041 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1042 1.2.6.2 snj /* old=crw, write: 0, read: 0, close:del */
1043 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1044 1.2.6.2 snj /* old=crw, write: 0, read: 0, close:xxx */
1045 1.2.6.2 snj { 0, 255 },
1046 1.2.6.2 snj /* old=crw, write: 0, read:add, close: 0 */
1047 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1048 1.2.6.2 snj /* old=crw, write: 0, read:add, close:add */
1049 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1050 1.2.6.2 snj /* old=crw, write: 0, read:add, close:del */
1051 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1052 1.2.6.2 snj /* old=crw, write: 0, read:add, close:xxx */
1053 1.2.6.2 snj { 0, 255 },
1054 1.2.6.2 snj /* old=crw, write: 0, read:del, close: 0 */
1055 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1056 1.2.6.2 snj /* old=crw, write: 0, read:del, close:add */
1057 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1058 1.2.6.2 snj /* old=crw, write: 0, read:del, close:del */
1059 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
1060 1.2.6.2 snj /* old=crw, write: 0, read:del, close:xxx */
1061 1.2.6.2 snj { 0, 255 },
1062 1.2.6.2 snj /* old=crw, write: 0, read:xxx, close: 0 */
1063 1.2.6.2 snj { 0, 255 },
1064 1.2.6.2 snj /* old=crw, write: 0, read:xxx, close:add */
1065 1.2.6.2 snj { 0, 255 },
1066 1.2.6.2 snj /* old=crw, write: 0, read:xxx, close:del */
1067 1.2.6.2 snj { 0, 255 },
1068 1.2.6.2 snj /* old=crw, write: 0, read:xxx, close:xxx */
1069 1.2.6.2 snj { 0, 255 },
1070 1.2.6.2 snj /* old=crw, write:add, read: 0, close: 0 */
1071 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1072 1.2.6.2 snj /* old=crw, write:add, read: 0, close:add */
1073 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1074 1.2.6.2 snj /* old=crw, write:add, read: 0, close:del */
1075 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1076 1.2.6.2 snj /* old=crw, write:add, read: 0, close:xxx */
1077 1.2.6.2 snj { 0, 255 },
1078 1.2.6.2 snj /* old=crw, write:add, read:add, close: 0 */
1079 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1080 1.2.6.2 snj /* old=crw, write:add, read:add, close:add */
1081 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1082 1.2.6.2 snj /* old=crw, write:add, read:add, close:del */
1083 1.2.6.2 snj { EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1084 1.2.6.2 snj /* old=crw, write:add, read:add, close:xxx */
1085 1.2.6.2 snj { 0, 255 },
1086 1.2.6.2 snj /* old=crw, write:add, read:del, close: 0 */
1087 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1088 1.2.6.2 snj /* old=crw, write:add, read:del, close:add */
1089 1.2.6.2 snj { EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1090 1.2.6.2 snj /* old=crw, write:add, read:del, close:del */
1091 1.2.6.2 snj { EPOLLOUT, EPOLL_CTL_MOD },
1092 1.2.6.2 snj /* old=crw, write:add, read:del, close:xxx */
1093 1.2.6.2 snj { 0, 255 },
1094 1.2.6.2 snj /* old=crw, write:add, read:xxx, close: 0 */
1095 1.2.6.2 snj { 0, 255 },
1096 1.2.6.2 snj /* old=crw, write:add, read:xxx, close:add */
1097 1.2.6.2 snj { 0, 255 },
1098 1.2.6.2 snj /* old=crw, write:add, read:xxx, close:del */
1099 1.2.6.2 snj { 0, 255 },
1100 1.2.6.2 snj /* old=crw, write:add, read:xxx, close:xxx */
1101 1.2.6.2 snj { 0, 255 },
1102 1.2.6.2 snj /* old=crw, write:del, read: 0, close: 0 */
1103 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1104 1.2.6.2 snj /* old=crw, write:del, read: 0, close:add */
1105 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1106 1.2.6.2 snj /* old=crw, write:del, read: 0, close:del */
1107 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
1108 1.2.6.2 snj /* old=crw, write:del, read: 0, close:xxx */
1109 1.2.6.2 snj { 0, 255 },
1110 1.2.6.2 snj /* old=crw, write:del, read:add, close: 0 */
1111 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1112 1.2.6.2 snj /* old=crw, write:del, read:add, close:add */
1113 1.2.6.2 snj { EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1114 1.2.6.2 snj /* old=crw, write:del, read:add, close:del */
1115 1.2.6.2 snj { EPOLLIN, EPOLL_CTL_MOD },
1116 1.2.6.2 snj /* old=crw, write:del, read:add, close:xxx */
1117 1.2.6.2 snj { 0, 255 },
1118 1.2.6.2 snj /* old=crw, write:del, read:del, close: 0 */
1119 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
1120 1.2.6.2 snj /* old=crw, write:del, read:del, close:add */
1121 1.2.6.2 snj { EPOLLRDHUP, EPOLL_CTL_MOD },
1122 1.2.6.2 snj /* old=crw, write:del, read:del, close:del */
1123 1.2.6.2 snj { EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
1124 1.2.6.2 snj /* old=crw, write:del, read:del, close:xxx */
1125 1.2.6.2 snj { 0, 255 },
1126 1.2.6.2 snj /* old=crw, write:del, read:xxx, close: 0 */
1127 1.2.6.2 snj { 0, 255 },
1128 1.2.6.2 snj /* old=crw, write:del, read:xxx, close:add */
1129 1.2.6.2 snj { 0, 255 },
1130 1.2.6.2 snj /* old=crw, write:del, read:xxx, close:del */
1131 1.2.6.2 snj { 0, 255 },
1132 1.2.6.2 snj /* old=crw, write:del, read:xxx, close:xxx */
1133 1.2.6.2 snj { 0, 255 },
1134 1.2.6.2 snj /* old=crw, write:xxx, read: 0, close: 0 */
1135 1.2.6.2 snj { 0, 255 },
1136 1.2.6.2 snj /* old=crw, write:xxx, read: 0, close:add */
1137 1.2.6.2 snj { 0, 255 },
1138 1.2.6.2 snj /* old=crw, write:xxx, read: 0, close:del */
1139 1.2.6.2 snj { 0, 255 },
1140 1.2.6.2 snj /* old=crw, write:xxx, read: 0, close:xxx */
1141 1.2.6.2 snj { 0, 255 },
1142 1.2.6.2 snj /* old=crw, write:xxx, read:add, close: 0 */
1143 1.2.6.2 snj { 0, 255 },
1144 1.2.6.2 snj /* old=crw, write:xxx, read:add, close:add */
1145 1.2.6.2 snj { 0, 255 },
1146 1.2.6.2 snj /* old=crw, write:xxx, read:add, close:del */
1147 1.2.6.2 snj { 0, 255 },
1148 1.2.6.2 snj /* old=crw, write:xxx, read:add, close:xxx */
1149 1.2.6.2 snj { 0, 255 },
1150 1.2.6.2 snj /* old=crw, write:xxx, read:del, close: 0 */
1151 1.2.6.2 snj { 0, 255 },
1152 1.2.6.2 snj /* old=crw, write:xxx, read:del, close:add */
1153 1.2.6.2 snj { 0, 255 },
1154 1.2.6.2 snj /* old=crw, write:xxx, read:del, close:del */
1155 1.2.6.2 snj { 0, 255 },
1156 1.2.6.2 snj /* old=crw, write:xxx, read:del, close:xxx */
1157 1.2.6.2 snj { 0, 255 },
1158 1.2.6.2 snj /* old=crw, write:xxx, read:xxx, close: 0 */
1159 1.2.6.2 snj { 0, 255 },
1160 1.2.6.2 snj /* old=crw, write:xxx, read:xxx, close:add */
1161 1.2.6.2 snj { 0, 255 },
1162 1.2.6.2 snj /* old=crw, write:xxx, read:xxx, close:del */
1163 1.2.6.2 snj { 0, 255 },
1164 1.2.6.2 snj /* old=crw, write:xxx, read:xxx, close:xxx */
1165 1.2.6.2 snj { 0, 255 },
1166 1.2.6.2 snj };
1167 1.2.6.2 snj
1168 1.2.6.2 snj #endif
1169