2004-11-14 Ben Maurer <bmaurer@ximian.com>
[mono-project.git] / support / map.c
blob5e12b5151f9982a2f8d4fb8a03658195872dc75e
1 /*
2 * This file was automatically generated by make-map from Mono.Posix.dll.
4 * DO NOT MODIFY.
5 */
7 #include "map.h"
9 #ifndef _GNU_SOURCE
10 #define _GNU_SOURCE
11 #endif /* ndef _GNU_SOURCE */
12 #ifndef _XOPEN_SOURCE
13 #define _XOPEN_SOURCE
14 #endif /* ndef _XOPEN_SOURCE */
15 #include <sys/types.h>
16 #include <sys/stat.h>
17 #include <sys/poll.h>
18 #include <sys/wait.h>
19 #include <sys/mount.h>
20 #include <unistd.h>
21 #include <fcntl.h>
22 #include <signal.h>
23 #include <grp.h>
24 #include <errno.h>
26 int Mono_Posix_FromError (int x, int *r)
28 *r = 0;
29 if (x == 0)
30 return 0;
31 if (x == Mono_Posix_Error_EPERM)
32 #ifdef EPERM
33 {*r = EPERM; return 0;}
34 #else /* def EPERM */
35 {errno = EINVAL; return -1;}
36 #endif /* ndef EPERM */
37 if (x == Mono_Posix_Error_ENOENT)
38 #ifdef ENOENT
39 {*r = ENOENT; return 0;}
40 #else /* def ENOENT */
41 {errno = EINVAL; return -1;}
42 #endif /* ndef ENOENT */
43 if (x == Mono_Posix_Error_ESRCH)
44 #ifdef ESRCH
45 {*r = ESRCH; return 0;}
46 #else /* def ESRCH */
47 {errno = EINVAL; return -1;}
48 #endif /* ndef ESRCH */
49 if (x == Mono_Posix_Error_EINTR)
50 #ifdef EINTR
51 {*r = EINTR; return 0;}
52 #else /* def EINTR */
53 {errno = EINVAL; return -1;}
54 #endif /* ndef EINTR */
55 if (x == Mono_Posix_Error_EIO)
56 #ifdef EIO
57 {*r = EIO; return 0;}
58 #else /* def EIO */
59 {errno = EINVAL; return -1;}
60 #endif /* ndef EIO */
61 if (x == Mono_Posix_Error_ENXIO)
62 #ifdef ENXIO
63 {*r = ENXIO; return 0;}
64 #else /* def ENXIO */
65 {errno = EINVAL; return -1;}
66 #endif /* ndef ENXIO */
67 if (x == Mono_Posix_Error_E2BIG)
68 #ifdef E2BIG
69 {*r = E2BIG; return 0;}
70 #else /* def E2BIG */
71 {errno = EINVAL; return -1;}
72 #endif /* ndef E2BIG */
73 if (x == Mono_Posix_Error_ENOEXEC)
74 #ifdef ENOEXEC
75 {*r = ENOEXEC; return 0;}
76 #else /* def ENOEXEC */
77 {errno = EINVAL; return -1;}
78 #endif /* ndef ENOEXEC */
79 if (x == Mono_Posix_Error_EBADF)
80 #ifdef EBADF
81 {*r = EBADF; return 0;}
82 #else /* def EBADF */
83 {errno = EINVAL; return -1;}
84 #endif /* ndef EBADF */
85 if (x == Mono_Posix_Error_ECHILD)
86 #ifdef ECHILD
87 {*r = ECHILD; return 0;}
88 #else /* def ECHILD */
89 {errno = EINVAL; return -1;}
90 #endif /* ndef ECHILD */
91 if (x == Mono_Posix_Error_EAGAIN)
92 #ifdef EAGAIN
93 {*r = EAGAIN; return 0;}
94 #else /* def EAGAIN */
95 {errno = EINVAL; return -1;}
96 #endif /* ndef EAGAIN */
97 if (x == Mono_Posix_Error_ENOMEM)
98 #ifdef ENOMEM
99 {*r = ENOMEM; return 0;}
100 #else /* def ENOMEM */
101 {errno = EINVAL; return -1;}
102 #endif /* ndef ENOMEM */
103 if (x == Mono_Posix_Error_EACCES)
104 #ifdef EACCES
105 {*r = EACCES; return 0;}
106 #else /* def EACCES */
107 {errno = EINVAL; return -1;}
108 #endif /* ndef EACCES */
109 if (x == Mono_Posix_Error_EFAULT)
110 #ifdef EFAULT
111 {*r = EFAULT; return 0;}
112 #else /* def EFAULT */
113 {errno = EINVAL; return -1;}
114 #endif /* ndef EFAULT */
115 if (x == Mono_Posix_Error_ENOTBLK)
116 #ifdef ENOTBLK
117 {*r = ENOTBLK; return 0;}
118 #else /* def ENOTBLK */
119 {errno = EINVAL; return -1;}
120 #endif /* ndef ENOTBLK */
121 if (x == Mono_Posix_Error_EBUSY)
122 #ifdef EBUSY
123 {*r = EBUSY; return 0;}
124 #else /* def EBUSY */
125 {errno = EINVAL; return -1;}
126 #endif /* ndef EBUSY */
127 if (x == Mono_Posix_Error_EEXIST)
128 #ifdef EEXIST
129 {*r = EEXIST; return 0;}
130 #else /* def EEXIST */
131 {errno = EINVAL; return -1;}
132 #endif /* ndef EEXIST */
133 if (x == Mono_Posix_Error_EXDEV)
134 #ifdef EXDEV
135 {*r = EXDEV; return 0;}
136 #else /* def EXDEV */
137 {errno = EINVAL; return -1;}
138 #endif /* ndef EXDEV */
139 if (x == Mono_Posix_Error_ENODEV)
140 #ifdef ENODEV
141 {*r = ENODEV; return 0;}
142 #else /* def ENODEV */
143 {errno = EINVAL; return -1;}
144 #endif /* ndef ENODEV */
145 if (x == Mono_Posix_Error_ENOTDIR)
146 #ifdef ENOTDIR
147 {*r = ENOTDIR; return 0;}
148 #else /* def ENOTDIR */
149 {errno = EINVAL; return -1;}
150 #endif /* ndef ENOTDIR */
151 if (x == Mono_Posix_Error_EISDIR)
152 #ifdef EISDIR
153 {*r = EISDIR; return 0;}
154 #else /* def EISDIR */
155 {errno = EINVAL; return -1;}
156 #endif /* ndef EISDIR */
157 if (x == Mono_Posix_Error_EINVAL)
158 #ifdef EINVAL
159 {*r = EINVAL; return 0;}
160 #else /* def EINVAL */
161 {errno = EINVAL; return -1;}
162 #endif /* ndef EINVAL */
163 if (x == Mono_Posix_Error_ENFILE)
164 #ifdef ENFILE
165 {*r = ENFILE; return 0;}
166 #else /* def ENFILE */
167 {errno = EINVAL; return -1;}
168 #endif /* ndef ENFILE */
169 if (x == Mono_Posix_Error_EMFILE)
170 #ifdef EMFILE
171 {*r = EMFILE; return 0;}
172 #else /* def EMFILE */
173 {errno = EINVAL; return -1;}
174 #endif /* ndef EMFILE */
175 if (x == Mono_Posix_Error_ENOTTY)
176 #ifdef ENOTTY
177 {*r = ENOTTY; return 0;}
178 #else /* def ENOTTY */
179 {errno = EINVAL; return -1;}
180 #endif /* ndef ENOTTY */
181 if (x == Mono_Posix_Error_ETXTBSY)
182 #ifdef ETXTBSY
183 {*r = ETXTBSY; return 0;}
184 #else /* def ETXTBSY */
185 {errno = EINVAL; return -1;}
186 #endif /* ndef ETXTBSY */
187 if (x == Mono_Posix_Error_EFBIG)
188 #ifdef EFBIG
189 {*r = EFBIG; return 0;}
190 #else /* def EFBIG */
191 {errno = EINVAL; return -1;}
192 #endif /* ndef EFBIG */
193 if (x == Mono_Posix_Error_ENOSPC)
194 #ifdef ENOSPC
195 {*r = ENOSPC; return 0;}
196 #else /* def ENOSPC */
197 {errno = EINVAL; return -1;}
198 #endif /* ndef ENOSPC */
199 if (x == Mono_Posix_Error_ESPIPE)
200 #ifdef ESPIPE
201 {*r = ESPIPE; return 0;}
202 #else /* def ESPIPE */
203 {errno = EINVAL; return -1;}
204 #endif /* ndef ESPIPE */
205 if (x == Mono_Posix_Error_EROFS)
206 #ifdef EROFS
207 {*r = EROFS; return 0;}
208 #else /* def EROFS */
209 {errno = EINVAL; return -1;}
210 #endif /* ndef EROFS */
211 if (x == Mono_Posix_Error_EMLINK)
212 #ifdef EMLINK
213 {*r = EMLINK; return 0;}
214 #else /* def EMLINK */
215 {errno = EINVAL; return -1;}
216 #endif /* ndef EMLINK */
217 if (x == Mono_Posix_Error_EPIPE)
218 #ifdef EPIPE
219 {*r = EPIPE; return 0;}
220 #else /* def EPIPE */
221 {errno = EINVAL; return -1;}
222 #endif /* ndef EPIPE */
223 if (x == Mono_Posix_Error_EDOM)
224 #ifdef EDOM
225 {*r = EDOM; return 0;}
226 #else /* def EDOM */
227 {errno = EINVAL; return -1;}
228 #endif /* ndef EDOM */
229 if (x == Mono_Posix_Error_ERANGE)
230 #ifdef ERANGE
231 {*r = ERANGE; return 0;}
232 #else /* def ERANGE */
233 {errno = EINVAL; return -1;}
234 #endif /* ndef ERANGE */
235 if (x == Mono_Posix_Error_EDEADLK)
236 #ifdef EDEADLK
237 {*r = EDEADLK; return 0;}
238 #else /* def EDEADLK */
239 {errno = EINVAL; return -1;}
240 #endif /* ndef EDEADLK */
241 if (x == Mono_Posix_Error_ENAMETOOLONG)
242 #ifdef ENAMETOOLONG
243 {*r = ENAMETOOLONG; return 0;}
244 #else /* def ENAMETOOLONG */
245 {errno = EINVAL; return -1;}
246 #endif /* ndef ENAMETOOLONG */
247 if (x == Mono_Posix_Error_ENOLCK)
248 #ifdef ENOLCK
249 {*r = ENOLCK; return 0;}
250 #else /* def ENOLCK */
251 {errno = EINVAL; return -1;}
252 #endif /* ndef ENOLCK */
253 if (x == Mono_Posix_Error_ENOSYS)
254 #ifdef ENOSYS
255 {*r = ENOSYS; return 0;}
256 #else /* def ENOSYS */
257 {errno = EINVAL; return -1;}
258 #endif /* ndef ENOSYS */
259 if (x == Mono_Posix_Error_ENOTEMPTY)
260 #ifdef ENOTEMPTY
261 {*r = ENOTEMPTY; return 0;}
262 #else /* def ENOTEMPTY */
263 {errno = EINVAL; return -1;}
264 #endif /* ndef ENOTEMPTY */
265 if (x == Mono_Posix_Error_ELOOP)
266 #ifdef ELOOP
267 {*r = ELOOP; return 0;}
268 #else /* def ELOOP */
269 {errno = EINVAL; return -1;}
270 #endif /* ndef ELOOP */
271 if (x == Mono_Posix_Error_EWOULDBLOCK)
272 #ifdef EWOULDBLOCK
273 {*r = EWOULDBLOCK; return 0;}
274 #else /* def EWOULDBLOCK */
275 {errno = EINVAL; return -1;}
276 #endif /* ndef EWOULDBLOCK */
277 if (x == Mono_Posix_Error_ENOMSG)
278 #ifdef ENOMSG
279 {*r = ENOMSG; return 0;}
280 #else /* def ENOMSG */
281 {errno = EINVAL; return -1;}
282 #endif /* ndef ENOMSG */
283 if (x == Mono_Posix_Error_EIDRM)
284 #ifdef EIDRM
285 {*r = EIDRM; return 0;}
286 #else /* def EIDRM */
287 {errno = EINVAL; return -1;}
288 #endif /* ndef EIDRM */
289 if (x == Mono_Posix_Error_ECHRNG)
290 #ifdef ECHRNG
291 {*r = ECHRNG; return 0;}
292 #else /* def ECHRNG */
293 {errno = EINVAL; return -1;}
294 #endif /* ndef ECHRNG */
295 if (x == Mono_Posix_Error_EL2NSYNC)
296 #ifdef EL2NSYNC
297 {*r = EL2NSYNC; return 0;}
298 #else /* def EL2NSYNC */
299 {errno = EINVAL; return -1;}
300 #endif /* ndef EL2NSYNC */
301 if (x == Mono_Posix_Error_EL3HLT)
302 #ifdef EL3HLT
303 {*r = EL3HLT; return 0;}
304 #else /* def EL3HLT */
305 {errno = EINVAL; return -1;}
306 #endif /* ndef EL3HLT */
307 if (x == Mono_Posix_Error_EL3RST)
308 #ifdef EL3RST
309 {*r = EL3RST; return 0;}
310 #else /* def EL3RST */
311 {errno = EINVAL; return -1;}
312 #endif /* ndef EL3RST */
313 if (x == Mono_Posix_Error_ELNRNG)
314 #ifdef ELNRNG
315 {*r = ELNRNG; return 0;}
316 #else /* def ELNRNG */
317 {errno = EINVAL; return -1;}
318 #endif /* ndef ELNRNG */
319 if (x == Mono_Posix_Error_EUNATCH)
320 #ifdef EUNATCH
321 {*r = EUNATCH; return 0;}
322 #else /* def EUNATCH */
323 {errno = EINVAL; return -1;}
324 #endif /* ndef EUNATCH */
325 if (x == Mono_Posix_Error_ENOCSI)
326 #ifdef ENOCSI
327 {*r = ENOCSI; return 0;}
328 #else /* def ENOCSI */
329 {errno = EINVAL; return -1;}
330 #endif /* ndef ENOCSI */
331 if (x == Mono_Posix_Error_EL2HLT)
332 #ifdef EL2HLT
333 {*r = EL2HLT; return 0;}
334 #else /* def EL2HLT */
335 {errno = EINVAL; return -1;}
336 #endif /* ndef EL2HLT */
337 if (x == Mono_Posix_Error_EBADE)
338 #ifdef EBADE
339 {*r = EBADE; return 0;}
340 #else /* def EBADE */
341 {errno = EINVAL; return -1;}
342 #endif /* ndef EBADE */
343 if (x == Mono_Posix_Error_EBADR)
344 #ifdef EBADR
345 {*r = EBADR; return 0;}
346 #else /* def EBADR */
347 {errno = EINVAL; return -1;}
348 #endif /* ndef EBADR */
349 if (x == Mono_Posix_Error_EXFULL)
350 #ifdef EXFULL
351 {*r = EXFULL; return 0;}
352 #else /* def EXFULL */
353 {errno = EINVAL; return -1;}
354 #endif /* ndef EXFULL */
355 if (x == Mono_Posix_Error_ENOANO)
356 #ifdef ENOANO
357 {*r = ENOANO; return 0;}
358 #else /* def ENOANO */
359 {errno = EINVAL; return -1;}
360 #endif /* ndef ENOANO */
361 if (x == Mono_Posix_Error_EBADRQC)
362 #ifdef EBADRQC
363 {*r = EBADRQC; return 0;}
364 #else /* def EBADRQC */
365 {errno = EINVAL; return -1;}
366 #endif /* ndef EBADRQC */
367 if (x == Mono_Posix_Error_EBADSLT)
368 #ifdef EBADSLT
369 {*r = EBADSLT; return 0;}
370 #else /* def EBADSLT */
371 {errno = EINVAL; return -1;}
372 #endif /* ndef EBADSLT */
373 if (x == Mono_Posix_Error_EDEADLOCK)
374 #ifdef EDEADLOCK
375 {*r = EDEADLOCK; return 0;}
376 #else /* def EDEADLOCK */
377 {errno = EINVAL; return -1;}
378 #endif /* ndef EDEADLOCK */
379 if (x == Mono_Posix_Error_EBFONT)
380 #ifdef EBFONT
381 {*r = EBFONT; return 0;}
382 #else /* def EBFONT */
383 {errno = EINVAL; return -1;}
384 #endif /* ndef EBFONT */
385 if (x == Mono_Posix_Error_ENOSTR)
386 #ifdef ENOSTR
387 {*r = ENOSTR; return 0;}
388 #else /* def ENOSTR */
389 {errno = EINVAL; return -1;}
390 #endif /* ndef ENOSTR */
391 if (x == Mono_Posix_Error_ENODATA)
392 #ifdef ENODATA
393 {*r = ENODATA; return 0;}
394 #else /* def ENODATA */
395 {errno = EINVAL; return -1;}
396 #endif /* ndef ENODATA */
397 if (x == Mono_Posix_Error_ETIME)
398 #ifdef ETIME
399 {*r = ETIME; return 0;}
400 #else /* def ETIME */
401 {errno = EINVAL; return -1;}
402 #endif /* ndef ETIME */
403 if (x == Mono_Posix_Error_ENOSR)
404 #ifdef ENOSR
405 {*r = ENOSR; return 0;}
406 #else /* def ENOSR */
407 {errno = EINVAL; return -1;}
408 #endif /* ndef ENOSR */
409 if (x == Mono_Posix_Error_ENONET)
410 #ifdef ENONET
411 {*r = ENONET; return 0;}
412 #else /* def ENONET */
413 {errno = EINVAL; return -1;}
414 #endif /* ndef ENONET */
415 if (x == Mono_Posix_Error_ENOPKG)
416 #ifdef ENOPKG
417 {*r = ENOPKG; return 0;}
418 #else /* def ENOPKG */
419 {errno = EINVAL; return -1;}
420 #endif /* ndef ENOPKG */
421 if (x == Mono_Posix_Error_EREMOTE)
422 #ifdef EREMOTE
423 {*r = EREMOTE; return 0;}
424 #else /* def EREMOTE */
425 {errno = EINVAL; return -1;}
426 #endif /* ndef EREMOTE */
427 if (x == Mono_Posix_Error_ENOLINK)
428 #ifdef ENOLINK
429 {*r = ENOLINK; return 0;}
430 #else /* def ENOLINK */
431 {errno = EINVAL; return -1;}
432 #endif /* ndef ENOLINK */
433 if (x == Mono_Posix_Error_EADV)
434 #ifdef EADV
435 {*r = EADV; return 0;}
436 #else /* def EADV */
437 {errno = EINVAL; return -1;}
438 #endif /* ndef EADV */
439 if (x == Mono_Posix_Error_ESRMNT)
440 #ifdef ESRMNT
441 {*r = ESRMNT; return 0;}
442 #else /* def ESRMNT */
443 {errno = EINVAL; return -1;}
444 #endif /* ndef ESRMNT */
445 if (x == Mono_Posix_Error_ECOMM)
446 #ifdef ECOMM
447 {*r = ECOMM; return 0;}
448 #else /* def ECOMM */
449 {errno = EINVAL; return -1;}
450 #endif /* ndef ECOMM */
451 if (x == Mono_Posix_Error_EPROTO)
452 #ifdef EPROTO
453 {*r = EPROTO; return 0;}
454 #else /* def EPROTO */
455 {errno = EINVAL; return -1;}
456 #endif /* ndef EPROTO */
457 if (x == Mono_Posix_Error_EMULTIHOP)
458 #ifdef EMULTIHOP
459 {*r = EMULTIHOP; return 0;}
460 #else /* def EMULTIHOP */
461 {errno = EINVAL; return -1;}
462 #endif /* ndef EMULTIHOP */
463 if (x == Mono_Posix_Error_EDOTDOT)
464 #ifdef EDOTDOT
465 {*r = EDOTDOT; return 0;}
466 #else /* def EDOTDOT */
467 {errno = EINVAL; return -1;}
468 #endif /* ndef EDOTDOT */
469 if (x == Mono_Posix_Error_EBADMSG)
470 #ifdef EBADMSG
471 {*r = EBADMSG; return 0;}
472 #else /* def EBADMSG */
473 {errno = EINVAL; return -1;}
474 #endif /* ndef EBADMSG */
475 if (x == Mono_Posix_Error_EOVERFLOW)
476 #ifdef EOVERFLOW
477 {*r = EOVERFLOW; return 0;}
478 #else /* def EOVERFLOW */
479 {errno = EINVAL; return -1;}
480 #endif /* ndef EOVERFLOW */
481 if (x == Mono_Posix_Error_ENOTUNIQ)
482 #ifdef ENOTUNIQ
483 {*r = ENOTUNIQ; return 0;}
484 #else /* def ENOTUNIQ */
485 {errno = EINVAL; return -1;}
486 #endif /* ndef ENOTUNIQ */
487 if (x == Mono_Posix_Error_EBADFD)
488 #ifdef EBADFD
489 {*r = EBADFD; return 0;}
490 #else /* def EBADFD */
491 {errno = EINVAL; return -1;}
492 #endif /* ndef EBADFD */
493 if (x == Mono_Posix_Error_EREMCHG)
494 #ifdef EREMCHG
495 {*r = EREMCHG; return 0;}
496 #else /* def EREMCHG */
497 {errno = EINVAL; return -1;}
498 #endif /* ndef EREMCHG */
499 if (x == Mono_Posix_Error_ELIBACC)
500 #ifdef ELIBACC
501 {*r = ELIBACC; return 0;}
502 #else /* def ELIBACC */
503 {errno = EINVAL; return -1;}
504 #endif /* ndef ELIBACC */
505 if (x == Mono_Posix_Error_ELIBBAD)
506 #ifdef ELIBBAD
507 {*r = ELIBBAD; return 0;}
508 #else /* def ELIBBAD */
509 {errno = EINVAL; return -1;}
510 #endif /* ndef ELIBBAD */
511 if (x == Mono_Posix_Error_ELIBSCN)
512 #ifdef ELIBSCN
513 {*r = ELIBSCN; return 0;}
514 #else /* def ELIBSCN */
515 {errno = EINVAL; return -1;}
516 #endif /* ndef ELIBSCN */
517 if (x == Mono_Posix_Error_ELIBMAX)
518 #ifdef ELIBMAX
519 {*r = ELIBMAX; return 0;}
520 #else /* def ELIBMAX */
521 {errno = EINVAL; return -1;}
522 #endif /* ndef ELIBMAX */
523 if (x == Mono_Posix_Error_ELIBEXEC)
524 #ifdef ELIBEXEC
525 {*r = ELIBEXEC; return 0;}
526 #else /* def ELIBEXEC */
527 {errno = EINVAL; return -1;}
528 #endif /* ndef ELIBEXEC */
529 if (x == Mono_Posix_Error_EILSEQ)
530 #ifdef EILSEQ
531 {*r = EILSEQ; return 0;}
532 #else /* def EILSEQ */
533 {errno = EINVAL; return -1;}
534 #endif /* ndef EILSEQ */
535 if (x == Mono_Posix_Error_ERESTART)
536 #ifdef ERESTART
537 {*r = ERESTART; return 0;}
538 #else /* def ERESTART */
539 {errno = EINVAL; return -1;}
540 #endif /* ndef ERESTART */
541 if (x == Mono_Posix_Error_ESTRPIPE)
542 #ifdef ESTRPIPE
543 {*r = ESTRPIPE; return 0;}
544 #else /* def ESTRPIPE */
545 {errno = EINVAL; return -1;}
546 #endif /* ndef ESTRPIPE */
547 if (x == Mono_Posix_Error_EUSERS)
548 #ifdef EUSERS
549 {*r = EUSERS; return 0;}
550 #else /* def EUSERS */
551 {errno = EINVAL; return -1;}
552 #endif /* ndef EUSERS */
553 if (x == Mono_Posix_Error_ENOTSOCK)
554 #ifdef ENOTSOCK
555 {*r = ENOTSOCK; return 0;}
556 #else /* def ENOTSOCK */
557 {errno = EINVAL; return -1;}
558 #endif /* ndef ENOTSOCK */
559 if (x == Mono_Posix_Error_EDESTADDRREQ)
560 #ifdef EDESTADDRREQ
561 {*r = EDESTADDRREQ; return 0;}
562 #else /* def EDESTADDRREQ */
563 {errno = EINVAL; return -1;}
564 #endif /* ndef EDESTADDRREQ */
565 if (x == Mono_Posix_Error_EMSGSIZE)
566 #ifdef EMSGSIZE
567 {*r = EMSGSIZE; return 0;}
568 #else /* def EMSGSIZE */
569 {errno = EINVAL; return -1;}
570 #endif /* ndef EMSGSIZE */
571 if (x == Mono_Posix_Error_EPROTOTYPE)
572 #ifdef EPROTOTYPE
573 {*r = EPROTOTYPE; return 0;}
574 #else /* def EPROTOTYPE */
575 {errno = EINVAL; return -1;}
576 #endif /* ndef EPROTOTYPE */
577 if (x == Mono_Posix_Error_ENOPROTOOPT)
578 #ifdef ENOPROTOOPT
579 {*r = ENOPROTOOPT; return 0;}
580 #else /* def ENOPROTOOPT */
581 {errno = EINVAL; return -1;}
582 #endif /* ndef ENOPROTOOPT */
583 if (x == Mono_Posix_Error_EPROTONOSUPPORT)
584 #ifdef EPROTONOSUPPORT
585 {*r = EPROTONOSUPPORT; return 0;}
586 #else /* def EPROTONOSUPPORT */
587 {errno = EINVAL; return -1;}
588 #endif /* ndef EPROTONOSUPPORT */
589 if (x == Mono_Posix_Error_ESOCKTNOSUPPORT)
590 #ifdef ESOCKTNOSUPPORT
591 {*r = ESOCKTNOSUPPORT; return 0;}
592 #else /* def ESOCKTNOSUPPORT */
593 {errno = EINVAL; return -1;}
594 #endif /* ndef ESOCKTNOSUPPORT */
595 if (x == Mono_Posix_Error_EOPNOTSUPP)
596 #ifdef EOPNOTSUPP
597 {*r = EOPNOTSUPP; return 0;}
598 #else /* def EOPNOTSUPP */
599 {errno = EINVAL; return -1;}
600 #endif /* ndef EOPNOTSUPP */
601 if (x == Mono_Posix_Error_EPFNOSUPPORT)
602 #ifdef EPFNOSUPPORT
603 {*r = EPFNOSUPPORT; return 0;}
604 #else /* def EPFNOSUPPORT */
605 {errno = EINVAL; return -1;}
606 #endif /* ndef EPFNOSUPPORT */
607 if (x == Mono_Posix_Error_EAFNOSUPPORT)
608 #ifdef EAFNOSUPPORT
609 {*r = EAFNOSUPPORT; return 0;}
610 #else /* def EAFNOSUPPORT */
611 {errno = EINVAL; return -1;}
612 #endif /* ndef EAFNOSUPPORT */
613 if (x == Mono_Posix_Error_EADDRINUSE)
614 #ifdef EADDRINUSE
615 {*r = EADDRINUSE; return 0;}
616 #else /* def EADDRINUSE */
617 {errno = EINVAL; return -1;}
618 #endif /* ndef EADDRINUSE */
619 if (x == Mono_Posix_Error_EADDRNOTAVAIL)
620 #ifdef EADDRNOTAVAIL
621 {*r = EADDRNOTAVAIL; return 0;}
622 #else /* def EADDRNOTAVAIL */
623 {errno = EINVAL; return -1;}
624 #endif /* ndef EADDRNOTAVAIL */
625 if (x == Mono_Posix_Error_ENETDOWN)
626 #ifdef ENETDOWN
627 {*r = ENETDOWN; return 0;}
628 #else /* def ENETDOWN */
629 {errno = EINVAL; return -1;}
630 #endif /* ndef ENETDOWN */
631 if (x == Mono_Posix_Error_ENETUNREACH)
632 #ifdef ENETUNREACH
633 {*r = ENETUNREACH; return 0;}
634 #else /* def ENETUNREACH */
635 {errno = EINVAL; return -1;}
636 #endif /* ndef ENETUNREACH */
637 if (x == Mono_Posix_Error_ENETRESET)
638 #ifdef ENETRESET
639 {*r = ENETRESET; return 0;}
640 #else /* def ENETRESET */
641 {errno = EINVAL; return -1;}
642 #endif /* ndef ENETRESET */
643 if (x == Mono_Posix_Error_ECONNABORTED)
644 #ifdef ECONNABORTED
645 {*r = ECONNABORTED; return 0;}
646 #else /* def ECONNABORTED */
647 {errno = EINVAL; return -1;}
648 #endif /* ndef ECONNABORTED */
649 if (x == Mono_Posix_Error_ECONNRESET)
650 #ifdef ECONNRESET
651 {*r = ECONNRESET; return 0;}
652 #else /* def ECONNRESET */
653 {errno = EINVAL; return -1;}
654 #endif /* ndef ECONNRESET */
655 if (x == Mono_Posix_Error_ENOBUFS)
656 #ifdef ENOBUFS
657 {*r = ENOBUFS; return 0;}
658 #else /* def ENOBUFS */
659 {errno = EINVAL; return -1;}
660 #endif /* ndef ENOBUFS */
661 if (x == Mono_Posix_Error_EISCONN)
662 #ifdef EISCONN
663 {*r = EISCONN; return 0;}
664 #else /* def EISCONN */
665 {errno = EINVAL; return -1;}
666 #endif /* ndef EISCONN */
667 if (x == Mono_Posix_Error_ENOTCONN)
668 #ifdef ENOTCONN
669 {*r = ENOTCONN; return 0;}
670 #else /* def ENOTCONN */
671 {errno = EINVAL; return -1;}
672 #endif /* ndef ENOTCONN */
673 if (x == Mono_Posix_Error_ESHUTDOWN)
674 #ifdef ESHUTDOWN
675 {*r = ESHUTDOWN; return 0;}
676 #else /* def ESHUTDOWN */
677 {errno = EINVAL; return -1;}
678 #endif /* ndef ESHUTDOWN */
679 if (x == Mono_Posix_Error_ETOOMANYREFS)
680 #ifdef ETOOMANYREFS
681 {*r = ETOOMANYREFS; return 0;}
682 #else /* def ETOOMANYREFS */
683 {errno = EINVAL; return -1;}
684 #endif /* ndef ETOOMANYREFS */
685 if (x == Mono_Posix_Error_ETIMEDOUT)
686 #ifdef ETIMEDOUT
687 {*r = ETIMEDOUT; return 0;}
688 #else /* def ETIMEDOUT */
689 {errno = EINVAL; return -1;}
690 #endif /* ndef ETIMEDOUT */
691 if (x == Mono_Posix_Error_ECONNREFUSED)
692 #ifdef ECONNREFUSED
693 {*r = ECONNREFUSED; return 0;}
694 #else /* def ECONNREFUSED */
695 {errno = EINVAL; return -1;}
696 #endif /* ndef ECONNREFUSED */
697 if (x == Mono_Posix_Error_EHOSTDOWN)
698 #ifdef EHOSTDOWN
699 {*r = EHOSTDOWN; return 0;}
700 #else /* def EHOSTDOWN */
701 {errno = EINVAL; return -1;}
702 #endif /* ndef EHOSTDOWN */
703 if (x == Mono_Posix_Error_EHOSTUNREACH)
704 #ifdef EHOSTUNREACH
705 {*r = EHOSTUNREACH; return 0;}
706 #else /* def EHOSTUNREACH */
707 {errno = EINVAL; return -1;}
708 #endif /* ndef EHOSTUNREACH */
709 if (x == Mono_Posix_Error_EALREADY)
710 #ifdef EALREADY
711 {*r = EALREADY; return 0;}
712 #else /* def EALREADY */
713 {errno = EINVAL; return -1;}
714 #endif /* ndef EALREADY */
715 if (x == Mono_Posix_Error_EINPROGRESS)
716 #ifdef EINPROGRESS
717 {*r = EINPROGRESS; return 0;}
718 #else /* def EINPROGRESS */
719 {errno = EINVAL; return -1;}
720 #endif /* ndef EINPROGRESS */
721 if (x == Mono_Posix_Error_ESTALE)
722 #ifdef ESTALE
723 {*r = ESTALE; return 0;}
724 #else /* def ESTALE */
725 {errno = EINVAL; return -1;}
726 #endif /* ndef ESTALE */
727 if (x == Mono_Posix_Error_EUCLEAN)
728 #ifdef EUCLEAN
729 {*r = EUCLEAN; return 0;}
730 #else /* def EUCLEAN */
731 {errno = EINVAL; return -1;}
732 #endif /* ndef EUCLEAN */
733 if (x == Mono_Posix_Error_ENOTNAM)
734 #ifdef ENOTNAM
735 {*r = ENOTNAM; return 0;}
736 #else /* def ENOTNAM */
737 {errno = EINVAL; return -1;}
738 #endif /* ndef ENOTNAM */
739 if (x == Mono_Posix_Error_ENAVAIL)
740 #ifdef ENAVAIL
741 {*r = ENAVAIL; return 0;}
742 #else /* def ENAVAIL */
743 {errno = EINVAL; return -1;}
744 #endif /* ndef ENAVAIL */
745 if (x == Mono_Posix_Error_EISNAM)
746 #ifdef EISNAM
747 {*r = EISNAM; return 0;}
748 #else /* def EISNAM */
749 {errno = EINVAL; return -1;}
750 #endif /* ndef EISNAM */
751 if (x == Mono_Posix_Error_EREMOTEIO)
752 #ifdef EREMOTEIO
753 {*r = EREMOTEIO; return 0;}
754 #else /* def EREMOTEIO */
755 {errno = EINVAL; return -1;}
756 #endif /* ndef EREMOTEIO */
757 if (x == Mono_Posix_Error_EDQUOT)
758 #ifdef EDQUOT
759 {*r = EDQUOT; return 0;}
760 #else /* def EDQUOT */
761 {errno = EINVAL; return -1;}
762 #endif /* ndef EDQUOT */
763 if (x == Mono_Posix_Error_ENOMEDIUM)
764 #ifdef ENOMEDIUM
765 {*r = ENOMEDIUM; return 0;}
766 #else /* def ENOMEDIUM */
767 {errno = EINVAL; return -1;}
768 #endif /* ndef ENOMEDIUM */
769 if (x == Mono_Posix_Error_EMEDIUMTYPE)
770 #ifdef EMEDIUMTYPE
771 {*r = EMEDIUMTYPE; return 0;}
772 #else /* def EMEDIUMTYPE */
773 {errno = EINVAL; return -1;}
774 #endif /* ndef EMEDIUMTYPE */
775 errno = EINVAL; return -1;
778 int Mono_Posix_ToError (int x, int *r)
780 *r = 0;
781 if (x == 0)
782 return 0;
783 #ifdef EPERM
784 if (x == EPERM)
785 {*r = Mono_Posix_Error_EPERM; return 0;}
786 #endif /* ndef EPERM */
787 #ifdef ENOENT
788 if (x == ENOENT)
789 {*r = Mono_Posix_Error_ENOENT; return 0;}
790 #endif /* ndef ENOENT */
791 #ifdef ESRCH
792 if (x == ESRCH)
793 {*r = Mono_Posix_Error_ESRCH; return 0;}
794 #endif /* ndef ESRCH */
795 #ifdef EINTR
796 if (x == EINTR)
797 {*r = Mono_Posix_Error_EINTR; return 0;}
798 #endif /* ndef EINTR */
799 #ifdef EIO
800 if (x == EIO)
801 {*r = Mono_Posix_Error_EIO; return 0;}
802 #endif /* ndef EIO */
803 #ifdef ENXIO
804 if (x == ENXIO)
805 {*r = Mono_Posix_Error_ENXIO; return 0;}
806 #endif /* ndef ENXIO */
807 #ifdef E2BIG
808 if (x == E2BIG)
809 {*r = Mono_Posix_Error_E2BIG; return 0;}
810 #endif /* ndef E2BIG */
811 #ifdef ENOEXEC
812 if (x == ENOEXEC)
813 {*r = Mono_Posix_Error_ENOEXEC; return 0;}
814 #endif /* ndef ENOEXEC */
815 #ifdef EBADF
816 if (x == EBADF)
817 {*r = Mono_Posix_Error_EBADF; return 0;}
818 #endif /* ndef EBADF */
819 #ifdef ECHILD
820 if (x == ECHILD)
821 {*r = Mono_Posix_Error_ECHILD; return 0;}
822 #endif /* ndef ECHILD */
823 #ifdef EAGAIN
824 if (x == EAGAIN)
825 {*r = Mono_Posix_Error_EAGAIN; return 0;}
826 #endif /* ndef EAGAIN */
827 #ifdef ENOMEM
828 if (x == ENOMEM)
829 {*r = Mono_Posix_Error_ENOMEM; return 0;}
830 #endif /* ndef ENOMEM */
831 #ifdef EACCES
832 if (x == EACCES)
833 {*r = Mono_Posix_Error_EACCES; return 0;}
834 #endif /* ndef EACCES */
835 #ifdef EFAULT
836 if (x == EFAULT)
837 {*r = Mono_Posix_Error_EFAULT; return 0;}
838 #endif /* ndef EFAULT */
839 #ifdef ENOTBLK
840 if (x == ENOTBLK)
841 {*r = Mono_Posix_Error_ENOTBLK; return 0;}
842 #endif /* ndef ENOTBLK */
843 #ifdef EBUSY
844 if (x == EBUSY)
845 {*r = Mono_Posix_Error_EBUSY; return 0;}
846 #endif /* ndef EBUSY */
847 #ifdef EEXIST
848 if (x == EEXIST)
849 {*r = Mono_Posix_Error_EEXIST; return 0;}
850 #endif /* ndef EEXIST */
851 #ifdef EXDEV
852 if (x == EXDEV)
853 {*r = Mono_Posix_Error_EXDEV; return 0;}
854 #endif /* ndef EXDEV */
855 #ifdef ENODEV
856 if (x == ENODEV)
857 {*r = Mono_Posix_Error_ENODEV; return 0;}
858 #endif /* ndef ENODEV */
859 #ifdef ENOTDIR
860 if (x == ENOTDIR)
861 {*r = Mono_Posix_Error_ENOTDIR; return 0;}
862 #endif /* ndef ENOTDIR */
863 #ifdef EISDIR
864 if (x == EISDIR)
865 {*r = Mono_Posix_Error_EISDIR; return 0;}
866 #endif /* ndef EISDIR */
867 #ifdef EINVAL
868 if (x == EINVAL)
869 {*r = Mono_Posix_Error_EINVAL; return 0;}
870 #endif /* ndef EINVAL */
871 #ifdef ENFILE
872 if (x == ENFILE)
873 {*r = Mono_Posix_Error_ENFILE; return 0;}
874 #endif /* ndef ENFILE */
875 #ifdef EMFILE
876 if (x == EMFILE)
877 {*r = Mono_Posix_Error_EMFILE; return 0;}
878 #endif /* ndef EMFILE */
879 #ifdef ENOTTY
880 if (x == ENOTTY)
881 {*r = Mono_Posix_Error_ENOTTY; return 0;}
882 #endif /* ndef ENOTTY */
883 #ifdef ETXTBSY
884 if (x == ETXTBSY)
885 {*r = Mono_Posix_Error_ETXTBSY; return 0;}
886 #endif /* ndef ETXTBSY */
887 #ifdef EFBIG
888 if (x == EFBIG)
889 {*r = Mono_Posix_Error_EFBIG; return 0;}
890 #endif /* ndef EFBIG */
891 #ifdef ENOSPC
892 if (x == ENOSPC)
893 {*r = Mono_Posix_Error_ENOSPC; return 0;}
894 #endif /* ndef ENOSPC */
895 #ifdef ESPIPE
896 if (x == ESPIPE)
897 {*r = Mono_Posix_Error_ESPIPE; return 0;}
898 #endif /* ndef ESPIPE */
899 #ifdef EROFS
900 if (x == EROFS)
901 {*r = Mono_Posix_Error_EROFS; return 0;}
902 #endif /* ndef EROFS */
903 #ifdef EMLINK
904 if (x == EMLINK)
905 {*r = Mono_Posix_Error_EMLINK; return 0;}
906 #endif /* ndef EMLINK */
907 #ifdef EPIPE
908 if (x == EPIPE)
909 {*r = Mono_Posix_Error_EPIPE; return 0;}
910 #endif /* ndef EPIPE */
911 #ifdef EDOM
912 if (x == EDOM)
913 {*r = Mono_Posix_Error_EDOM; return 0;}
914 #endif /* ndef EDOM */
915 #ifdef ERANGE
916 if (x == ERANGE)
917 {*r = Mono_Posix_Error_ERANGE; return 0;}
918 #endif /* ndef ERANGE */
919 #ifdef EDEADLK
920 if (x == EDEADLK)
921 {*r = Mono_Posix_Error_EDEADLK; return 0;}
922 #endif /* ndef EDEADLK */
923 #ifdef ENAMETOOLONG
924 if (x == ENAMETOOLONG)
925 {*r = Mono_Posix_Error_ENAMETOOLONG; return 0;}
926 #endif /* ndef ENAMETOOLONG */
927 #ifdef ENOLCK
928 if (x == ENOLCK)
929 {*r = Mono_Posix_Error_ENOLCK; return 0;}
930 #endif /* ndef ENOLCK */
931 #ifdef ENOSYS
932 if (x == ENOSYS)
933 {*r = Mono_Posix_Error_ENOSYS; return 0;}
934 #endif /* ndef ENOSYS */
935 #ifdef ENOTEMPTY
936 if (x == ENOTEMPTY)
937 {*r = Mono_Posix_Error_ENOTEMPTY; return 0;}
938 #endif /* ndef ENOTEMPTY */
939 #ifdef ELOOP
940 if (x == ELOOP)
941 {*r = Mono_Posix_Error_ELOOP; return 0;}
942 #endif /* ndef ELOOP */
943 #ifdef EWOULDBLOCK
944 if (x == EWOULDBLOCK)
945 {*r = Mono_Posix_Error_EWOULDBLOCK; return 0;}
946 #endif /* ndef EWOULDBLOCK */
947 #ifdef ENOMSG
948 if (x == ENOMSG)
949 {*r = Mono_Posix_Error_ENOMSG; return 0;}
950 #endif /* ndef ENOMSG */
951 #ifdef EIDRM
952 if (x == EIDRM)
953 {*r = Mono_Posix_Error_EIDRM; return 0;}
954 #endif /* ndef EIDRM */
955 #ifdef ECHRNG
956 if (x == ECHRNG)
957 {*r = Mono_Posix_Error_ECHRNG; return 0;}
958 #endif /* ndef ECHRNG */
959 #ifdef EL2NSYNC
960 if (x == EL2NSYNC)
961 {*r = Mono_Posix_Error_EL2NSYNC; return 0;}
962 #endif /* ndef EL2NSYNC */
963 #ifdef EL3HLT
964 if (x == EL3HLT)
965 {*r = Mono_Posix_Error_EL3HLT; return 0;}
966 #endif /* ndef EL3HLT */
967 #ifdef EL3RST
968 if (x == EL3RST)
969 {*r = Mono_Posix_Error_EL3RST; return 0;}
970 #endif /* ndef EL3RST */
971 #ifdef ELNRNG
972 if (x == ELNRNG)
973 {*r = Mono_Posix_Error_ELNRNG; return 0;}
974 #endif /* ndef ELNRNG */
975 #ifdef EUNATCH
976 if (x == EUNATCH)
977 {*r = Mono_Posix_Error_EUNATCH; return 0;}
978 #endif /* ndef EUNATCH */
979 #ifdef ENOCSI
980 if (x == ENOCSI)
981 {*r = Mono_Posix_Error_ENOCSI; return 0;}
982 #endif /* ndef ENOCSI */
983 #ifdef EL2HLT
984 if (x == EL2HLT)
985 {*r = Mono_Posix_Error_EL2HLT; return 0;}
986 #endif /* ndef EL2HLT */
987 #ifdef EBADE
988 if (x == EBADE)
989 {*r = Mono_Posix_Error_EBADE; return 0;}
990 #endif /* ndef EBADE */
991 #ifdef EBADR
992 if (x == EBADR)
993 {*r = Mono_Posix_Error_EBADR; return 0;}
994 #endif /* ndef EBADR */
995 #ifdef EXFULL
996 if (x == EXFULL)
997 {*r = Mono_Posix_Error_EXFULL; return 0;}
998 #endif /* ndef EXFULL */
999 #ifdef ENOANO
1000 if (x == ENOANO)
1001 {*r = Mono_Posix_Error_ENOANO; return 0;}
1002 #endif /* ndef ENOANO */
1003 #ifdef EBADRQC
1004 if (x == EBADRQC)
1005 {*r = Mono_Posix_Error_EBADRQC; return 0;}
1006 #endif /* ndef EBADRQC */
1007 #ifdef EBADSLT
1008 if (x == EBADSLT)
1009 {*r = Mono_Posix_Error_EBADSLT; return 0;}
1010 #endif /* ndef EBADSLT */
1011 #ifdef EDEADLOCK
1012 if (x == EDEADLOCK)
1013 {*r = Mono_Posix_Error_EDEADLOCK; return 0;}
1014 #endif /* ndef EDEADLOCK */
1015 #ifdef EBFONT
1016 if (x == EBFONT)
1017 {*r = Mono_Posix_Error_EBFONT; return 0;}
1018 #endif /* ndef EBFONT */
1019 #ifdef ENOSTR
1020 if (x == ENOSTR)
1021 {*r = Mono_Posix_Error_ENOSTR; return 0;}
1022 #endif /* ndef ENOSTR */
1023 #ifdef ENODATA
1024 if (x == ENODATA)
1025 {*r = Mono_Posix_Error_ENODATA; return 0;}
1026 #endif /* ndef ENODATA */
1027 #ifdef ETIME
1028 if (x == ETIME)
1029 {*r = Mono_Posix_Error_ETIME; return 0;}
1030 #endif /* ndef ETIME */
1031 #ifdef ENOSR
1032 if (x == ENOSR)
1033 {*r = Mono_Posix_Error_ENOSR; return 0;}
1034 #endif /* ndef ENOSR */
1035 #ifdef ENONET
1036 if (x == ENONET)
1037 {*r = Mono_Posix_Error_ENONET; return 0;}
1038 #endif /* ndef ENONET */
1039 #ifdef ENOPKG
1040 if (x == ENOPKG)
1041 {*r = Mono_Posix_Error_ENOPKG; return 0;}
1042 #endif /* ndef ENOPKG */
1043 #ifdef EREMOTE
1044 if (x == EREMOTE)
1045 {*r = Mono_Posix_Error_EREMOTE; return 0;}
1046 #endif /* ndef EREMOTE */
1047 #ifdef ENOLINK
1048 if (x == ENOLINK)
1049 {*r = Mono_Posix_Error_ENOLINK; return 0;}
1050 #endif /* ndef ENOLINK */
1051 #ifdef EADV
1052 if (x == EADV)
1053 {*r = Mono_Posix_Error_EADV; return 0;}
1054 #endif /* ndef EADV */
1055 #ifdef ESRMNT
1056 if (x == ESRMNT)
1057 {*r = Mono_Posix_Error_ESRMNT; return 0;}
1058 #endif /* ndef ESRMNT */
1059 #ifdef ECOMM
1060 if (x == ECOMM)
1061 {*r = Mono_Posix_Error_ECOMM; return 0;}
1062 #endif /* ndef ECOMM */
1063 #ifdef EPROTO
1064 if (x == EPROTO)
1065 {*r = Mono_Posix_Error_EPROTO; return 0;}
1066 #endif /* ndef EPROTO */
1067 #ifdef EMULTIHOP
1068 if (x == EMULTIHOP)
1069 {*r = Mono_Posix_Error_EMULTIHOP; return 0;}
1070 #endif /* ndef EMULTIHOP */
1071 #ifdef EDOTDOT
1072 if (x == EDOTDOT)
1073 {*r = Mono_Posix_Error_EDOTDOT; return 0;}
1074 #endif /* ndef EDOTDOT */
1075 #ifdef EBADMSG
1076 if (x == EBADMSG)
1077 {*r = Mono_Posix_Error_EBADMSG; return 0;}
1078 #endif /* ndef EBADMSG */
1079 #ifdef EOVERFLOW
1080 if (x == EOVERFLOW)
1081 {*r = Mono_Posix_Error_EOVERFLOW; return 0;}
1082 #endif /* ndef EOVERFLOW */
1083 #ifdef ENOTUNIQ
1084 if (x == ENOTUNIQ)
1085 {*r = Mono_Posix_Error_ENOTUNIQ; return 0;}
1086 #endif /* ndef ENOTUNIQ */
1087 #ifdef EBADFD
1088 if (x == EBADFD)
1089 {*r = Mono_Posix_Error_EBADFD; return 0;}
1090 #endif /* ndef EBADFD */
1091 #ifdef EREMCHG
1092 if (x == EREMCHG)
1093 {*r = Mono_Posix_Error_EREMCHG; return 0;}
1094 #endif /* ndef EREMCHG */
1095 #ifdef ELIBACC
1096 if (x == ELIBACC)
1097 {*r = Mono_Posix_Error_ELIBACC; return 0;}
1098 #endif /* ndef ELIBACC */
1099 #ifdef ELIBBAD
1100 if (x == ELIBBAD)
1101 {*r = Mono_Posix_Error_ELIBBAD; return 0;}
1102 #endif /* ndef ELIBBAD */
1103 #ifdef ELIBSCN
1104 if (x == ELIBSCN)
1105 {*r = Mono_Posix_Error_ELIBSCN; return 0;}
1106 #endif /* ndef ELIBSCN */
1107 #ifdef ELIBMAX
1108 if (x == ELIBMAX)
1109 {*r = Mono_Posix_Error_ELIBMAX; return 0;}
1110 #endif /* ndef ELIBMAX */
1111 #ifdef ELIBEXEC
1112 if (x == ELIBEXEC)
1113 {*r = Mono_Posix_Error_ELIBEXEC; return 0;}
1114 #endif /* ndef ELIBEXEC */
1115 #ifdef EILSEQ
1116 if (x == EILSEQ)
1117 {*r = Mono_Posix_Error_EILSEQ; return 0;}
1118 #endif /* ndef EILSEQ */
1119 #ifdef ERESTART
1120 if (x == ERESTART)
1121 {*r = Mono_Posix_Error_ERESTART; return 0;}
1122 #endif /* ndef ERESTART */
1123 #ifdef ESTRPIPE
1124 if (x == ESTRPIPE)
1125 {*r = Mono_Posix_Error_ESTRPIPE; return 0;}
1126 #endif /* ndef ESTRPIPE */
1127 #ifdef EUSERS
1128 if (x == EUSERS)
1129 {*r = Mono_Posix_Error_EUSERS; return 0;}
1130 #endif /* ndef EUSERS */
1131 #ifdef ENOTSOCK
1132 if (x == ENOTSOCK)
1133 {*r = Mono_Posix_Error_ENOTSOCK; return 0;}
1134 #endif /* ndef ENOTSOCK */
1135 #ifdef EDESTADDRREQ
1136 if (x == EDESTADDRREQ)
1137 {*r = Mono_Posix_Error_EDESTADDRREQ; return 0;}
1138 #endif /* ndef EDESTADDRREQ */
1139 #ifdef EMSGSIZE
1140 if (x == EMSGSIZE)
1141 {*r = Mono_Posix_Error_EMSGSIZE; return 0;}
1142 #endif /* ndef EMSGSIZE */
1143 #ifdef EPROTOTYPE
1144 if (x == EPROTOTYPE)
1145 {*r = Mono_Posix_Error_EPROTOTYPE; return 0;}
1146 #endif /* ndef EPROTOTYPE */
1147 #ifdef ENOPROTOOPT
1148 if (x == ENOPROTOOPT)
1149 {*r = Mono_Posix_Error_ENOPROTOOPT; return 0;}
1150 #endif /* ndef ENOPROTOOPT */
1151 #ifdef EPROTONOSUPPORT
1152 if (x == EPROTONOSUPPORT)
1153 {*r = Mono_Posix_Error_EPROTONOSUPPORT; return 0;}
1154 #endif /* ndef EPROTONOSUPPORT */
1155 #ifdef ESOCKTNOSUPPORT
1156 if (x == ESOCKTNOSUPPORT)
1157 {*r = Mono_Posix_Error_ESOCKTNOSUPPORT; return 0;}
1158 #endif /* ndef ESOCKTNOSUPPORT */
1159 #ifdef EOPNOTSUPP
1160 if (x == EOPNOTSUPP)
1161 {*r = Mono_Posix_Error_EOPNOTSUPP; return 0;}
1162 #endif /* ndef EOPNOTSUPP */
1163 #ifdef EPFNOSUPPORT
1164 if (x == EPFNOSUPPORT)
1165 {*r = Mono_Posix_Error_EPFNOSUPPORT; return 0;}
1166 #endif /* ndef EPFNOSUPPORT */
1167 #ifdef EAFNOSUPPORT
1168 if (x == EAFNOSUPPORT)
1169 {*r = Mono_Posix_Error_EAFNOSUPPORT; return 0;}
1170 #endif /* ndef EAFNOSUPPORT */
1171 #ifdef EADDRINUSE
1172 if (x == EADDRINUSE)
1173 {*r = Mono_Posix_Error_EADDRINUSE; return 0;}
1174 #endif /* ndef EADDRINUSE */
1175 #ifdef EADDRNOTAVAIL
1176 if (x == EADDRNOTAVAIL)
1177 {*r = Mono_Posix_Error_EADDRNOTAVAIL; return 0;}
1178 #endif /* ndef EADDRNOTAVAIL */
1179 #ifdef ENETDOWN
1180 if (x == ENETDOWN)
1181 {*r = Mono_Posix_Error_ENETDOWN; return 0;}
1182 #endif /* ndef ENETDOWN */
1183 #ifdef ENETUNREACH
1184 if (x == ENETUNREACH)
1185 {*r = Mono_Posix_Error_ENETUNREACH; return 0;}
1186 #endif /* ndef ENETUNREACH */
1187 #ifdef ENETRESET
1188 if (x == ENETRESET)
1189 {*r = Mono_Posix_Error_ENETRESET; return 0;}
1190 #endif /* ndef ENETRESET */
1191 #ifdef ECONNABORTED
1192 if (x == ECONNABORTED)
1193 {*r = Mono_Posix_Error_ECONNABORTED; return 0;}
1194 #endif /* ndef ECONNABORTED */
1195 #ifdef ECONNRESET
1196 if (x == ECONNRESET)
1197 {*r = Mono_Posix_Error_ECONNRESET; return 0;}
1198 #endif /* ndef ECONNRESET */
1199 #ifdef ENOBUFS
1200 if (x == ENOBUFS)
1201 {*r = Mono_Posix_Error_ENOBUFS; return 0;}
1202 #endif /* ndef ENOBUFS */
1203 #ifdef EISCONN
1204 if (x == EISCONN)
1205 {*r = Mono_Posix_Error_EISCONN; return 0;}
1206 #endif /* ndef EISCONN */
1207 #ifdef ENOTCONN
1208 if (x == ENOTCONN)
1209 {*r = Mono_Posix_Error_ENOTCONN; return 0;}
1210 #endif /* ndef ENOTCONN */
1211 #ifdef ESHUTDOWN
1212 if (x == ESHUTDOWN)
1213 {*r = Mono_Posix_Error_ESHUTDOWN; return 0;}
1214 #endif /* ndef ESHUTDOWN */
1215 #ifdef ETOOMANYREFS
1216 if (x == ETOOMANYREFS)
1217 {*r = Mono_Posix_Error_ETOOMANYREFS; return 0;}
1218 #endif /* ndef ETOOMANYREFS */
1219 #ifdef ETIMEDOUT
1220 if (x == ETIMEDOUT)
1221 {*r = Mono_Posix_Error_ETIMEDOUT; return 0;}
1222 #endif /* ndef ETIMEDOUT */
1223 #ifdef ECONNREFUSED
1224 if (x == ECONNREFUSED)
1225 {*r = Mono_Posix_Error_ECONNREFUSED; return 0;}
1226 #endif /* ndef ECONNREFUSED */
1227 #ifdef EHOSTDOWN
1228 if (x == EHOSTDOWN)
1229 {*r = Mono_Posix_Error_EHOSTDOWN; return 0;}
1230 #endif /* ndef EHOSTDOWN */
1231 #ifdef EHOSTUNREACH
1232 if (x == EHOSTUNREACH)
1233 {*r = Mono_Posix_Error_EHOSTUNREACH; return 0;}
1234 #endif /* ndef EHOSTUNREACH */
1235 #ifdef EALREADY
1236 if (x == EALREADY)
1237 {*r = Mono_Posix_Error_EALREADY; return 0;}
1238 #endif /* ndef EALREADY */
1239 #ifdef EINPROGRESS
1240 if (x == EINPROGRESS)
1241 {*r = Mono_Posix_Error_EINPROGRESS; return 0;}
1242 #endif /* ndef EINPROGRESS */
1243 #ifdef ESTALE
1244 if (x == ESTALE)
1245 {*r = Mono_Posix_Error_ESTALE; return 0;}
1246 #endif /* ndef ESTALE */
1247 #ifdef EUCLEAN
1248 if (x == EUCLEAN)
1249 {*r = Mono_Posix_Error_EUCLEAN; return 0;}
1250 #endif /* ndef EUCLEAN */
1251 #ifdef ENOTNAM
1252 if (x == ENOTNAM)
1253 {*r = Mono_Posix_Error_ENOTNAM; return 0;}
1254 #endif /* ndef ENOTNAM */
1255 #ifdef ENAVAIL
1256 if (x == ENAVAIL)
1257 {*r = Mono_Posix_Error_ENAVAIL; return 0;}
1258 #endif /* ndef ENAVAIL */
1259 #ifdef EISNAM
1260 if (x == EISNAM)
1261 {*r = Mono_Posix_Error_EISNAM; return 0;}
1262 #endif /* ndef EISNAM */
1263 #ifdef EREMOTEIO
1264 if (x == EREMOTEIO)
1265 {*r = Mono_Posix_Error_EREMOTEIO; return 0;}
1266 #endif /* ndef EREMOTEIO */
1267 #ifdef EDQUOT
1268 if (x == EDQUOT)
1269 {*r = Mono_Posix_Error_EDQUOT; return 0;}
1270 #endif /* ndef EDQUOT */
1271 #ifdef ENOMEDIUM
1272 if (x == ENOMEDIUM)
1273 {*r = Mono_Posix_Error_ENOMEDIUM; return 0;}
1274 #endif /* ndef ENOMEDIUM */
1275 #ifdef EMEDIUMTYPE
1276 if (x == EMEDIUMTYPE)
1277 {*r = Mono_Posix_Error_EMEDIUMTYPE; return 0;}
1278 #endif /* ndef EMEDIUMTYPE */
1279 errno = EINVAL; return -1;
1282 int Mono_Posix_FromOpenFlags (int x, int *r)
1284 *r = 0;
1285 if (x == 0)
1286 return 0;
1287 if ((x & Mono_Posix_OpenFlags_O_RDONLY) == Mono_Posix_OpenFlags_O_RDONLY)
1288 #ifdef O_RDONLY
1289 *r |= O_RDONLY;
1290 #else /* def O_RDONLY */
1291 {errno = EINVAL; return -1;}
1292 #endif /* ndef O_RDONLY */
1293 if ((x & Mono_Posix_OpenFlags_O_WRONLY) == Mono_Posix_OpenFlags_O_WRONLY)
1294 #ifdef O_WRONLY
1295 *r |= O_WRONLY;
1296 #else /* def O_WRONLY */
1297 {errno = EINVAL; return -1;}
1298 #endif /* ndef O_WRONLY */
1299 if ((x & Mono_Posix_OpenFlags_O_RDWR) == Mono_Posix_OpenFlags_O_RDWR)
1300 #ifdef O_RDWR
1301 *r |= O_RDWR;
1302 #else /* def O_RDWR */
1303 {errno = EINVAL; return -1;}
1304 #endif /* ndef O_RDWR */
1305 if ((x & Mono_Posix_OpenFlags_O_CREAT) == Mono_Posix_OpenFlags_O_CREAT)
1306 #ifdef O_CREAT
1307 *r |= O_CREAT;
1308 #else /* def O_CREAT */
1309 {errno = EINVAL; return -1;}
1310 #endif /* ndef O_CREAT */
1311 if ((x & Mono_Posix_OpenFlags_O_EXCL) == Mono_Posix_OpenFlags_O_EXCL)
1312 #ifdef O_EXCL
1313 *r |= O_EXCL;
1314 #else /* def O_EXCL */
1315 {errno = EINVAL; return -1;}
1316 #endif /* ndef O_EXCL */
1317 if ((x & Mono_Posix_OpenFlags_O_NOCTTY) == Mono_Posix_OpenFlags_O_NOCTTY)
1318 #ifdef O_NOCTTY
1319 *r |= O_NOCTTY;
1320 #else /* def O_NOCTTY */
1321 {errno = EINVAL; return -1;}
1322 #endif /* ndef O_NOCTTY */
1323 if ((x & Mono_Posix_OpenFlags_O_TRUNC) == Mono_Posix_OpenFlags_O_TRUNC)
1324 #ifdef O_TRUNC
1325 *r |= O_TRUNC;
1326 #else /* def O_TRUNC */
1327 {errno = EINVAL; return -1;}
1328 #endif /* ndef O_TRUNC */
1329 if ((x & Mono_Posix_OpenFlags_O_APPEND) == Mono_Posix_OpenFlags_O_APPEND)
1330 #ifdef O_APPEND
1331 *r |= O_APPEND;
1332 #else /* def O_APPEND */
1333 {errno = EINVAL; return -1;}
1334 #endif /* ndef O_APPEND */
1335 if ((x & Mono_Posix_OpenFlags_O_NONBLOCK) == Mono_Posix_OpenFlags_O_NONBLOCK)
1336 #ifdef O_NONBLOCK
1337 *r |= O_NONBLOCK;
1338 #else /* def O_NONBLOCK */
1339 {errno = EINVAL; return -1;}
1340 #endif /* ndef O_NONBLOCK */
1341 if ((x & Mono_Posix_OpenFlags_O_SYNC) == Mono_Posix_OpenFlags_O_SYNC)
1342 #ifdef O_SYNC
1343 *r |= O_SYNC;
1344 #else /* def O_SYNC */
1345 {errno = EINVAL; return -1;}
1346 #endif /* ndef O_SYNC */
1347 if ((x & Mono_Posix_OpenFlags_O_NOFOLLOW) == Mono_Posix_OpenFlags_O_NOFOLLOW)
1348 #ifdef O_NOFOLLOW
1349 *r |= O_NOFOLLOW;
1350 #else /* def O_NOFOLLOW */
1351 {errno = EINVAL; return -1;}
1352 #endif /* ndef O_NOFOLLOW */
1353 if ((x & Mono_Posix_OpenFlags_O_DIRECTORY) == Mono_Posix_OpenFlags_O_DIRECTORY)
1354 #ifdef O_DIRECTORY
1355 *r |= O_DIRECTORY;
1356 #else /* def O_DIRECTORY */
1357 {errno = EINVAL; return -1;}
1358 #endif /* ndef O_DIRECTORY */
1359 if ((x & Mono_Posix_OpenFlags_O_DIRECT) == Mono_Posix_OpenFlags_O_DIRECT)
1360 #ifdef O_DIRECT
1361 *r |= O_DIRECT;
1362 #else /* def O_DIRECT */
1363 {errno = EINVAL; return -1;}
1364 #endif /* ndef O_DIRECT */
1365 if ((x & Mono_Posix_OpenFlags_O_ASYNC) == Mono_Posix_OpenFlags_O_ASYNC)
1366 #ifdef O_ASYNC
1367 *r |= O_ASYNC;
1368 #else /* def O_ASYNC */
1369 {errno = EINVAL; return -1;}
1370 #endif /* ndef O_ASYNC */
1371 if ((x & Mono_Posix_OpenFlags_O_LARGEFILE) == Mono_Posix_OpenFlags_O_LARGEFILE)
1372 #ifdef O_LARGEFILE
1373 *r |= O_LARGEFILE;
1374 #else /* def O_LARGEFILE */
1375 {errno = EINVAL; return -1;}
1376 #endif /* ndef O_LARGEFILE */
1377 return 0;
1380 int Mono_Posix_ToOpenFlags (int x, int *r)
1382 *r = 0;
1383 if (x == 0)
1384 return 0;
1385 #ifdef O_RDONLY
1386 if ((x & O_RDONLY) == O_RDONLY)
1387 *r |= Mono_Posix_OpenFlags_O_RDONLY;
1388 #endif /* ndef O_RDONLY */
1389 #ifdef O_WRONLY
1390 if ((x & O_WRONLY) == O_WRONLY)
1391 *r |= Mono_Posix_OpenFlags_O_WRONLY;
1392 #endif /* ndef O_WRONLY */
1393 #ifdef O_RDWR
1394 if ((x & O_RDWR) == O_RDWR)
1395 *r |= Mono_Posix_OpenFlags_O_RDWR;
1396 #endif /* ndef O_RDWR */
1397 #ifdef O_CREAT
1398 if ((x & O_CREAT) == O_CREAT)
1399 *r |= Mono_Posix_OpenFlags_O_CREAT;
1400 #endif /* ndef O_CREAT */
1401 #ifdef O_EXCL
1402 if ((x & O_EXCL) == O_EXCL)
1403 *r |= Mono_Posix_OpenFlags_O_EXCL;
1404 #endif /* ndef O_EXCL */
1405 #ifdef O_NOCTTY
1406 if ((x & O_NOCTTY) == O_NOCTTY)
1407 *r |= Mono_Posix_OpenFlags_O_NOCTTY;
1408 #endif /* ndef O_NOCTTY */
1409 #ifdef O_TRUNC
1410 if ((x & O_TRUNC) == O_TRUNC)
1411 *r |= Mono_Posix_OpenFlags_O_TRUNC;
1412 #endif /* ndef O_TRUNC */
1413 #ifdef O_APPEND
1414 if ((x & O_APPEND) == O_APPEND)
1415 *r |= Mono_Posix_OpenFlags_O_APPEND;
1416 #endif /* ndef O_APPEND */
1417 #ifdef O_NONBLOCK
1418 if ((x & O_NONBLOCK) == O_NONBLOCK)
1419 *r |= Mono_Posix_OpenFlags_O_NONBLOCK;
1420 #endif /* ndef O_NONBLOCK */
1421 #ifdef O_SYNC
1422 if ((x & O_SYNC) == O_SYNC)
1423 *r |= Mono_Posix_OpenFlags_O_SYNC;
1424 #endif /* ndef O_SYNC */
1425 #ifdef O_NOFOLLOW
1426 if ((x & O_NOFOLLOW) == O_NOFOLLOW)
1427 *r |= Mono_Posix_OpenFlags_O_NOFOLLOW;
1428 #endif /* ndef O_NOFOLLOW */
1429 #ifdef O_DIRECTORY
1430 if ((x & O_DIRECTORY) == O_DIRECTORY)
1431 *r |= Mono_Posix_OpenFlags_O_DIRECTORY;
1432 #endif /* ndef O_DIRECTORY */
1433 #ifdef O_DIRECT
1434 if ((x & O_DIRECT) == O_DIRECT)
1435 *r |= Mono_Posix_OpenFlags_O_DIRECT;
1436 #endif /* ndef O_DIRECT */
1437 #ifdef O_ASYNC
1438 if ((x & O_ASYNC) == O_ASYNC)
1439 *r |= Mono_Posix_OpenFlags_O_ASYNC;
1440 #endif /* ndef O_ASYNC */
1441 #ifdef O_LARGEFILE
1442 if ((x & O_LARGEFILE) == O_LARGEFILE)
1443 *r |= Mono_Posix_OpenFlags_O_LARGEFILE;
1444 #endif /* ndef O_LARGEFILE */
1445 return 0;
1448 int Mono_Posix_FromFilePermissions (unsigned int x, unsigned int *r)
1450 *r = 0;
1451 if (x == 0)
1452 return 0;
1453 if ((x & Mono_Posix_FilePermissions_S_ISUID) == Mono_Posix_FilePermissions_S_ISUID)
1454 #ifdef S_ISUID
1455 *r |= S_ISUID;
1456 #else /* def S_ISUID */
1457 {errno = EINVAL; return -1;}
1458 #endif /* ndef S_ISUID */
1459 if ((x & Mono_Posix_FilePermissions_S_ISGID) == Mono_Posix_FilePermissions_S_ISGID)
1460 #ifdef S_ISGID
1461 *r |= S_ISGID;
1462 #else /* def S_ISGID */
1463 {errno = EINVAL; return -1;}
1464 #endif /* ndef S_ISGID */
1465 if ((x & Mono_Posix_FilePermissions_S_ISVTX) == Mono_Posix_FilePermissions_S_ISVTX)
1466 #ifdef S_ISVTX
1467 *r |= S_ISVTX;
1468 #else /* def S_ISVTX */
1469 {errno = EINVAL; return -1;}
1470 #endif /* ndef S_ISVTX */
1471 if ((x & Mono_Posix_FilePermissions_S_IRUSR) == Mono_Posix_FilePermissions_S_IRUSR)
1472 #ifdef S_IRUSR
1473 *r |= S_IRUSR;
1474 #else /* def S_IRUSR */
1475 {errno = EINVAL; return -1;}
1476 #endif /* ndef S_IRUSR */
1477 if ((x & Mono_Posix_FilePermissions_S_IWUSR) == Mono_Posix_FilePermissions_S_IWUSR)
1478 #ifdef S_IWUSR
1479 *r |= S_IWUSR;
1480 #else /* def S_IWUSR */
1481 {errno = EINVAL; return -1;}
1482 #endif /* ndef S_IWUSR */
1483 if ((x & Mono_Posix_FilePermissions_S_IXUSR) == Mono_Posix_FilePermissions_S_IXUSR)
1484 #ifdef S_IXUSR
1485 *r |= S_IXUSR;
1486 #else /* def S_IXUSR */
1487 {errno = EINVAL; return -1;}
1488 #endif /* ndef S_IXUSR */
1489 if ((x & Mono_Posix_FilePermissions_S_IRGRP) == Mono_Posix_FilePermissions_S_IRGRP)
1490 #ifdef S_IRGRP
1491 *r |= S_IRGRP;
1492 #else /* def S_IRGRP */
1493 {errno = EINVAL; return -1;}
1494 #endif /* ndef S_IRGRP */
1495 if ((x & Mono_Posix_FilePermissions_S_IWGRP) == Mono_Posix_FilePermissions_S_IWGRP)
1496 #ifdef S_IWGRP
1497 *r |= S_IWGRP;
1498 #else /* def S_IWGRP */
1499 {errno = EINVAL; return -1;}
1500 #endif /* ndef S_IWGRP */
1501 if ((x & Mono_Posix_FilePermissions_S_IXGRP) == Mono_Posix_FilePermissions_S_IXGRP)
1502 #ifdef S_IXGRP
1503 *r |= S_IXGRP;
1504 #else /* def S_IXGRP */
1505 {errno = EINVAL; return -1;}
1506 #endif /* ndef S_IXGRP */
1507 if ((x & Mono_Posix_FilePermissions_S_IROTH) == Mono_Posix_FilePermissions_S_IROTH)
1508 #ifdef S_IROTH
1509 *r |= S_IROTH;
1510 #else /* def S_IROTH */
1511 {errno = EINVAL; return -1;}
1512 #endif /* ndef S_IROTH */
1513 if ((x & Mono_Posix_FilePermissions_S_IWOTH) == Mono_Posix_FilePermissions_S_IWOTH)
1514 #ifdef S_IWOTH
1515 *r |= S_IWOTH;
1516 #else /* def S_IWOTH */
1517 {errno = EINVAL; return -1;}
1518 #endif /* ndef S_IWOTH */
1519 if ((x & Mono_Posix_FilePermissions_S_IXOTH) == Mono_Posix_FilePermissions_S_IXOTH)
1520 #ifdef S_IXOTH
1521 *r |= S_IXOTH;
1522 #else /* def S_IXOTH */
1523 {errno = EINVAL; return -1;}
1524 #endif /* ndef S_IXOTH */
1525 if ((x & Mono_Posix_FilePermissions_S_IRWXG) == Mono_Posix_FilePermissions_S_IRWXG)
1526 #ifdef S_IRWXG
1527 *r |= S_IRWXG;
1528 #else /* def S_IRWXG */
1529 {errno = EINVAL; return -1;}
1530 #endif /* ndef S_IRWXG */
1531 if ((x & Mono_Posix_FilePermissions_S_IRWXU) == Mono_Posix_FilePermissions_S_IRWXU)
1532 #ifdef S_IRWXU
1533 *r |= S_IRWXU;
1534 #else /* def S_IRWXU */
1535 {errno = EINVAL; return -1;}
1536 #endif /* ndef S_IRWXU */
1537 if ((x & Mono_Posix_FilePermissions_S_IRWXO) == Mono_Posix_FilePermissions_S_IRWXO)
1538 #ifdef S_IRWXO
1539 *r |= S_IRWXO;
1540 #else /* def S_IRWXO */
1541 {errno = EINVAL; return -1;}
1542 #endif /* ndef S_IRWXO */
1543 if ((x & Mono_Posix_FilePermissions_ACCESSPERMS) == Mono_Posix_FilePermissions_ACCESSPERMS)
1544 #ifdef ACCESSPERMS
1545 *r |= ACCESSPERMS;
1546 #else /* def ACCESSPERMS */
1547 {errno = EINVAL; return -1;}
1548 #endif /* ndef ACCESSPERMS */
1549 if ((x & Mono_Posix_FilePermissions_ALLPERMS) == Mono_Posix_FilePermissions_ALLPERMS)
1550 #ifdef ALLPERMS
1551 *r |= ALLPERMS;
1552 #else /* def ALLPERMS */
1553 {errno = EINVAL; return -1;}
1554 #endif /* ndef ALLPERMS */
1555 if ((x & Mono_Posix_FilePermissions_DEFFILEMODE) == Mono_Posix_FilePermissions_DEFFILEMODE)
1556 #ifdef DEFFILEMODE
1557 *r |= DEFFILEMODE;
1558 #else /* def DEFFILEMODE */
1559 {errno = EINVAL; return -1;}
1560 #endif /* ndef DEFFILEMODE */
1561 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFMT)
1562 #ifdef S_IFMT
1563 *r |= S_IFMT;
1564 #else /* def S_IFMT */
1565 {errno = EINVAL; return -1;}
1566 #endif /* ndef S_IFMT */
1567 if ((x & Mono_Posix_FilePermissions_S_IFDIR) == Mono_Posix_FilePermissions_S_IFDIR)
1568 #ifdef S_IFDIR
1569 *r |= S_IFDIR;
1570 #else /* def S_IFDIR */
1571 {errno = EINVAL; return -1;}
1572 #endif /* ndef S_IFDIR */
1573 if ((x & Mono_Posix_FilePermissions_S_IFCHR) == Mono_Posix_FilePermissions_S_IFCHR)
1574 #ifdef S_IFCHR
1575 *r |= S_IFCHR;
1576 #else /* def S_IFCHR */
1577 {errno = EINVAL; return -1;}
1578 #endif /* ndef S_IFCHR */
1579 if ((x & Mono_Posix_FilePermissions_S_IFBLK) == Mono_Posix_FilePermissions_S_IFBLK)
1580 #ifdef S_IFBLK
1581 *r |= S_IFBLK;
1582 #else /* def S_IFBLK */
1583 {errno = EINVAL; return -1;}
1584 #endif /* ndef S_IFBLK */
1585 if ((x & Mono_Posix_FilePermissions_S_IFREG) == Mono_Posix_FilePermissions_S_IFREG)
1586 #ifdef S_IFREG
1587 *r |= S_IFREG;
1588 #else /* def S_IFREG */
1589 {errno = EINVAL; return -1;}
1590 #endif /* ndef S_IFREG */
1591 if ((x & Mono_Posix_FilePermissions_S_IFIFO) == Mono_Posix_FilePermissions_S_IFIFO)
1592 #ifdef S_IFIFO
1593 *r |= S_IFIFO;
1594 #else /* def S_IFIFO */
1595 {errno = EINVAL; return -1;}
1596 #endif /* ndef S_IFIFO */
1597 if ((x & Mono_Posix_FilePermissions_S_IFLNK) == Mono_Posix_FilePermissions_S_IFLNK)
1598 #ifdef S_IFLNK
1599 *r |= S_IFLNK;
1600 #else /* def S_IFLNK */
1601 {errno = EINVAL; return -1;}
1602 #endif /* ndef S_IFLNK */
1603 if ((x & Mono_Posix_FilePermissions_S_IFSOCK) == Mono_Posix_FilePermissions_S_IFSOCK)
1604 #ifdef S_IFSOCK
1605 *r |= S_IFSOCK;
1606 #else /* def S_IFSOCK */
1607 {errno = EINVAL; return -1;}
1608 #endif /* ndef S_IFSOCK */
1609 return 0;
1612 int Mono_Posix_ToFilePermissions (unsigned int x, unsigned int *r)
1614 *r = 0;
1615 if (x == 0)
1616 return 0;
1617 #ifdef S_ISUID
1618 if ((x & S_ISUID) == S_ISUID)
1619 *r |= Mono_Posix_FilePermissions_S_ISUID;
1620 #endif /* ndef S_ISUID */
1621 #ifdef S_ISGID
1622 if ((x & S_ISGID) == S_ISGID)
1623 *r |= Mono_Posix_FilePermissions_S_ISGID;
1624 #endif /* ndef S_ISGID */
1625 #ifdef S_ISVTX
1626 if ((x & S_ISVTX) == S_ISVTX)
1627 *r |= Mono_Posix_FilePermissions_S_ISVTX;
1628 #endif /* ndef S_ISVTX */
1629 #ifdef S_IRUSR
1630 if ((x & S_IRUSR) == S_IRUSR)
1631 *r |= Mono_Posix_FilePermissions_S_IRUSR;
1632 #endif /* ndef S_IRUSR */
1633 #ifdef S_IWUSR
1634 if ((x & S_IWUSR) == S_IWUSR)
1635 *r |= Mono_Posix_FilePermissions_S_IWUSR;
1636 #endif /* ndef S_IWUSR */
1637 #ifdef S_IXUSR
1638 if ((x & S_IXUSR) == S_IXUSR)
1639 *r |= Mono_Posix_FilePermissions_S_IXUSR;
1640 #endif /* ndef S_IXUSR */
1641 #ifdef S_IRGRP
1642 if ((x & S_IRGRP) == S_IRGRP)
1643 *r |= Mono_Posix_FilePermissions_S_IRGRP;
1644 #endif /* ndef S_IRGRP */
1645 #ifdef S_IWGRP
1646 if ((x & S_IWGRP) == S_IWGRP)
1647 *r |= Mono_Posix_FilePermissions_S_IWGRP;
1648 #endif /* ndef S_IWGRP */
1649 #ifdef S_IXGRP
1650 if ((x & S_IXGRP) == S_IXGRP)
1651 *r |= Mono_Posix_FilePermissions_S_IXGRP;
1652 #endif /* ndef S_IXGRP */
1653 #ifdef S_IROTH
1654 if ((x & S_IROTH) == S_IROTH)
1655 *r |= Mono_Posix_FilePermissions_S_IROTH;
1656 #endif /* ndef S_IROTH */
1657 #ifdef S_IWOTH
1658 if ((x & S_IWOTH) == S_IWOTH)
1659 *r |= Mono_Posix_FilePermissions_S_IWOTH;
1660 #endif /* ndef S_IWOTH */
1661 #ifdef S_IXOTH
1662 if ((x & S_IXOTH) == S_IXOTH)
1663 *r |= Mono_Posix_FilePermissions_S_IXOTH;
1664 #endif /* ndef S_IXOTH */
1665 #ifdef S_IRWXG
1666 if ((x & S_IRWXG) == S_IRWXG)
1667 *r |= Mono_Posix_FilePermissions_S_IRWXG;
1668 #endif /* ndef S_IRWXG */
1669 #ifdef S_IRWXU
1670 if ((x & S_IRWXU) == S_IRWXU)
1671 *r |= Mono_Posix_FilePermissions_S_IRWXU;
1672 #endif /* ndef S_IRWXU */
1673 #ifdef S_IRWXO
1674 if ((x & S_IRWXO) == S_IRWXO)
1675 *r |= Mono_Posix_FilePermissions_S_IRWXO;
1676 #endif /* ndef S_IRWXO */
1677 #ifdef ACCESSPERMS
1678 if ((x & ACCESSPERMS) == ACCESSPERMS)
1679 *r |= Mono_Posix_FilePermissions_ACCESSPERMS;
1680 #endif /* ndef ACCESSPERMS */
1681 #ifdef ALLPERMS
1682 if ((x & ALLPERMS) == ALLPERMS)
1683 *r |= Mono_Posix_FilePermissions_ALLPERMS;
1684 #endif /* ndef ALLPERMS */
1685 #ifdef DEFFILEMODE
1686 if ((x & DEFFILEMODE) == DEFFILEMODE)
1687 *r |= Mono_Posix_FilePermissions_DEFFILEMODE;
1688 #endif /* ndef DEFFILEMODE */
1689 #ifdef S_IFMT
1690 if ((x & S_IFMT) == S_IFMT)
1691 *r |= Mono_Posix_FilePermissions_S_IFMT;
1692 #endif /* ndef S_IFMT */
1693 #ifdef S_IFDIR
1694 if ((x & S_IFDIR) == S_IFDIR)
1695 *r |= Mono_Posix_FilePermissions_S_IFDIR;
1696 #endif /* ndef S_IFDIR */
1697 #ifdef S_IFCHR
1698 if ((x & S_IFCHR) == S_IFCHR)
1699 *r |= Mono_Posix_FilePermissions_S_IFCHR;
1700 #endif /* ndef S_IFCHR */
1701 #ifdef S_IFBLK
1702 if ((x & S_IFBLK) == S_IFBLK)
1703 *r |= Mono_Posix_FilePermissions_S_IFBLK;
1704 #endif /* ndef S_IFBLK */
1705 #ifdef S_IFREG
1706 if ((x & S_IFREG) == S_IFREG)
1707 *r |= Mono_Posix_FilePermissions_S_IFREG;
1708 #endif /* ndef S_IFREG */
1709 #ifdef S_IFIFO
1710 if ((x & S_IFIFO) == S_IFIFO)
1711 *r |= Mono_Posix_FilePermissions_S_IFIFO;
1712 #endif /* ndef S_IFIFO */
1713 #ifdef S_IFLNK
1714 if ((x & S_IFLNK) == S_IFLNK)
1715 *r |= Mono_Posix_FilePermissions_S_IFLNK;
1716 #endif /* ndef S_IFLNK */
1717 #ifdef S_IFSOCK
1718 if ((x & S_IFSOCK) == S_IFSOCK)
1719 *r |= Mono_Posix_FilePermissions_S_IFSOCK;
1720 #endif /* ndef S_IFSOCK */
1721 return 0;
1724 int Mono_Posix_FromFcntlCommand (int x, int *r)
1726 *r = 0;
1727 if (x == 0)
1728 return 0;
1729 if (x == Mono_Posix_FcntlCommand_F_DUPFD)
1730 #ifdef F_DUPFD
1731 {*r = F_DUPFD; return 0;}
1732 #else /* def F_DUPFD */
1733 {errno = EINVAL; return -1;}
1734 #endif /* ndef F_DUPFD */
1735 if (x == Mono_Posix_FcntlCommand_F_GETFD)
1736 #ifdef F_GETFD
1737 {*r = F_GETFD; return 0;}
1738 #else /* def F_GETFD */
1739 {errno = EINVAL; return -1;}
1740 #endif /* ndef F_GETFD */
1741 if (x == Mono_Posix_FcntlCommand_F_SETFD)
1742 #ifdef F_SETFD
1743 {*r = F_SETFD; return 0;}
1744 #else /* def F_SETFD */
1745 {errno = EINVAL; return -1;}
1746 #endif /* ndef F_SETFD */
1747 if (x == Mono_Posix_FcntlCommand_F_GETFL)
1748 #ifdef F_GETFL
1749 {*r = F_GETFL; return 0;}
1750 #else /* def F_GETFL */
1751 {errno = EINVAL; return -1;}
1752 #endif /* ndef F_GETFL */
1753 if (x == Mono_Posix_FcntlCommand_F_SETFL)
1754 #ifdef F_SETFL
1755 {*r = F_SETFL; return 0;}
1756 #else /* def F_SETFL */
1757 {errno = EINVAL; return -1;}
1758 #endif /* ndef F_SETFL */
1759 if (x == Mono_Posix_FcntlCommand_F_GETLK)
1760 #ifdef F_GETLK
1761 {*r = F_GETLK; return 0;}
1762 #else /* def F_GETLK */
1763 {errno = EINVAL; return -1;}
1764 #endif /* ndef F_GETLK */
1765 if (x == Mono_Posix_FcntlCommand_F_SETLK)
1766 #ifdef F_SETLK
1767 {*r = F_SETLK; return 0;}
1768 #else /* def F_SETLK */
1769 {errno = EINVAL; return -1;}
1770 #endif /* ndef F_SETLK */
1771 if (x == Mono_Posix_FcntlCommand_F_SETLKW)
1772 #ifdef F_SETLKW
1773 {*r = F_SETLKW; return 0;}
1774 #else /* def F_SETLKW */
1775 {errno = EINVAL; return -1;}
1776 #endif /* ndef F_SETLKW */
1777 if (x == Mono_Posix_FcntlCommand_F_SETOWN)
1778 #ifdef F_SETOWN
1779 {*r = F_SETOWN; return 0;}
1780 #else /* def F_SETOWN */
1781 {errno = EINVAL; return -1;}
1782 #endif /* ndef F_SETOWN */
1783 if (x == Mono_Posix_FcntlCommand_F_GETOWN)
1784 #ifdef F_GETOWN
1785 {*r = F_GETOWN; return 0;}
1786 #else /* def F_GETOWN */
1787 {errno = EINVAL; return -1;}
1788 #endif /* ndef F_GETOWN */
1789 if (x == Mono_Posix_FcntlCommand_F_SETSIG)
1790 #ifdef F_SETSIG
1791 {*r = F_SETSIG; return 0;}
1792 #else /* def F_SETSIG */
1793 {errno = EINVAL; return -1;}
1794 #endif /* ndef F_SETSIG */
1795 if (x == Mono_Posix_FcntlCommand_F_GETSIG)
1796 #ifdef F_GETSIG
1797 {*r = F_GETSIG; return 0;}
1798 #else /* def F_GETSIG */
1799 {errno = EINVAL; return -1;}
1800 #endif /* ndef F_GETSIG */
1801 if (x == Mono_Posix_FcntlCommand_F_SETLEASE)
1802 #ifdef F_SETLEASE
1803 {*r = F_SETLEASE; return 0;}
1804 #else /* def F_SETLEASE */
1805 {errno = EINVAL; return -1;}
1806 #endif /* ndef F_SETLEASE */
1807 if (x == Mono_Posix_FcntlCommand_F_GETLEASE)
1808 #ifdef F_GETLEASE
1809 {*r = F_GETLEASE; return 0;}
1810 #else /* def F_GETLEASE */
1811 {errno = EINVAL; return -1;}
1812 #endif /* ndef F_GETLEASE */
1813 if (x == Mono_Posix_FcntlCommand_F_NOTIFY)
1814 #ifdef F_NOTIFY
1815 {*r = F_NOTIFY; return 0;}
1816 #else /* def F_NOTIFY */
1817 {errno = EINVAL; return -1;}
1818 #endif /* ndef F_NOTIFY */
1819 errno = EINVAL; return -1;
1822 int Mono_Posix_ToFcntlCommand (int x, int *r)
1824 *r = 0;
1825 if (x == 0)
1826 return 0;
1827 #ifdef F_DUPFD
1828 if (x == F_DUPFD)
1829 {*r = Mono_Posix_FcntlCommand_F_DUPFD; return 0;}
1830 #endif /* ndef F_DUPFD */
1831 #ifdef F_GETFD
1832 if (x == F_GETFD)
1833 {*r = Mono_Posix_FcntlCommand_F_GETFD; return 0;}
1834 #endif /* ndef F_GETFD */
1835 #ifdef F_SETFD
1836 if (x == F_SETFD)
1837 {*r = Mono_Posix_FcntlCommand_F_SETFD; return 0;}
1838 #endif /* ndef F_SETFD */
1839 #ifdef F_GETFL
1840 if (x == F_GETFL)
1841 {*r = Mono_Posix_FcntlCommand_F_GETFL; return 0;}
1842 #endif /* ndef F_GETFL */
1843 #ifdef F_SETFL
1844 if (x == F_SETFL)
1845 {*r = Mono_Posix_FcntlCommand_F_SETFL; return 0;}
1846 #endif /* ndef F_SETFL */
1847 #ifdef F_GETLK
1848 if (x == F_GETLK)
1849 {*r = Mono_Posix_FcntlCommand_F_GETLK; return 0;}
1850 #endif /* ndef F_GETLK */
1851 #ifdef F_SETLK
1852 if (x == F_SETLK)
1853 {*r = Mono_Posix_FcntlCommand_F_SETLK; return 0;}
1854 #endif /* ndef F_SETLK */
1855 #ifdef F_SETLKW
1856 if (x == F_SETLKW)
1857 {*r = Mono_Posix_FcntlCommand_F_SETLKW; return 0;}
1858 #endif /* ndef F_SETLKW */
1859 #ifdef F_SETOWN
1860 if (x == F_SETOWN)
1861 {*r = Mono_Posix_FcntlCommand_F_SETOWN; return 0;}
1862 #endif /* ndef F_SETOWN */
1863 #ifdef F_GETOWN
1864 if (x == F_GETOWN)
1865 {*r = Mono_Posix_FcntlCommand_F_GETOWN; return 0;}
1866 #endif /* ndef F_GETOWN */
1867 #ifdef F_SETSIG
1868 if (x == F_SETSIG)
1869 {*r = Mono_Posix_FcntlCommand_F_SETSIG; return 0;}
1870 #endif /* ndef F_SETSIG */
1871 #ifdef F_GETSIG
1872 if (x == F_GETSIG)
1873 {*r = Mono_Posix_FcntlCommand_F_GETSIG; return 0;}
1874 #endif /* ndef F_GETSIG */
1875 #ifdef F_SETLEASE
1876 if (x == F_SETLEASE)
1877 {*r = Mono_Posix_FcntlCommand_F_SETLEASE; return 0;}
1878 #endif /* ndef F_SETLEASE */
1879 #ifdef F_GETLEASE
1880 if (x == F_GETLEASE)
1881 {*r = Mono_Posix_FcntlCommand_F_GETLEASE; return 0;}
1882 #endif /* ndef F_GETLEASE */
1883 #ifdef F_NOTIFY
1884 if (x == F_NOTIFY)
1885 {*r = Mono_Posix_FcntlCommand_F_NOTIFY; return 0;}
1886 #endif /* ndef F_NOTIFY */
1887 errno = EINVAL; return -1;
1890 int Mono_Posix_FromLockType (short x, short *r)
1892 *r = 0;
1893 if (x == 0)
1894 return 0;
1895 if (x == Mono_Posix_LockType_F_RDLCK)
1896 #ifdef F_RDLCK
1897 {*r = F_RDLCK; return 0;}
1898 #else /* def F_RDLCK */
1899 {errno = EINVAL; return -1;}
1900 #endif /* ndef F_RDLCK */
1901 if (x == Mono_Posix_LockType_F_WRLCK)
1902 #ifdef F_WRLCK
1903 {*r = F_WRLCK; return 0;}
1904 #else /* def F_WRLCK */
1905 {errno = EINVAL; return -1;}
1906 #endif /* ndef F_WRLCK */
1907 if (x == Mono_Posix_LockType_F_UNLCK)
1908 #ifdef F_UNLCK
1909 {*r = F_UNLCK; return 0;}
1910 #else /* def F_UNLCK */
1911 {errno = EINVAL; return -1;}
1912 #endif /* ndef F_UNLCK */
1913 errno = EINVAL; return -1;
1916 int Mono_Posix_ToLockType (short x, short *r)
1918 *r = 0;
1919 if (x == 0)
1920 return 0;
1921 #ifdef F_RDLCK
1922 if (x == F_RDLCK)
1923 {*r = Mono_Posix_LockType_F_RDLCK; return 0;}
1924 #endif /* ndef F_RDLCK */
1925 #ifdef F_WRLCK
1926 if (x == F_WRLCK)
1927 {*r = Mono_Posix_LockType_F_WRLCK; return 0;}
1928 #endif /* ndef F_WRLCK */
1929 #ifdef F_UNLCK
1930 if (x == F_UNLCK)
1931 {*r = Mono_Posix_LockType_F_UNLCK; return 0;}
1932 #endif /* ndef F_UNLCK */
1933 errno = EINVAL; return -1;
1936 int Mono_Posix_FromSeekFlags (short x, short *r)
1938 *r = 0;
1939 if (x == 0)
1940 return 0;
1941 if (x == Mono_Posix_SeekFlags_SEEK_SET)
1942 #ifdef SEEK_SET
1943 {*r = SEEK_SET; return 0;}
1944 #else /* def SEEK_SET */
1945 {errno = EINVAL; return -1;}
1946 #endif /* ndef SEEK_SET */
1947 if (x == Mono_Posix_SeekFlags_SEEK_CUR)
1948 #ifdef SEEK_CUR
1949 {*r = SEEK_CUR; return 0;}
1950 #else /* def SEEK_CUR */
1951 {errno = EINVAL; return -1;}
1952 #endif /* ndef SEEK_CUR */
1953 if (x == Mono_Posix_SeekFlags_SEEK_END)
1954 #ifdef SEEK_END
1955 {*r = SEEK_END; return 0;}
1956 #else /* def SEEK_END */
1957 {errno = EINVAL; return -1;}
1958 #endif /* ndef SEEK_END */
1959 if (x == Mono_Posix_SeekFlags_L_SET)
1960 #ifdef L_SET
1961 {*r = L_SET; return 0;}
1962 #else /* def L_SET */
1963 {errno = EINVAL; return -1;}
1964 #endif /* ndef L_SET */
1965 if (x == Mono_Posix_SeekFlags_L_INCR)
1966 #ifdef L_INCR
1967 {*r = L_INCR; return 0;}
1968 #else /* def L_INCR */
1969 {errno = EINVAL; return -1;}
1970 #endif /* ndef L_INCR */
1971 if (x == Mono_Posix_SeekFlags_L_XTND)
1972 #ifdef L_XTND
1973 {*r = L_XTND; return 0;}
1974 #else /* def L_XTND */
1975 {errno = EINVAL; return -1;}
1976 #endif /* ndef L_XTND */
1977 errno = EINVAL; return -1;
1980 int Mono_Posix_ToSeekFlags (short x, short *r)
1982 *r = 0;
1983 if (x == 0)
1984 return 0;
1985 #ifdef SEEK_SET
1986 if (x == SEEK_SET)
1987 {*r = Mono_Posix_SeekFlags_SEEK_SET; return 0;}
1988 #endif /* ndef SEEK_SET */
1989 #ifdef SEEK_CUR
1990 if (x == SEEK_CUR)
1991 {*r = Mono_Posix_SeekFlags_SEEK_CUR; return 0;}
1992 #endif /* ndef SEEK_CUR */
1993 #ifdef SEEK_END
1994 if (x == SEEK_END)
1995 {*r = Mono_Posix_SeekFlags_SEEK_END; return 0;}
1996 #endif /* ndef SEEK_END */
1997 #ifdef L_SET
1998 if (x == L_SET)
1999 {*r = Mono_Posix_SeekFlags_L_SET; return 0;}
2000 #endif /* ndef L_SET */
2001 #ifdef L_INCR
2002 if (x == L_INCR)
2003 {*r = Mono_Posix_SeekFlags_L_INCR; return 0;}
2004 #endif /* ndef L_INCR */
2005 #ifdef L_XTND
2006 if (x == L_XTND)
2007 {*r = Mono_Posix_SeekFlags_L_XTND; return 0;}
2008 #endif /* ndef L_XTND */
2009 errno = EINVAL; return -1;
2012 int Mono_Posix_FromDirectoryNotifyFlags (int x, int *r)
2014 *r = 0;
2015 if (x == 0)
2016 return 0;
2017 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ACCESS) == Mono_Posix_DirectoryNotifyFlags_DN_ACCESS)
2018 #ifdef DN_ACCESS
2019 *r |= DN_ACCESS;
2020 #else /* def DN_ACCESS */
2021 {errno = EINVAL; return -1;}
2022 #endif /* ndef DN_ACCESS */
2023 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MODIFY) == Mono_Posix_DirectoryNotifyFlags_DN_MODIFY)
2024 #ifdef DN_MODIFY
2025 *r |= DN_MODIFY;
2026 #else /* def DN_MODIFY */
2027 {errno = EINVAL; return -1;}
2028 #endif /* ndef DN_MODIFY */
2029 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_CREATE) == Mono_Posix_DirectoryNotifyFlags_DN_CREATE)
2030 #ifdef DN_CREATE
2031 *r |= DN_CREATE;
2032 #else /* def DN_CREATE */
2033 {errno = EINVAL; return -1;}
2034 #endif /* ndef DN_CREATE */
2035 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_DELETE) == Mono_Posix_DirectoryNotifyFlags_DN_DELETE)
2036 #ifdef DN_DELETE
2037 *r |= DN_DELETE;
2038 #else /* def DN_DELETE */
2039 {errno = EINVAL; return -1;}
2040 #endif /* ndef DN_DELETE */
2041 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_RENAME) == Mono_Posix_DirectoryNotifyFlags_DN_RENAME)
2042 #ifdef DN_RENAME
2043 *r |= DN_RENAME;
2044 #else /* def DN_RENAME */
2045 {errno = EINVAL; return -1;}
2046 #endif /* ndef DN_RENAME */
2047 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB) == Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB)
2048 #ifdef DN_ATTRIB
2049 *r |= DN_ATTRIB;
2050 #else /* def DN_ATTRIB */
2051 {errno = EINVAL; return -1;}
2052 #endif /* ndef DN_ATTRIB */
2053 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT) == Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT)
2054 #ifdef DN_MULTISHOT
2055 *r |= DN_MULTISHOT;
2056 #else /* def DN_MULTISHOT */
2057 {errno = EINVAL; return -1;}
2058 #endif /* ndef DN_MULTISHOT */
2059 return 0;
2062 int Mono_Posix_ToDirectoryNotifyFlags (int x, int *r)
2064 *r = 0;
2065 if (x == 0)
2066 return 0;
2067 #ifdef DN_ACCESS
2068 if ((x & DN_ACCESS) == DN_ACCESS)
2069 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ACCESS;
2070 #endif /* ndef DN_ACCESS */
2071 #ifdef DN_MODIFY
2072 if ((x & DN_MODIFY) == DN_MODIFY)
2073 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MODIFY;
2074 #endif /* ndef DN_MODIFY */
2075 #ifdef DN_CREATE
2076 if ((x & DN_CREATE) == DN_CREATE)
2077 *r |= Mono_Posix_DirectoryNotifyFlags_DN_CREATE;
2078 #endif /* ndef DN_CREATE */
2079 #ifdef DN_DELETE
2080 if ((x & DN_DELETE) == DN_DELETE)
2081 *r |= Mono_Posix_DirectoryNotifyFlags_DN_DELETE;
2082 #endif /* ndef DN_DELETE */
2083 #ifdef DN_RENAME
2084 if ((x & DN_RENAME) == DN_RENAME)
2085 *r |= Mono_Posix_DirectoryNotifyFlags_DN_RENAME;
2086 #endif /* ndef DN_RENAME */
2087 #ifdef DN_ATTRIB
2088 if ((x & DN_ATTRIB) == DN_ATTRIB)
2089 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB;
2090 #endif /* ndef DN_ATTRIB */
2091 #ifdef DN_MULTISHOT
2092 if ((x & DN_MULTISHOT) == DN_MULTISHOT)
2093 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT;
2094 #endif /* ndef DN_MULTISHOT */
2095 return 0;
2098 int Mono_Posix_FromPosixFadviseAdvice (int x, int *r)
2100 *r = 0;
2101 if (x == 0)
2102 return 0;
2103 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL)
2104 #ifdef POSIX_FADV_NORMAL
2105 {*r = POSIX_FADV_NORMAL; return 0;}
2106 #else /* def POSIX_FADV_NORMAL */
2107 {errno = EINVAL; return -1;}
2108 #endif /* ndef POSIX_FADV_NORMAL */
2109 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM)
2110 #ifdef POSIX_FADV_RANDOM
2111 {*r = POSIX_FADV_RANDOM; return 0;}
2112 #else /* def POSIX_FADV_RANDOM */
2113 {errno = EINVAL; return -1;}
2114 #endif /* ndef POSIX_FADV_RANDOM */
2115 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL)
2116 #ifdef POSIX_FADV_SEQUENTIAL
2117 {*r = POSIX_FADV_SEQUENTIAL; return 0;}
2118 #else /* def POSIX_FADV_SEQUENTIAL */
2119 {errno = EINVAL; return -1;}
2120 #endif /* ndef POSIX_FADV_SEQUENTIAL */
2121 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED)
2122 #ifdef POSIX_FADV_WILLNEED
2123 {*r = POSIX_FADV_WILLNEED; return 0;}
2124 #else /* def POSIX_FADV_WILLNEED */
2125 {errno = EINVAL; return -1;}
2126 #endif /* ndef POSIX_FADV_WILLNEED */
2127 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED)
2128 #ifdef POSIX_FADV_DONTNEED
2129 {*r = POSIX_FADV_DONTNEED; return 0;}
2130 #else /* def POSIX_FADV_DONTNEED */
2131 {errno = EINVAL; return -1;}
2132 #endif /* ndef POSIX_FADV_DONTNEED */
2133 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE)
2134 #ifdef POSIX_FADV_NOREUSE
2135 {*r = POSIX_FADV_NOREUSE; return 0;}
2136 #else /* def POSIX_FADV_NOREUSE */
2137 {errno = EINVAL; return -1;}
2138 #endif /* ndef POSIX_FADV_NOREUSE */
2139 errno = EINVAL; return -1;
2142 int Mono_Posix_ToPosixFadviseAdvice (int x, int *r)
2144 *r = 0;
2145 if (x == 0)
2146 return 0;
2147 #ifdef POSIX_FADV_NORMAL
2148 if (x == POSIX_FADV_NORMAL)
2149 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL; return 0;}
2150 #endif /* ndef POSIX_FADV_NORMAL */
2151 #ifdef POSIX_FADV_RANDOM
2152 if (x == POSIX_FADV_RANDOM)
2153 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM; return 0;}
2154 #endif /* ndef POSIX_FADV_RANDOM */
2155 #ifdef POSIX_FADV_SEQUENTIAL
2156 if (x == POSIX_FADV_SEQUENTIAL)
2157 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL; return 0;}
2158 #endif /* ndef POSIX_FADV_SEQUENTIAL */
2159 #ifdef POSIX_FADV_WILLNEED
2160 if (x == POSIX_FADV_WILLNEED)
2161 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED; return 0;}
2162 #endif /* ndef POSIX_FADV_WILLNEED */
2163 #ifdef POSIX_FADV_DONTNEED
2164 if (x == POSIX_FADV_DONTNEED)
2165 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED; return 0;}
2166 #endif /* ndef POSIX_FADV_DONTNEED */
2167 #ifdef POSIX_FADV_NOREUSE
2168 if (x == POSIX_FADV_NOREUSE)
2169 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE; return 0;}
2170 #endif /* ndef POSIX_FADV_NOREUSE */
2171 errno = EINVAL; return -1;
2174 int Mono_Posix_FromPosixMadviseAdvice (int x, int *r)
2176 *r = 0;
2177 if (x == 0)
2178 return 0;
2179 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL)
2180 #ifdef POSIX_MADV_NORMAL
2181 {*r = POSIX_MADV_NORMAL; return 0;}
2182 #else /* def POSIX_MADV_NORMAL */
2183 {errno = EINVAL; return -1;}
2184 #endif /* ndef POSIX_MADV_NORMAL */
2185 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM)
2186 #ifdef POSIX_MADV_RANDOM
2187 {*r = POSIX_MADV_RANDOM; return 0;}
2188 #else /* def POSIX_MADV_RANDOM */
2189 {errno = EINVAL; return -1;}
2190 #endif /* ndef POSIX_MADV_RANDOM */
2191 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL)
2192 #ifdef POSIX_MADV_SEQUENTIAL
2193 {*r = POSIX_MADV_SEQUENTIAL; return 0;}
2194 #else /* def POSIX_MADV_SEQUENTIAL */
2195 {errno = EINVAL; return -1;}
2196 #endif /* ndef POSIX_MADV_SEQUENTIAL */
2197 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED)
2198 #ifdef POSIX_MADV_WILLNEED
2199 {*r = POSIX_MADV_WILLNEED; return 0;}
2200 #else /* def POSIX_MADV_WILLNEED */
2201 {errno = EINVAL; return -1;}
2202 #endif /* ndef POSIX_MADV_WILLNEED */
2203 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED)
2204 #ifdef POSIX_MADV_DONTNEED
2205 {*r = POSIX_MADV_DONTNEED; return 0;}
2206 #else /* def POSIX_MADV_DONTNEED */
2207 {errno = EINVAL; return -1;}
2208 #endif /* ndef POSIX_MADV_DONTNEED */
2209 errno = EINVAL; return -1;
2212 int Mono_Posix_ToPosixMadviseAdvice (int x, int *r)
2214 *r = 0;
2215 if (x == 0)
2216 return 0;
2217 #ifdef POSIX_MADV_NORMAL
2218 if (x == POSIX_MADV_NORMAL)
2219 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL; return 0;}
2220 #endif /* ndef POSIX_MADV_NORMAL */
2221 #ifdef POSIX_MADV_RANDOM
2222 if (x == POSIX_MADV_RANDOM)
2223 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM; return 0;}
2224 #endif /* ndef POSIX_MADV_RANDOM */
2225 #ifdef POSIX_MADV_SEQUENTIAL
2226 if (x == POSIX_MADV_SEQUENTIAL)
2227 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL; return 0;}
2228 #endif /* ndef POSIX_MADV_SEQUENTIAL */
2229 #ifdef POSIX_MADV_WILLNEED
2230 if (x == POSIX_MADV_WILLNEED)
2231 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED; return 0;}
2232 #endif /* ndef POSIX_MADV_WILLNEED */
2233 #ifdef POSIX_MADV_DONTNEED
2234 if (x == POSIX_MADV_DONTNEED)
2235 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED; return 0;}
2236 #endif /* ndef POSIX_MADV_DONTNEED */
2237 errno = EINVAL; return -1;
2240 int Mono_Posix_FromSignum (int x, int *r)
2242 *r = 0;
2243 if (x == 0)
2244 return 0;
2245 if (x == Mono_Posix_Signum_SIGHUP)
2246 #ifdef SIGHUP
2247 {*r = SIGHUP; return 0;}
2248 #else /* def SIGHUP */
2249 {errno = EINVAL; return -1;}
2250 #endif /* ndef SIGHUP */
2251 if (x == Mono_Posix_Signum_SIGINT)
2252 #ifdef SIGINT
2253 {*r = SIGINT; return 0;}
2254 #else /* def SIGINT */
2255 {errno = EINVAL; return -1;}
2256 #endif /* ndef SIGINT */
2257 if (x == Mono_Posix_Signum_SIGQUIT)
2258 #ifdef SIGQUIT
2259 {*r = SIGQUIT; return 0;}
2260 #else /* def SIGQUIT */
2261 {errno = EINVAL; return -1;}
2262 #endif /* ndef SIGQUIT */
2263 if (x == Mono_Posix_Signum_SIGILL)
2264 #ifdef SIGILL
2265 {*r = SIGILL; return 0;}
2266 #else /* def SIGILL */
2267 {errno = EINVAL; return -1;}
2268 #endif /* ndef SIGILL */
2269 if (x == Mono_Posix_Signum_SIGTRAP)
2270 #ifdef SIGTRAP
2271 {*r = SIGTRAP; return 0;}
2272 #else /* def SIGTRAP */
2273 {errno = EINVAL; return -1;}
2274 #endif /* ndef SIGTRAP */
2275 if (x == Mono_Posix_Signum_SIGABRT)
2276 #ifdef SIGABRT
2277 {*r = SIGABRT; return 0;}
2278 #else /* def SIGABRT */
2279 {errno = EINVAL; return -1;}
2280 #endif /* ndef SIGABRT */
2281 if (x == Mono_Posix_Signum_SIGIOT)
2282 #ifdef SIGIOT
2283 {*r = SIGIOT; return 0;}
2284 #else /* def SIGIOT */
2285 {errno = EINVAL; return -1;}
2286 #endif /* ndef SIGIOT */
2287 if (x == Mono_Posix_Signum_SIGBUS)
2288 #ifdef SIGBUS
2289 {*r = SIGBUS; return 0;}
2290 #else /* def SIGBUS */
2291 {errno = EINVAL; return -1;}
2292 #endif /* ndef SIGBUS */
2293 if (x == Mono_Posix_Signum_SIGFPE)
2294 #ifdef SIGFPE
2295 {*r = SIGFPE; return 0;}
2296 #else /* def SIGFPE */
2297 {errno = EINVAL; return -1;}
2298 #endif /* ndef SIGFPE */
2299 if (x == Mono_Posix_Signum_SIGKILL)
2300 #ifdef SIGKILL
2301 {*r = SIGKILL; return 0;}
2302 #else /* def SIGKILL */
2303 {errno = EINVAL; return -1;}
2304 #endif /* ndef SIGKILL */
2305 if (x == Mono_Posix_Signum_SIGUSR1)
2306 #ifdef SIGUSR1
2307 {*r = SIGUSR1; return 0;}
2308 #else /* def SIGUSR1 */
2309 {errno = EINVAL; return -1;}
2310 #endif /* ndef SIGUSR1 */
2311 if (x == Mono_Posix_Signum_SIGSEGV)
2312 #ifdef SIGSEGV
2313 {*r = SIGSEGV; return 0;}
2314 #else /* def SIGSEGV */
2315 {errno = EINVAL; return -1;}
2316 #endif /* ndef SIGSEGV */
2317 if (x == Mono_Posix_Signum_SIGUSR2)
2318 #ifdef SIGUSR2
2319 {*r = SIGUSR2; return 0;}
2320 #else /* def SIGUSR2 */
2321 {errno = EINVAL; return -1;}
2322 #endif /* ndef SIGUSR2 */
2323 if (x == Mono_Posix_Signum_SIGPIPE)
2324 #ifdef SIGPIPE
2325 {*r = SIGPIPE; return 0;}
2326 #else /* def SIGPIPE */
2327 {errno = EINVAL; return -1;}
2328 #endif /* ndef SIGPIPE */
2329 if (x == Mono_Posix_Signum_SIGALRM)
2330 #ifdef SIGALRM
2331 {*r = SIGALRM; return 0;}
2332 #else /* def SIGALRM */
2333 {errno = EINVAL; return -1;}
2334 #endif /* ndef SIGALRM */
2335 if (x == Mono_Posix_Signum_SIGTERM)
2336 #ifdef SIGTERM
2337 {*r = SIGTERM; return 0;}
2338 #else /* def SIGTERM */
2339 {errno = EINVAL; return -1;}
2340 #endif /* ndef SIGTERM */
2341 if (x == Mono_Posix_Signum_SIGSTKFLT)
2342 #ifdef SIGSTKFLT
2343 {*r = SIGSTKFLT; return 0;}
2344 #else /* def SIGSTKFLT */
2345 {errno = EINVAL; return -1;}
2346 #endif /* ndef SIGSTKFLT */
2347 if (x == Mono_Posix_Signum_SIGCHLD)
2348 #ifdef SIGCHLD
2349 {*r = SIGCHLD; return 0;}
2350 #else /* def SIGCHLD */
2351 {errno = EINVAL; return -1;}
2352 #endif /* ndef SIGCHLD */
2353 if (x == Mono_Posix_Signum_SIGCLD)
2354 #ifdef SIGCLD
2355 {*r = SIGCLD; return 0;}
2356 #else /* def SIGCLD */
2357 {errno = EINVAL; return -1;}
2358 #endif /* ndef SIGCLD */
2359 if (x == Mono_Posix_Signum_SIGCONT)
2360 #ifdef SIGCONT
2361 {*r = SIGCONT; return 0;}
2362 #else /* def SIGCONT */
2363 {errno = EINVAL; return -1;}
2364 #endif /* ndef SIGCONT */
2365 if (x == Mono_Posix_Signum_SIGSTOP)
2366 #ifdef SIGSTOP
2367 {*r = SIGSTOP; return 0;}
2368 #else /* def SIGSTOP */
2369 {errno = EINVAL; return -1;}
2370 #endif /* ndef SIGSTOP */
2371 if (x == Mono_Posix_Signum_SIGTSTP)
2372 #ifdef SIGTSTP
2373 {*r = SIGTSTP; return 0;}
2374 #else /* def SIGTSTP */
2375 {errno = EINVAL; return -1;}
2376 #endif /* ndef SIGTSTP */
2377 if (x == Mono_Posix_Signum_SIGTTIN)
2378 #ifdef SIGTTIN
2379 {*r = SIGTTIN; return 0;}
2380 #else /* def SIGTTIN */
2381 {errno = EINVAL; return -1;}
2382 #endif /* ndef SIGTTIN */
2383 if (x == Mono_Posix_Signum_SIGTTOU)
2384 #ifdef SIGTTOU
2385 {*r = SIGTTOU; return 0;}
2386 #else /* def SIGTTOU */
2387 {errno = EINVAL; return -1;}
2388 #endif /* ndef SIGTTOU */
2389 if (x == Mono_Posix_Signum_SIGURG)
2390 #ifdef SIGURG
2391 {*r = SIGURG; return 0;}
2392 #else /* def SIGURG */
2393 {errno = EINVAL; return -1;}
2394 #endif /* ndef SIGURG */
2395 if (x == Mono_Posix_Signum_SIGXCPU)
2396 #ifdef SIGXCPU
2397 {*r = SIGXCPU; return 0;}
2398 #else /* def SIGXCPU */
2399 {errno = EINVAL; return -1;}
2400 #endif /* ndef SIGXCPU */
2401 if (x == Mono_Posix_Signum_SIGXFSZ)
2402 #ifdef SIGXFSZ
2403 {*r = SIGXFSZ; return 0;}
2404 #else /* def SIGXFSZ */
2405 {errno = EINVAL; return -1;}
2406 #endif /* ndef SIGXFSZ */
2407 if (x == Mono_Posix_Signum_SIGVTALRM)
2408 #ifdef SIGVTALRM
2409 {*r = SIGVTALRM; return 0;}
2410 #else /* def SIGVTALRM */
2411 {errno = EINVAL; return -1;}
2412 #endif /* ndef SIGVTALRM */
2413 if (x == Mono_Posix_Signum_SIGPROF)
2414 #ifdef SIGPROF
2415 {*r = SIGPROF; return 0;}
2416 #else /* def SIGPROF */
2417 {errno = EINVAL; return -1;}
2418 #endif /* ndef SIGPROF */
2419 if (x == Mono_Posix_Signum_SIGWINCH)
2420 #ifdef SIGWINCH
2421 {*r = SIGWINCH; return 0;}
2422 #else /* def SIGWINCH */
2423 {errno = EINVAL; return -1;}
2424 #endif /* ndef SIGWINCH */
2425 if (x == Mono_Posix_Signum_SIGIO)
2426 #ifdef SIGIO
2427 {*r = SIGIO; return 0;}
2428 #else /* def SIGIO */
2429 {errno = EINVAL; return -1;}
2430 #endif /* ndef SIGIO */
2431 if (x == Mono_Posix_Signum_SIGPOLL)
2432 #ifdef SIGPOLL
2433 {*r = SIGPOLL; return 0;}
2434 #else /* def SIGPOLL */
2435 {errno = EINVAL; return -1;}
2436 #endif /* ndef SIGPOLL */
2437 if (x == Mono_Posix_Signum_SIGPWR)
2438 #ifdef SIGPWR
2439 {*r = SIGPWR; return 0;}
2440 #else /* def SIGPWR */
2441 {errno = EINVAL; return -1;}
2442 #endif /* ndef SIGPWR */
2443 if (x == Mono_Posix_Signum_SIGSYS)
2444 #ifdef SIGSYS
2445 {*r = SIGSYS; return 0;}
2446 #else /* def SIGSYS */
2447 {errno = EINVAL; return -1;}
2448 #endif /* ndef SIGSYS */
2449 if (x == Mono_Posix_Signum_SIGUNUSED)
2450 #ifdef SIGUNUSED
2451 {*r = SIGUNUSED; return 0;}
2452 #else /* def SIGUNUSED */
2453 {errno = EINVAL; return -1;}
2454 #endif /* ndef SIGUNUSED */
2455 errno = EINVAL; return -1;
2458 int Mono_Posix_ToSignum (int x, int *r)
2460 *r = 0;
2461 if (x == 0)
2462 return 0;
2463 #ifdef SIGHUP
2464 if (x == SIGHUP)
2465 {*r = Mono_Posix_Signum_SIGHUP; return 0;}
2466 #endif /* ndef SIGHUP */
2467 #ifdef SIGINT
2468 if (x == SIGINT)
2469 {*r = Mono_Posix_Signum_SIGINT; return 0;}
2470 #endif /* ndef SIGINT */
2471 #ifdef SIGQUIT
2472 if (x == SIGQUIT)
2473 {*r = Mono_Posix_Signum_SIGQUIT; return 0;}
2474 #endif /* ndef SIGQUIT */
2475 #ifdef SIGILL
2476 if (x == SIGILL)
2477 {*r = Mono_Posix_Signum_SIGILL; return 0;}
2478 #endif /* ndef SIGILL */
2479 #ifdef SIGTRAP
2480 if (x == SIGTRAP)
2481 {*r = Mono_Posix_Signum_SIGTRAP; return 0;}
2482 #endif /* ndef SIGTRAP */
2483 #ifdef SIGABRT
2484 if (x == SIGABRT)
2485 {*r = Mono_Posix_Signum_SIGABRT; return 0;}
2486 #endif /* ndef SIGABRT */
2487 #ifdef SIGIOT
2488 if (x == SIGIOT)
2489 {*r = Mono_Posix_Signum_SIGIOT; return 0;}
2490 #endif /* ndef SIGIOT */
2491 #ifdef SIGBUS
2492 if (x == SIGBUS)
2493 {*r = Mono_Posix_Signum_SIGBUS; return 0;}
2494 #endif /* ndef SIGBUS */
2495 #ifdef SIGFPE
2496 if (x == SIGFPE)
2497 {*r = Mono_Posix_Signum_SIGFPE; return 0;}
2498 #endif /* ndef SIGFPE */
2499 #ifdef SIGKILL
2500 if (x == SIGKILL)
2501 {*r = Mono_Posix_Signum_SIGKILL; return 0;}
2502 #endif /* ndef SIGKILL */
2503 #ifdef SIGUSR1
2504 if (x == SIGUSR1)
2505 {*r = Mono_Posix_Signum_SIGUSR1; return 0;}
2506 #endif /* ndef SIGUSR1 */
2507 #ifdef SIGSEGV
2508 if (x == SIGSEGV)
2509 {*r = Mono_Posix_Signum_SIGSEGV; return 0;}
2510 #endif /* ndef SIGSEGV */
2511 #ifdef SIGUSR2
2512 if (x == SIGUSR2)
2513 {*r = Mono_Posix_Signum_SIGUSR2; return 0;}
2514 #endif /* ndef SIGUSR2 */
2515 #ifdef SIGPIPE
2516 if (x == SIGPIPE)
2517 {*r = Mono_Posix_Signum_SIGPIPE; return 0;}
2518 #endif /* ndef SIGPIPE */
2519 #ifdef SIGALRM
2520 if (x == SIGALRM)
2521 {*r = Mono_Posix_Signum_SIGALRM; return 0;}
2522 #endif /* ndef SIGALRM */
2523 #ifdef SIGTERM
2524 if (x == SIGTERM)
2525 {*r = Mono_Posix_Signum_SIGTERM; return 0;}
2526 #endif /* ndef SIGTERM */
2527 #ifdef SIGSTKFLT
2528 if (x == SIGSTKFLT)
2529 {*r = Mono_Posix_Signum_SIGSTKFLT; return 0;}
2530 #endif /* ndef SIGSTKFLT */
2531 #ifdef SIGCHLD
2532 if (x == SIGCHLD)
2533 {*r = Mono_Posix_Signum_SIGCHLD; return 0;}
2534 #endif /* ndef SIGCHLD */
2535 #ifdef SIGCLD
2536 if (x == SIGCLD)
2537 {*r = Mono_Posix_Signum_SIGCLD; return 0;}
2538 #endif /* ndef SIGCLD */
2539 #ifdef SIGCONT
2540 if (x == SIGCONT)
2541 {*r = Mono_Posix_Signum_SIGCONT; return 0;}
2542 #endif /* ndef SIGCONT */
2543 #ifdef SIGSTOP
2544 if (x == SIGSTOP)
2545 {*r = Mono_Posix_Signum_SIGSTOP; return 0;}
2546 #endif /* ndef SIGSTOP */
2547 #ifdef SIGTSTP
2548 if (x == SIGTSTP)
2549 {*r = Mono_Posix_Signum_SIGTSTP; return 0;}
2550 #endif /* ndef SIGTSTP */
2551 #ifdef SIGTTIN
2552 if (x == SIGTTIN)
2553 {*r = Mono_Posix_Signum_SIGTTIN; return 0;}
2554 #endif /* ndef SIGTTIN */
2555 #ifdef SIGTTOU
2556 if (x == SIGTTOU)
2557 {*r = Mono_Posix_Signum_SIGTTOU; return 0;}
2558 #endif /* ndef SIGTTOU */
2559 #ifdef SIGURG
2560 if (x == SIGURG)
2561 {*r = Mono_Posix_Signum_SIGURG; return 0;}
2562 #endif /* ndef SIGURG */
2563 #ifdef SIGXCPU
2564 if (x == SIGXCPU)
2565 {*r = Mono_Posix_Signum_SIGXCPU; return 0;}
2566 #endif /* ndef SIGXCPU */
2567 #ifdef SIGXFSZ
2568 if (x == SIGXFSZ)
2569 {*r = Mono_Posix_Signum_SIGXFSZ; return 0;}
2570 #endif /* ndef SIGXFSZ */
2571 #ifdef SIGVTALRM
2572 if (x == SIGVTALRM)
2573 {*r = Mono_Posix_Signum_SIGVTALRM; return 0;}
2574 #endif /* ndef SIGVTALRM */
2575 #ifdef SIGPROF
2576 if (x == SIGPROF)
2577 {*r = Mono_Posix_Signum_SIGPROF; return 0;}
2578 #endif /* ndef SIGPROF */
2579 #ifdef SIGWINCH
2580 if (x == SIGWINCH)
2581 {*r = Mono_Posix_Signum_SIGWINCH; return 0;}
2582 #endif /* ndef SIGWINCH */
2583 #ifdef SIGIO
2584 if (x == SIGIO)
2585 {*r = Mono_Posix_Signum_SIGIO; return 0;}
2586 #endif /* ndef SIGIO */
2587 #ifdef SIGPOLL
2588 if (x == SIGPOLL)
2589 {*r = Mono_Posix_Signum_SIGPOLL; return 0;}
2590 #endif /* ndef SIGPOLL */
2591 #ifdef SIGPWR
2592 if (x == SIGPWR)
2593 {*r = Mono_Posix_Signum_SIGPWR; return 0;}
2594 #endif /* ndef SIGPWR */
2595 #ifdef SIGSYS
2596 if (x == SIGSYS)
2597 {*r = Mono_Posix_Signum_SIGSYS; return 0;}
2598 #endif /* ndef SIGSYS */
2599 #ifdef SIGUNUSED
2600 if (x == SIGUNUSED)
2601 {*r = Mono_Posix_Signum_SIGUNUSED; return 0;}
2602 #endif /* ndef SIGUNUSED */
2603 errno = EINVAL; return -1;
2606 int Mono_Posix_FromMountFlags (guint64 x, guint64 *r)
2608 *r = 0;
2609 if (x == 0)
2610 return 0;
2611 if ((x & Mono_Posix_MountFlags_MS_RDONLY) == Mono_Posix_MountFlags_MS_RDONLY)
2612 #ifdef MS_RDONLY
2613 *r |= MS_RDONLY;
2614 #else /* def MS_RDONLY */
2615 {errno = EINVAL; return -1;}
2616 #endif /* ndef MS_RDONLY */
2617 if ((x & Mono_Posix_MountFlags_MS_NOSUID) == Mono_Posix_MountFlags_MS_NOSUID)
2618 #ifdef MS_NOSUID
2619 *r |= MS_NOSUID;
2620 #else /* def MS_NOSUID */
2621 {errno = EINVAL; return -1;}
2622 #endif /* ndef MS_NOSUID */
2623 if ((x & Mono_Posix_MountFlags_MS_NODEV) == Mono_Posix_MountFlags_MS_NODEV)
2624 #ifdef MS_NODEV
2625 *r |= MS_NODEV;
2626 #else /* def MS_NODEV */
2627 {errno = EINVAL; return -1;}
2628 #endif /* ndef MS_NODEV */
2629 if ((x & Mono_Posix_MountFlags_MS_NOEXEC) == Mono_Posix_MountFlags_MS_NOEXEC)
2630 #ifdef MS_NOEXEC
2631 *r |= MS_NOEXEC;
2632 #else /* def MS_NOEXEC */
2633 {errno = EINVAL; return -1;}
2634 #endif /* ndef MS_NOEXEC */
2635 if ((x & Mono_Posix_MountFlags_MS_SYNCHRONOUS) == Mono_Posix_MountFlags_MS_SYNCHRONOUS)
2636 #ifdef MS_SYNCHRONOUS
2637 *r |= MS_SYNCHRONOUS;
2638 #else /* def MS_SYNCHRONOUS */
2639 {errno = EINVAL; return -1;}
2640 #endif /* ndef MS_SYNCHRONOUS */
2641 if ((x & Mono_Posix_MountFlags_MS_REMOUNT) == Mono_Posix_MountFlags_MS_REMOUNT)
2642 #ifdef MS_REMOUNT
2643 *r |= MS_REMOUNT;
2644 #else /* def MS_REMOUNT */
2645 {errno = EINVAL; return -1;}
2646 #endif /* ndef MS_REMOUNT */
2647 if ((x & Mono_Posix_MountFlags_MS_MANDLOCK) == Mono_Posix_MountFlags_MS_MANDLOCK)
2648 #ifdef MS_MANDLOCK
2649 *r |= MS_MANDLOCK;
2650 #else /* def MS_MANDLOCK */
2651 {errno = EINVAL; return -1;}
2652 #endif /* ndef MS_MANDLOCK */
2653 if ((x & Mono_Posix_MountFlags_S_WRITE) == Mono_Posix_MountFlags_S_WRITE)
2654 #ifdef S_WRITE
2655 *r |= S_WRITE;
2656 #else /* def S_WRITE */
2657 {errno = EINVAL; return -1;}
2658 #endif /* ndef S_WRITE */
2659 if ((x & Mono_Posix_MountFlags_S_APPEND) == Mono_Posix_MountFlags_S_APPEND)
2660 #ifdef S_APPEND
2661 *r |= S_APPEND;
2662 #else /* def S_APPEND */
2663 {errno = EINVAL; return -1;}
2664 #endif /* ndef S_APPEND */
2665 if ((x & Mono_Posix_MountFlags_S_IMMUTABLE) == Mono_Posix_MountFlags_S_IMMUTABLE)
2666 #ifdef S_IMMUTABLE
2667 *r |= S_IMMUTABLE;
2668 #else /* def S_IMMUTABLE */
2669 {errno = EINVAL; return -1;}
2670 #endif /* ndef S_IMMUTABLE */
2671 if ((x & Mono_Posix_MountFlags_MS_NOATIME) == Mono_Posix_MountFlags_MS_NOATIME)
2672 #ifdef MS_NOATIME
2673 *r |= MS_NOATIME;
2674 #else /* def MS_NOATIME */
2675 {errno = EINVAL; return -1;}
2676 #endif /* ndef MS_NOATIME */
2677 if ((x & Mono_Posix_MountFlags_MS_NODIRATIME) == Mono_Posix_MountFlags_MS_NODIRATIME)
2678 #ifdef MS_NODIRATIME
2679 *r |= MS_NODIRATIME;
2680 #else /* def MS_NODIRATIME */
2681 {errno = EINVAL; return -1;}
2682 #endif /* ndef MS_NODIRATIME */
2683 if ((x & Mono_Posix_MountFlags_MS_BIND) == Mono_Posix_MountFlags_MS_BIND)
2684 #ifdef MS_BIND
2685 *r |= MS_BIND;
2686 #else /* def MS_BIND */
2687 {errno = EINVAL; return -1;}
2688 #endif /* ndef MS_BIND */
2689 if ((x & Mono_Posix_MountFlags_MS_RMT_MASK) == Mono_Posix_MountFlags_MS_RMT_MASK)
2690 #ifdef MS_RMT_MASK
2691 *r |= MS_RMT_MASK;
2692 #else /* def MS_RMT_MASK */
2693 {errno = EINVAL; return -1;}
2694 #endif /* ndef MS_RMT_MASK */
2695 if ((x & Mono_Posix_MountFlags_MS_MGC_VAL) == Mono_Posix_MountFlags_MS_MGC_VAL)
2696 #ifdef MS_MGC_VAL
2697 *r |= MS_MGC_VAL;
2698 #else /* def MS_MGC_VAL */
2699 {errno = EINVAL; return -1;}
2700 #endif /* ndef MS_MGC_VAL */
2701 if ((x & Mono_Posix_MountFlags_MS_MGC_MSK) == Mono_Posix_MountFlags_MS_MGC_MSK)
2702 #ifdef MS_MGC_MSK
2703 *r |= MS_MGC_MSK;
2704 #else /* def MS_MGC_MSK */
2705 {errno = EINVAL; return -1;}
2706 #endif /* ndef MS_MGC_MSK */
2707 return 0;
2710 int Mono_Posix_ToMountFlags (guint64 x, guint64 *r)
2712 *r = 0;
2713 if (x == 0)
2714 return 0;
2715 #ifdef MS_RDONLY
2716 if ((x & MS_RDONLY) == MS_RDONLY)
2717 *r |= Mono_Posix_MountFlags_MS_RDONLY;
2718 #endif /* ndef MS_RDONLY */
2719 #ifdef MS_NOSUID
2720 if ((x & MS_NOSUID) == MS_NOSUID)
2721 *r |= Mono_Posix_MountFlags_MS_NOSUID;
2722 #endif /* ndef MS_NOSUID */
2723 #ifdef MS_NODEV
2724 if ((x & MS_NODEV) == MS_NODEV)
2725 *r |= Mono_Posix_MountFlags_MS_NODEV;
2726 #endif /* ndef MS_NODEV */
2727 #ifdef MS_NOEXEC
2728 if ((x & MS_NOEXEC) == MS_NOEXEC)
2729 *r |= Mono_Posix_MountFlags_MS_NOEXEC;
2730 #endif /* ndef MS_NOEXEC */
2731 #ifdef MS_SYNCHRONOUS
2732 if ((x & MS_SYNCHRONOUS) == MS_SYNCHRONOUS)
2733 *r |= Mono_Posix_MountFlags_MS_SYNCHRONOUS;
2734 #endif /* ndef MS_SYNCHRONOUS */
2735 #ifdef MS_REMOUNT
2736 if ((x & MS_REMOUNT) == MS_REMOUNT)
2737 *r |= Mono_Posix_MountFlags_MS_REMOUNT;
2738 #endif /* ndef MS_REMOUNT */
2739 #ifdef MS_MANDLOCK
2740 if ((x & MS_MANDLOCK) == MS_MANDLOCK)
2741 *r |= Mono_Posix_MountFlags_MS_MANDLOCK;
2742 #endif /* ndef MS_MANDLOCK */
2743 #ifdef S_WRITE
2744 if ((x & S_WRITE) == S_WRITE)
2745 *r |= Mono_Posix_MountFlags_S_WRITE;
2746 #endif /* ndef S_WRITE */
2747 #ifdef S_APPEND
2748 if ((x & S_APPEND) == S_APPEND)
2749 *r |= Mono_Posix_MountFlags_S_APPEND;
2750 #endif /* ndef S_APPEND */
2751 #ifdef S_IMMUTABLE
2752 if ((x & S_IMMUTABLE) == S_IMMUTABLE)
2753 *r |= Mono_Posix_MountFlags_S_IMMUTABLE;
2754 #endif /* ndef S_IMMUTABLE */
2755 #ifdef MS_NOATIME
2756 if ((x & MS_NOATIME) == MS_NOATIME)
2757 *r |= Mono_Posix_MountFlags_MS_NOATIME;
2758 #endif /* ndef MS_NOATIME */
2759 #ifdef MS_NODIRATIME
2760 if ((x & MS_NODIRATIME) == MS_NODIRATIME)
2761 *r |= Mono_Posix_MountFlags_MS_NODIRATIME;
2762 #endif /* ndef MS_NODIRATIME */
2763 #ifdef MS_BIND
2764 if ((x & MS_BIND) == MS_BIND)
2765 *r |= Mono_Posix_MountFlags_MS_BIND;
2766 #endif /* ndef MS_BIND */
2767 #ifdef MS_RMT_MASK
2768 if ((x & MS_RMT_MASK) == MS_RMT_MASK)
2769 *r |= Mono_Posix_MountFlags_MS_RMT_MASK;
2770 #endif /* ndef MS_RMT_MASK */
2771 #ifdef MS_MGC_VAL
2772 if ((x & MS_MGC_VAL) == MS_MGC_VAL)
2773 *r |= Mono_Posix_MountFlags_MS_MGC_VAL;
2774 #endif /* ndef MS_MGC_VAL */
2775 #ifdef MS_MGC_MSK
2776 if ((x & MS_MGC_MSK) == MS_MGC_MSK)
2777 *r |= Mono_Posix_MountFlags_MS_MGC_MSK;
2778 #endif /* ndef MS_MGC_MSK */
2779 return 0;
2782 int Mono_Posix_FromUmountFlags (int x, int *r)
2784 *r = 0;
2785 if (x == 0)
2786 return 0;
2787 if ((x & Mono_Posix_UmountFlags_MNT_FORCE) == Mono_Posix_UmountFlags_MNT_FORCE)
2788 #ifdef MNT_FORCE
2789 *r |= MNT_FORCE;
2790 #else /* def MNT_FORCE */
2791 {errno = EINVAL; return -1;}
2792 #endif /* ndef MNT_FORCE */
2793 if ((x & Mono_Posix_UmountFlags_MNT_DETACH) == Mono_Posix_UmountFlags_MNT_DETACH)
2794 #ifdef MNT_DETACH
2795 *r |= MNT_DETACH;
2796 #else /* def MNT_DETACH */
2797 {errno = EINVAL; return -1;}
2798 #endif /* ndef MNT_DETACH */
2799 return 0;
2802 int Mono_Posix_ToUmountFlags (int x, int *r)
2804 *r = 0;
2805 if (x == 0)
2806 return 0;
2807 #ifdef MNT_FORCE
2808 if ((x & MNT_FORCE) == MNT_FORCE)
2809 *r |= Mono_Posix_UmountFlags_MNT_FORCE;
2810 #endif /* ndef MNT_FORCE */
2811 #ifdef MNT_DETACH
2812 if ((x & MNT_DETACH) == MNT_DETACH)
2813 *r |= Mono_Posix_UmountFlags_MNT_DETACH;
2814 #endif /* ndef MNT_DETACH */
2815 return 0;
2818 int Mono_Posix_FromWaitOptions (int x, int *r)
2820 *r = 0;
2821 if (x == 0)
2822 return 0;
2823 if ((x & Mono_Posix_WaitOptions_WNOHANG) == Mono_Posix_WaitOptions_WNOHANG)
2824 #ifdef WNOHANG
2825 *r |= WNOHANG;
2826 #else /* def WNOHANG */
2827 {errno = EINVAL; return -1;}
2828 #endif /* ndef WNOHANG */
2829 if ((x & Mono_Posix_WaitOptions_WUNTRACED) == Mono_Posix_WaitOptions_WUNTRACED)
2830 #ifdef WUNTRACED
2831 *r |= WUNTRACED;
2832 #else /* def WUNTRACED */
2833 {errno = EINVAL; return -1;}
2834 #endif /* ndef WUNTRACED */
2835 return 0;
2838 int Mono_Posix_ToWaitOptions (int x, int *r)
2840 *r = 0;
2841 if (x == 0)
2842 return 0;
2843 #ifdef WNOHANG
2844 if ((x & WNOHANG) == WNOHANG)
2845 *r |= Mono_Posix_WaitOptions_WNOHANG;
2846 #endif /* ndef WNOHANG */
2847 #ifdef WUNTRACED
2848 if ((x & WUNTRACED) == WUNTRACED)
2849 *r |= Mono_Posix_WaitOptions_WUNTRACED;
2850 #endif /* ndef WUNTRACED */
2851 return 0;
2854 int Mono_Posix_FromAccessMode (int x, int *r)
2856 *r = 0;
2857 if (x == 0)
2858 return 0;
2859 if ((x & Mono_Posix_AccessMode_R_OK) == Mono_Posix_AccessMode_R_OK)
2860 #ifdef R_OK
2861 *r |= R_OK;
2862 #else /* def R_OK */
2863 {errno = EINVAL; return -1;}
2864 #endif /* ndef R_OK */
2865 if ((x & Mono_Posix_AccessMode_W_OK) == Mono_Posix_AccessMode_W_OK)
2866 #ifdef W_OK
2867 *r |= W_OK;
2868 #else /* def W_OK */
2869 {errno = EINVAL; return -1;}
2870 #endif /* ndef W_OK */
2871 if ((x & Mono_Posix_AccessMode_X_OK) == Mono_Posix_AccessMode_X_OK)
2872 #ifdef X_OK
2873 *r |= X_OK;
2874 #else /* def X_OK */
2875 {errno = EINVAL; return -1;}
2876 #endif /* ndef X_OK */
2877 if ((x & Mono_Posix_AccessMode_F_OK) == Mono_Posix_AccessMode_F_OK)
2878 #ifdef F_OK
2879 *r |= F_OK;
2880 #else /* def F_OK */
2881 {errno = EINVAL; return -1;}
2882 #endif /* ndef F_OK */
2883 return 0;
2886 int Mono_Posix_ToAccessMode (int x, int *r)
2888 *r = 0;
2889 if (x == 0)
2890 return 0;
2891 #ifdef R_OK
2892 if ((x & R_OK) == R_OK)
2893 *r |= Mono_Posix_AccessMode_R_OK;
2894 #endif /* ndef R_OK */
2895 #ifdef W_OK
2896 if ((x & W_OK) == W_OK)
2897 *r |= Mono_Posix_AccessMode_W_OK;
2898 #endif /* ndef W_OK */
2899 #ifdef X_OK
2900 if ((x & X_OK) == X_OK)
2901 *r |= Mono_Posix_AccessMode_X_OK;
2902 #endif /* ndef X_OK */
2903 #ifdef F_OK
2904 if ((x & F_OK) == F_OK)
2905 *r |= Mono_Posix_AccessMode_F_OK;
2906 #endif /* ndef F_OK */
2907 return 0;
2910 int Mono_Posix_FromPathConf (int x, int *r)
2912 *r = 0;
2913 if (x == 0)
2914 return 0;
2915 if (x == Mono_Posix_PathConf__PC_LINK_MAX)
2916 #ifdef _PC_LINK_MAX
2917 {*r = _PC_LINK_MAX; return 0;}
2918 #else /* def _PC_LINK_MAX */
2919 {errno = EINVAL; return -1;}
2920 #endif /* ndef _PC_LINK_MAX */
2921 if (x == Mono_Posix_PathConf__PC_MAX_CANON)
2922 #ifdef _PC_MAX_CANON
2923 {*r = _PC_MAX_CANON; return 0;}
2924 #else /* def _PC_MAX_CANON */
2925 {errno = EINVAL; return -1;}
2926 #endif /* ndef _PC_MAX_CANON */
2927 if (x == Mono_Posix_PathConf__PC_MAX_INPUT)
2928 #ifdef _PC_MAX_INPUT
2929 {*r = _PC_MAX_INPUT; return 0;}
2930 #else /* def _PC_MAX_INPUT */
2931 {errno = EINVAL; return -1;}
2932 #endif /* ndef _PC_MAX_INPUT */
2933 if (x == Mono_Posix_PathConf__PC_NAME_MAX)
2934 #ifdef _PC_NAME_MAX
2935 {*r = _PC_NAME_MAX; return 0;}
2936 #else /* def _PC_NAME_MAX */
2937 {errno = EINVAL; return -1;}
2938 #endif /* ndef _PC_NAME_MAX */
2939 if (x == Mono_Posix_PathConf__PC_PATH_MAX)
2940 #ifdef _PC_PATH_MAX
2941 {*r = _PC_PATH_MAX; return 0;}
2942 #else /* def _PC_PATH_MAX */
2943 {errno = EINVAL; return -1;}
2944 #endif /* ndef _PC_PATH_MAX */
2945 if (x == Mono_Posix_PathConf__PC_PIPE_BUF)
2946 #ifdef _PC_PIPE_BUF
2947 {*r = _PC_PIPE_BUF; return 0;}
2948 #else /* def _PC_PIPE_BUF */
2949 {errno = EINVAL; return -1;}
2950 #endif /* ndef _PC_PIPE_BUF */
2951 if (x == Mono_Posix_PathConf__PC_CHOWN_RESTRICTED)
2952 #ifdef _PC_CHOWN_RESTRICTED
2953 {*r = _PC_CHOWN_RESTRICTED; return 0;}
2954 #else /* def _PC_CHOWN_RESTRICTED */
2955 {errno = EINVAL; return -1;}
2956 #endif /* ndef _PC_CHOWN_RESTRICTED */
2957 if (x == Mono_Posix_PathConf__PC_NO_TRUNC)
2958 #ifdef _PC_NO_TRUNC
2959 {*r = _PC_NO_TRUNC; return 0;}
2960 #else /* def _PC_NO_TRUNC */
2961 {errno = EINVAL; return -1;}
2962 #endif /* ndef _PC_NO_TRUNC */
2963 if (x == Mono_Posix_PathConf__PC_VDISABLE)
2964 #ifdef _PC_VDISABLE
2965 {*r = _PC_VDISABLE; return 0;}
2966 #else /* def _PC_VDISABLE */
2967 {errno = EINVAL; return -1;}
2968 #endif /* ndef _PC_VDISABLE */
2969 if (x == Mono_Posix_PathConf__PC_SYNC_IO)
2970 #ifdef _PC_SYNC_IO
2971 {*r = _PC_SYNC_IO; return 0;}
2972 #else /* def _PC_SYNC_IO */
2973 {errno = EINVAL; return -1;}
2974 #endif /* ndef _PC_SYNC_IO */
2975 if (x == Mono_Posix_PathConf__PC_ASYNC_IO)
2976 #ifdef _PC_ASYNC_IO
2977 {*r = _PC_ASYNC_IO; return 0;}
2978 #else /* def _PC_ASYNC_IO */
2979 {errno = EINVAL; return -1;}
2980 #endif /* ndef _PC_ASYNC_IO */
2981 if (x == Mono_Posix_PathConf__PC_PRIO_IO)
2982 #ifdef _PC_PRIO_IO
2983 {*r = _PC_PRIO_IO; return 0;}
2984 #else /* def _PC_PRIO_IO */
2985 {errno = EINVAL; return -1;}
2986 #endif /* ndef _PC_PRIO_IO */
2987 if (x == Mono_Posix_PathConf__PC_SOCK_MAXBUF)
2988 #ifdef _PC_SOCK_MAXBUF
2989 {*r = _PC_SOCK_MAXBUF; return 0;}
2990 #else /* def _PC_SOCK_MAXBUF */
2991 {errno = EINVAL; return -1;}
2992 #endif /* ndef _PC_SOCK_MAXBUF */
2993 if (x == Mono_Posix_PathConf__PC_FILESIZEBITS)
2994 #ifdef _PC_FILESIZEBITS
2995 {*r = _PC_FILESIZEBITS; return 0;}
2996 #else /* def _PC_FILESIZEBITS */
2997 {errno = EINVAL; return -1;}
2998 #endif /* ndef _PC_FILESIZEBITS */
2999 if (x == Mono_Posix_PathConf__PC_REC_INCR_XFER_SIZE)
3000 #ifdef _PC_REC_INCR_XFER_SIZE
3001 {*r = _PC_REC_INCR_XFER_SIZE; return 0;}
3002 #else /* def _PC_REC_INCR_XFER_SIZE */
3003 {errno = EINVAL; return -1;}
3004 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3005 if (x == Mono_Posix_PathConf__PC_REC_MAX_XFER_SIZE)
3006 #ifdef _PC_REC_MAX_XFER_SIZE
3007 {*r = _PC_REC_MAX_XFER_SIZE; return 0;}
3008 #else /* def _PC_REC_MAX_XFER_SIZE */
3009 {errno = EINVAL; return -1;}
3010 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3011 if (x == Mono_Posix_PathConf__PC_REC_MIN_XFER_SIZE)
3012 #ifdef _PC_REC_MIN_XFER_SIZE
3013 {*r = _PC_REC_MIN_XFER_SIZE; return 0;}
3014 #else /* def _PC_REC_MIN_XFER_SIZE */
3015 {errno = EINVAL; return -1;}
3016 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3017 if (x == Mono_Posix_PathConf__PC_REC_XFER_ALIGN)
3018 #ifdef _PC_REC_XFER_ALIGN
3019 {*r = _PC_REC_XFER_ALIGN; return 0;}
3020 #else /* def _PC_REC_XFER_ALIGN */
3021 {errno = EINVAL; return -1;}
3022 #endif /* ndef _PC_REC_XFER_ALIGN */
3023 if (x == Mono_Posix_PathConf__PC_ALLOC_SIZE_MIN)
3024 #ifdef _PC_ALLOC_SIZE_MIN
3025 {*r = _PC_ALLOC_SIZE_MIN; return 0;}
3026 #else /* def _PC_ALLOC_SIZE_MIN */
3027 {errno = EINVAL; return -1;}
3028 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3029 if (x == Mono_Posix_PathConf__PC_SYMLINK_MAX)
3030 #ifdef _PC_SYMLINK_MAX
3031 {*r = _PC_SYMLINK_MAX; return 0;}
3032 #else /* def _PC_SYMLINK_MAX */
3033 {errno = EINVAL; return -1;}
3034 #endif /* ndef _PC_SYMLINK_MAX */
3035 if (x == Mono_Posix_PathConf__PC_2_SYMLINKS)
3036 #ifdef _PC_2_SYMLINKS
3037 {*r = _PC_2_SYMLINKS; return 0;}
3038 #else /* def _PC_2_SYMLINKS */
3039 {errno = EINVAL; return -1;}
3040 #endif /* ndef _PC_2_SYMLINKS */
3041 errno = EINVAL; return -1;
3044 int Mono_Posix_ToPathConf (int x, int *r)
3046 *r = 0;
3047 if (x == 0)
3048 return 0;
3049 #ifdef _PC_LINK_MAX
3050 if (x == _PC_LINK_MAX)
3051 {*r = Mono_Posix_PathConf__PC_LINK_MAX; return 0;}
3052 #endif /* ndef _PC_LINK_MAX */
3053 #ifdef _PC_MAX_CANON
3054 if (x == _PC_MAX_CANON)
3055 {*r = Mono_Posix_PathConf__PC_MAX_CANON; return 0;}
3056 #endif /* ndef _PC_MAX_CANON */
3057 #ifdef _PC_MAX_INPUT
3058 if (x == _PC_MAX_INPUT)
3059 {*r = Mono_Posix_PathConf__PC_MAX_INPUT; return 0;}
3060 #endif /* ndef _PC_MAX_INPUT */
3061 #ifdef _PC_NAME_MAX
3062 if (x == _PC_NAME_MAX)
3063 {*r = Mono_Posix_PathConf__PC_NAME_MAX; return 0;}
3064 #endif /* ndef _PC_NAME_MAX */
3065 #ifdef _PC_PATH_MAX
3066 if (x == _PC_PATH_MAX)
3067 {*r = Mono_Posix_PathConf__PC_PATH_MAX; return 0;}
3068 #endif /* ndef _PC_PATH_MAX */
3069 #ifdef _PC_PIPE_BUF
3070 if (x == _PC_PIPE_BUF)
3071 {*r = Mono_Posix_PathConf__PC_PIPE_BUF; return 0;}
3072 #endif /* ndef _PC_PIPE_BUF */
3073 #ifdef _PC_CHOWN_RESTRICTED
3074 if (x == _PC_CHOWN_RESTRICTED)
3075 {*r = Mono_Posix_PathConf__PC_CHOWN_RESTRICTED; return 0;}
3076 #endif /* ndef _PC_CHOWN_RESTRICTED */
3077 #ifdef _PC_NO_TRUNC
3078 if (x == _PC_NO_TRUNC)
3079 {*r = Mono_Posix_PathConf__PC_NO_TRUNC; return 0;}
3080 #endif /* ndef _PC_NO_TRUNC */
3081 #ifdef _PC_VDISABLE
3082 if (x == _PC_VDISABLE)
3083 {*r = Mono_Posix_PathConf__PC_VDISABLE; return 0;}
3084 #endif /* ndef _PC_VDISABLE */
3085 #ifdef _PC_SYNC_IO
3086 if (x == _PC_SYNC_IO)
3087 {*r = Mono_Posix_PathConf__PC_SYNC_IO; return 0;}
3088 #endif /* ndef _PC_SYNC_IO */
3089 #ifdef _PC_ASYNC_IO
3090 if (x == _PC_ASYNC_IO)
3091 {*r = Mono_Posix_PathConf__PC_ASYNC_IO; return 0;}
3092 #endif /* ndef _PC_ASYNC_IO */
3093 #ifdef _PC_PRIO_IO
3094 if (x == _PC_PRIO_IO)
3095 {*r = Mono_Posix_PathConf__PC_PRIO_IO; return 0;}
3096 #endif /* ndef _PC_PRIO_IO */
3097 #ifdef _PC_SOCK_MAXBUF
3098 if (x == _PC_SOCK_MAXBUF)
3099 {*r = Mono_Posix_PathConf__PC_SOCK_MAXBUF; return 0;}
3100 #endif /* ndef _PC_SOCK_MAXBUF */
3101 #ifdef _PC_FILESIZEBITS
3102 if (x == _PC_FILESIZEBITS)
3103 {*r = Mono_Posix_PathConf__PC_FILESIZEBITS; return 0;}
3104 #endif /* ndef _PC_FILESIZEBITS */
3105 #ifdef _PC_REC_INCR_XFER_SIZE
3106 if (x == _PC_REC_INCR_XFER_SIZE)
3107 {*r = Mono_Posix_PathConf__PC_REC_INCR_XFER_SIZE; return 0;}
3108 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3109 #ifdef _PC_REC_MAX_XFER_SIZE
3110 if (x == _PC_REC_MAX_XFER_SIZE)
3111 {*r = Mono_Posix_PathConf__PC_REC_MAX_XFER_SIZE; return 0;}
3112 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3113 #ifdef _PC_REC_MIN_XFER_SIZE
3114 if (x == _PC_REC_MIN_XFER_SIZE)
3115 {*r = Mono_Posix_PathConf__PC_REC_MIN_XFER_SIZE; return 0;}
3116 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3117 #ifdef _PC_REC_XFER_ALIGN
3118 if (x == _PC_REC_XFER_ALIGN)
3119 {*r = Mono_Posix_PathConf__PC_REC_XFER_ALIGN; return 0;}
3120 #endif /* ndef _PC_REC_XFER_ALIGN */
3121 #ifdef _PC_ALLOC_SIZE_MIN
3122 if (x == _PC_ALLOC_SIZE_MIN)
3123 {*r = Mono_Posix_PathConf__PC_ALLOC_SIZE_MIN; return 0;}
3124 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3125 #ifdef _PC_SYMLINK_MAX
3126 if (x == _PC_SYMLINK_MAX)
3127 {*r = Mono_Posix_PathConf__PC_SYMLINK_MAX; return 0;}
3128 #endif /* ndef _PC_SYMLINK_MAX */
3129 #ifdef _PC_2_SYMLINKS
3130 if (x == _PC_2_SYMLINKS)
3131 {*r = Mono_Posix_PathConf__PC_2_SYMLINKS; return 0;}
3132 #endif /* ndef _PC_2_SYMLINKS */
3133 errno = EINVAL; return -1;
3136 int Mono_Posix_FromSysConf (int x, int *r)
3138 *r = 0;
3139 if (x == 0)
3140 return 0;
3141 if (x == Mono_Posix_SysConf__SC_ARG_MAX)
3142 #ifdef _SC_ARG_MAX
3143 {*r = _SC_ARG_MAX; return 0;}
3144 #else /* def _SC_ARG_MAX */
3145 {errno = EINVAL; return -1;}
3146 #endif /* ndef _SC_ARG_MAX */
3147 if (x == Mono_Posix_SysConf__SC_CHILD_MAX)
3148 #ifdef _SC_CHILD_MAX
3149 {*r = _SC_CHILD_MAX; return 0;}
3150 #else /* def _SC_CHILD_MAX */
3151 {errno = EINVAL; return -1;}
3152 #endif /* ndef _SC_CHILD_MAX */
3153 if (x == Mono_Posix_SysConf__SC_CLK_TCK)
3154 #ifdef _SC_CLK_TCK
3155 {*r = _SC_CLK_TCK; return 0;}
3156 #else /* def _SC_CLK_TCK */
3157 {errno = EINVAL; return -1;}
3158 #endif /* ndef _SC_CLK_TCK */
3159 if (x == Mono_Posix_SysConf__SC_NGROUPS_MAX)
3160 #ifdef _SC_NGROUPS_MAX
3161 {*r = _SC_NGROUPS_MAX; return 0;}
3162 #else /* def _SC_NGROUPS_MAX */
3163 {errno = EINVAL; return -1;}
3164 #endif /* ndef _SC_NGROUPS_MAX */
3165 if (x == Mono_Posix_SysConf__SC_OPEN_MAX)
3166 #ifdef _SC_OPEN_MAX
3167 {*r = _SC_OPEN_MAX; return 0;}
3168 #else /* def _SC_OPEN_MAX */
3169 {errno = EINVAL; return -1;}
3170 #endif /* ndef _SC_OPEN_MAX */
3171 if (x == Mono_Posix_SysConf__SC_STREAM_MAX)
3172 #ifdef _SC_STREAM_MAX
3173 {*r = _SC_STREAM_MAX; return 0;}
3174 #else /* def _SC_STREAM_MAX */
3175 {errno = EINVAL; return -1;}
3176 #endif /* ndef _SC_STREAM_MAX */
3177 if (x == Mono_Posix_SysConf__SC_TZNAME_MAX)
3178 #ifdef _SC_TZNAME_MAX
3179 {*r = _SC_TZNAME_MAX; return 0;}
3180 #else /* def _SC_TZNAME_MAX */
3181 {errno = EINVAL; return -1;}
3182 #endif /* ndef _SC_TZNAME_MAX */
3183 if (x == Mono_Posix_SysConf__SC_JOB_CONTROL)
3184 #ifdef _SC_JOB_CONTROL
3185 {*r = _SC_JOB_CONTROL; return 0;}
3186 #else /* def _SC_JOB_CONTROL */
3187 {errno = EINVAL; return -1;}
3188 #endif /* ndef _SC_JOB_CONTROL */
3189 if (x == Mono_Posix_SysConf__SC_SAVED_IDS)
3190 #ifdef _SC_SAVED_IDS
3191 {*r = _SC_SAVED_IDS; return 0;}
3192 #else /* def _SC_SAVED_IDS */
3193 {errno = EINVAL; return -1;}
3194 #endif /* ndef _SC_SAVED_IDS */
3195 if (x == Mono_Posix_SysConf__SC_REALTIME_SIGNALS)
3196 #ifdef _SC_REALTIME_SIGNALS
3197 {*r = _SC_REALTIME_SIGNALS; return 0;}
3198 #else /* def _SC_REALTIME_SIGNALS */
3199 {errno = EINVAL; return -1;}
3200 #endif /* ndef _SC_REALTIME_SIGNALS */
3201 if (x == Mono_Posix_SysConf__SC_PRIORITY_SCHEDULING)
3202 #ifdef _SC_PRIORITY_SCHEDULING
3203 {*r = _SC_PRIORITY_SCHEDULING; return 0;}
3204 #else /* def _SC_PRIORITY_SCHEDULING */
3205 {errno = EINVAL; return -1;}
3206 #endif /* ndef _SC_PRIORITY_SCHEDULING */
3207 if (x == Mono_Posix_SysConf__SC_TIMERS)
3208 #ifdef _SC_TIMERS
3209 {*r = _SC_TIMERS; return 0;}
3210 #else /* def _SC_TIMERS */
3211 {errno = EINVAL; return -1;}
3212 #endif /* ndef _SC_TIMERS */
3213 if (x == Mono_Posix_SysConf__SC_ASYNCHRONOUS_IO)
3214 #ifdef _SC_ASYNCHRONOUS_IO
3215 {*r = _SC_ASYNCHRONOUS_IO; return 0;}
3216 #else /* def _SC_ASYNCHRONOUS_IO */
3217 {errno = EINVAL; return -1;}
3218 #endif /* ndef _SC_ASYNCHRONOUS_IO */
3219 if (x == Mono_Posix_SysConf__SC_PRIORITIZED_IO)
3220 #ifdef _SC_PRIORITIZED_IO
3221 {*r = _SC_PRIORITIZED_IO; return 0;}
3222 #else /* def _SC_PRIORITIZED_IO */
3223 {errno = EINVAL; return -1;}
3224 #endif /* ndef _SC_PRIORITIZED_IO */
3225 if (x == Mono_Posix_SysConf__SC_SYNCHRONIZED_IO)
3226 #ifdef _SC_SYNCHRONIZED_IO
3227 {*r = _SC_SYNCHRONIZED_IO; return 0;}
3228 #else /* def _SC_SYNCHRONIZED_IO */
3229 {errno = EINVAL; return -1;}
3230 #endif /* ndef _SC_SYNCHRONIZED_IO */
3231 if (x == Mono_Posix_SysConf__SC_FSYNC)
3232 #ifdef _SC_FSYNC
3233 {*r = _SC_FSYNC; return 0;}
3234 #else /* def _SC_FSYNC */
3235 {errno = EINVAL; return -1;}
3236 #endif /* ndef _SC_FSYNC */
3237 if (x == Mono_Posix_SysConf__SC_MAPPED_FILES)
3238 #ifdef _SC_MAPPED_FILES
3239 {*r = _SC_MAPPED_FILES; return 0;}
3240 #else /* def _SC_MAPPED_FILES */
3241 {errno = EINVAL; return -1;}
3242 #endif /* ndef _SC_MAPPED_FILES */
3243 if (x == Mono_Posix_SysConf__SC_MEMLOCK)
3244 #ifdef _SC_MEMLOCK
3245 {*r = _SC_MEMLOCK; return 0;}
3246 #else /* def _SC_MEMLOCK */
3247 {errno = EINVAL; return -1;}
3248 #endif /* ndef _SC_MEMLOCK */
3249 if (x == Mono_Posix_SysConf__SC_MEMLOCK_RANGE)
3250 #ifdef _SC_MEMLOCK_RANGE
3251 {*r = _SC_MEMLOCK_RANGE; return 0;}
3252 #else /* def _SC_MEMLOCK_RANGE */
3253 {errno = EINVAL; return -1;}
3254 #endif /* ndef _SC_MEMLOCK_RANGE */
3255 if (x == Mono_Posix_SysConf__SC_MEMORY_PROTECTION)
3256 #ifdef _SC_MEMORY_PROTECTION
3257 {*r = _SC_MEMORY_PROTECTION; return 0;}
3258 #else /* def _SC_MEMORY_PROTECTION */
3259 {errno = EINVAL; return -1;}
3260 #endif /* ndef _SC_MEMORY_PROTECTION */
3261 if (x == Mono_Posix_SysConf__SC_MESSAGE_PASSING)
3262 #ifdef _SC_MESSAGE_PASSING
3263 {*r = _SC_MESSAGE_PASSING; return 0;}
3264 #else /* def _SC_MESSAGE_PASSING */
3265 {errno = EINVAL; return -1;}
3266 #endif /* ndef _SC_MESSAGE_PASSING */
3267 if (x == Mono_Posix_SysConf__SC_SEMAPHORES)
3268 #ifdef _SC_SEMAPHORES
3269 {*r = _SC_SEMAPHORES; return 0;}
3270 #else /* def _SC_SEMAPHORES */
3271 {errno = EINVAL; return -1;}
3272 #endif /* ndef _SC_SEMAPHORES */
3273 if (x == Mono_Posix_SysConf__SC_SHARED_MEMORY_OBJECTS)
3274 #ifdef _SC_SHARED_MEMORY_OBJECTS
3275 {*r = _SC_SHARED_MEMORY_OBJECTS; return 0;}
3276 #else /* def _SC_SHARED_MEMORY_OBJECTS */
3277 {errno = EINVAL; return -1;}
3278 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
3279 if (x == Mono_Posix_SysConf__SC_AIO_LISTIO_MAX)
3280 #ifdef _SC_AIO_LISTIO_MAX
3281 {*r = _SC_AIO_LISTIO_MAX; return 0;}
3282 #else /* def _SC_AIO_LISTIO_MAX */
3283 {errno = EINVAL; return -1;}
3284 #endif /* ndef _SC_AIO_LISTIO_MAX */
3285 if (x == Mono_Posix_SysConf__SC_AIO_MAX)
3286 #ifdef _SC_AIO_MAX
3287 {*r = _SC_AIO_MAX; return 0;}
3288 #else /* def _SC_AIO_MAX */
3289 {errno = EINVAL; return -1;}
3290 #endif /* ndef _SC_AIO_MAX */
3291 if (x == Mono_Posix_SysConf__SC_AIO_PRIO_DELTA_MAX)
3292 #ifdef _SC_AIO_PRIO_DELTA_MAX
3293 {*r = _SC_AIO_PRIO_DELTA_MAX; return 0;}
3294 #else /* def _SC_AIO_PRIO_DELTA_MAX */
3295 {errno = EINVAL; return -1;}
3296 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
3297 if (x == Mono_Posix_SysConf__SC_DELAYTIMER_MAX)
3298 #ifdef _SC_DELAYTIMER_MAX
3299 {*r = _SC_DELAYTIMER_MAX; return 0;}
3300 #else /* def _SC_DELAYTIMER_MAX */
3301 {errno = EINVAL; return -1;}
3302 #endif /* ndef _SC_DELAYTIMER_MAX */
3303 if (x == Mono_Posix_SysConf__SC_MQ_OPEN_MAX)
3304 #ifdef _SC_MQ_OPEN_MAX
3305 {*r = _SC_MQ_OPEN_MAX; return 0;}
3306 #else /* def _SC_MQ_OPEN_MAX */
3307 {errno = EINVAL; return -1;}
3308 #endif /* ndef _SC_MQ_OPEN_MAX */
3309 if (x == Mono_Posix_SysConf__SC_MQ_PRIO_MAX)
3310 #ifdef _SC_MQ_PRIO_MAX
3311 {*r = _SC_MQ_PRIO_MAX; return 0;}
3312 #else /* def _SC_MQ_PRIO_MAX */
3313 {errno = EINVAL; return -1;}
3314 #endif /* ndef _SC_MQ_PRIO_MAX */
3315 if (x == Mono_Posix_SysConf__SC_VERSION)
3316 #ifdef _SC_VERSION
3317 {*r = _SC_VERSION; return 0;}
3318 #else /* def _SC_VERSION */
3319 {errno = EINVAL; return -1;}
3320 #endif /* ndef _SC_VERSION */
3321 if (x == Mono_Posix_SysConf__SC_PAGESIZE)
3322 #ifdef _SC_PAGESIZE
3323 {*r = _SC_PAGESIZE; return 0;}
3324 #else /* def _SC_PAGESIZE */
3325 {errno = EINVAL; return -1;}
3326 #endif /* ndef _SC_PAGESIZE */
3327 if (x == Mono_Posix_SysConf__SC_RTSIG_MAX)
3328 #ifdef _SC_RTSIG_MAX
3329 {*r = _SC_RTSIG_MAX; return 0;}
3330 #else /* def _SC_RTSIG_MAX */
3331 {errno = EINVAL; return -1;}
3332 #endif /* ndef _SC_RTSIG_MAX */
3333 if (x == Mono_Posix_SysConf__SC_SEM_NSEMS_MAX)
3334 #ifdef _SC_SEM_NSEMS_MAX
3335 {*r = _SC_SEM_NSEMS_MAX; return 0;}
3336 #else /* def _SC_SEM_NSEMS_MAX */
3337 {errno = EINVAL; return -1;}
3338 #endif /* ndef _SC_SEM_NSEMS_MAX */
3339 if (x == Mono_Posix_SysConf__SC_SEM_VALUE_MAX)
3340 #ifdef _SC_SEM_VALUE_MAX
3341 {*r = _SC_SEM_VALUE_MAX; return 0;}
3342 #else /* def _SC_SEM_VALUE_MAX */
3343 {errno = EINVAL; return -1;}
3344 #endif /* ndef _SC_SEM_VALUE_MAX */
3345 if (x == Mono_Posix_SysConf__SC_SIGQUEUE_MAX)
3346 #ifdef _SC_SIGQUEUE_MAX
3347 {*r = _SC_SIGQUEUE_MAX; return 0;}
3348 #else /* def _SC_SIGQUEUE_MAX */
3349 {errno = EINVAL; return -1;}
3350 #endif /* ndef _SC_SIGQUEUE_MAX */
3351 if (x == Mono_Posix_SysConf__SC_TIMER_MAX)
3352 #ifdef _SC_TIMER_MAX
3353 {*r = _SC_TIMER_MAX; return 0;}
3354 #else /* def _SC_TIMER_MAX */
3355 {errno = EINVAL; return -1;}
3356 #endif /* ndef _SC_TIMER_MAX */
3357 if (x == Mono_Posix_SysConf__SC_BC_BASE_MAX)
3358 #ifdef _SC_BC_BASE_MAX
3359 {*r = _SC_BC_BASE_MAX; return 0;}
3360 #else /* def _SC_BC_BASE_MAX */
3361 {errno = EINVAL; return -1;}
3362 #endif /* ndef _SC_BC_BASE_MAX */
3363 if (x == Mono_Posix_SysConf__SC_BC_DIM_MAX)
3364 #ifdef _SC_BC_DIM_MAX
3365 {*r = _SC_BC_DIM_MAX; return 0;}
3366 #else /* def _SC_BC_DIM_MAX */
3367 {errno = EINVAL; return -1;}
3368 #endif /* ndef _SC_BC_DIM_MAX */
3369 if (x == Mono_Posix_SysConf__SC_BC_SCALE_MAX)
3370 #ifdef _SC_BC_SCALE_MAX
3371 {*r = _SC_BC_SCALE_MAX; return 0;}
3372 #else /* def _SC_BC_SCALE_MAX */
3373 {errno = EINVAL; return -1;}
3374 #endif /* ndef _SC_BC_SCALE_MAX */
3375 if (x == Mono_Posix_SysConf__SC_BC_STRING_MAX)
3376 #ifdef _SC_BC_STRING_MAX
3377 {*r = _SC_BC_STRING_MAX; return 0;}
3378 #else /* def _SC_BC_STRING_MAX */
3379 {errno = EINVAL; return -1;}
3380 #endif /* ndef _SC_BC_STRING_MAX */
3381 if (x == Mono_Posix_SysConf__SC_COLL_WEIGHTS_MAX)
3382 #ifdef _SC_COLL_WEIGHTS_MAX
3383 {*r = _SC_COLL_WEIGHTS_MAX; return 0;}
3384 #else /* def _SC_COLL_WEIGHTS_MAX */
3385 {errno = EINVAL; return -1;}
3386 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
3387 if (x == Mono_Posix_SysConf__SC_EQUIV_CLASS_MAX)
3388 #ifdef _SC_EQUIV_CLASS_MAX
3389 {*r = _SC_EQUIV_CLASS_MAX; return 0;}
3390 #else /* def _SC_EQUIV_CLASS_MAX */
3391 {errno = EINVAL; return -1;}
3392 #endif /* ndef _SC_EQUIV_CLASS_MAX */
3393 if (x == Mono_Posix_SysConf__SC_EXPR_NEST_MAX)
3394 #ifdef _SC_EXPR_NEST_MAX
3395 {*r = _SC_EXPR_NEST_MAX; return 0;}
3396 #else /* def _SC_EXPR_NEST_MAX */
3397 {errno = EINVAL; return -1;}
3398 #endif /* ndef _SC_EXPR_NEST_MAX */
3399 if (x == Mono_Posix_SysConf__SC_LINE_MAX)
3400 #ifdef _SC_LINE_MAX
3401 {*r = _SC_LINE_MAX; return 0;}
3402 #else /* def _SC_LINE_MAX */
3403 {errno = EINVAL; return -1;}
3404 #endif /* ndef _SC_LINE_MAX */
3405 if (x == Mono_Posix_SysConf__SC_RE_DUP_MAX)
3406 #ifdef _SC_RE_DUP_MAX
3407 {*r = _SC_RE_DUP_MAX; return 0;}
3408 #else /* def _SC_RE_DUP_MAX */
3409 {errno = EINVAL; return -1;}
3410 #endif /* ndef _SC_RE_DUP_MAX */
3411 if (x == Mono_Posix_SysConf__SC_CHARCLASS_NAME_MAX)
3412 #ifdef _SC_CHARCLASS_NAME_MAX
3413 {*r = _SC_CHARCLASS_NAME_MAX; return 0;}
3414 #else /* def _SC_CHARCLASS_NAME_MAX */
3415 {errno = EINVAL; return -1;}
3416 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
3417 if (x == Mono_Posix_SysConf__SC_2_VERSION)
3418 #ifdef _SC_2_VERSION
3419 {*r = _SC_2_VERSION; return 0;}
3420 #else /* def _SC_2_VERSION */
3421 {errno = EINVAL; return -1;}
3422 #endif /* ndef _SC_2_VERSION */
3423 if (x == Mono_Posix_SysConf__SC_2_C_BIND)
3424 #ifdef _SC_2_C_BIND
3425 {*r = _SC_2_C_BIND; return 0;}
3426 #else /* def _SC_2_C_BIND */
3427 {errno = EINVAL; return -1;}
3428 #endif /* ndef _SC_2_C_BIND */
3429 if (x == Mono_Posix_SysConf__SC_2_C_DEV)
3430 #ifdef _SC_2_C_DEV
3431 {*r = _SC_2_C_DEV; return 0;}
3432 #else /* def _SC_2_C_DEV */
3433 {errno = EINVAL; return -1;}
3434 #endif /* ndef _SC_2_C_DEV */
3435 if (x == Mono_Posix_SysConf__SC_2_FORT_DEV)
3436 #ifdef _SC_2_FORT_DEV
3437 {*r = _SC_2_FORT_DEV; return 0;}
3438 #else /* def _SC_2_FORT_DEV */
3439 {errno = EINVAL; return -1;}
3440 #endif /* ndef _SC_2_FORT_DEV */
3441 if (x == Mono_Posix_SysConf__SC_2_FORT_RUN)
3442 #ifdef _SC_2_FORT_RUN
3443 {*r = _SC_2_FORT_RUN; return 0;}
3444 #else /* def _SC_2_FORT_RUN */
3445 {errno = EINVAL; return -1;}
3446 #endif /* ndef _SC_2_FORT_RUN */
3447 if (x == Mono_Posix_SysConf__SC_2_SW_DEV)
3448 #ifdef _SC_2_SW_DEV
3449 {*r = _SC_2_SW_DEV; return 0;}
3450 #else /* def _SC_2_SW_DEV */
3451 {errno = EINVAL; return -1;}
3452 #endif /* ndef _SC_2_SW_DEV */
3453 if (x == Mono_Posix_SysConf__SC_2_LOCALEDEF)
3454 #ifdef _SC_2_LOCALEDEF
3455 {*r = _SC_2_LOCALEDEF; return 0;}
3456 #else /* def _SC_2_LOCALEDEF */
3457 {errno = EINVAL; return -1;}
3458 #endif /* ndef _SC_2_LOCALEDEF */
3459 if (x == Mono_Posix_SysConf__SC_PII)
3460 #ifdef _SC_PII
3461 {*r = _SC_PII; return 0;}
3462 #else /* def _SC_PII */
3463 {errno = EINVAL; return -1;}
3464 #endif /* ndef _SC_PII */
3465 if (x == Mono_Posix_SysConf__SC_PII_XTI)
3466 #ifdef _SC_PII_XTI
3467 {*r = _SC_PII_XTI; return 0;}
3468 #else /* def _SC_PII_XTI */
3469 {errno = EINVAL; return -1;}
3470 #endif /* ndef _SC_PII_XTI */
3471 if (x == Mono_Posix_SysConf__SC_PII_SOCKET)
3472 #ifdef _SC_PII_SOCKET
3473 {*r = _SC_PII_SOCKET; return 0;}
3474 #else /* def _SC_PII_SOCKET */
3475 {errno = EINVAL; return -1;}
3476 #endif /* ndef _SC_PII_SOCKET */
3477 if (x == Mono_Posix_SysConf__SC_PII_INTERNET)
3478 #ifdef _SC_PII_INTERNET
3479 {*r = _SC_PII_INTERNET; return 0;}
3480 #else /* def _SC_PII_INTERNET */
3481 {errno = EINVAL; return -1;}
3482 #endif /* ndef _SC_PII_INTERNET */
3483 if (x == Mono_Posix_SysConf__SC_PII_OSI)
3484 #ifdef _SC_PII_OSI
3485 {*r = _SC_PII_OSI; return 0;}
3486 #else /* def _SC_PII_OSI */
3487 {errno = EINVAL; return -1;}
3488 #endif /* ndef _SC_PII_OSI */
3489 if (x == Mono_Posix_SysConf__SC_POLL)
3490 #ifdef _SC_POLL
3491 {*r = _SC_POLL; return 0;}
3492 #else /* def _SC_POLL */
3493 {errno = EINVAL; return -1;}
3494 #endif /* ndef _SC_POLL */
3495 if (x == Mono_Posix_SysConf__SC_SELECT)
3496 #ifdef _SC_SELECT
3497 {*r = _SC_SELECT; return 0;}
3498 #else /* def _SC_SELECT */
3499 {errno = EINVAL; return -1;}
3500 #endif /* ndef _SC_SELECT */
3501 if (x == Mono_Posix_SysConf__SC_UIO_MAXIOV)
3502 #ifdef _SC_UIO_MAXIOV
3503 {*r = _SC_UIO_MAXIOV; return 0;}
3504 #else /* def _SC_UIO_MAXIOV */
3505 {errno = EINVAL; return -1;}
3506 #endif /* ndef _SC_UIO_MAXIOV */
3507 if (x == Mono_Posix_SysConf__SC_IOV_MAX)
3508 #ifdef _SC_IOV_MAX
3509 {*r = _SC_IOV_MAX; return 0;}
3510 #else /* def _SC_IOV_MAX */
3511 {errno = EINVAL; return -1;}
3512 #endif /* ndef _SC_IOV_MAX */
3513 if (x == Mono_Posix_SysConf__SC_PII_INTERNET_STREAM)
3514 #ifdef _SC_PII_INTERNET_STREAM
3515 {*r = _SC_PII_INTERNET_STREAM; return 0;}
3516 #else /* def _SC_PII_INTERNET_STREAM */
3517 {errno = EINVAL; return -1;}
3518 #endif /* ndef _SC_PII_INTERNET_STREAM */
3519 if (x == Mono_Posix_SysConf__SC_PII_INTERNET_DGRAM)
3520 #ifdef _SC_PII_INTERNET_DGRAM
3521 {*r = _SC_PII_INTERNET_DGRAM; return 0;}
3522 #else /* def _SC_PII_INTERNET_DGRAM */
3523 {errno = EINVAL; return -1;}
3524 #endif /* ndef _SC_PII_INTERNET_DGRAM */
3525 if (x == Mono_Posix_SysConf__SC_PII_OSI_COTS)
3526 #ifdef _SC_PII_OSI_COTS
3527 {*r = _SC_PII_OSI_COTS; return 0;}
3528 #else /* def _SC_PII_OSI_COTS */
3529 {errno = EINVAL; return -1;}
3530 #endif /* ndef _SC_PII_OSI_COTS */
3531 if (x == Mono_Posix_SysConf__SC_PII_OSI_CLTS)
3532 #ifdef _SC_PII_OSI_CLTS
3533 {*r = _SC_PII_OSI_CLTS; return 0;}
3534 #else /* def _SC_PII_OSI_CLTS */
3535 {errno = EINVAL; return -1;}
3536 #endif /* ndef _SC_PII_OSI_CLTS */
3537 if (x == Mono_Posix_SysConf__SC_PII_OSI_M)
3538 #ifdef _SC_PII_OSI_M
3539 {*r = _SC_PII_OSI_M; return 0;}
3540 #else /* def _SC_PII_OSI_M */
3541 {errno = EINVAL; return -1;}
3542 #endif /* ndef _SC_PII_OSI_M */
3543 if (x == Mono_Posix_SysConf__SC_T_IOV_MAX)
3544 #ifdef _SC_T_IOV_MAX
3545 {*r = _SC_T_IOV_MAX; return 0;}
3546 #else /* def _SC_T_IOV_MAX */
3547 {errno = EINVAL; return -1;}
3548 #endif /* ndef _SC_T_IOV_MAX */
3549 if (x == Mono_Posix_SysConf__SC_THREADS)
3550 #ifdef _SC_THREADS
3551 {*r = _SC_THREADS; return 0;}
3552 #else /* def _SC_THREADS */
3553 {errno = EINVAL; return -1;}
3554 #endif /* ndef _SC_THREADS */
3555 if (x == Mono_Posix_SysConf__SC_THREAD_SAFE_FUNCTIONS)
3556 #ifdef _SC_THREAD_SAFE_FUNCTIONS
3557 {*r = _SC_THREAD_SAFE_FUNCTIONS; return 0;}
3558 #else /* def _SC_THREAD_SAFE_FUNCTIONS */
3559 {errno = EINVAL; return -1;}
3560 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
3561 if (x == Mono_Posix_SysConf__SC_GETGR_R_SIZE_MAX)
3562 #ifdef _SC_GETGR_R_SIZE_MAX
3563 {*r = _SC_GETGR_R_SIZE_MAX; return 0;}
3564 #else /* def _SC_GETGR_R_SIZE_MAX */
3565 {errno = EINVAL; return -1;}
3566 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
3567 if (x == Mono_Posix_SysConf__SC_GETPW_R_SIZE_MAX)
3568 #ifdef _SC_GETPW_R_SIZE_MAX
3569 {*r = _SC_GETPW_R_SIZE_MAX; return 0;}
3570 #else /* def _SC_GETPW_R_SIZE_MAX */
3571 {errno = EINVAL; return -1;}
3572 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
3573 if (x == Mono_Posix_SysConf__SC_LOGIN_NAME_MAX)
3574 #ifdef _SC_LOGIN_NAME_MAX
3575 {*r = _SC_LOGIN_NAME_MAX; return 0;}
3576 #else /* def _SC_LOGIN_NAME_MAX */
3577 {errno = EINVAL; return -1;}
3578 #endif /* ndef _SC_LOGIN_NAME_MAX */
3579 if (x == Mono_Posix_SysConf__SC_TTY_NAME_MAX)
3580 #ifdef _SC_TTY_NAME_MAX
3581 {*r = _SC_TTY_NAME_MAX; return 0;}
3582 #else /* def _SC_TTY_NAME_MAX */
3583 {errno = EINVAL; return -1;}
3584 #endif /* ndef _SC_TTY_NAME_MAX */
3585 if (x == Mono_Posix_SysConf__SC_THREAD_DESTRUCTOR_ITERATIONS)
3586 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
3587 {*r = _SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
3588 #else /* def _SC_THREAD_DESTRUCTOR_ITERATIONS */
3589 {errno = EINVAL; return -1;}
3590 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
3591 if (x == Mono_Posix_SysConf__SC_THREAD_KEYS_MAX)
3592 #ifdef _SC_THREAD_KEYS_MAX
3593 {*r = _SC_THREAD_KEYS_MAX; return 0;}
3594 #else /* def _SC_THREAD_KEYS_MAX */
3595 {errno = EINVAL; return -1;}
3596 #endif /* ndef _SC_THREAD_KEYS_MAX */
3597 if (x == Mono_Posix_SysConf__SC_THREAD_STACK_MIN)
3598 #ifdef _SC_THREAD_STACK_MIN
3599 {*r = _SC_THREAD_STACK_MIN; return 0;}
3600 #else /* def _SC_THREAD_STACK_MIN */
3601 {errno = EINVAL; return -1;}
3602 #endif /* ndef _SC_THREAD_STACK_MIN */
3603 if (x == Mono_Posix_SysConf__SC_THREAD_THREADS_MAX)
3604 #ifdef _SC_THREAD_THREADS_MAX
3605 {*r = _SC_THREAD_THREADS_MAX; return 0;}
3606 #else /* def _SC_THREAD_THREADS_MAX */
3607 {errno = EINVAL; return -1;}
3608 #endif /* ndef _SC_THREAD_THREADS_MAX */
3609 if (x == Mono_Posix_SysConf__SC_THREAD_ATTR_STACKADDR)
3610 #ifdef _SC_THREAD_ATTR_STACKADDR
3611 {*r = _SC_THREAD_ATTR_STACKADDR; return 0;}
3612 #else /* def _SC_THREAD_ATTR_STACKADDR */
3613 {errno = EINVAL; return -1;}
3614 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
3615 if (x == Mono_Posix_SysConf__SC_THREAD_ATTR_STACKSIZE)
3616 #ifdef _SC_THREAD_ATTR_STACKSIZE
3617 {*r = _SC_THREAD_ATTR_STACKSIZE; return 0;}
3618 #else /* def _SC_THREAD_ATTR_STACKSIZE */
3619 {errno = EINVAL; return -1;}
3620 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
3621 if (x == Mono_Posix_SysConf__SC_THREAD_PRIORITY_SCHEDULING)
3622 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
3623 {*r = _SC_THREAD_PRIORITY_SCHEDULING; return 0;}
3624 #else /* def _SC_THREAD_PRIORITY_SCHEDULING */
3625 {errno = EINVAL; return -1;}
3626 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
3627 if (x == Mono_Posix_SysConf__SC_THREAD_PRIO_INHERIT)
3628 #ifdef _SC_THREAD_PRIO_INHERIT
3629 {*r = _SC_THREAD_PRIO_INHERIT; return 0;}
3630 #else /* def _SC_THREAD_PRIO_INHERIT */
3631 {errno = EINVAL; return -1;}
3632 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
3633 if (x == Mono_Posix_SysConf__SC_THREAD_PRIO_PROTECT)
3634 #ifdef _SC_THREAD_PRIO_PROTECT
3635 {*r = _SC_THREAD_PRIO_PROTECT; return 0;}
3636 #else /* def _SC_THREAD_PRIO_PROTECT */
3637 {errno = EINVAL; return -1;}
3638 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
3639 if (x == Mono_Posix_SysConf__SC_THREAD_PROCESS_SHARED)
3640 #ifdef _SC_THREAD_PROCESS_SHARED
3641 {*r = _SC_THREAD_PROCESS_SHARED; return 0;}
3642 #else /* def _SC_THREAD_PROCESS_SHARED */
3643 {errno = EINVAL; return -1;}
3644 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
3645 if (x == Mono_Posix_SysConf__SC_NPROCESSORS_CONF)
3646 #ifdef _SC_NPROCESSORS_CONF
3647 {*r = _SC_NPROCESSORS_CONF; return 0;}
3648 #else /* def _SC_NPROCESSORS_CONF */
3649 {errno = EINVAL; return -1;}
3650 #endif /* ndef _SC_NPROCESSORS_CONF */
3651 if (x == Mono_Posix_SysConf__SC_NPROCESSORS_ONLN)
3652 #ifdef _SC_NPROCESSORS_ONLN
3653 {*r = _SC_NPROCESSORS_ONLN; return 0;}
3654 #else /* def _SC_NPROCESSORS_ONLN */
3655 {errno = EINVAL; return -1;}
3656 #endif /* ndef _SC_NPROCESSORS_ONLN */
3657 if (x == Mono_Posix_SysConf__SC_PHYS_PAGES)
3658 #ifdef _SC_PHYS_PAGES
3659 {*r = _SC_PHYS_PAGES; return 0;}
3660 #else /* def _SC_PHYS_PAGES */
3661 {errno = EINVAL; return -1;}
3662 #endif /* ndef _SC_PHYS_PAGES */
3663 if (x == Mono_Posix_SysConf__SC_AVPHYS_PAGES)
3664 #ifdef _SC_AVPHYS_PAGES
3665 {*r = _SC_AVPHYS_PAGES; return 0;}
3666 #else /* def _SC_AVPHYS_PAGES */
3667 {errno = EINVAL; return -1;}
3668 #endif /* ndef _SC_AVPHYS_PAGES */
3669 if (x == Mono_Posix_SysConf__SC_ATEXIT_MAX)
3670 #ifdef _SC_ATEXIT_MAX
3671 {*r = _SC_ATEXIT_MAX; return 0;}
3672 #else /* def _SC_ATEXIT_MAX */
3673 {errno = EINVAL; return -1;}
3674 #endif /* ndef _SC_ATEXIT_MAX */
3675 if (x == Mono_Posix_SysConf__SC_PASS_MAX)
3676 #ifdef _SC_PASS_MAX
3677 {*r = _SC_PASS_MAX; return 0;}
3678 #else /* def _SC_PASS_MAX */
3679 {errno = EINVAL; return -1;}
3680 #endif /* ndef _SC_PASS_MAX */
3681 if (x == Mono_Posix_SysConf__SC_XOPEN_VERSION)
3682 #ifdef _SC_XOPEN_VERSION
3683 {*r = _SC_XOPEN_VERSION; return 0;}
3684 #else /* def _SC_XOPEN_VERSION */
3685 {errno = EINVAL; return -1;}
3686 #endif /* ndef _SC_XOPEN_VERSION */
3687 if (x == Mono_Posix_SysConf__SC_XOPEN_XCU_VERSION)
3688 #ifdef _SC_XOPEN_XCU_VERSION
3689 {*r = _SC_XOPEN_XCU_VERSION; return 0;}
3690 #else /* def _SC_XOPEN_XCU_VERSION */
3691 {errno = EINVAL; return -1;}
3692 #endif /* ndef _SC_XOPEN_XCU_VERSION */
3693 if (x == Mono_Posix_SysConf__SC_XOPEN_UNIX)
3694 #ifdef _SC_XOPEN_UNIX
3695 {*r = _SC_XOPEN_UNIX; return 0;}
3696 #else /* def _SC_XOPEN_UNIX */
3697 {errno = EINVAL; return -1;}
3698 #endif /* ndef _SC_XOPEN_UNIX */
3699 if (x == Mono_Posix_SysConf__SC_XOPEN_CRYPT)
3700 #ifdef _SC_XOPEN_CRYPT
3701 {*r = _SC_XOPEN_CRYPT; return 0;}
3702 #else /* def _SC_XOPEN_CRYPT */
3703 {errno = EINVAL; return -1;}
3704 #endif /* ndef _SC_XOPEN_CRYPT */
3705 if (x == Mono_Posix_SysConf__SC_XOPEN_ENH_I18N)
3706 #ifdef _SC_XOPEN_ENH_I18N
3707 {*r = _SC_XOPEN_ENH_I18N; return 0;}
3708 #else /* def _SC_XOPEN_ENH_I18N */
3709 {errno = EINVAL; return -1;}
3710 #endif /* ndef _SC_XOPEN_ENH_I18N */
3711 if (x == Mono_Posix_SysConf__SC_XOPEN_SHM)
3712 #ifdef _SC_XOPEN_SHM
3713 {*r = _SC_XOPEN_SHM; return 0;}
3714 #else /* def _SC_XOPEN_SHM */
3715 {errno = EINVAL; return -1;}
3716 #endif /* ndef _SC_XOPEN_SHM */
3717 if (x == Mono_Posix_SysConf__SC_2_CHAR_TERM)
3718 #ifdef _SC_2_CHAR_TERM
3719 {*r = _SC_2_CHAR_TERM; return 0;}
3720 #else /* def _SC_2_CHAR_TERM */
3721 {errno = EINVAL; return -1;}
3722 #endif /* ndef _SC_2_CHAR_TERM */
3723 if (x == Mono_Posix_SysConf__SC_2_C_VERSION)
3724 #ifdef _SC_2_C_VERSION
3725 {*r = _SC_2_C_VERSION; return 0;}
3726 #else /* def _SC_2_C_VERSION */
3727 {errno = EINVAL; return -1;}
3728 #endif /* ndef _SC_2_C_VERSION */
3729 if (x == Mono_Posix_SysConf__SC_2_UPE)
3730 #ifdef _SC_2_UPE
3731 {*r = _SC_2_UPE; return 0;}
3732 #else /* def _SC_2_UPE */
3733 {errno = EINVAL; return -1;}
3734 #endif /* ndef _SC_2_UPE */
3735 if (x == Mono_Posix_SysConf__SC_XOPEN_XPG2)
3736 #ifdef _SC_XOPEN_XPG2
3737 {*r = _SC_XOPEN_XPG2; return 0;}
3738 #else /* def _SC_XOPEN_XPG2 */
3739 {errno = EINVAL; return -1;}
3740 #endif /* ndef _SC_XOPEN_XPG2 */
3741 if (x == Mono_Posix_SysConf__SC_XOPEN_XPG3)
3742 #ifdef _SC_XOPEN_XPG3
3743 {*r = _SC_XOPEN_XPG3; return 0;}
3744 #else /* def _SC_XOPEN_XPG3 */
3745 {errno = EINVAL; return -1;}
3746 #endif /* ndef _SC_XOPEN_XPG3 */
3747 if (x == Mono_Posix_SysConf__SC_XOPEN_XPG4)
3748 #ifdef _SC_XOPEN_XPG4
3749 {*r = _SC_XOPEN_XPG4; return 0;}
3750 #else /* def _SC_XOPEN_XPG4 */
3751 {errno = EINVAL; return -1;}
3752 #endif /* ndef _SC_XOPEN_XPG4 */
3753 if (x == Mono_Posix_SysConf__SC_CHAR_BIT)
3754 #ifdef _SC_CHAR_BIT
3755 {*r = _SC_CHAR_BIT; return 0;}
3756 #else /* def _SC_CHAR_BIT */
3757 {errno = EINVAL; return -1;}
3758 #endif /* ndef _SC_CHAR_BIT */
3759 if (x == Mono_Posix_SysConf__SC_CHAR_MAX)
3760 #ifdef _SC_CHAR_MAX
3761 {*r = _SC_CHAR_MAX; return 0;}
3762 #else /* def _SC_CHAR_MAX */
3763 {errno = EINVAL; return -1;}
3764 #endif /* ndef _SC_CHAR_MAX */
3765 if (x == Mono_Posix_SysConf__SC_CHAR_MIN)
3766 #ifdef _SC_CHAR_MIN
3767 {*r = _SC_CHAR_MIN; return 0;}
3768 #else /* def _SC_CHAR_MIN */
3769 {errno = EINVAL; return -1;}
3770 #endif /* ndef _SC_CHAR_MIN */
3771 if (x == Mono_Posix_SysConf__SC_INT_MAX)
3772 #ifdef _SC_INT_MAX
3773 {*r = _SC_INT_MAX; return 0;}
3774 #else /* def _SC_INT_MAX */
3775 {errno = EINVAL; return -1;}
3776 #endif /* ndef _SC_INT_MAX */
3777 if (x == Mono_Posix_SysConf__SC_INT_MIN)
3778 #ifdef _SC_INT_MIN
3779 {*r = _SC_INT_MIN; return 0;}
3780 #else /* def _SC_INT_MIN */
3781 {errno = EINVAL; return -1;}
3782 #endif /* ndef _SC_INT_MIN */
3783 if (x == Mono_Posix_SysConf__SC_LONG_BIT)
3784 #ifdef _SC_LONG_BIT
3785 {*r = _SC_LONG_BIT; return 0;}
3786 #else /* def _SC_LONG_BIT */
3787 {errno = EINVAL; return -1;}
3788 #endif /* ndef _SC_LONG_BIT */
3789 if (x == Mono_Posix_SysConf__SC_WORD_BIT)
3790 #ifdef _SC_WORD_BIT
3791 {*r = _SC_WORD_BIT; return 0;}
3792 #else /* def _SC_WORD_BIT */
3793 {errno = EINVAL; return -1;}
3794 #endif /* ndef _SC_WORD_BIT */
3795 if (x == Mono_Posix_SysConf__SC_MB_LEN_MAX)
3796 #ifdef _SC_MB_LEN_MAX
3797 {*r = _SC_MB_LEN_MAX; return 0;}
3798 #else /* def _SC_MB_LEN_MAX */
3799 {errno = EINVAL; return -1;}
3800 #endif /* ndef _SC_MB_LEN_MAX */
3801 if (x == Mono_Posix_SysConf__SC_NZERO)
3802 #ifdef _SC_NZERO
3803 {*r = _SC_NZERO; return 0;}
3804 #else /* def _SC_NZERO */
3805 {errno = EINVAL; return -1;}
3806 #endif /* ndef _SC_NZERO */
3807 if (x == Mono_Posix_SysConf__SC_SSIZE_MAX)
3808 #ifdef _SC_SSIZE_MAX
3809 {*r = _SC_SSIZE_MAX; return 0;}
3810 #else /* def _SC_SSIZE_MAX */
3811 {errno = EINVAL; return -1;}
3812 #endif /* ndef _SC_SSIZE_MAX */
3813 if (x == Mono_Posix_SysConf__SC_SCHAR_MAX)
3814 #ifdef _SC_SCHAR_MAX
3815 {*r = _SC_SCHAR_MAX; return 0;}
3816 #else /* def _SC_SCHAR_MAX */
3817 {errno = EINVAL; return -1;}
3818 #endif /* ndef _SC_SCHAR_MAX */
3819 if (x == Mono_Posix_SysConf__SC_SCHAR_MIN)
3820 #ifdef _SC_SCHAR_MIN
3821 {*r = _SC_SCHAR_MIN; return 0;}
3822 #else /* def _SC_SCHAR_MIN */
3823 {errno = EINVAL; return -1;}
3824 #endif /* ndef _SC_SCHAR_MIN */
3825 if (x == Mono_Posix_SysConf__SC_SHRT_MAX)
3826 #ifdef _SC_SHRT_MAX
3827 {*r = _SC_SHRT_MAX; return 0;}
3828 #else /* def _SC_SHRT_MAX */
3829 {errno = EINVAL; return -1;}
3830 #endif /* ndef _SC_SHRT_MAX */
3831 if (x == Mono_Posix_SysConf__SC_SHRT_MIN)
3832 #ifdef _SC_SHRT_MIN
3833 {*r = _SC_SHRT_MIN; return 0;}
3834 #else /* def _SC_SHRT_MIN */
3835 {errno = EINVAL; return -1;}
3836 #endif /* ndef _SC_SHRT_MIN */
3837 if (x == Mono_Posix_SysConf__SC_UCHAR_MAX)
3838 #ifdef _SC_UCHAR_MAX
3839 {*r = _SC_UCHAR_MAX; return 0;}
3840 #else /* def _SC_UCHAR_MAX */
3841 {errno = EINVAL; return -1;}
3842 #endif /* ndef _SC_UCHAR_MAX */
3843 if (x == Mono_Posix_SysConf__SC_UINT_MAX)
3844 #ifdef _SC_UINT_MAX
3845 {*r = _SC_UINT_MAX; return 0;}
3846 #else /* def _SC_UINT_MAX */
3847 {errno = EINVAL; return -1;}
3848 #endif /* ndef _SC_UINT_MAX */
3849 if (x == Mono_Posix_SysConf__SC_ULONG_MAX)
3850 #ifdef _SC_ULONG_MAX
3851 {*r = _SC_ULONG_MAX; return 0;}
3852 #else /* def _SC_ULONG_MAX */
3853 {errno = EINVAL; return -1;}
3854 #endif /* ndef _SC_ULONG_MAX */
3855 if (x == Mono_Posix_SysConf__SC_USHRT_MAX)
3856 #ifdef _SC_USHRT_MAX
3857 {*r = _SC_USHRT_MAX; return 0;}
3858 #else /* def _SC_USHRT_MAX */
3859 {errno = EINVAL; return -1;}
3860 #endif /* ndef _SC_USHRT_MAX */
3861 if (x == Mono_Posix_SysConf__SC_NL_ARGMAX)
3862 #ifdef _SC_NL_ARGMAX
3863 {*r = _SC_NL_ARGMAX; return 0;}
3864 #else /* def _SC_NL_ARGMAX */
3865 {errno = EINVAL; return -1;}
3866 #endif /* ndef _SC_NL_ARGMAX */
3867 if (x == Mono_Posix_SysConf__SC_NL_LANGMAX)
3868 #ifdef _SC_NL_LANGMAX
3869 {*r = _SC_NL_LANGMAX; return 0;}
3870 #else /* def _SC_NL_LANGMAX */
3871 {errno = EINVAL; return -1;}
3872 #endif /* ndef _SC_NL_LANGMAX */
3873 if (x == Mono_Posix_SysConf__SC_NL_MSGMAX)
3874 #ifdef _SC_NL_MSGMAX
3875 {*r = _SC_NL_MSGMAX; return 0;}
3876 #else /* def _SC_NL_MSGMAX */
3877 {errno = EINVAL; return -1;}
3878 #endif /* ndef _SC_NL_MSGMAX */
3879 if (x == Mono_Posix_SysConf__SC_NL_NMAX)
3880 #ifdef _SC_NL_NMAX
3881 {*r = _SC_NL_NMAX; return 0;}
3882 #else /* def _SC_NL_NMAX */
3883 {errno = EINVAL; return -1;}
3884 #endif /* ndef _SC_NL_NMAX */
3885 if (x == Mono_Posix_SysConf__SC_NL_SETMAX)
3886 #ifdef _SC_NL_SETMAX
3887 {*r = _SC_NL_SETMAX; return 0;}
3888 #else /* def _SC_NL_SETMAX */
3889 {errno = EINVAL; return -1;}
3890 #endif /* ndef _SC_NL_SETMAX */
3891 if (x == Mono_Posix_SysConf__SC_NL_TEXTMAX)
3892 #ifdef _SC_NL_TEXTMAX
3893 {*r = _SC_NL_TEXTMAX; return 0;}
3894 #else /* def _SC_NL_TEXTMAX */
3895 {errno = EINVAL; return -1;}
3896 #endif /* ndef _SC_NL_TEXTMAX */
3897 if (x == Mono_Posix_SysConf__SC_XBS5_ILP32_OFF32)
3898 #ifdef _SC_XBS5_ILP32_OFF32
3899 {*r = _SC_XBS5_ILP32_OFF32; return 0;}
3900 #else /* def _SC_XBS5_ILP32_OFF32 */
3901 {errno = EINVAL; return -1;}
3902 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
3903 if (x == Mono_Posix_SysConf__SC_XBS5_ILP32_OFFBIG)
3904 #ifdef _SC_XBS5_ILP32_OFFBIG
3905 {*r = _SC_XBS5_ILP32_OFFBIG; return 0;}
3906 #else /* def _SC_XBS5_ILP32_OFFBIG */
3907 {errno = EINVAL; return -1;}
3908 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
3909 if (x == Mono_Posix_SysConf__SC_XBS5_LP64_OFF64)
3910 #ifdef _SC_XBS5_LP64_OFF64
3911 {*r = _SC_XBS5_LP64_OFF64; return 0;}
3912 #else /* def _SC_XBS5_LP64_OFF64 */
3913 {errno = EINVAL; return -1;}
3914 #endif /* ndef _SC_XBS5_LP64_OFF64 */
3915 if (x == Mono_Posix_SysConf__SC_XBS5_LPBIG_OFFBIG)
3916 #ifdef _SC_XBS5_LPBIG_OFFBIG
3917 {*r = _SC_XBS5_LPBIG_OFFBIG; return 0;}
3918 #else /* def _SC_XBS5_LPBIG_OFFBIG */
3919 {errno = EINVAL; return -1;}
3920 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
3921 if (x == Mono_Posix_SysConf__SC_XOPEN_LEGACY)
3922 #ifdef _SC_XOPEN_LEGACY
3923 {*r = _SC_XOPEN_LEGACY; return 0;}
3924 #else /* def _SC_XOPEN_LEGACY */
3925 {errno = EINVAL; return -1;}
3926 #endif /* ndef _SC_XOPEN_LEGACY */
3927 if (x == Mono_Posix_SysConf__SC_XOPEN_REALTIME)
3928 #ifdef _SC_XOPEN_REALTIME
3929 {*r = _SC_XOPEN_REALTIME; return 0;}
3930 #else /* def _SC_XOPEN_REALTIME */
3931 {errno = EINVAL; return -1;}
3932 #endif /* ndef _SC_XOPEN_REALTIME */
3933 if (x == Mono_Posix_SysConf__SC_XOPEN_REALTIME_THREADS)
3934 #ifdef _SC_XOPEN_REALTIME_THREADS
3935 {*r = _SC_XOPEN_REALTIME_THREADS; return 0;}
3936 #else /* def _SC_XOPEN_REALTIME_THREADS */
3937 {errno = EINVAL; return -1;}
3938 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
3939 if (x == Mono_Posix_SysConf__SC_ADVISORY_INFO)
3940 #ifdef _SC_ADVISORY_INFO
3941 {*r = _SC_ADVISORY_INFO; return 0;}
3942 #else /* def _SC_ADVISORY_INFO */
3943 {errno = EINVAL; return -1;}
3944 #endif /* ndef _SC_ADVISORY_INFO */
3945 if (x == Mono_Posix_SysConf__SC_BARRIERS)
3946 #ifdef _SC_BARRIERS
3947 {*r = _SC_BARRIERS; return 0;}
3948 #else /* def _SC_BARRIERS */
3949 {errno = EINVAL; return -1;}
3950 #endif /* ndef _SC_BARRIERS */
3951 if (x == Mono_Posix_SysConf__SC_BASE)
3952 #ifdef _SC_BASE
3953 {*r = _SC_BASE; return 0;}
3954 #else /* def _SC_BASE */
3955 {errno = EINVAL; return -1;}
3956 #endif /* ndef _SC_BASE */
3957 if (x == Mono_Posix_SysConf__SC_C_LANG_SUPPORT)
3958 #ifdef _SC_C_LANG_SUPPORT
3959 {*r = _SC_C_LANG_SUPPORT; return 0;}
3960 #else /* def _SC_C_LANG_SUPPORT */
3961 {errno = EINVAL; return -1;}
3962 #endif /* ndef _SC_C_LANG_SUPPORT */
3963 if (x == Mono_Posix_SysConf__SC_C_LANG_SUPPORT_R)
3964 #ifdef _SC_C_LANG_SUPPORT_R
3965 {*r = _SC_C_LANG_SUPPORT_R; return 0;}
3966 #else /* def _SC_C_LANG_SUPPORT_R */
3967 {errno = EINVAL; return -1;}
3968 #endif /* ndef _SC_C_LANG_SUPPORT_R */
3969 if (x == Mono_Posix_SysConf__SC_CLOCK_SELECTION)
3970 #ifdef _SC_CLOCK_SELECTION
3971 {*r = _SC_CLOCK_SELECTION; return 0;}
3972 #else /* def _SC_CLOCK_SELECTION */
3973 {errno = EINVAL; return -1;}
3974 #endif /* ndef _SC_CLOCK_SELECTION */
3975 if (x == Mono_Posix_SysConf__SC_CPUTIME)
3976 #ifdef _SC_CPUTIME
3977 {*r = _SC_CPUTIME; return 0;}
3978 #else /* def _SC_CPUTIME */
3979 {errno = EINVAL; return -1;}
3980 #endif /* ndef _SC_CPUTIME */
3981 if (x == Mono_Posix_SysConf__SC_THREAD_CPUTIME)
3982 #ifdef _SC_THREAD_CPUTIME
3983 {*r = _SC_THREAD_CPUTIME; return 0;}
3984 #else /* def _SC_THREAD_CPUTIME */
3985 {errno = EINVAL; return -1;}
3986 #endif /* ndef _SC_THREAD_CPUTIME */
3987 if (x == Mono_Posix_SysConf__SC_DEVICE_IO)
3988 #ifdef _SC_DEVICE_IO
3989 {*r = _SC_DEVICE_IO; return 0;}
3990 #else /* def _SC_DEVICE_IO */
3991 {errno = EINVAL; return -1;}
3992 #endif /* ndef _SC_DEVICE_IO */
3993 if (x == Mono_Posix_SysConf__SC_DEVICE_SPECIFIC)
3994 #ifdef _SC_DEVICE_SPECIFIC
3995 {*r = _SC_DEVICE_SPECIFIC; return 0;}
3996 #else /* def _SC_DEVICE_SPECIFIC */
3997 {errno = EINVAL; return -1;}
3998 #endif /* ndef _SC_DEVICE_SPECIFIC */
3999 if (x == Mono_Posix_SysConf__SC_DEVICE_SPECIFIC_R)
4000 #ifdef _SC_DEVICE_SPECIFIC_R
4001 {*r = _SC_DEVICE_SPECIFIC_R; return 0;}
4002 #else /* def _SC_DEVICE_SPECIFIC_R */
4003 {errno = EINVAL; return -1;}
4004 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
4005 if (x == Mono_Posix_SysConf__SC_FD_MGMT)
4006 #ifdef _SC_FD_MGMT
4007 {*r = _SC_FD_MGMT; return 0;}
4008 #else /* def _SC_FD_MGMT */
4009 {errno = EINVAL; return -1;}
4010 #endif /* ndef _SC_FD_MGMT */
4011 if (x == Mono_Posix_SysConf__SC_FIFO)
4012 #ifdef _SC_FIFO
4013 {*r = _SC_FIFO; return 0;}
4014 #else /* def _SC_FIFO */
4015 {errno = EINVAL; return -1;}
4016 #endif /* ndef _SC_FIFO */
4017 if (x == Mono_Posix_SysConf__SC_PIPE)
4018 #ifdef _SC_PIPE
4019 {*r = _SC_PIPE; return 0;}
4020 #else /* def _SC_PIPE */
4021 {errno = EINVAL; return -1;}
4022 #endif /* ndef _SC_PIPE */
4023 if (x == Mono_Posix_SysConf__SC_FILE_ATTRIBUTES)
4024 #ifdef _SC_FILE_ATTRIBUTES
4025 {*r = _SC_FILE_ATTRIBUTES; return 0;}
4026 #else /* def _SC_FILE_ATTRIBUTES */
4027 {errno = EINVAL; return -1;}
4028 #endif /* ndef _SC_FILE_ATTRIBUTES */
4029 if (x == Mono_Posix_SysConf__SC_FILE_LOCKING)
4030 #ifdef _SC_FILE_LOCKING
4031 {*r = _SC_FILE_LOCKING; return 0;}
4032 #else /* def _SC_FILE_LOCKING */
4033 {errno = EINVAL; return -1;}
4034 #endif /* ndef _SC_FILE_LOCKING */
4035 if (x == Mono_Posix_SysConf__SC_FILE_SYSTEM)
4036 #ifdef _SC_FILE_SYSTEM
4037 {*r = _SC_FILE_SYSTEM; return 0;}
4038 #else /* def _SC_FILE_SYSTEM */
4039 {errno = EINVAL; return -1;}
4040 #endif /* ndef _SC_FILE_SYSTEM */
4041 if (x == Mono_Posix_SysConf__SC_MONOTONIC_CLOCK)
4042 #ifdef _SC_MONOTONIC_CLOCK
4043 {*r = _SC_MONOTONIC_CLOCK; return 0;}
4044 #else /* def _SC_MONOTONIC_CLOCK */
4045 {errno = EINVAL; return -1;}
4046 #endif /* ndef _SC_MONOTONIC_CLOCK */
4047 if (x == Mono_Posix_SysConf__SC_MULTI_PROCESS)
4048 #ifdef _SC_MULTI_PROCESS
4049 {*r = _SC_MULTI_PROCESS; return 0;}
4050 #else /* def _SC_MULTI_PROCESS */
4051 {errno = EINVAL; return -1;}
4052 #endif /* ndef _SC_MULTI_PROCESS */
4053 if (x == Mono_Posix_SysConf__SC_SINGLE_PROCESS)
4054 #ifdef _SC_SINGLE_PROCESS
4055 {*r = _SC_SINGLE_PROCESS; return 0;}
4056 #else /* def _SC_SINGLE_PROCESS */
4057 {errno = EINVAL; return -1;}
4058 #endif /* ndef _SC_SINGLE_PROCESS */
4059 if (x == Mono_Posix_SysConf__SC_NETWORKING)
4060 #ifdef _SC_NETWORKING
4061 {*r = _SC_NETWORKING; return 0;}
4062 #else /* def _SC_NETWORKING */
4063 {errno = EINVAL; return -1;}
4064 #endif /* ndef _SC_NETWORKING */
4065 if (x == Mono_Posix_SysConf__SC_READER_WRITER_LOCKS)
4066 #ifdef _SC_READER_WRITER_LOCKS
4067 {*r = _SC_READER_WRITER_LOCKS; return 0;}
4068 #else /* def _SC_READER_WRITER_LOCKS */
4069 {errno = EINVAL; return -1;}
4070 #endif /* ndef _SC_READER_WRITER_LOCKS */
4071 if (x == Mono_Posix_SysConf__SC_SPIN_LOCKS)
4072 #ifdef _SC_SPIN_LOCKS
4073 {*r = _SC_SPIN_LOCKS; return 0;}
4074 #else /* def _SC_SPIN_LOCKS */
4075 {errno = EINVAL; return -1;}
4076 #endif /* ndef _SC_SPIN_LOCKS */
4077 if (x == Mono_Posix_SysConf__SC_REGEXP)
4078 #ifdef _SC_REGEXP
4079 {*r = _SC_REGEXP; return 0;}
4080 #else /* def _SC_REGEXP */
4081 {errno = EINVAL; return -1;}
4082 #endif /* ndef _SC_REGEXP */
4083 if (x == Mono_Posix_SysConf__SC_REGEX_VERSION)
4084 #ifdef _SC_REGEX_VERSION
4085 {*r = _SC_REGEX_VERSION; return 0;}
4086 #else /* def _SC_REGEX_VERSION */
4087 {errno = EINVAL; return -1;}
4088 #endif /* ndef _SC_REGEX_VERSION */
4089 if (x == Mono_Posix_SysConf__SC_SHELL)
4090 #ifdef _SC_SHELL
4091 {*r = _SC_SHELL; return 0;}
4092 #else /* def _SC_SHELL */
4093 {errno = EINVAL; return -1;}
4094 #endif /* ndef _SC_SHELL */
4095 if (x == Mono_Posix_SysConf__SC_SIGNALS)
4096 #ifdef _SC_SIGNALS
4097 {*r = _SC_SIGNALS; return 0;}
4098 #else /* def _SC_SIGNALS */
4099 {errno = EINVAL; return -1;}
4100 #endif /* ndef _SC_SIGNALS */
4101 if (x == Mono_Posix_SysConf__SC_SPAWN)
4102 #ifdef _SC_SPAWN
4103 {*r = _SC_SPAWN; return 0;}
4104 #else /* def _SC_SPAWN */
4105 {errno = EINVAL; return -1;}
4106 #endif /* ndef _SC_SPAWN */
4107 if (x == Mono_Posix_SysConf__SC_SPORADIC_SERVER)
4108 #ifdef _SC_SPORADIC_SERVER
4109 {*r = _SC_SPORADIC_SERVER; return 0;}
4110 #else /* def _SC_SPORADIC_SERVER */
4111 {errno = EINVAL; return -1;}
4112 #endif /* ndef _SC_SPORADIC_SERVER */
4113 if (x == Mono_Posix_SysConf__SC_THREAD_SPORADIC_SERVER)
4114 #ifdef _SC_THREAD_SPORADIC_SERVER
4115 {*r = _SC_THREAD_SPORADIC_SERVER; return 0;}
4116 #else /* def _SC_THREAD_SPORADIC_SERVER */
4117 {errno = EINVAL; return -1;}
4118 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
4119 if (x == Mono_Posix_SysConf__SC_SYSTEM_DATABASE)
4120 #ifdef _SC_SYSTEM_DATABASE
4121 {*r = _SC_SYSTEM_DATABASE; return 0;}
4122 #else /* def _SC_SYSTEM_DATABASE */
4123 {errno = EINVAL; return -1;}
4124 #endif /* ndef _SC_SYSTEM_DATABASE */
4125 if (x == Mono_Posix_SysConf__SC_SYSTEM_DATABASE_R)
4126 #ifdef _SC_SYSTEM_DATABASE_R
4127 {*r = _SC_SYSTEM_DATABASE_R; return 0;}
4128 #else /* def _SC_SYSTEM_DATABASE_R */
4129 {errno = EINVAL; return -1;}
4130 #endif /* ndef _SC_SYSTEM_DATABASE_R */
4131 if (x == Mono_Posix_SysConf__SC_TIMEOUTS)
4132 #ifdef _SC_TIMEOUTS
4133 {*r = _SC_TIMEOUTS; return 0;}
4134 #else /* def _SC_TIMEOUTS */
4135 {errno = EINVAL; return -1;}
4136 #endif /* ndef _SC_TIMEOUTS */
4137 if (x == Mono_Posix_SysConf__SC_TYPED_MEMORY_OBJECTS)
4138 #ifdef _SC_TYPED_MEMORY_OBJECTS
4139 {*r = _SC_TYPED_MEMORY_OBJECTS; return 0;}
4140 #else /* def _SC_TYPED_MEMORY_OBJECTS */
4141 {errno = EINVAL; return -1;}
4142 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
4143 if (x == Mono_Posix_SysConf__SC_USER_GROUPS)
4144 #ifdef _SC_USER_GROUPS
4145 {*r = _SC_USER_GROUPS; return 0;}
4146 #else /* def _SC_USER_GROUPS */
4147 {errno = EINVAL; return -1;}
4148 #endif /* ndef _SC_USER_GROUPS */
4149 if (x == Mono_Posix_SysConf__SC_USER_GROUPS_R)
4150 #ifdef _SC_USER_GROUPS_R
4151 {*r = _SC_USER_GROUPS_R; return 0;}
4152 #else /* def _SC_USER_GROUPS_R */
4153 {errno = EINVAL; return -1;}
4154 #endif /* ndef _SC_USER_GROUPS_R */
4155 if (x == Mono_Posix_SysConf__SC_2_PBS)
4156 #ifdef _SC_2_PBS
4157 {*r = _SC_2_PBS; return 0;}
4158 #else /* def _SC_2_PBS */
4159 {errno = EINVAL; return -1;}
4160 #endif /* ndef _SC_2_PBS */
4161 if (x == Mono_Posix_SysConf__SC_2_PBS_ACCOUNTING)
4162 #ifdef _SC_2_PBS_ACCOUNTING
4163 {*r = _SC_2_PBS_ACCOUNTING; return 0;}
4164 #else /* def _SC_2_PBS_ACCOUNTING */
4165 {errno = EINVAL; return -1;}
4166 #endif /* ndef _SC_2_PBS_ACCOUNTING */
4167 if (x == Mono_Posix_SysConf__SC_2_PBS_LOCATE)
4168 #ifdef _SC_2_PBS_LOCATE
4169 {*r = _SC_2_PBS_LOCATE; return 0;}
4170 #else /* def _SC_2_PBS_LOCATE */
4171 {errno = EINVAL; return -1;}
4172 #endif /* ndef _SC_2_PBS_LOCATE */
4173 if (x == Mono_Posix_SysConf__SC_2_PBS_MESSAGE)
4174 #ifdef _SC_2_PBS_MESSAGE
4175 {*r = _SC_2_PBS_MESSAGE; return 0;}
4176 #else /* def _SC_2_PBS_MESSAGE */
4177 {errno = EINVAL; return -1;}
4178 #endif /* ndef _SC_2_PBS_MESSAGE */
4179 if (x == Mono_Posix_SysConf__SC_2_PBS_TRACK)
4180 #ifdef _SC_2_PBS_TRACK
4181 {*r = _SC_2_PBS_TRACK; return 0;}
4182 #else /* def _SC_2_PBS_TRACK */
4183 {errno = EINVAL; return -1;}
4184 #endif /* ndef _SC_2_PBS_TRACK */
4185 if (x == Mono_Posix_SysConf__SC_SYMLOOP_MAX)
4186 #ifdef _SC_SYMLOOP_MAX
4187 {*r = _SC_SYMLOOP_MAX; return 0;}
4188 #else /* def _SC_SYMLOOP_MAX */
4189 {errno = EINVAL; return -1;}
4190 #endif /* ndef _SC_SYMLOOP_MAX */
4191 if (x == Mono_Posix_SysConf__SC_STREAMS)
4192 #ifdef _SC_STREAMS
4193 {*r = _SC_STREAMS; return 0;}
4194 #else /* def _SC_STREAMS */
4195 {errno = EINVAL; return -1;}
4196 #endif /* ndef _SC_STREAMS */
4197 if (x == Mono_Posix_SysConf__SC_2_PBS_CHECKPOINT)
4198 #ifdef _SC_2_PBS_CHECKPOINT
4199 {*r = _SC_2_PBS_CHECKPOINT; return 0;}
4200 #else /* def _SC_2_PBS_CHECKPOINT */
4201 {errno = EINVAL; return -1;}
4202 #endif /* ndef _SC_2_PBS_CHECKPOINT */
4203 if (x == Mono_Posix_SysConf__SC_V6_ILP32_OFF32)
4204 #ifdef _SC_V6_ILP32_OFF32
4205 {*r = _SC_V6_ILP32_OFF32; return 0;}
4206 #else /* def _SC_V6_ILP32_OFF32 */
4207 {errno = EINVAL; return -1;}
4208 #endif /* ndef _SC_V6_ILP32_OFF32 */
4209 if (x == Mono_Posix_SysConf__SC_V6_ILP32_OFFBIG)
4210 #ifdef _SC_V6_ILP32_OFFBIG
4211 {*r = _SC_V6_ILP32_OFFBIG; return 0;}
4212 #else /* def _SC_V6_ILP32_OFFBIG */
4213 {errno = EINVAL; return -1;}
4214 #endif /* ndef _SC_V6_ILP32_OFFBIG */
4215 if (x == Mono_Posix_SysConf__SC_V6_LP64_OFF64)
4216 #ifdef _SC_V6_LP64_OFF64
4217 {*r = _SC_V6_LP64_OFF64; return 0;}
4218 #else /* def _SC_V6_LP64_OFF64 */
4219 {errno = EINVAL; return -1;}
4220 #endif /* ndef _SC_V6_LP64_OFF64 */
4221 if (x == Mono_Posix_SysConf__SC_V6_LPBIG_OFFBIG)
4222 #ifdef _SC_V6_LPBIG_OFFBIG
4223 {*r = _SC_V6_LPBIG_OFFBIG; return 0;}
4224 #else /* def _SC_V6_LPBIG_OFFBIG */
4225 {errno = EINVAL; return -1;}
4226 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
4227 if (x == Mono_Posix_SysConf__SC_HOST_NAME_MAX)
4228 #ifdef _SC_HOST_NAME_MAX
4229 {*r = _SC_HOST_NAME_MAX; return 0;}
4230 #else /* def _SC_HOST_NAME_MAX */
4231 {errno = EINVAL; return -1;}
4232 #endif /* ndef _SC_HOST_NAME_MAX */
4233 if (x == Mono_Posix_SysConf__SC_TRACE)
4234 #ifdef _SC_TRACE
4235 {*r = _SC_TRACE; return 0;}
4236 #else /* def _SC_TRACE */
4237 {errno = EINVAL; return -1;}
4238 #endif /* ndef _SC_TRACE */
4239 if (x == Mono_Posix_SysConf__SC_TRACE_EVENT_FILTER)
4240 #ifdef _SC_TRACE_EVENT_FILTER
4241 {*r = _SC_TRACE_EVENT_FILTER; return 0;}
4242 #else /* def _SC_TRACE_EVENT_FILTER */
4243 {errno = EINVAL; return -1;}
4244 #endif /* ndef _SC_TRACE_EVENT_FILTER */
4245 if (x == Mono_Posix_SysConf__SC_TRACE_INHERIT)
4246 #ifdef _SC_TRACE_INHERIT
4247 {*r = _SC_TRACE_INHERIT; return 0;}
4248 #else /* def _SC_TRACE_INHERIT */
4249 {errno = EINVAL; return -1;}
4250 #endif /* ndef _SC_TRACE_INHERIT */
4251 if (x == Mono_Posix_SysConf__SC_TRACE_LOG)
4252 #ifdef _SC_TRACE_LOG
4253 {*r = _SC_TRACE_LOG; return 0;}
4254 #else /* def _SC_TRACE_LOG */
4255 {errno = EINVAL; return -1;}
4256 #endif /* ndef _SC_TRACE_LOG */
4257 if (x == Mono_Posix_SysConf__SC_LEVEL1_ICACHE_SIZE)
4258 #ifdef _SC_LEVEL1_ICACHE_SIZE
4259 {*r = _SC_LEVEL1_ICACHE_SIZE; return 0;}
4260 #else /* def _SC_LEVEL1_ICACHE_SIZE */
4261 {errno = EINVAL; return -1;}
4262 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
4263 if (x == Mono_Posix_SysConf__SC_LEVEL1_ICACHE_ASSOC)
4264 #ifdef _SC_LEVEL1_ICACHE_ASSOC
4265 {*r = _SC_LEVEL1_ICACHE_ASSOC; return 0;}
4266 #else /* def _SC_LEVEL1_ICACHE_ASSOC */
4267 {errno = EINVAL; return -1;}
4268 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
4269 if (x == Mono_Posix_SysConf__SC_LEVEL1_ICACHE_LINESIZE)
4270 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
4271 {*r = _SC_LEVEL1_ICACHE_LINESIZE; return 0;}
4272 #else /* def _SC_LEVEL1_ICACHE_LINESIZE */
4273 {errno = EINVAL; return -1;}
4274 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
4275 if (x == Mono_Posix_SysConf__SC_LEVEL1_DCACHE_SIZE)
4276 #ifdef _SC_LEVEL1_DCACHE_SIZE
4277 {*r = _SC_LEVEL1_DCACHE_SIZE; return 0;}
4278 #else /* def _SC_LEVEL1_DCACHE_SIZE */
4279 {errno = EINVAL; return -1;}
4280 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
4281 if (x == Mono_Posix_SysConf__SC_LEVEL1_DCACHE_ASSOC)
4282 #ifdef _SC_LEVEL1_DCACHE_ASSOC
4283 {*r = _SC_LEVEL1_DCACHE_ASSOC; return 0;}
4284 #else /* def _SC_LEVEL1_DCACHE_ASSOC */
4285 {errno = EINVAL; return -1;}
4286 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
4287 if (x == Mono_Posix_SysConf__SC_LEVEL1_DCACHE_LINESIZE)
4288 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
4289 {*r = _SC_LEVEL1_DCACHE_LINESIZE; return 0;}
4290 #else /* def _SC_LEVEL1_DCACHE_LINESIZE */
4291 {errno = EINVAL; return -1;}
4292 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
4293 if (x == Mono_Posix_SysConf__SC_LEVEL2_CACHE_SIZE)
4294 #ifdef _SC_LEVEL2_CACHE_SIZE
4295 {*r = _SC_LEVEL2_CACHE_SIZE; return 0;}
4296 #else /* def _SC_LEVEL2_CACHE_SIZE */
4297 {errno = EINVAL; return -1;}
4298 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
4299 if (x == Mono_Posix_SysConf__SC_LEVEL2_CACHE_ASSOC)
4300 #ifdef _SC_LEVEL2_CACHE_ASSOC
4301 {*r = _SC_LEVEL2_CACHE_ASSOC; return 0;}
4302 #else /* def _SC_LEVEL2_CACHE_ASSOC */
4303 {errno = EINVAL; return -1;}
4304 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
4305 if (x == Mono_Posix_SysConf__SC_LEVEL2_CACHE_LINESIZE)
4306 #ifdef _SC_LEVEL2_CACHE_LINESIZE
4307 {*r = _SC_LEVEL2_CACHE_LINESIZE; return 0;}
4308 #else /* def _SC_LEVEL2_CACHE_LINESIZE */
4309 {errno = EINVAL; return -1;}
4310 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
4311 if (x == Mono_Posix_SysConf__SC_LEVEL3_CACHE_SIZE)
4312 #ifdef _SC_LEVEL3_CACHE_SIZE
4313 {*r = _SC_LEVEL3_CACHE_SIZE; return 0;}
4314 #else /* def _SC_LEVEL3_CACHE_SIZE */
4315 {errno = EINVAL; return -1;}
4316 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
4317 if (x == Mono_Posix_SysConf__SC_LEVEL3_CACHE_ASSOC)
4318 #ifdef _SC_LEVEL3_CACHE_ASSOC
4319 {*r = _SC_LEVEL3_CACHE_ASSOC; return 0;}
4320 #else /* def _SC_LEVEL3_CACHE_ASSOC */
4321 {errno = EINVAL; return -1;}
4322 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
4323 if (x == Mono_Posix_SysConf__SC_LEVEL3_CACHE_LINESIZE)
4324 #ifdef _SC_LEVEL3_CACHE_LINESIZE
4325 {*r = _SC_LEVEL3_CACHE_LINESIZE; return 0;}
4326 #else /* def _SC_LEVEL3_CACHE_LINESIZE */
4327 {errno = EINVAL; return -1;}
4328 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
4329 if (x == Mono_Posix_SysConf__SC_LEVEL4_CACHE_SIZE)
4330 #ifdef _SC_LEVEL4_CACHE_SIZE
4331 {*r = _SC_LEVEL4_CACHE_SIZE; return 0;}
4332 #else /* def _SC_LEVEL4_CACHE_SIZE */
4333 {errno = EINVAL; return -1;}
4334 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
4335 if (x == Mono_Posix_SysConf__SC_LEVEL4_CACHE_ASSOC)
4336 #ifdef _SC_LEVEL4_CACHE_ASSOC
4337 {*r = _SC_LEVEL4_CACHE_ASSOC; return 0;}
4338 #else /* def _SC_LEVEL4_CACHE_ASSOC */
4339 {errno = EINVAL; return -1;}
4340 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
4341 if (x == Mono_Posix_SysConf__SC_LEVEL4_CACHE_LINESIZE)
4342 #ifdef _SC_LEVEL4_CACHE_LINESIZE
4343 {*r = _SC_LEVEL4_CACHE_LINESIZE; return 0;}
4344 #else /* def _SC_LEVEL4_CACHE_LINESIZE */
4345 {errno = EINVAL; return -1;}
4346 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
4347 errno = EINVAL; return -1;
4350 int Mono_Posix_ToSysConf (int x, int *r)
4352 *r = 0;
4353 if (x == 0)
4354 return 0;
4355 #ifdef _SC_ARG_MAX
4356 if (x == _SC_ARG_MAX)
4357 {*r = Mono_Posix_SysConf__SC_ARG_MAX; return 0;}
4358 #endif /* ndef _SC_ARG_MAX */
4359 #ifdef _SC_CHILD_MAX
4360 if (x == _SC_CHILD_MAX)
4361 {*r = Mono_Posix_SysConf__SC_CHILD_MAX; return 0;}
4362 #endif /* ndef _SC_CHILD_MAX */
4363 #ifdef _SC_CLK_TCK
4364 if (x == _SC_CLK_TCK)
4365 {*r = Mono_Posix_SysConf__SC_CLK_TCK; return 0;}
4366 #endif /* ndef _SC_CLK_TCK */
4367 #ifdef _SC_NGROUPS_MAX
4368 if (x == _SC_NGROUPS_MAX)
4369 {*r = Mono_Posix_SysConf__SC_NGROUPS_MAX; return 0;}
4370 #endif /* ndef _SC_NGROUPS_MAX */
4371 #ifdef _SC_OPEN_MAX
4372 if (x == _SC_OPEN_MAX)
4373 {*r = Mono_Posix_SysConf__SC_OPEN_MAX; return 0;}
4374 #endif /* ndef _SC_OPEN_MAX */
4375 #ifdef _SC_STREAM_MAX
4376 if (x == _SC_STREAM_MAX)
4377 {*r = Mono_Posix_SysConf__SC_STREAM_MAX; return 0;}
4378 #endif /* ndef _SC_STREAM_MAX */
4379 #ifdef _SC_TZNAME_MAX
4380 if (x == _SC_TZNAME_MAX)
4381 {*r = Mono_Posix_SysConf__SC_TZNAME_MAX; return 0;}
4382 #endif /* ndef _SC_TZNAME_MAX */
4383 #ifdef _SC_JOB_CONTROL
4384 if (x == _SC_JOB_CONTROL)
4385 {*r = Mono_Posix_SysConf__SC_JOB_CONTROL; return 0;}
4386 #endif /* ndef _SC_JOB_CONTROL */
4387 #ifdef _SC_SAVED_IDS
4388 if (x == _SC_SAVED_IDS)
4389 {*r = Mono_Posix_SysConf__SC_SAVED_IDS; return 0;}
4390 #endif /* ndef _SC_SAVED_IDS */
4391 #ifdef _SC_REALTIME_SIGNALS
4392 if (x == _SC_REALTIME_SIGNALS)
4393 {*r = Mono_Posix_SysConf__SC_REALTIME_SIGNALS; return 0;}
4394 #endif /* ndef _SC_REALTIME_SIGNALS */
4395 #ifdef _SC_PRIORITY_SCHEDULING
4396 if (x == _SC_PRIORITY_SCHEDULING)
4397 {*r = Mono_Posix_SysConf__SC_PRIORITY_SCHEDULING; return 0;}
4398 #endif /* ndef _SC_PRIORITY_SCHEDULING */
4399 #ifdef _SC_TIMERS
4400 if (x == _SC_TIMERS)
4401 {*r = Mono_Posix_SysConf__SC_TIMERS; return 0;}
4402 #endif /* ndef _SC_TIMERS */
4403 #ifdef _SC_ASYNCHRONOUS_IO
4404 if (x == _SC_ASYNCHRONOUS_IO)
4405 {*r = Mono_Posix_SysConf__SC_ASYNCHRONOUS_IO; return 0;}
4406 #endif /* ndef _SC_ASYNCHRONOUS_IO */
4407 #ifdef _SC_PRIORITIZED_IO
4408 if (x == _SC_PRIORITIZED_IO)
4409 {*r = Mono_Posix_SysConf__SC_PRIORITIZED_IO; return 0;}
4410 #endif /* ndef _SC_PRIORITIZED_IO */
4411 #ifdef _SC_SYNCHRONIZED_IO
4412 if (x == _SC_SYNCHRONIZED_IO)
4413 {*r = Mono_Posix_SysConf__SC_SYNCHRONIZED_IO; return 0;}
4414 #endif /* ndef _SC_SYNCHRONIZED_IO */
4415 #ifdef _SC_FSYNC
4416 if (x == _SC_FSYNC)
4417 {*r = Mono_Posix_SysConf__SC_FSYNC; return 0;}
4418 #endif /* ndef _SC_FSYNC */
4419 #ifdef _SC_MAPPED_FILES
4420 if (x == _SC_MAPPED_FILES)
4421 {*r = Mono_Posix_SysConf__SC_MAPPED_FILES; return 0;}
4422 #endif /* ndef _SC_MAPPED_FILES */
4423 #ifdef _SC_MEMLOCK
4424 if (x == _SC_MEMLOCK)
4425 {*r = Mono_Posix_SysConf__SC_MEMLOCK; return 0;}
4426 #endif /* ndef _SC_MEMLOCK */
4427 #ifdef _SC_MEMLOCK_RANGE
4428 if (x == _SC_MEMLOCK_RANGE)
4429 {*r = Mono_Posix_SysConf__SC_MEMLOCK_RANGE; return 0;}
4430 #endif /* ndef _SC_MEMLOCK_RANGE */
4431 #ifdef _SC_MEMORY_PROTECTION
4432 if (x == _SC_MEMORY_PROTECTION)
4433 {*r = Mono_Posix_SysConf__SC_MEMORY_PROTECTION; return 0;}
4434 #endif /* ndef _SC_MEMORY_PROTECTION */
4435 #ifdef _SC_MESSAGE_PASSING
4436 if (x == _SC_MESSAGE_PASSING)
4437 {*r = Mono_Posix_SysConf__SC_MESSAGE_PASSING; return 0;}
4438 #endif /* ndef _SC_MESSAGE_PASSING */
4439 #ifdef _SC_SEMAPHORES
4440 if (x == _SC_SEMAPHORES)
4441 {*r = Mono_Posix_SysConf__SC_SEMAPHORES; return 0;}
4442 #endif /* ndef _SC_SEMAPHORES */
4443 #ifdef _SC_SHARED_MEMORY_OBJECTS
4444 if (x == _SC_SHARED_MEMORY_OBJECTS)
4445 {*r = Mono_Posix_SysConf__SC_SHARED_MEMORY_OBJECTS; return 0;}
4446 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
4447 #ifdef _SC_AIO_LISTIO_MAX
4448 if (x == _SC_AIO_LISTIO_MAX)
4449 {*r = Mono_Posix_SysConf__SC_AIO_LISTIO_MAX; return 0;}
4450 #endif /* ndef _SC_AIO_LISTIO_MAX */
4451 #ifdef _SC_AIO_MAX
4452 if (x == _SC_AIO_MAX)
4453 {*r = Mono_Posix_SysConf__SC_AIO_MAX; return 0;}
4454 #endif /* ndef _SC_AIO_MAX */
4455 #ifdef _SC_AIO_PRIO_DELTA_MAX
4456 if (x == _SC_AIO_PRIO_DELTA_MAX)
4457 {*r = Mono_Posix_SysConf__SC_AIO_PRIO_DELTA_MAX; return 0;}
4458 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
4459 #ifdef _SC_DELAYTIMER_MAX
4460 if (x == _SC_DELAYTIMER_MAX)
4461 {*r = Mono_Posix_SysConf__SC_DELAYTIMER_MAX; return 0;}
4462 #endif /* ndef _SC_DELAYTIMER_MAX */
4463 #ifdef _SC_MQ_OPEN_MAX
4464 if (x == _SC_MQ_OPEN_MAX)
4465 {*r = Mono_Posix_SysConf__SC_MQ_OPEN_MAX; return 0;}
4466 #endif /* ndef _SC_MQ_OPEN_MAX */
4467 #ifdef _SC_MQ_PRIO_MAX
4468 if (x == _SC_MQ_PRIO_MAX)
4469 {*r = Mono_Posix_SysConf__SC_MQ_PRIO_MAX; return 0;}
4470 #endif /* ndef _SC_MQ_PRIO_MAX */
4471 #ifdef _SC_VERSION
4472 if (x == _SC_VERSION)
4473 {*r = Mono_Posix_SysConf__SC_VERSION; return 0;}
4474 #endif /* ndef _SC_VERSION */
4475 #ifdef _SC_PAGESIZE
4476 if (x == _SC_PAGESIZE)
4477 {*r = Mono_Posix_SysConf__SC_PAGESIZE; return 0;}
4478 #endif /* ndef _SC_PAGESIZE */
4479 #ifdef _SC_RTSIG_MAX
4480 if (x == _SC_RTSIG_MAX)
4481 {*r = Mono_Posix_SysConf__SC_RTSIG_MAX; return 0;}
4482 #endif /* ndef _SC_RTSIG_MAX */
4483 #ifdef _SC_SEM_NSEMS_MAX
4484 if (x == _SC_SEM_NSEMS_MAX)
4485 {*r = Mono_Posix_SysConf__SC_SEM_NSEMS_MAX; return 0;}
4486 #endif /* ndef _SC_SEM_NSEMS_MAX */
4487 #ifdef _SC_SEM_VALUE_MAX
4488 if (x == _SC_SEM_VALUE_MAX)
4489 {*r = Mono_Posix_SysConf__SC_SEM_VALUE_MAX; return 0;}
4490 #endif /* ndef _SC_SEM_VALUE_MAX */
4491 #ifdef _SC_SIGQUEUE_MAX
4492 if (x == _SC_SIGQUEUE_MAX)
4493 {*r = Mono_Posix_SysConf__SC_SIGQUEUE_MAX; return 0;}
4494 #endif /* ndef _SC_SIGQUEUE_MAX */
4495 #ifdef _SC_TIMER_MAX
4496 if (x == _SC_TIMER_MAX)
4497 {*r = Mono_Posix_SysConf__SC_TIMER_MAX; return 0;}
4498 #endif /* ndef _SC_TIMER_MAX */
4499 #ifdef _SC_BC_BASE_MAX
4500 if (x == _SC_BC_BASE_MAX)
4501 {*r = Mono_Posix_SysConf__SC_BC_BASE_MAX; return 0;}
4502 #endif /* ndef _SC_BC_BASE_MAX */
4503 #ifdef _SC_BC_DIM_MAX
4504 if (x == _SC_BC_DIM_MAX)
4505 {*r = Mono_Posix_SysConf__SC_BC_DIM_MAX; return 0;}
4506 #endif /* ndef _SC_BC_DIM_MAX */
4507 #ifdef _SC_BC_SCALE_MAX
4508 if (x == _SC_BC_SCALE_MAX)
4509 {*r = Mono_Posix_SysConf__SC_BC_SCALE_MAX; return 0;}
4510 #endif /* ndef _SC_BC_SCALE_MAX */
4511 #ifdef _SC_BC_STRING_MAX
4512 if (x == _SC_BC_STRING_MAX)
4513 {*r = Mono_Posix_SysConf__SC_BC_STRING_MAX; return 0;}
4514 #endif /* ndef _SC_BC_STRING_MAX */
4515 #ifdef _SC_COLL_WEIGHTS_MAX
4516 if (x == _SC_COLL_WEIGHTS_MAX)
4517 {*r = Mono_Posix_SysConf__SC_COLL_WEIGHTS_MAX; return 0;}
4518 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
4519 #ifdef _SC_EQUIV_CLASS_MAX
4520 if (x == _SC_EQUIV_CLASS_MAX)
4521 {*r = Mono_Posix_SysConf__SC_EQUIV_CLASS_MAX; return 0;}
4522 #endif /* ndef _SC_EQUIV_CLASS_MAX */
4523 #ifdef _SC_EXPR_NEST_MAX
4524 if (x == _SC_EXPR_NEST_MAX)
4525 {*r = Mono_Posix_SysConf__SC_EXPR_NEST_MAX; return 0;}
4526 #endif /* ndef _SC_EXPR_NEST_MAX */
4527 #ifdef _SC_LINE_MAX
4528 if (x == _SC_LINE_MAX)
4529 {*r = Mono_Posix_SysConf__SC_LINE_MAX; return 0;}
4530 #endif /* ndef _SC_LINE_MAX */
4531 #ifdef _SC_RE_DUP_MAX
4532 if (x == _SC_RE_DUP_MAX)
4533 {*r = Mono_Posix_SysConf__SC_RE_DUP_MAX; return 0;}
4534 #endif /* ndef _SC_RE_DUP_MAX */
4535 #ifdef _SC_CHARCLASS_NAME_MAX
4536 if (x == _SC_CHARCLASS_NAME_MAX)
4537 {*r = Mono_Posix_SysConf__SC_CHARCLASS_NAME_MAX; return 0;}
4538 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
4539 #ifdef _SC_2_VERSION
4540 if (x == _SC_2_VERSION)
4541 {*r = Mono_Posix_SysConf__SC_2_VERSION; return 0;}
4542 #endif /* ndef _SC_2_VERSION */
4543 #ifdef _SC_2_C_BIND
4544 if (x == _SC_2_C_BIND)
4545 {*r = Mono_Posix_SysConf__SC_2_C_BIND; return 0;}
4546 #endif /* ndef _SC_2_C_BIND */
4547 #ifdef _SC_2_C_DEV
4548 if (x == _SC_2_C_DEV)
4549 {*r = Mono_Posix_SysConf__SC_2_C_DEV; return 0;}
4550 #endif /* ndef _SC_2_C_DEV */
4551 #ifdef _SC_2_FORT_DEV
4552 if (x == _SC_2_FORT_DEV)
4553 {*r = Mono_Posix_SysConf__SC_2_FORT_DEV; return 0;}
4554 #endif /* ndef _SC_2_FORT_DEV */
4555 #ifdef _SC_2_FORT_RUN
4556 if (x == _SC_2_FORT_RUN)
4557 {*r = Mono_Posix_SysConf__SC_2_FORT_RUN; return 0;}
4558 #endif /* ndef _SC_2_FORT_RUN */
4559 #ifdef _SC_2_SW_DEV
4560 if (x == _SC_2_SW_DEV)
4561 {*r = Mono_Posix_SysConf__SC_2_SW_DEV; return 0;}
4562 #endif /* ndef _SC_2_SW_DEV */
4563 #ifdef _SC_2_LOCALEDEF
4564 if (x == _SC_2_LOCALEDEF)
4565 {*r = Mono_Posix_SysConf__SC_2_LOCALEDEF; return 0;}
4566 #endif /* ndef _SC_2_LOCALEDEF */
4567 #ifdef _SC_PII
4568 if (x == _SC_PII)
4569 {*r = Mono_Posix_SysConf__SC_PII; return 0;}
4570 #endif /* ndef _SC_PII */
4571 #ifdef _SC_PII_XTI
4572 if (x == _SC_PII_XTI)
4573 {*r = Mono_Posix_SysConf__SC_PII_XTI; return 0;}
4574 #endif /* ndef _SC_PII_XTI */
4575 #ifdef _SC_PII_SOCKET
4576 if (x == _SC_PII_SOCKET)
4577 {*r = Mono_Posix_SysConf__SC_PII_SOCKET; return 0;}
4578 #endif /* ndef _SC_PII_SOCKET */
4579 #ifdef _SC_PII_INTERNET
4580 if (x == _SC_PII_INTERNET)
4581 {*r = Mono_Posix_SysConf__SC_PII_INTERNET; return 0;}
4582 #endif /* ndef _SC_PII_INTERNET */
4583 #ifdef _SC_PII_OSI
4584 if (x == _SC_PII_OSI)
4585 {*r = Mono_Posix_SysConf__SC_PII_OSI; return 0;}
4586 #endif /* ndef _SC_PII_OSI */
4587 #ifdef _SC_POLL
4588 if (x == _SC_POLL)
4589 {*r = Mono_Posix_SysConf__SC_POLL; return 0;}
4590 #endif /* ndef _SC_POLL */
4591 #ifdef _SC_SELECT
4592 if (x == _SC_SELECT)
4593 {*r = Mono_Posix_SysConf__SC_SELECT; return 0;}
4594 #endif /* ndef _SC_SELECT */
4595 #ifdef _SC_UIO_MAXIOV
4596 if (x == _SC_UIO_MAXIOV)
4597 {*r = Mono_Posix_SysConf__SC_UIO_MAXIOV; return 0;}
4598 #endif /* ndef _SC_UIO_MAXIOV */
4599 #ifdef _SC_IOV_MAX
4600 if (x == _SC_IOV_MAX)
4601 {*r = Mono_Posix_SysConf__SC_IOV_MAX; return 0;}
4602 #endif /* ndef _SC_IOV_MAX */
4603 #ifdef _SC_PII_INTERNET_STREAM
4604 if (x == _SC_PII_INTERNET_STREAM)
4605 {*r = Mono_Posix_SysConf__SC_PII_INTERNET_STREAM; return 0;}
4606 #endif /* ndef _SC_PII_INTERNET_STREAM */
4607 #ifdef _SC_PII_INTERNET_DGRAM
4608 if (x == _SC_PII_INTERNET_DGRAM)
4609 {*r = Mono_Posix_SysConf__SC_PII_INTERNET_DGRAM; return 0;}
4610 #endif /* ndef _SC_PII_INTERNET_DGRAM */
4611 #ifdef _SC_PII_OSI_COTS
4612 if (x == _SC_PII_OSI_COTS)
4613 {*r = Mono_Posix_SysConf__SC_PII_OSI_COTS; return 0;}
4614 #endif /* ndef _SC_PII_OSI_COTS */
4615 #ifdef _SC_PII_OSI_CLTS
4616 if (x == _SC_PII_OSI_CLTS)
4617 {*r = Mono_Posix_SysConf__SC_PII_OSI_CLTS; return 0;}
4618 #endif /* ndef _SC_PII_OSI_CLTS */
4619 #ifdef _SC_PII_OSI_M
4620 if (x == _SC_PII_OSI_M)
4621 {*r = Mono_Posix_SysConf__SC_PII_OSI_M; return 0;}
4622 #endif /* ndef _SC_PII_OSI_M */
4623 #ifdef _SC_T_IOV_MAX
4624 if (x == _SC_T_IOV_MAX)
4625 {*r = Mono_Posix_SysConf__SC_T_IOV_MAX; return 0;}
4626 #endif /* ndef _SC_T_IOV_MAX */
4627 #ifdef _SC_THREADS
4628 if (x == _SC_THREADS)
4629 {*r = Mono_Posix_SysConf__SC_THREADS; return 0;}
4630 #endif /* ndef _SC_THREADS */
4631 #ifdef _SC_THREAD_SAFE_FUNCTIONS
4632 if (x == _SC_THREAD_SAFE_FUNCTIONS)
4633 {*r = Mono_Posix_SysConf__SC_THREAD_SAFE_FUNCTIONS; return 0;}
4634 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
4635 #ifdef _SC_GETGR_R_SIZE_MAX
4636 if (x == _SC_GETGR_R_SIZE_MAX)
4637 {*r = Mono_Posix_SysConf__SC_GETGR_R_SIZE_MAX; return 0;}
4638 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
4639 #ifdef _SC_GETPW_R_SIZE_MAX
4640 if (x == _SC_GETPW_R_SIZE_MAX)
4641 {*r = Mono_Posix_SysConf__SC_GETPW_R_SIZE_MAX; return 0;}
4642 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
4643 #ifdef _SC_LOGIN_NAME_MAX
4644 if (x == _SC_LOGIN_NAME_MAX)
4645 {*r = Mono_Posix_SysConf__SC_LOGIN_NAME_MAX; return 0;}
4646 #endif /* ndef _SC_LOGIN_NAME_MAX */
4647 #ifdef _SC_TTY_NAME_MAX
4648 if (x == _SC_TTY_NAME_MAX)
4649 {*r = Mono_Posix_SysConf__SC_TTY_NAME_MAX; return 0;}
4650 #endif /* ndef _SC_TTY_NAME_MAX */
4651 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
4652 if (x == _SC_THREAD_DESTRUCTOR_ITERATIONS)
4653 {*r = Mono_Posix_SysConf__SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
4654 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
4655 #ifdef _SC_THREAD_KEYS_MAX
4656 if (x == _SC_THREAD_KEYS_MAX)
4657 {*r = Mono_Posix_SysConf__SC_THREAD_KEYS_MAX; return 0;}
4658 #endif /* ndef _SC_THREAD_KEYS_MAX */
4659 #ifdef _SC_THREAD_STACK_MIN
4660 if (x == _SC_THREAD_STACK_MIN)
4661 {*r = Mono_Posix_SysConf__SC_THREAD_STACK_MIN; return 0;}
4662 #endif /* ndef _SC_THREAD_STACK_MIN */
4663 #ifdef _SC_THREAD_THREADS_MAX
4664 if (x == _SC_THREAD_THREADS_MAX)
4665 {*r = Mono_Posix_SysConf__SC_THREAD_THREADS_MAX; return 0;}
4666 #endif /* ndef _SC_THREAD_THREADS_MAX */
4667 #ifdef _SC_THREAD_ATTR_STACKADDR
4668 if (x == _SC_THREAD_ATTR_STACKADDR)
4669 {*r = Mono_Posix_SysConf__SC_THREAD_ATTR_STACKADDR; return 0;}
4670 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
4671 #ifdef _SC_THREAD_ATTR_STACKSIZE
4672 if (x == _SC_THREAD_ATTR_STACKSIZE)
4673 {*r = Mono_Posix_SysConf__SC_THREAD_ATTR_STACKSIZE; return 0;}
4674 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
4675 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
4676 if (x == _SC_THREAD_PRIORITY_SCHEDULING)
4677 {*r = Mono_Posix_SysConf__SC_THREAD_PRIORITY_SCHEDULING; return 0;}
4678 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
4679 #ifdef _SC_THREAD_PRIO_INHERIT
4680 if (x == _SC_THREAD_PRIO_INHERIT)
4681 {*r = Mono_Posix_SysConf__SC_THREAD_PRIO_INHERIT; return 0;}
4682 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
4683 #ifdef _SC_THREAD_PRIO_PROTECT
4684 if (x == _SC_THREAD_PRIO_PROTECT)
4685 {*r = Mono_Posix_SysConf__SC_THREAD_PRIO_PROTECT; return 0;}
4686 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
4687 #ifdef _SC_THREAD_PROCESS_SHARED
4688 if (x == _SC_THREAD_PROCESS_SHARED)
4689 {*r = Mono_Posix_SysConf__SC_THREAD_PROCESS_SHARED; return 0;}
4690 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
4691 #ifdef _SC_NPROCESSORS_CONF
4692 if (x == _SC_NPROCESSORS_CONF)
4693 {*r = Mono_Posix_SysConf__SC_NPROCESSORS_CONF; return 0;}
4694 #endif /* ndef _SC_NPROCESSORS_CONF */
4695 #ifdef _SC_NPROCESSORS_ONLN
4696 if (x == _SC_NPROCESSORS_ONLN)
4697 {*r = Mono_Posix_SysConf__SC_NPROCESSORS_ONLN; return 0;}
4698 #endif /* ndef _SC_NPROCESSORS_ONLN */
4699 #ifdef _SC_PHYS_PAGES
4700 if (x == _SC_PHYS_PAGES)
4701 {*r = Mono_Posix_SysConf__SC_PHYS_PAGES; return 0;}
4702 #endif /* ndef _SC_PHYS_PAGES */
4703 #ifdef _SC_AVPHYS_PAGES
4704 if (x == _SC_AVPHYS_PAGES)
4705 {*r = Mono_Posix_SysConf__SC_AVPHYS_PAGES; return 0;}
4706 #endif /* ndef _SC_AVPHYS_PAGES */
4707 #ifdef _SC_ATEXIT_MAX
4708 if (x == _SC_ATEXIT_MAX)
4709 {*r = Mono_Posix_SysConf__SC_ATEXIT_MAX; return 0;}
4710 #endif /* ndef _SC_ATEXIT_MAX */
4711 #ifdef _SC_PASS_MAX
4712 if (x == _SC_PASS_MAX)
4713 {*r = Mono_Posix_SysConf__SC_PASS_MAX; return 0;}
4714 #endif /* ndef _SC_PASS_MAX */
4715 #ifdef _SC_XOPEN_VERSION
4716 if (x == _SC_XOPEN_VERSION)
4717 {*r = Mono_Posix_SysConf__SC_XOPEN_VERSION; return 0;}
4718 #endif /* ndef _SC_XOPEN_VERSION */
4719 #ifdef _SC_XOPEN_XCU_VERSION
4720 if (x == _SC_XOPEN_XCU_VERSION)
4721 {*r = Mono_Posix_SysConf__SC_XOPEN_XCU_VERSION; return 0;}
4722 #endif /* ndef _SC_XOPEN_XCU_VERSION */
4723 #ifdef _SC_XOPEN_UNIX
4724 if (x == _SC_XOPEN_UNIX)
4725 {*r = Mono_Posix_SysConf__SC_XOPEN_UNIX; return 0;}
4726 #endif /* ndef _SC_XOPEN_UNIX */
4727 #ifdef _SC_XOPEN_CRYPT
4728 if (x == _SC_XOPEN_CRYPT)
4729 {*r = Mono_Posix_SysConf__SC_XOPEN_CRYPT; return 0;}
4730 #endif /* ndef _SC_XOPEN_CRYPT */
4731 #ifdef _SC_XOPEN_ENH_I18N
4732 if (x == _SC_XOPEN_ENH_I18N)
4733 {*r = Mono_Posix_SysConf__SC_XOPEN_ENH_I18N; return 0;}
4734 #endif /* ndef _SC_XOPEN_ENH_I18N */
4735 #ifdef _SC_XOPEN_SHM
4736 if (x == _SC_XOPEN_SHM)
4737 {*r = Mono_Posix_SysConf__SC_XOPEN_SHM; return 0;}
4738 #endif /* ndef _SC_XOPEN_SHM */
4739 #ifdef _SC_2_CHAR_TERM
4740 if (x == _SC_2_CHAR_TERM)
4741 {*r = Mono_Posix_SysConf__SC_2_CHAR_TERM; return 0;}
4742 #endif /* ndef _SC_2_CHAR_TERM */
4743 #ifdef _SC_2_C_VERSION
4744 if (x == _SC_2_C_VERSION)
4745 {*r = Mono_Posix_SysConf__SC_2_C_VERSION; return 0;}
4746 #endif /* ndef _SC_2_C_VERSION */
4747 #ifdef _SC_2_UPE
4748 if (x == _SC_2_UPE)
4749 {*r = Mono_Posix_SysConf__SC_2_UPE; return 0;}
4750 #endif /* ndef _SC_2_UPE */
4751 #ifdef _SC_XOPEN_XPG2
4752 if (x == _SC_XOPEN_XPG2)
4753 {*r = Mono_Posix_SysConf__SC_XOPEN_XPG2; return 0;}
4754 #endif /* ndef _SC_XOPEN_XPG2 */
4755 #ifdef _SC_XOPEN_XPG3
4756 if (x == _SC_XOPEN_XPG3)
4757 {*r = Mono_Posix_SysConf__SC_XOPEN_XPG3; return 0;}
4758 #endif /* ndef _SC_XOPEN_XPG3 */
4759 #ifdef _SC_XOPEN_XPG4
4760 if (x == _SC_XOPEN_XPG4)
4761 {*r = Mono_Posix_SysConf__SC_XOPEN_XPG4; return 0;}
4762 #endif /* ndef _SC_XOPEN_XPG4 */
4763 #ifdef _SC_CHAR_BIT
4764 if (x == _SC_CHAR_BIT)
4765 {*r = Mono_Posix_SysConf__SC_CHAR_BIT; return 0;}
4766 #endif /* ndef _SC_CHAR_BIT */
4767 #ifdef _SC_CHAR_MAX
4768 if (x == _SC_CHAR_MAX)
4769 {*r = Mono_Posix_SysConf__SC_CHAR_MAX; return 0;}
4770 #endif /* ndef _SC_CHAR_MAX */
4771 #ifdef _SC_CHAR_MIN
4772 if (x == _SC_CHAR_MIN)
4773 {*r = Mono_Posix_SysConf__SC_CHAR_MIN; return 0;}
4774 #endif /* ndef _SC_CHAR_MIN */
4775 #ifdef _SC_INT_MAX
4776 if (x == _SC_INT_MAX)
4777 {*r = Mono_Posix_SysConf__SC_INT_MAX; return 0;}
4778 #endif /* ndef _SC_INT_MAX */
4779 #ifdef _SC_INT_MIN
4780 if (x == _SC_INT_MIN)
4781 {*r = Mono_Posix_SysConf__SC_INT_MIN; return 0;}
4782 #endif /* ndef _SC_INT_MIN */
4783 #ifdef _SC_LONG_BIT
4784 if (x == _SC_LONG_BIT)
4785 {*r = Mono_Posix_SysConf__SC_LONG_BIT; return 0;}
4786 #endif /* ndef _SC_LONG_BIT */
4787 #ifdef _SC_WORD_BIT
4788 if (x == _SC_WORD_BIT)
4789 {*r = Mono_Posix_SysConf__SC_WORD_BIT; return 0;}
4790 #endif /* ndef _SC_WORD_BIT */
4791 #ifdef _SC_MB_LEN_MAX
4792 if (x == _SC_MB_LEN_MAX)
4793 {*r = Mono_Posix_SysConf__SC_MB_LEN_MAX; return 0;}
4794 #endif /* ndef _SC_MB_LEN_MAX */
4795 #ifdef _SC_NZERO
4796 if (x == _SC_NZERO)
4797 {*r = Mono_Posix_SysConf__SC_NZERO; return 0;}
4798 #endif /* ndef _SC_NZERO */
4799 #ifdef _SC_SSIZE_MAX
4800 if (x == _SC_SSIZE_MAX)
4801 {*r = Mono_Posix_SysConf__SC_SSIZE_MAX; return 0;}
4802 #endif /* ndef _SC_SSIZE_MAX */
4803 #ifdef _SC_SCHAR_MAX
4804 if (x == _SC_SCHAR_MAX)
4805 {*r = Mono_Posix_SysConf__SC_SCHAR_MAX; return 0;}
4806 #endif /* ndef _SC_SCHAR_MAX */
4807 #ifdef _SC_SCHAR_MIN
4808 if (x == _SC_SCHAR_MIN)
4809 {*r = Mono_Posix_SysConf__SC_SCHAR_MIN; return 0;}
4810 #endif /* ndef _SC_SCHAR_MIN */
4811 #ifdef _SC_SHRT_MAX
4812 if (x == _SC_SHRT_MAX)
4813 {*r = Mono_Posix_SysConf__SC_SHRT_MAX; return 0;}
4814 #endif /* ndef _SC_SHRT_MAX */
4815 #ifdef _SC_SHRT_MIN
4816 if (x == _SC_SHRT_MIN)
4817 {*r = Mono_Posix_SysConf__SC_SHRT_MIN; return 0;}
4818 #endif /* ndef _SC_SHRT_MIN */
4819 #ifdef _SC_UCHAR_MAX
4820 if (x == _SC_UCHAR_MAX)
4821 {*r = Mono_Posix_SysConf__SC_UCHAR_MAX; return 0;}
4822 #endif /* ndef _SC_UCHAR_MAX */
4823 #ifdef _SC_UINT_MAX
4824 if (x == _SC_UINT_MAX)
4825 {*r = Mono_Posix_SysConf__SC_UINT_MAX; return 0;}
4826 #endif /* ndef _SC_UINT_MAX */
4827 #ifdef _SC_ULONG_MAX
4828 if (x == _SC_ULONG_MAX)
4829 {*r = Mono_Posix_SysConf__SC_ULONG_MAX; return 0;}
4830 #endif /* ndef _SC_ULONG_MAX */
4831 #ifdef _SC_USHRT_MAX
4832 if (x == _SC_USHRT_MAX)
4833 {*r = Mono_Posix_SysConf__SC_USHRT_MAX; return 0;}
4834 #endif /* ndef _SC_USHRT_MAX */
4835 #ifdef _SC_NL_ARGMAX
4836 if (x == _SC_NL_ARGMAX)
4837 {*r = Mono_Posix_SysConf__SC_NL_ARGMAX; return 0;}
4838 #endif /* ndef _SC_NL_ARGMAX */
4839 #ifdef _SC_NL_LANGMAX
4840 if (x == _SC_NL_LANGMAX)
4841 {*r = Mono_Posix_SysConf__SC_NL_LANGMAX; return 0;}
4842 #endif /* ndef _SC_NL_LANGMAX */
4843 #ifdef _SC_NL_MSGMAX
4844 if (x == _SC_NL_MSGMAX)
4845 {*r = Mono_Posix_SysConf__SC_NL_MSGMAX; return 0;}
4846 #endif /* ndef _SC_NL_MSGMAX */
4847 #ifdef _SC_NL_NMAX
4848 if (x == _SC_NL_NMAX)
4849 {*r = Mono_Posix_SysConf__SC_NL_NMAX; return 0;}
4850 #endif /* ndef _SC_NL_NMAX */
4851 #ifdef _SC_NL_SETMAX
4852 if (x == _SC_NL_SETMAX)
4853 {*r = Mono_Posix_SysConf__SC_NL_SETMAX; return 0;}
4854 #endif /* ndef _SC_NL_SETMAX */
4855 #ifdef _SC_NL_TEXTMAX
4856 if (x == _SC_NL_TEXTMAX)
4857 {*r = Mono_Posix_SysConf__SC_NL_TEXTMAX; return 0;}
4858 #endif /* ndef _SC_NL_TEXTMAX */
4859 #ifdef _SC_XBS5_ILP32_OFF32
4860 if (x == _SC_XBS5_ILP32_OFF32)
4861 {*r = Mono_Posix_SysConf__SC_XBS5_ILP32_OFF32; return 0;}
4862 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
4863 #ifdef _SC_XBS5_ILP32_OFFBIG
4864 if (x == _SC_XBS5_ILP32_OFFBIG)
4865 {*r = Mono_Posix_SysConf__SC_XBS5_ILP32_OFFBIG; return 0;}
4866 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
4867 #ifdef _SC_XBS5_LP64_OFF64
4868 if (x == _SC_XBS5_LP64_OFF64)
4869 {*r = Mono_Posix_SysConf__SC_XBS5_LP64_OFF64; return 0;}
4870 #endif /* ndef _SC_XBS5_LP64_OFF64 */
4871 #ifdef _SC_XBS5_LPBIG_OFFBIG
4872 if (x == _SC_XBS5_LPBIG_OFFBIG)
4873 {*r = Mono_Posix_SysConf__SC_XBS5_LPBIG_OFFBIG; return 0;}
4874 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
4875 #ifdef _SC_XOPEN_LEGACY
4876 if (x == _SC_XOPEN_LEGACY)
4877 {*r = Mono_Posix_SysConf__SC_XOPEN_LEGACY; return 0;}
4878 #endif /* ndef _SC_XOPEN_LEGACY */
4879 #ifdef _SC_XOPEN_REALTIME
4880 if (x == _SC_XOPEN_REALTIME)
4881 {*r = Mono_Posix_SysConf__SC_XOPEN_REALTIME; return 0;}
4882 #endif /* ndef _SC_XOPEN_REALTIME */
4883 #ifdef _SC_XOPEN_REALTIME_THREADS
4884 if (x == _SC_XOPEN_REALTIME_THREADS)
4885 {*r = Mono_Posix_SysConf__SC_XOPEN_REALTIME_THREADS; return 0;}
4886 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
4887 #ifdef _SC_ADVISORY_INFO
4888 if (x == _SC_ADVISORY_INFO)
4889 {*r = Mono_Posix_SysConf__SC_ADVISORY_INFO; return 0;}
4890 #endif /* ndef _SC_ADVISORY_INFO */
4891 #ifdef _SC_BARRIERS
4892 if (x == _SC_BARRIERS)
4893 {*r = Mono_Posix_SysConf__SC_BARRIERS; return 0;}
4894 #endif /* ndef _SC_BARRIERS */
4895 #ifdef _SC_BASE
4896 if (x == _SC_BASE)
4897 {*r = Mono_Posix_SysConf__SC_BASE; return 0;}
4898 #endif /* ndef _SC_BASE */
4899 #ifdef _SC_C_LANG_SUPPORT
4900 if (x == _SC_C_LANG_SUPPORT)
4901 {*r = Mono_Posix_SysConf__SC_C_LANG_SUPPORT; return 0;}
4902 #endif /* ndef _SC_C_LANG_SUPPORT */
4903 #ifdef _SC_C_LANG_SUPPORT_R
4904 if (x == _SC_C_LANG_SUPPORT_R)
4905 {*r = Mono_Posix_SysConf__SC_C_LANG_SUPPORT_R; return 0;}
4906 #endif /* ndef _SC_C_LANG_SUPPORT_R */
4907 #ifdef _SC_CLOCK_SELECTION
4908 if (x == _SC_CLOCK_SELECTION)
4909 {*r = Mono_Posix_SysConf__SC_CLOCK_SELECTION; return 0;}
4910 #endif /* ndef _SC_CLOCK_SELECTION */
4911 #ifdef _SC_CPUTIME
4912 if (x == _SC_CPUTIME)
4913 {*r = Mono_Posix_SysConf__SC_CPUTIME; return 0;}
4914 #endif /* ndef _SC_CPUTIME */
4915 #ifdef _SC_THREAD_CPUTIME
4916 if (x == _SC_THREAD_CPUTIME)
4917 {*r = Mono_Posix_SysConf__SC_THREAD_CPUTIME; return 0;}
4918 #endif /* ndef _SC_THREAD_CPUTIME */
4919 #ifdef _SC_DEVICE_IO
4920 if (x == _SC_DEVICE_IO)
4921 {*r = Mono_Posix_SysConf__SC_DEVICE_IO; return 0;}
4922 #endif /* ndef _SC_DEVICE_IO */
4923 #ifdef _SC_DEVICE_SPECIFIC
4924 if (x == _SC_DEVICE_SPECIFIC)
4925 {*r = Mono_Posix_SysConf__SC_DEVICE_SPECIFIC; return 0;}
4926 #endif /* ndef _SC_DEVICE_SPECIFIC */
4927 #ifdef _SC_DEVICE_SPECIFIC_R
4928 if (x == _SC_DEVICE_SPECIFIC_R)
4929 {*r = Mono_Posix_SysConf__SC_DEVICE_SPECIFIC_R; return 0;}
4930 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
4931 #ifdef _SC_FD_MGMT
4932 if (x == _SC_FD_MGMT)
4933 {*r = Mono_Posix_SysConf__SC_FD_MGMT; return 0;}
4934 #endif /* ndef _SC_FD_MGMT */
4935 #ifdef _SC_FIFO
4936 if (x == _SC_FIFO)
4937 {*r = Mono_Posix_SysConf__SC_FIFO; return 0;}
4938 #endif /* ndef _SC_FIFO */
4939 #ifdef _SC_PIPE
4940 if (x == _SC_PIPE)
4941 {*r = Mono_Posix_SysConf__SC_PIPE; return 0;}
4942 #endif /* ndef _SC_PIPE */
4943 #ifdef _SC_FILE_ATTRIBUTES
4944 if (x == _SC_FILE_ATTRIBUTES)
4945 {*r = Mono_Posix_SysConf__SC_FILE_ATTRIBUTES; return 0;}
4946 #endif /* ndef _SC_FILE_ATTRIBUTES */
4947 #ifdef _SC_FILE_LOCKING
4948 if (x == _SC_FILE_LOCKING)
4949 {*r = Mono_Posix_SysConf__SC_FILE_LOCKING; return 0;}
4950 #endif /* ndef _SC_FILE_LOCKING */
4951 #ifdef _SC_FILE_SYSTEM
4952 if (x == _SC_FILE_SYSTEM)
4953 {*r = Mono_Posix_SysConf__SC_FILE_SYSTEM; return 0;}
4954 #endif /* ndef _SC_FILE_SYSTEM */
4955 #ifdef _SC_MONOTONIC_CLOCK
4956 if (x == _SC_MONOTONIC_CLOCK)
4957 {*r = Mono_Posix_SysConf__SC_MONOTONIC_CLOCK; return 0;}
4958 #endif /* ndef _SC_MONOTONIC_CLOCK */
4959 #ifdef _SC_MULTI_PROCESS
4960 if (x == _SC_MULTI_PROCESS)
4961 {*r = Mono_Posix_SysConf__SC_MULTI_PROCESS; return 0;}
4962 #endif /* ndef _SC_MULTI_PROCESS */
4963 #ifdef _SC_SINGLE_PROCESS
4964 if (x == _SC_SINGLE_PROCESS)
4965 {*r = Mono_Posix_SysConf__SC_SINGLE_PROCESS; return 0;}
4966 #endif /* ndef _SC_SINGLE_PROCESS */
4967 #ifdef _SC_NETWORKING
4968 if (x == _SC_NETWORKING)
4969 {*r = Mono_Posix_SysConf__SC_NETWORKING; return 0;}
4970 #endif /* ndef _SC_NETWORKING */
4971 #ifdef _SC_READER_WRITER_LOCKS
4972 if (x == _SC_READER_WRITER_LOCKS)
4973 {*r = Mono_Posix_SysConf__SC_READER_WRITER_LOCKS; return 0;}
4974 #endif /* ndef _SC_READER_WRITER_LOCKS */
4975 #ifdef _SC_SPIN_LOCKS
4976 if (x == _SC_SPIN_LOCKS)
4977 {*r = Mono_Posix_SysConf__SC_SPIN_LOCKS; return 0;}
4978 #endif /* ndef _SC_SPIN_LOCKS */
4979 #ifdef _SC_REGEXP
4980 if (x == _SC_REGEXP)
4981 {*r = Mono_Posix_SysConf__SC_REGEXP; return 0;}
4982 #endif /* ndef _SC_REGEXP */
4983 #ifdef _SC_REGEX_VERSION
4984 if (x == _SC_REGEX_VERSION)
4985 {*r = Mono_Posix_SysConf__SC_REGEX_VERSION; return 0;}
4986 #endif /* ndef _SC_REGEX_VERSION */
4987 #ifdef _SC_SHELL
4988 if (x == _SC_SHELL)
4989 {*r = Mono_Posix_SysConf__SC_SHELL; return 0;}
4990 #endif /* ndef _SC_SHELL */
4991 #ifdef _SC_SIGNALS
4992 if (x == _SC_SIGNALS)
4993 {*r = Mono_Posix_SysConf__SC_SIGNALS; return 0;}
4994 #endif /* ndef _SC_SIGNALS */
4995 #ifdef _SC_SPAWN
4996 if (x == _SC_SPAWN)
4997 {*r = Mono_Posix_SysConf__SC_SPAWN; return 0;}
4998 #endif /* ndef _SC_SPAWN */
4999 #ifdef _SC_SPORADIC_SERVER
5000 if (x == _SC_SPORADIC_SERVER)
5001 {*r = Mono_Posix_SysConf__SC_SPORADIC_SERVER; return 0;}
5002 #endif /* ndef _SC_SPORADIC_SERVER */
5003 #ifdef _SC_THREAD_SPORADIC_SERVER
5004 if (x == _SC_THREAD_SPORADIC_SERVER)
5005 {*r = Mono_Posix_SysConf__SC_THREAD_SPORADIC_SERVER; return 0;}
5006 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
5007 #ifdef _SC_SYSTEM_DATABASE
5008 if (x == _SC_SYSTEM_DATABASE)
5009 {*r = Mono_Posix_SysConf__SC_SYSTEM_DATABASE; return 0;}
5010 #endif /* ndef _SC_SYSTEM_DATABASE */
5011 #ifdef _SC_SYSTEM_DATABASE_R
5012 if (x == _SC_SYSTEM_DATABASE_R)
5013 {*r = Mono_Posix_SysConf__SC_SYSTEM_DATABASE_R; return 0;}
5014 #endif /* ndef _SC_SYSTEM_DATABASE_R */
5015 #ifdef _SC_TIMEOUTS
5016 if (x == _SC_TIMEOUTS)
5017 {*r = Mono_Posix_SysConf__SC_TIMEOUTS; return 0;}
5018 #endif /* ndef _SC_TIMEOUTS */
5019 #ifdef _SC_TYPED_MEMORY_OBJECTS
5020 if (x == _SC_TYPED_MEMORY_OBJECTS)
5021 {*r = Mono_Posix_SysConf__SC_TYPED_MEMORY_OBJECTS; return 0;}
5022 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
5023 #ifdef _SC_USER_GROUPS
5024 if (x == _SC_USER_GROUPS)
5025 {*r = Mono_Posix_SysConf__SC_USER_GROUPS; return 0;}
5026 #endif /* ndef _SC_USER_GROUPS */
5027 #ifdef _SC_USER_GROUPS_R
5028 if (x == _SC_USER_GROUPS_R)
5029 {*r = Mono_Posix_SysConf__SC_USER_GROUPS_R; return 0;}
5030 #endif /* ndef _SC_USER_GROUPS_R */
5031 #ifdef _SC_2_PBS
5032 if (x == _SC_2_PBS)
5033 {*r = Mono_Posix_SysConf__SC_2_PBS; return 0;}
5034 #endif /* ndef _SC_2_PBS */
5035 #ifdef _SC_2_PBS_ACCOUNTING
5036 if (x == _SC_2_PBS_ACCOUNTING)
5037 {*r = Mono_Posix_SysConf__SC_2_PBS_ACCOUNTING; return 0;}
5038 #endif /* ndef _SC_2_PBS_ACCOUNTING */
5039 #ifdef _SC_2_PBS_LOCATE
5040 if (x == _SC_2_PBS_LOCATE)
5041 {*r = Mono_Posix_SysConf__SC_2_PBS_LOCATE; return 0;}
5042 #endif /* ndef _SC_2_PBS_LOCATE */
5043 #ifdef _SC_2_PBS_MESSAGE
5044 if (x == _SC_2_PBS_MESSAGE)
5045 {*r = Mono_Posix_SysConf__SC_2_PBS_MESSAGE; return 0;}
5046 #endif /* ndef _SC_2_PBS_MESSAGE */
5047 #ifdef _SC_2_PBS_TRACK
5048 if (x == _SC_2_PBS_TRACK)
5049 {*r = Mono_Posix_SysConf__SC_2_PBS_TRACK; return 0;}
5050 #endif /* ndef _SC_2_PBS_TRACK */
5051 #ifdef _SC_SYMLOOP_MAX
5052 if (x == _SC_SYMLOOP_MAX)
5053 {*r = Mono_Posix_SysConf__SC_SYMLOOP_MAX; return 0;}
5054 #endif /* ndef _SC_SYMLOOP_MAX */
5055 #ifdef _SC_STREAMS
5056 if (x == _SC_STREAMS)
5057 {*r = Mono_Posix_SysConf__SC_STREAMS; return 0;}
5058 #endif /* ndef _SC_STREAMS */
5059 #ifdef _SC_2_PBS_CHECKPOINT
5060 if (x == _SC_2_PBS_CHECKPOINT)
5061 {*r = Mono_Posix_SysConf__SC_2_PBS_CHECKPOINT; return 0;}
5062 #endif /* ndef _SC_2_PBS_CHECKPOINT */
5063 #ifdef _SC_V6_ILP32_OFF32
5064 if (x == _SC_V6_ILP32_OFF32)
5065 {*r = Mono_Posix_SysConf__SC_V6_ILP32_OFF32; return 0;}
5066 #endif /* ndef _SC_V6_ILP32_OFF32 */
5067 #ifdef _SC_V6_ILP32_OFFBIG
5068 if (x == _SC_V6_ILP32_OFFBIG)
5069 {*r = Mono_Posix_SysConf__SC_V6_ILP32_OFFBIG; return 0;}
5070 #endif /* ndef _SC_V6_ILP32_OFFBIG */
5071 #ifdef _SC_V6_LP64_OFF64
5072 if (x == _SC_V6_LP64_OFF64)
5073 {*r = Mono_Posix_SysConf__SC_V6_LP64_OFF64; return 0;}
5074 #endif /* ndef _SC_V6_LP64_OFF64 */
5075 #ifdef _SC_V6_LPBIG_OFFBIG
5076 if (x == _SC_V6_LPBIG_OFFBIG)
5077 {*r = Mono_Posix_SysConf__SC_V6_LPBIG_OFFBIG; return 0;}
5078 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
5079 #ifdef _SC_HOST_NAME_MAX
5080 if (x == _SC_HOST_NAME_MAX)
5081 {*r = Mono_Posix_SysConf__SC_HOST_NAME_MAX; return 0;}
5082 #endif /* ndef _SC_HOST_NAME_MAX */
5083 #ifdef _SC_TRACE
5084 if (x == _SC_TRACE)
5085 {*r = Mono_Posix_SysConf__SC_TRACE; return 0;}
5086 #endif /* ndef _SC_TRACE */
5087 #ifdef _SC_TRACE_EVENT_FILTER
5088 if (x == _SC_TRACE_EVENT_FILTER)
5089 {*r = Mono_Posix_SysConf__SC_TRACE_EVENT_FILTER; return 0;}
5090 #endif /* ndef _SC_TRACE_EVENT_FILTER */
5091 #ifdef _SC_TRACE_INHERIT
5092 if (x == _SC_TRACE_INHERIT)
5093 {*r = Mono_Posix_SysConf__SC_TRACE_INHERIT; return 0;}
5094 #endif /* ndef _SC_TRACE_INHERIT */
5095 #ifdef _SC_TRACE_LOG
5096 if (x == _SC_TRACE_LOG)
5097 {*r = Mono_Posix_SysConf__SC_TRACE_LOG; return 0;}
5098 #endif /* ndef _SC_TRACE_LOG */
5099 #ifdef _SC_LEVEL1_ICACHE_SIZE
5100 if (x == _SC_LEVEL1_ICACHE_SIZE)
5101 {*r = Mono_Posix_SysConf__SC_LEVEL1_ICACHE_SIZE; return 0;}
5102 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
5103 #ifdef _SC_LEVEL1_ICACHE_ASSOC
5104 if (x == _SC_LEVEL1_ICACHE_ASSOC)
5105 {*r = Mono_Posix_SysConf__SC_LEVEL1_ICACHE_ASSOC; return 0;}
5106 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
5107 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
5108 if (x == _SC_LEVEL1_ICACHE_LINESIZE)
5109 {*r = Mono_Posix_SysConf__SC_LEVEL1_ICACHE_LINESIZE; return 0;}
5110 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
5111 #ifdef _SC_LEVEL1_DCACHE_SIZE
5112 if (x == _SC_LEVEL1_DCACHE_SIZE)
5113 {*r = Mono_Posix_SysConf__SC_LEVEL1_DCACHE_SIZE; return 0;}
5114 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
5115 #ifdef _SC_LEVEL1_DCACHE_ASSOC
5116 if (x == _SC_LEVEL1_DCACHE_ASSOC)
5117 {*r = Mono_Posix_SysConf__SC_LEVEL1_DCACHE_ASSOC; return 0;}
5118 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
5119 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
5120 if (x == _SC_LEVEL1_DCACHE_LINESIZE)
5121 {*r = Mono_Posix_SysConf__SC_LEVEL1_DCACHE_LINESIZE; return 0;}
5122 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
5123 #ifdef _SC_LEVEL2_CACHE_SIZE
5124 if (x == _SC_LEVEL2_CACHE_SIZE)
5125 {*r = Mono_Posix_SysConf__SC_LEVEL2_CACHE_SIZE; return 0;}
5126 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
5127 #ifdef _SC_LEVEL2_CACHE_ASSOC
5128 if (x == _SC_LEVEL2_CACHE_ASSOC)
5129 {*r = Mono_Posix_SysConf__SC_LEVEL2_CACHE_ASSOC; return 0;}
5130 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
5131 #ifdef _SC_LEVEL2_CACHE_LINESIZE
5132 if (x == _SC_LEVEL2_CACHE_LINESIZE)
5133 {*r = Mono_Posix_SysConf__SC_LEVEL2_CACHE_LINESIZE; return 0;}
5134 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
5135 #ifdef _SC_LEVEL3_CACHE_SIZE
5136 if (x == _SC_LEVEL3_CACHE_SIZE)
5137 {*r = Mono_Posix_SysConf__SC_LEVEL3_CACHE_SIZE; return 0;}
5138 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
5139 #ifdef _SC_LEVEL3_CACHE_ASSOC
5140 if (x == _SC_LEVEL3_CACHE_ASSOC)
5141 {*r = Mono_Posix_SysConf__SC_LEVEL3_CACHE_ASSOC; return 0;}
5142 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
5143 #ifdef _SC_LEVEL3_CACHE_LINESIZE
5144 if (x == _SC_LEVEL3_CACHE_LINESIZE)
5145 {*r = Mono_Posix_SysConf__SC_LEVEL3_CACHE_LINESIZE; return 0;}
5146 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
5147 #ifdef _SC_LEVEL4_CACHE_SIZE
5148 if (x == _SC_LEVEL4_CACHE_SIZE)
5149 {*r = Mono_Posix_SysConf__SC_LEVEL4_CACHE_SIZE; return 0;}
5150 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
5151 #ifdef _SC_LEVEL4_CACHE_ASSOC
5152 if (x == _SC_LEVEL4_CACHE_ASSOC)
5153 {*r = Mono_Posix_SysConf__SC_LEVEL4_CACHE_ASSOC; return 0;}
5154 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
5155 #ifdef _SC_LEVEL4_CACHE_LINESIZE
5156 if (x == _SC_LEVEL4_CACHE_LINESIZE)
5157 {*r = Mono_Posix_SysConf__SC_LEVEL4_CACHE_LINESIZE; return 0;}
5158 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
5159 errno = EINVAL; return -1;
5162 int Mono_Posix_FromConfStr (int x, int *r)
5164 *r = 0;
5165 if (x == 0)
5166 return 0;
5167 if (x == Mono_Posix_ConfStr__CS_PATH)
5168 #ifdef _CS_PATH
5169 {*r = _CS_PATH; return 0;}
5170 #else /* def _CS_PATH */
5171 {errno = EINVAL; return -1;}
5172 #endif /* ndef _CS_PATH */
5173 if (x == Mono_Posix_ConfStr__CS_V6_WIDTH_RESTRICTED_ENVS)
5174 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
5175 {*r = _CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
5176 #else /* def _CS_V6_WIDTH_RESTRICTED_ENVS */
5177 {errno = EINVAL; return -1;}
5178 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
5179 if (x == Mono_Posix_ConfStr__CS_GNU_LIBC_VERSION)
5180 #ifdef _CS_GNU_LIBC_VERSION
5181 {*r = _CS_GNU_LIBC_VERSION; return 0;}
5182 #else /* def _CS_GNU_LIBC_VERSION */
5183 {errno = EINVAL; return -1;}
5184 #endif /* ndef _CS_GNU_LIBC_VERSION */
5185 if (x == Mono_Posix_ConfStr__CS_GNU_LIBPTHREAD_VERSION)
5186 #ifdef _CS_GNU_LIBPTHREAD_VERSION
5187 {*r = _CS_GNU_LIBPTHREAD_VERSION; return 0;}
5188 #else /* def _CS_GNU_LIBPTHREAD_VERSION */
5189 {errno = EINVAL; return -1;}
5190 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
5191 if (x == Mono_Posix_ConfStr__CS_LFS_CFLAGS)
5192 #ifdef _CS_LFS_CFLAGS
5193 {*r = _CS_LFS_CFLAGS; return 0;}
5194 #else /* def _CS_LFS_CFLAGS */
5195 {errno = EINVAL; return -1;}
5196 #endif /* ndef _CS_LFS_CFLAGS */
5197 if (x == Mono_Posix_ConfStr__CS_LFS_LDFLAGS)
5198 #ifdef _CS_LFS_LDFLAGS
5199 {*r = _CS_LFS_LDFLAGS; return 0;}
5200 #else /* def _CS_LFS_LDFLAGS */
5201 {errno = EINVAL; return -1;}
5202 #endif /* ndef _CS_LFS_LDFLAGS */
5203 if (x == Mono_Posix_ConfStr__CS_LFS_LIBS)
5204 #ifdef _CS_LFS_LIBS
5205 {*r = _CS_LFS_LIBS; return 0;}
5206 #else /* def _CS_LFS_LIBS */
5207 {errno = EINVAL; return -1;}
5208 #endif /* ndef _CS_LFS_LIBS */
5209 if (x == Mono_Posix_ConfStr__CS_LFS_LINTFLAGS)
5210 #ifdef _CS_LFS_LINTFLAGS
5211 {*r = _CS_LFS_LINTFLAGS; return 0;}
5212 #else /* def _CS_LFS_LINTFLAGS */
5213 {errno = EINVAL; return -1;}
5214 #endif /* ndef _CS_LFS_LINTFLAGS */
5215 if (x == Mono_Posix_ConfStr__CS_LFS64_CFLAGS)
5216 #ifdef _CS_LFS64_CFLAGS
5217 {*r = _CS_LFS64_CFLAGS; return 0;}
5218 #else /* def _CS_LFS64_CFLAGS */
5219 {errno = EINVAL; return -1;}
5220 #endif /* ndef _CS_LFS64_CFLAGS */
5221 if (x == Mono_Posix_ConfStr__CS_LFS64_LDFLAGS)
5222 #ifdef _CS_LFS64_LDFLAGS
5223 {*r = _CS_LFS64_LDFLAGS; return 0;}
5224 #else /* def _CS_LFS64_LDFLAGS */
5225 {errno = EINVAL; return -1;}
5226 #endif /* ndef _CS_LFS64_LDFLAGS */
5227 if (x == Mono_Posix_ConfStr__CS_LFS64_LIBS)
5228 #ifdef _CS_LFS64_LIBS
5229 {*r = _CS_LFS64_LIBS; return 0;}
5230 #else /* def _CS_LFS64_LIBS */
5231 {errno = EINVAL; return -1;}
5232 #endif /* ndef _CS_LFS64_LIBS */
5233 if (x == Mono_Posix_ConfStr__CS_LFS64_LINTFLAGS)
5234 #ifdef _CS_LFS64_LINTFLAGS
5235 {*r = _CS_LFS64_LINTFLAGS; return 0;}
5236 #else /* def _CS_LFS64_LINTFLAGS */
5237 {errno = EINVAL; return -1;}
5238 #endif /* ndef _CS_LFS64_LINTFLAGS */
5239 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_CFLAGS)
5240 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
5241 {*r = _CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
5242 #else /* def _CS_XBS5_ILP32_OFF32_CFLAGS */
5243 {errno = EINVAL; return -1;}
5244 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
5245 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LDFLAGS)
5246 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
5247 {*r = _CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
5248 #else /* def _CS_XBS5_ILP32_OFF32_LDFLAGS */
5249 {errno = EINVAL; return -1;}
5250 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
5251 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LIBS)
5252 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
5253 {*r = _CS_XBS5_ILP32_OFF32_LIBS; return 0;}
5254 #else /* def _CS_XBS5_ILP32_OFF32_LIBS */
5255 {errno = EINVAL; return -1;}
5256 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
5257 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LINTFLAGS)
5258 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
5259 {*r = _CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
5260 #else /* def _CS_XBS5_ILP32_OFF32_LINTFLAGS */
5261 {errno = EINVAL; return -1;}
5262 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
5263 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_CFLAGS)
5264 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
5265 {*r = _CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
5266 #else /* def _CS_XBS5_ILP32_OFFBIG_CFLAGS */
5267 {errno = EINVAL; return -1;}
5268 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
5269 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LDFLAGS)
5270 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
5271 {*r = _CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
5272 #else /* def _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
5273 {errno = EINVAL; return -1;}
5274 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
5275 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LIBS)
5276 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
5277 {*r = _CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
5278 #else /* def _CS_XBS5_ILP32_OFFBIG_LIBS */
5279 {errno = EINVAL; return -1;}
5280 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
5281 if (x == Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
5282 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
5283 {*r = _CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
5284 #else /* def _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
5285 {errno = EINVAL; return -1;}
5286 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
5287 if (x == Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_CFLAGS)
5288 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
5289 {*r = _CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
5290 #else /* def _CS_XBS5_LP64_OFF64_CFLAGS */
5291 {errno = EINVAL; return -1;}
5292 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
5293 if (x == Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LDFLAGS)
5294 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
5295 {*r = _CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
5296 #else /* def _CS_XBS5_LP64_OFF64_LDFLAGS */
5297 {errno = EINVAL; return -1;}
5298 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
5299 if (x == Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LIBS)
5300 #ifdef _CS_XBS5_LP64_OFF64_LIBS
5301 {*r = _CS_XBS5_LP64_OFF64_LIBS; return 0;}
5302 #else /* def _CS_XBS5_LP64_OFF64_LIBS */
5303 {errno = EINVAL; return -1;}
5304 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
5305 if (x == Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LINTFLAGS)
5306 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
5307 {*r = _CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
5308 #else /* def _CS_XBS5_LP64_OFF64_LINTFLAGS */
5309 {errno = EINVAL; return -1;}
5310 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
5311 if (x == Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_CFLAGS)
5312 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
5313 {*r = _CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
5314 #else /* def _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
5315 {errno = EINVAL; return -1;}
5316 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
5317 if (x == Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
5318 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
5319 {*r = _CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
5320 #else /* def _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
5321 {errno = EINVAL; return -1;}
5322 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
5323 if (x == Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LIBS)
5324 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
5325 {*r = _CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
5326 #else /* def _CS_XBS5_LPBIG_OFFBIG_LIBS */
5327 {errno = EINVAL; return -1;}
5328 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
5329 if (x == Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
5330 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
5331 {*r = _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
5332 #else /* def _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
5333 {errno = EINVAL; return -1;}
5334 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
5335 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_CFLAGS)
5336 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
5337 {*r = _CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
5338 #else /* def _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
5339 {errno = EINVAL; return -1;}
5340 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
5341 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
5342 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
5343 {*r = _CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
5344 #else /* def _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
5345 {errno = EINVAL; return -1;}
5346 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
5347 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LIBS)
5348 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
5349 {*r = _CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
5350 #else /* def _CS_POSIX_V6_ILP32_OFF32_LIBS */
5351 {errno = EINVAL; return -1;}
5352 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
5353 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
5354 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
5355 {*r = _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
5356 #else /* def _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
5357 {errno = EINVAL; return -1;}
5358 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
5359 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
5360 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
5361 {*r = _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
5362 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
5363 {errno = EINVAL; return -1;}
5364 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
5365 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
5366 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
5367 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
5368 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
5369 {errno = EINVAL; return -1;}
5370 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
5371 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LIBS)
5372 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
5373 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
5374 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
5375 {errno = EINVAL; return -1;}
5376 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
5377 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
5378 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
5379 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
5380 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
5381 {errno = EINVAL; return -1;}
5382 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
5383 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_CFLAGS)
5384 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
5385 {*r = _CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
5386 #else /* def _CS_POSIX_V6_LP64_OFF64_CFLAGS */
5387 {errno = EINVAL; return -1;}
5388 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
5389 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LDFLAGS)
5390 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
5391 {*r = _CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
5392 #else /* def _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
5393 {errno = EINVAL; return -1;}
5394 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
5395 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LIBS)
5396 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
5397 {*r = _CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
5398 #else /* def _CS_POSIX_V6_LP64_OFF64_LIBS */
5399 {errno = EINVAL; return -1;}
5400 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
5401 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
5402 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
5403 {*r = _CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
5404 #else /* def _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
5405 {errno = EINVAL; return -1;}
5406 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
5407 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
5408 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
5409 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
5410 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
5411 {errno = EINVAL; return -1;}
5412 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
5413 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
5414 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
5415 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
5416 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
5417 {errno = EINVAL; return -1;}
5418 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
5419 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
5420 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
5421 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
5422 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
5423 {errno = EINVAL; return -1;}
5424 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
5425 if (x == Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
5426 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
5427 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
5428 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
5429 {errno = EINVAL; return -1;}
5430 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
5431 errno = EINVAL; return -1;
5434 int Mono_Posix_ToConfStr (int x, int *r)
5436 *r = 0;
5437 if (x == 0)
5438 return 0;
5439 #ifdef _CS_PATH
5440 if (x == _CS_PATH)
5441 {*r = Mono_Posix_ConfStr__CS_PATH; return 0;}
5442 #endif /* ndef _CS_PATH */
5443 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
5444 if (x == _CS_V6_WIDTH_RESTRICTED_ENVS)
5445 {*r = Mono_Posix_ConfStr__CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
5446 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
5447 #ifdef _CS_GNU_LIBC_VERSION
5448 if (x == _CS_GNU_LIBC_VERSION)
5449 {*r = Mono_Posix_ConfStr__CS_GNU_LIBC_VERSION; return 0;}
5450 #endif /* ndef _CS_GNU_LIBC_VERSION */
5451 #ifdef _CS_GNU_LIBPTHREAD_VERSION
5452 if (x == _CS_GNU_LIBPTHREAD_VERSION)
5453 {*r = Mono_Posix_ConfStr__CS_GNU_LIBPTHREAD_VERSION; return 0;}
5454 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
5455 #ifdef _CS_LFS_CFLAGS
5456 if (x == _CS_LFS_CFLAGS)
5457 {*r = Mono_Posix_ConfStr__CS_LFS_CFLAGS; return 0;}
5458 #endif /* ndef _CS_LFS_CFLAGS */
5459 #ifdef _CS_LFS_LDFLAGS
5460 if (x == _CS_LFS_LDFLAGS)
5461 {*r = Mono_Posix_ConfStr__CS_LFS_LDFLAGS; return 0;}
5462 #endif /* ndef _CS_LFS_LDFLAGS */
5463 #ifdef _CS_LFS_LIBS
5464 if (x == _CS_LFS_LIBS)
5465 {*r = Mono_Posix_ConfStr__CS_LFS_LIBS; return 0;}
5466 #endif /* ndef _CS_LFS_LIBS */
5467 #ifdef _CS_LFS_LINTFLAGS
5468 if (x == _CS_LFS_LINTFLAGS)
5469 {*r = Mono_Posix_ConfStr__CS_LFS_LINTFLAGS; return 0;}
5470 #endif /* ndef _CS_LFS_LINTFLAGS */
5471 #ifdef _CS_LFS64_CFLAGS
5472 if (x == _CS_LFS64_CFLAGS)
5473 {*r = Mono_Posix_ConfStr__CS_LFS64_CFLAGS; return 0;}
5474 #endif /* ndef _CS_LFS64_CFLAGS */
5475 #ifdef _CS_LFS64_LDFLAGS
5476 if (x == _CS_LFS64_LDFLAGS)
5477 {*r = Mono_Posix_ConfStr__CS_LFS64_LDFLAGS; return 0;}
5478 #endif /* ndef _CS_LFS64_LDFLAGS */
5479 #ifdef _CS_LFS64_LIBS
5480 if (x == _CS_LFS64_LIBS)
5481 {*r = Mono_Posix_ConfStr__CS_LFS64_LIBS; return 0;}
5482 #endif /* ndef _CS_LFS64_LIBS */
5483 #ifdef _CS_LFS64_LINTFLAGS
5484 if (x == _CS_LFS64_LINTFLAGS)
5485 {*r = Mono_Posix_ConfStr__CS_LFS64_LINTFLAGS; return 0;}
5486 #endif /* ndef _CS_LFS64_LINTFLAGS */
5487 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
5488 if (x == _CS_XBS5_ILP32_OFF32_CFLAGS)
5489 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
5490 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
5491 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
5492 if (x == _CS_XBS5_ILP32_OFF32_LDFLAGS)
5493 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
5494 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
5495 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
5496 if (x == _CS_XBS5_ILP32_OFF32_LIBS)
5497 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LIBS; return 0;}
5498 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
5499 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
5500 if (x == _CS_XBS5_ILP32_OFF32_LINTFLAGS)
5501 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
5502 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
5503 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
5504 if (x == _CS_XBS5_ILP32_OFFBIG_CFLAGS)
5505 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
5506 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
5507 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
5508 if (x == _CS_XBS5_ILP32_OFFBIG_LDFLAGS)
5509 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
5510 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
5511 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
5512 if (x == _CS_XBS5_ILP32_OFFBIG_LIBS)
5513 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
5514 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
5515 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
5516 if (x == _CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
5517 {*r = Mono_Posix_ConfStr__CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
5518 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
5519 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
5520 if (x == _CS_XBS5_LP64_OFF64_CFLAGS)
5521 {*r = Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
5522 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
5523 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
5524 if (x == _CS_XBS5_LP64_OFF64_LDFLAGS)
5525 {*r = Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
5526 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
5527 #ifdef _CS_XBS5_LP64_OFF64_LIBS
5528 if (x == _CS_XBS5_LP64_OFF64_LIBS)
5529 {*r = Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LIBS; return 0;}
5530 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
5531 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
5532 if (x == _CS_XBS5_LP64_OFF64_LINTFLAGS)
5533 {*r = Mono_Posix_ConfStr__CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
5534 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
5535 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
5536 if (x == _CS_XBS5_LPBIG_OFFBIG_CFLAGS)
5537 {*r = Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
5538 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
5539 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
5540 if (x == _CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
5541 {*r = Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
5542 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
5543 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
5544 if (x == _CS_XBS5_LPBIG_OFFBIG_LIBS)
5545 {*r = Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
5546 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
5547 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
5548 if (x == _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
5549 {*r = Mono_Posix_ConfStr__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
5550 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
5551 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
5552 if (x == _CS_POSIX_V6_ILP32_OFF32_CFLAGS)
5553 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
5554 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
5555 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
5556 if (x == _CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
5557 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
5558 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
5559 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
5560 if (x == _CS_POSIX_V6_ILP32_OFF32_LIBS)
5561 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
5562 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
5563 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
5564 if (x == _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
5565 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
5566 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
5567 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
5568 if (x == _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
5569 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
5570 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
5571 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
5572 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
5573 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
5574 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
5575 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
5576 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LIBS)
5577 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
5578 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
5579 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
5580 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
5581 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
5582 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
5583 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
5584 if (x == _CS_POSIX_V6_LP64_OFF64_CFLAGS)
5585 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
5586 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
5587 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
5588 if (x == _CS_POSIX_V6_LP64_OFF64_LDFLAGS)
5589 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
5590 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
5591 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
5592 if (x == _CS_POSIX_V6_LP64_OFF64_LIBS)
5593 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
5594 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
5595 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
5596 if (x == _CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
5597 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
5598 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
5599 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
5600 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
5601 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
5602 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
5603 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
5604 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
5605 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
5606 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
5607 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
5608 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
5609 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
5610 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
5611 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
5612 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
5613 {*r = Mono_Posix_ConfStr__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
5614 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
5615 errno = EINVAL; return -1;
5618 int Mono_Posix_FromLockFlags (int x, int *r)
5620 *r = 0;
5621 if (x == 0)
5622 return 0;
5623 if (x == Mono_Posix_LockFlags_F_ULOCK)
5624 #ifdef F_ULOCK
5625 {*r = F_ULOCK; return 0;}
5626 #else /* def F_ULOCK */
5627 {errno = EINVAL; return -1;}
5628 #endif /* ndef F_ULOCK */
5629 if (x == Mono_Posix_LockFlags_F_LOCK)
5630 #ifdef F_LOCK
5631 {*r = F_LOCK; return 0;}
5632 #else /* def F_LOCK */
5633 {errno = EINVAL; return -1;}
5634 #endif /* ndef F_LOCK */
5635 if (x == Mono_Posix_LockFlags_F_TLOCK)
5636 #ifdef F_TLOCK
5637 {*r = F_TLOCK; return 0;}
5638 #else /* def F_TLOCK */
5639 {errno = EINVAL; return -1;}
5640 #endif /* ndef F_TLOCK */
5641 if (x == Mono_Posix_LockFlags_F_TEST)
5642 #ifdef F_TEST
5643 {*r = F_TEST; return 0;}
5644 #else /* def F_TEST */
5645 {errno = EINVAL; return -1;}
5646 #endif /* ndef F_TEST */
5647 errno = EINVAL; return -1;
5650 int Mono_Posix_ToLockFlags (int x, int *r)
5652 *r = 0;
5653 if (x == 0)
5654 return 0;
5655 #ifdef F_ULOCK
5656 if (x == F_ULOCK)
5657 {*r = Mono_Posix_LockFlags_F_ULOCK; return 0;}
5658 #endif /* ndef F_ULOCK */
5659 #ifdef F_LOCK
5660 if (x == F_LOCK)
5661 {*r = Mono_Posix_LockFlags_F_LOCK; return 0;}
5662 #endif /* ndef F_LOCK */
5663 #ifdef F_TLOCK
5664 if (x == F_TLOCK)
5665 {*r = Mono_Posix_LockFlags_F_TLOCK; return 0;}
5666 #endif /* ndef F_TLOCK */
5667 #ifdef F_TEST
5668 if (x == F_TEST)
5669 {*r = Mono_Posix_LockFlags_F_TEST; return 0;}
5670 #endif /* ndef F_TEST */
5671 errno = EINVAL; return -1;
5674 int Mono_Posix_FromPollEvents (short x, short *r)
5676 *r = 0;
5677 if (x == 0)
5678 return 0;
5679 if ((x & Mono_Posix_PollEvents_POLLIN) == Mono_Posix_PollEvents_POLLIN)
5680 #ifdef POLLIN
5681 *r |= POLLIN;
5682 #else /* def POLLIN */
5683 {errno = EINVAL; return -1;}
5684 #endif /* ndef POLLIN */
5685 if ((x & Mono_Posix_PollEvents_POLLPRI) == Mono_Posix_PollEvents_POLLPRI)
5686 #ifdef POLLPRI
5687 *r |= POLLPRI;
5688 #else /* def POLLPRI */
5689 {errno = EINVAL; return -1;}
5690 #endif /* ndef POLLPRI */
5691 if ((x & Mono_Posix_PollEvents_POLLOUT) == Mono_Posix_PollEvents_POLLOUT)
5692 #ifdef POLLOUT
5693 *r |= POLLOUT;
5694 #else /* def POLLOUT */
5695 {errno = EINVAL; return -1;}
5696 #endif /* ndef POLLOUT */
5697 if ((x & Mono_Posix_PollEvents_POLLERR) == Mono_Posix_PollEvents_POLLERR)
5698 #ifdef POLLERR
5699 *r |= POLLERR;
5700 #else /* def POLLERR */
5701 {errno = EINVAL; return -1;}
5702 #endif /* ndef POLLERR */
5703 if ((x & Mono_Posix_PollEvents_POLLHUP) == Mono_Posix_PollEvents_POLLHUP)
5704 #ifdef POLLHUP
5705 *r |= POLLHUP;
5706 #else /* def POLLHUP */
5707 {errno = EINVAL; return -1;}
5708 #endif /* ndef POLLHUP */
5709 if ((x & Mono_Posix_PollEvents_POLLNVAL) == Mono_Posix_PollEvents_POLLNVAL)
5710 #ifdef POLLNVAL
5711 *r |= POLLNVAL;
5712 #else /* def POLLNVAL */
5713 {errno = EINVAL; return -1;}
5714 #endif /* ndef POLLNVAL */
5715 if ((x & Mono_Posix_PollEvents_POLLRDNORM) == Mono_Posix_PollEvents_POLLRDNORM)
5716 #ifdef POLLRDNORM
5717 *r |= POLLRDNORM;
5718 #else /* def POLLRDNORM */
5719 {errno = EINVAL; return -1;}
5720 #endif /* ndef POLLRDNORM */
5721 if ((x & Mono_Posix_PollEvents_POLLRDBAND) == Mono_Posix_PollEvents_POLLRDBAND)
5722 #ifdef POLLRDBAND
5723 *r |= POLLRDBAND;
5724 #else /* def POLLRDBAND */
5725 {errno = EINVAL; return -1;}
5726 #endif /* ndef POLLRDBAND */
5727 if ((x & Mono_Posix_PollEvents_POLLWRNORM) == Mono_Posix_PollEvents_POLLWRNORM)
5728 #ifdef POLLWRNORM
5729 *r |= POLLWRNORM;
5730 #else /* def POLLWRNORM */
5731 {errno = EINVAL; return -1;}
5732 #endif /* ndef POLLWRNORM */
5733 if ((x & Mono_Posix_PollEvents_POLLWRBAND) == Mono_Posix_PollEvents_POLLWRBAND)
5734 #ifdef POLLWRBAND
5735 *r |= POLLWRBAND;
5736 #else /* def POLLWRBAND */
5737 {errno = EINVAL; return -1;}
5738 #endif /* ndef POLLWRBAND */
5739 return 0;
5742 int Mono_Posix_ToPollEvents (short x, short *r)
5744 *r = 0;
5745 if (x == 0)
5746 return 0;
5747 #ifdef POLLIN
5748 if ((x & POLLIN) == POLLIN)
5749 *r |= Mono_Posix_PollEvents_POLLIN;
5750 #endif /* ndef POLLIN */
5751 #ifdef POLLPRI
5752 if ((x & POLLPRI) == POLLPRI)
5753 *r |= Mono_Posix_PollEvents_POLLPRI;
5754 #endif /* ndef POLLPRI */
5755 #ifdef POLLOUT
5756 if ((x & POLLOUT) == POLLOUT)
5757 *r |= Mono_Posix_PollEvents_POLLOUT;
5758 #endif /* ndef POLLOUT */
5759 #ifdef POLLERR
5760 if ((x & POLLERR) == POLLERR)
5761 *r |= Mono_Posix_PollEvents_POLLERR;
5762 #endif /* ndef POLLERR */
5763 #ifdef POLLHUP
5764 if ((x & POLLHUP) == POLLHUP)
5765 *r |= Mono_Posix_PollEvents_POLLHUP;
5766 #endif /* ndef POLLHUP */
5767 #ifdef POLLNVAL
5768 if ((x & POLLNVAL) == POLLNVAL)
5769 *r |= Mono_Posix_PollEvents_POLLNVAL;
5770 #endif /* ndef POLLNVAL */
5771 #ifdef POLLRDNORM
5772 if ((x & POLLRDNORM) == POLLRDNORM)
5773 *r |= Mono_Posix_PollEvents_POLLRDNORM;
5774 #endif /* ndef POLLRDNORM */
5775 #ifdef POLLRDBAND
5776 if ((x & POLLRDBAND) == POLLRDBAND)
5777 *r |= Mono_Posix_PollEvents_POLLRDBAND;
5778 #endif /* ndef POLLRDBAND */
5779 #ifdef POLLWRNORM
5780 if ((x & POLLWRNORM) == POLLWRNORM)
5781 *r |= Mono_Posix_PollEvents_POLLWRNORM;
5782 #endif /* ndef POLLWRNORM */
5783 #ifdef POLLWRBAND
5784 if ((x & POLLWRBAND) == POLLWRBAND)
5785 *r |= Mono_Posix_PollEvents_POLLWRBAND;
5786 #endif /* ndef POLLWRBAND */
5787 return 0;