accept4 may race with another accept or surface a pending TCP error.
These are the classes accept(2) documents as retryable for a nonblocking
listener -- EINTR and EAGAIN, plus the pending network errors Linux passes
through (ENETDOWN, EPROTO, ENOPROTOOPT, EHOSTDOWN, ENONET, EHOSTUNREACH,
EOPNOTSUPP, ENETUNREACH) and ECONNABORTED. They retry through the bounded
poll loop, in this order; every other result returns. The list is the one
owner of that classification: each host realization of accept (x86-64 here,
Platform.AArch64.SocketRoutine) folds over it. The errno numbers are
asm-generic and identical on x86-64 and AArch64 Linux.
232def nativeSocketAcceptTransientErrors : (family StdList Nat) =
233 (constructor
234 StdList
235 StdListCons
236 Nat
237 4
238 (constructor
239 StdList
240 StdListCons
241 Nat
242 11
243 (constructor
244 StdList
245 StdListCons
246 Nat
247 100
248 (constructor
249 StdList
250 StdListCons
251 Nat
252 71
253 (constructor
254 StdList
255 StdListCons
256 Nat
257 92
258 (constructor
259 StdList
260 StdListCons
261 Nat
262 112
263 (constructor
264 StdList
265 StdListCons
266 Nat
267 64
268 (constructor
269 StdList
270 StdListCons
271 Nat
272 113
273 (constructor
274 StdList
275 StdListCons
276 Nat
277 95
278 (constructor
279 StdList
280 StdListCons
281 Nat
282 101
283 (constructor
284 StdList
285 StdListCons
286 Nat
287 103
288 (constructor StdList StdListEmpty Nat))))))))))))The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.