2 * This file was automatically generated by create-native-map from /home/kiesssn/prog/mono/mono/mcs/class/lib/net_4_x/Mono.Posix.dll.
8 #endif /* ndef HAVE_CONFIG_H */
14 * Implementation Macros
18 #endif /* ndef _GNU_SOURCE */
22 #endif /* ndef _XOPEN_SOURCE */
26 * Implementation Includes
28 #include <sys/types.h>
30 #ifdef HAVE_NETINET_IN_H
31 #include <netinet/in.h>
32 #endif /* ndef HAVE_NETINET_IN_H */
33 #ifdef HAVE_SYS_TIME_H
35 #endif /* ndef HAVE_SYS_TIME_H */
36 #ifdef HAVE_SYS_POLL_H
38 #endif /* ndef HAVE_SYS_POLL_H */
39 #ifdef HAVE_SYS_WAIT_H
41 #endif /* ndef HAVE_SYS_WAIT_H */
42 #ifdef HAVE_SYS_STATVFS_H
43 #include <sys/statvfs.h>
44 #endif /* ndef HAVE_SYS_STATVFS_H */
45 #ifdef HAVE_SYS_XATTR_H
46 #include <sys/xattr.h>
47 #endif /* ndef HAVE_SYS_XATTR_H */
48 #ifdef HAVE_SYS_MMAN_H
50 #endif /* ndef HAVE_SYS_MMAN_H */
51 #ifdef HAVE_SYS_SOCKET_H
52 #include <sys/socket.h>
53 #endif /* ndef HAVE_SYS_SOCKET_H */
56 #endif /* ndef HAVE_SYS_UIO_H */
59 #endif /* ndef HAVE_UNISTD_H */
64 #endif /* ndef HAVE_POLL_H */
67 #endif /* ndef HAVE_GRP_H */
71 #endif /* ndef HAVE_SYSLOG_H */
74 #endif /* ndef HAVE_DIRENT_H */
77 #endif /* ndef HAVE_UTIME_H */
83 #include <errno.h> /* errno, EOVERFLOW */
84 #include <glib.h> /* g* types, g_assert_not_reached() */
86 #if defined (G_MININT8)
87 #define CNM_MININT8 G_MININT8
89 #define CNM_MININT8 (-128)
92 #if defined (G_MAXINT8)
93 #define CNM_MAXINT8 G_MAXINT8
95 #define CNM_MAXINT8 (127)
98 #if defined (G_MAXUINT8)
99 #define CNM_MAXUINT8 G_MAXUINT8
101 #define CNM_MAXUINT8 (255)
104 #if defined (G_MININT16)
105 #define CNM_MININT16 G_MININT16
107 #define CNM_MININT16 (-32768)
110 #if defined (G_MAXINT16)
111 #define CNM_MAXINT16 G_MAXINT16
113 #define CNM_MAXINT16 (32767)
116 #if defined (G_MAXUINT16)
117 #define CNM_MAXUINT16 G_MAXUINT16
119 #define CNM_MAXUINT16 (65535)
122 #if defined (G_MININT32)
123 #define CNM_MININT32 G_MININT32
125 #define CNM_MININT32 (-2147483648)
128 #if defined (G_MAXINT32)
129 #define CNM_MAXINT32 G_MAXINT32
131 #define CNM_MAXINT32 (2147483647)
134 #if defined (G_MAXUINT32)
135 #define CNM_MAXUINT32 G_MAXUINT32
137 #define CNM_MAXUINT32 (4294967295U)
140 #if defined (G_MININT64)
141 #define CNM_MININT64 G_MININT64
143 #define CNM_MININT64 (-9223372036854775808LL)
146 #if defined (G_MAXINT64)
147 #define CNM_MAXINT64 G_MAXINT64
149 #define CNM_MAXINT64 (9223372036854775807LL)
152 #if defined (G_MAXUINT64)
153 #define CNM_MAXUINT64 G_MAXUINT64
155 #define CNM_MAXUINT64 (18446744073709551615ULL)
159 /* returns TRUE if @type is an unsigned type */
160 #define _cnm_integral_type_is_unsigned(type) \
161 (sizeof(type) == sizeof(gint8) \
162 ? (((type)-1) > CNM_MAXINT8) \
163 : sizeof(type) == sizeof(gint16) \
164 ? (((type)-1) > CNM_MAXINT16) \
165 : sizeof(type) == sizeof(gint32) \
166 ? (((type)-1) > CNM_MAXINT32) \
167 : sizeof(type) == sizeof(gint64) \
168 ? (((type)-1) > CNM_MAXINT64) \
169 : (g_assert_not_reached (), 0))
171 /* returns the minimum value of @type as a gint64 */
172 #define _cnm_integral_type_min(type) \
173 (_cnm_integral_type_is_unsigned (type) \
175 : sizeof(type) == sizeof(gint8) \
177 : sizeof(type) == sizeof(gint16) \
179 : sizeof(type) == sizeof(gint32) \
181 : sizeof(type) == sizeof(gint64) \
183 : (g_assert_not_reached (), 0))
185 /* returns the maximum value of @type as a guint64 */
186 #define _cnm_integral_type_max(type) \
187 (_cnm_integral_type_is_unsigned (type) \
188 ? sizeof(type) == sizeof(gint8) \
190 : sizeof(type) == sizeof(gint16) \
192 : sizeof(type) == sizeof(gint32) \
194 : sizeof(type) == sizeof(gint64) \
196 : (g_assert_not_reached (), 0) \
197 : sizeof(type) == sizeof(gint8) \
199 : sizeof(type) == sizeof(gint16) \
201 : sizeof(type) == sizeof(gint32) \
203 : sizeof(type) == sizeof(gint64) \
205 : (g_assert_not_reached (), 0))
208 #define _cnm_dump(to_t,from) \
209 printf ("# %s -> %s: uns=%i; min=%llx; max=%llx; value=%llx; lt=%i; l0=%i; gt=%i; e=%i\n", \
211 (int) _cnm_integral_type_is_unsigned (to_t), \
212 (gint64) (_cnm_integral_type_min (to_t)), \
213 (gint64) (_cnm_integral_type_max (to_t)), \
215 (((gint64) _cnm_integral_type_min (to_t)) <= (gint64) from), \
217 (((guint64) from) <= (guint64) _cnm_integral_type_max (to_t)), \
218 !((int) _cnm_integral_type_is_unsigned (to_t) \
220 ((guint64) from <= (guint64) _cnm_integral_type_max (to_t))) \
221 : ((gint64) _cnm_integral_type_min(to_t) <= (gint64) from && \
222 (guint64) from <= (guint64) _cnm_integral_type_max (to_t))) \
224 #else /* ndef _CNM_DUMP */
225 #define _cnm_dump(to_t, from) do {} while (0)
226 #endif /* def _CNM_DUMP */
229 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
230 int uns = _cnm_integral_type_is_unsigned (to_t); \
231 gint64 min = (gint64) _cnm_integral_type_min (to_t); \
232 guint64 max = (guint64) _cnm_integral_type_max (to_t); \
233 gint64 sf = (gint64) from; \
234 guint64 uf = (guint64) from; \
235 if (!(uns ? ((0 <= from) && (uf <= max)) \
236 : (min <= sf && (from < 0 || uf <= max)))) { \
237 _cnm_dump(to_t, from); \
242 #else /* !def DEBUG */
243 /* don't do any overflow checking */
244 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
246 #endif /* def DEBUG */
248 int Mono_Posix_FromAccessModes (int x, int *r)
251 if ((x & Mono_Posix_AccessModes_F_OK) == Mono_Posix_AccessModes_F_OK)
255 {errno = EINVAL; return -1;}
256 #endif /* ndef F_OK */
257 if ((x & Mono_Posix_AccessModes_R_OK) == Mono_Posix_AccessModes_R_OK)
261 {errno = EINVAL; return -1;}
262 #endif /* ndef R_OK */
263 if ((x & Mono_Posix_AccessModes_W_OK) == Mono_Posix_AccessModes_W_OK)
267 {errno = EINVAL; return -1;}
268 #endif /* ndef W_OK */
269 if ((x & Mono_Posix_AccessModes_X_OK) == Mono_Posix_AccessModes_X_OK)
273 {errno = EINVAL; return -1;}
274 #endif /* ndef X_OK */
280 int Mono_Posix_ToAccessModes (int x, int *r)
286 if ((x & F_OK) == F_OK)
287 *r |= Mono_Posix_AccessModes_F_OK;
288 #endif /* ndef F_OK */
290 if ((x & R_OK) == R_OK)
291 *r |= Mono_Posix_AccessModes_R_OK;
292 #endif /* ndef R_OK */
294 if ((x & W_OK) == W_OK)
295 *r |= Mono_Posix_AccessModes_W_OK;
296 #endif /* ndef W_OK */
298 if ((x & X_OK) == X_OK)
299 *r |= Mono_Posix_AccessModes_X_OK;
300 #endif /* ndef X_OK */
304 int Mono_Posix_FromAtFlags (int x, int *r)
307 if ((x & Mono_Posix_AtFlags_AT_EMPTY_PATH) == Mono_Posix_AtFlags_AT_EMPTY_PATH)
310 #else /* def AT_EMPTY_PATH */
311 {errno = EINVAL; return -1;}
312 #endif /* ndef AT_EMPTY_PATH */
313 if ((x & Mono_Posix_AtFlags_AT_NO_AUTOMOUNT) == Mono_Posix_AtFlags_AT_NO_AUTOMOUNT)
314 #ifdef AT_NO_AUTOMOUNT
315 *r |= AT_NO_AUTOMOUNT;
316 #else /* def AT_NO_AUTOMOUNT */
317 {errno = EINVAL; return -1;}
318 #endif /* ndef AT_NO_AUTOMOUNT */
319 if ((x & Mono_Posix_AtFlags_AT_REMOVEDIR) == Mono_Posix_AtFlags_AT_REMOVEDIR)
322 #else /* def AT_REMOVEDIR */
323 {errno = EINVAL; return -1;}
324 #endif /* ndef AT_REMOVEDIR */
325 if ((x & Mono_Posix_AtFlags_AT_SYMLINK_FOLLOW) == Mono_Posix_AtFlags_AT_SYMLINK_FOLLOW)
326 #ifdef AT_SYMLINK_FOLLOW
327 *r |= AT_SYMLINK_FOLLOW;
328 #else /* def AT_SYMLINK_FOLLOW */
329 {errno = EINVAL; return -1;}
330 #endif /* ndef AT_SYMLINK_FOLLOW */
331 if ((x & Mono_Posix_AtFlags_AT_SYMLINK_NOFOLLOW) == Mono_Posix_AtFlags_AT_SYMLINK_NOFOLLOW)
332 #ifdef AT_SYMLINK_NOFOLLOW
333 *r |= AT_SYMLINK_NOFOLLOW;
334 #else /* def AT_SYMLINK_NOFOLLOW */
335 {errno = EINVAL; return -1;}
336 #endif /* ndef AT_SYMLINK_NOFOLLOW */
342 int Mono_Posix_ToAtFlags (int x, int *r)
348 if ((x & AT_EMPTY_PATH) == AT_EMPTY_PATH)
349 *r |= Mono_Posix_AtFlags_AT_EMPTY_PATH;
350 #endif /* ndef AT_EMPTY_PATH */
351 #ifdef AT_NO_AUTOMOUNT
352 if ((x & AT_NO_AUTOMOUNT) == AT_NO_AUTOMOUNT)
353 *r |= Mono_Posix_AtFlags_AT_NO_AUTOMOUNT;
354 #endif /* ndef AT_NO_AUTOMOUNT */
356 if ((x & AT_REMOVEDIR) == AT_REMOVEDIR)
357 *r |= Mono_Posix_AtFlags_AT_REMOVEDIR;
358 #endif /* ndef AT_REMOVEDIR */
359 #ifdef AT_SYMLINK_FOLLOW
360 if ((x & AT_SYMLINK_FOLLOW) == AT_SYMLINK_FOLLOW)
361 *r |= Mono_Posix_AtFlags_AT_SYMLINK_FOLLOW;
362 #endif /* ndef AT_SYMLINK_FOLLOW */
363 #ifdef AT_SYMLINK_NOFOLLOW
364 if ((x & AT_SYMLINK_NOFOLLOW) == AT_SYMLINK_NOFOLLOW)
365 *r |= Mono_Posix_AtFlags_AT_SYMLINK_NOFOLLOW;
366 #endif /* ndef AT_SYMLINK_NOFOLLOW */
370 int Mono_Posix_FromConfstrName (int x, int *r)
373 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION)
374 #ifdef _CS_GNU_LIBC_VERSION
375 {*r = _CS_GNU_LIBC_VERSION; return 0;}
376 #else /* def _CS_GNU_LIBC_VERSION */
377 {errno = EINVAL; return -1;}
378 #endif /* ndef _CS_GNU_LIBC_VERSION */
379 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION)
380 #ifdef _CS_GNU_LIBPTHREAD_VERSION
381 {*r = _CS_GNU_LIBPTHREAD_VERSION; return 0;}
382 #else /* def _CS_GNU_LIBPTHREAD_VERSION */
383 {errno = EINVAL; return -1;}
384 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
385 if (x == Mono_Posix_ConfstrName__CS_LFS64_CFLAGS)
386 #ifdef _CS_LFS64_CFLAGS
387 {*r = _CS_LFS64_CFLAGS; return 0;}
388 #else /* def _CS_LFS64_CFLAGS */
389 {errno = EINVAL; return -1;}
390 #endif /* ndef _CS_LFS64_CFLAGS */
391 if (x == Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS)
392 #ifdef _CS_LFS64_LDFLAGS
393 {*r = _CS_LFS64_LDFLAGS; return 0;}
394 #else /* def _CS_LFS64_LDFLAGS */
395 {errno = EINVAL; return -1;}
396 #endif /* ndef _CS_LFS64_LDFLAGS */
397 if (x == Mono_Posix_ConfstrName__CS_LFS64_LIBS)
398 #ifdef _CS_LFS64_LIBS
399 {*r = _CS_LFS64_LIBS; return 0;}
400 #else /* def _CS_LFS64_LIBS */
401 {errno = EINVAL; return -1;}
402 #endif /* ndef _CS_LFS64_LIBS */
403 if (x == Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS)
404 #ifdef _CS_LFS64_LINTFLAGS
405 {*r = _CS_LFS64_LINTFLAGS; return 0;}
406 #else /* def _CS_LFS64_LINTFLAGS */
407 {errno = EINVAL; return -1;}
408 #endif /* ndef _CS_LFS64_LINTFLAGS */
409 if (x == Mono_Posix_ConfstrName__CS_LFS_CFLAGS)
410 #ifdef _CS_LFS_CFLAGS
411 {*r = _CS_LFS_CFLAGS; return 0;}
412 #else /* def _CS_LFS_CFLAGS */
413 {errno = EINVAL; return -1;}
414 #endif /* ndef _CS_LFS_CFLAGS */
415 if (x == Mono_Posix_ConfstrName__CS_LFS_LDFLAGS)
416 #ifdef _CS_LFS_LDFLAGS
417 {*r = _CS_LFS_LDFLAGS; return 0;}
418 #else /* def _CS_LFS_LDFLAGS */
419 {errno = EINVAL; return -1;}
420 #endif /* ndef _CS_LFS_LDFLAGS */
421 if (x == Mono_Posix_ConfstrName__CS_LFS_LIBS)
423 {*r = _CS_LFS_LIBS; return 0;}
424 #else /* def _CS_LFS_LIBS */
425 {errno = EINVAL; return -1;}
426 #endif /* ndef _CS_LFS_LIBS */
427 if (x == Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS)
428 #ifdef _CS_LFS_LINTFLAGS
429 {*r = _CS_LFS_LINTFLAGS; return 0;}
430 #else /* def _CS_LFS_LINTFLAGS */
431 {errno = EINVAL; return -1;}
432 #endif /* ndef _CS_LFS_LINTFLAGS */
433 if (x == Mono_Posix_ConfstrName__CS_PATH)
435 {*r = _CS_PATH; return 0;}
436 #else /* def _CS_PATH */
437 {errno = EINVAL; return -1;}
438 #endif /* ndef _CS_PATH */
439 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS)
440 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
441 {*r = _CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
442 #else /* def _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
443 {errno = EINVAL; return -1;}
444 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
445 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
446 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
447 {*r = _CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
448 #else /* def _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
449 {errno = EINVAL; return -1;}
450 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
451 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS)
452 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
453 {*r = _CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
454 #else /* def _CS_POSIX_V6_ILP32_OFF32_LIBS */
455 {errno = EINVAL; return -1;}
456 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
457 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
458 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
459 {*r = _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
460 #else /* def _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
461 {errno = EINVAL; return -1;}
462 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
463 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
464 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
465 {*r = _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
466 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
467 {errno = EINVAL; return -1;}
468 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
469 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
470 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
471 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
472 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
473 {errno = EINVAL; return -1;}
474 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
475 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS)
476 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
477 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
478 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
479 {errno = EINVAL; return -1;}
480 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
481 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
482 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
483 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
484 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
485 {errno = EINVAL; return -1;}
486 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
487 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS)
488 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
489 {*r = _CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
490 #else /* def _CS_POSIX_V6_LP64_OFF64_CFLAGS */
491 {errno = EINVAL; return -1;}
492 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
493 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS)
494 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
495 {*r = _CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
496 #else /* def _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
497 {errno = EINVAL; return -1;}
498 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
499 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS)
500 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
501 {*r = _CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
502 #else /* def _CS_POSIX_V6_LP64_OFF64_LIBS */
503 {errno = EINVAL; return -1;}
504 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
505 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
506 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
507 {*r = _CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
508 #else /* def _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
509 {errno = EINVAL; return -1;}
510 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
511 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
512 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
513 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
514 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
515 {errno = EINVAL; return -1;}
516 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
517 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
518 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
519 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
520 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
521 {errno = EINVAL; return -1;}
522 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
523 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
524 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
525 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
526 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
527 {errno = EINVAL; return -1;}
528 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
529 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
530 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
531 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
532 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
533 {errno = EINVAL; return -1;}
534 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
535 if (x == Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS)
536 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
537 {*r = _CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
538 #else /* def _CS_V6_WIDTH_RESTRICTED_ENVS */
539 {errno = EINVAL; return -1;}
540 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
541 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS)
542 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
543 {*r = _CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
544 #else /* def _CS_XBS5_ILP32_OFF32_CFLAGS */
545 {errno = EINVAL; return -1;}
546 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
547 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS)
548 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
549 {*r = _CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
550 #else /* def _CS_XBS5_ILP32_OFF32_LDFLAGS */
551 {errno = EINVAL; return -1;}
552 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
553 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS)
554 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
555 {*r = _CS_XBS5_ILP32_OFF32_LIBS; return 0;}
556 #else /* def _CS_XBS5_ILP32_OFF32_LIBS */
557 {errno = EINVAL; return -1;}
558 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
559 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS)
560 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
561 {*r = _CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
562 #else /* def _CS_XBS5_ILP32_OFF32_LINTFLAGS */
563 {errno = EINVAL; return -1;}
564 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
565 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS)
566 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
567 {*r = _CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
568 #else /* def _CS_XBS5_ILP32_OFFBIG_CFLAGS */
569 {errno = EINVAL; return -1;}
570 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
571 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS)
572 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
573 {*r = _CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
574 #else /* def _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
575 {errno = EINVAL; return -1;}
576 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
577 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS)
578 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
579 {*r = _CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
580 #else /* def _CS_XBS5_ILP32_OFFBIG_LIBS */
581 {errno = EINVAL; return -1;}
582 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
583 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
584 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
585 {*r = _CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
586 #else /* def _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
587 {errno = EINVAL; return -1;}
588 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
589 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS)
590 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
591 {*r = _CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
592 #else /* def _CS_XBS5_LP64_OFF64_CFLAGS */
593 {errno = EINVAL; return -1;}
594 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
595 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS)
596 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
597 {*r = _CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
598 #else /* def _CS_XBS5_LP64_OFF64_LDFLAGS */
599 {errno = EINVAL; return -1;}
600 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
601 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS)
602 #ifdef _CS_XBS5_LP64_OFF64_LIBS
603 {*r = _CS_XBS5_LP64_OFF64_LIBS; return 0;}
604 #else /* def _CS_XBS5_LP64_OFF64_LIBS */
605 {errno = EINVAL; return -1;}
606 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
607 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS)
608 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
609 {*r = _CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
610 #else /* def _CS_XBS5_LP64_OFF64_LINTFLAGS */
611 {errno = EINVAL; return -1;}
612 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
613 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS)
614 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
615 {*r = _CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
616 #else /* def _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
617 {errno = EINVAL; return -1;}
618 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
619 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
620 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
621 {*r = _CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
622 #else /* def _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
623 {errno = EINVAL; return -1;}
624 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
625 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS)
626 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
627 {*r = _CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
628 #else /* def _CS_XBS5_LPBIG_OFFBIG_LIBS */
629 {errno = EINVAL; return -1;}
630 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
631 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
632 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
633 {*r = _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
634 #else /* def _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
635 {errno = EINVAL; return -1;}
636 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
639 errno = EINVAL; return -1;
642 int Mono_Posix_ToConfstrName (int x, int *r)
647 #ifdef _CS_GNU_LIBC_VERSION
648 if (x == _CS_GNU_LIBC_VERSION)
649 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION; return 0;}
650 #endif /* ndef _CS_GNU_LIBC_VERSION */
651 #ifdef _CS_GNU_LIBPTHREAD_VERSION
652 if (x == _CS_GNU_LIBPTHREAD_VERSION)
653 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION; return 0;}
654 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
655 #ifdef _CS_LFS64_CFLAGS
656 if (x == _CS_LFS64_CFLAGS)
657 {*r = Mono_Posix_ConfstrName__CS_LFS64_CFLAGS; return 0;}
658 #endif /* ndef _CS_LFS64_CFLAGS */
659 #ifdef _CS_LFS64_LDFLAGS
660 if (x == _CS_LFS64_LDFLAGS)
661 {*r = Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS; return 0;}
662 #endif /* ndef _CS_LFS64_LDFLAGS */
663 #ifdef _CS_LFS64_LIBS
664 if (x == _CS_LFS64_LIBS)
665 {*r = Mono_Posix_ConfstrName__CS_LFS64_LIBS; return 0;}
666 #endif /* ndef _CS_LFS64_LIBS */
667 #ifdef _CS_LFS64_LINTFLAGS
668 if (x == _CS_LFS64_LINTFLAGS)
669 {*r = Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS; return 0;}
670 #endif /* ndef _CS_LFS64_LINTFLAGS */
671 #ifdef _CS_LFS_CFLAGS
672 if (x == _CS_LFS_CFLAGS)
673 {*r = Mono_Posix_ConfstrName__CS_LFS_CFLAGS; return 0;}
674 #endif /* ndef _CS_LFS_CFLAGS */
675 #ifdef _CS_LFS_LDFLAGS
676 if (x == _CS_LFS_LDFLAGS)
677 {*r = Mono_Posix_ConfstrName__CS_LFS_LDFLAGS; return 0;}
678 #endif /* ndef _CS_LFS_LDFLAGS */
680 if (x == _CS_LFS_LIBS)
681 {*r = Mono_Posix_ConfstrName__CS_LFS_LIBS; return 0;}
682 #endif /* ndef _CS_LFS_LIBS */
683 #ifdef _CS_LFS_LINTFLAGS
684 if (x == _CS_LFS_LINTFLAGS)
685 {*r = Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS; return 0;}
686 #endif /* ndef _CS_LFS_LINTFLAGS */
689 {*r = Mono_Posix_ConfstrName__CS_PATH; return 0;}
690 #endif /* ndef _CS_PATH */
691 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
692 if (x == _CS_POSIX_V6_ILP32_OFF32_CFLAGS)
693 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
694 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
695 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
696 if (x == _CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
697 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
698 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
699 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
700 if (x == _CS_POSIX_V6_ILP32_OFF32_LIBS)
701 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
702 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
703 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
704 if (x == _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
705 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
706 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
707 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
708 if (x == _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
709 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
710 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
711 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
712 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
713 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
714 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
715 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
716 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LIBS)
717 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
718 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
719 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
720 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
721 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
722 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
723 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
724 if (x == _CS_POSIX_V6_LP64_OFF64_CFLAGS)
725 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
726 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
727 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
728 if (x == _CS_POSIX_V6_LP64_OFF64_LDFLAGS)
729 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
730 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
731 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
732 if (x == _CS_POSIX_V6_LP64_OFF64_LIBS)
733 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
734 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
735 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
736 if (x == _CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
737 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
738 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
739 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
740 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
741 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
742 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
743 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
744 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
745 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
746 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
747 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
748 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
749 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
750 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
751 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
752 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
753 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
754 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
755 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
756 if (x == _CS_V6_WIDTH_RESTRICTED_ENVS)
757 {*r = Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
758 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
759 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
760 if (x == _CS_XBS5_ILP32_OFF32_CFLAGS)
761 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
762 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
763 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
764 if (x == _CS_XBS5_ILP32_OFF32_LDFLAGS)
765 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
766 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
767 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
768 if (x == _CS_XBS5_ILP32_OFF32_LIBS)
769 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS; return 0;}
770 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
771 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
772 if (x == _CS_XBS5_ILP32_OFF32_LINTFLAGS)
773 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
774 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
775 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
776 if (x == _CS_XBS5_ILP32_OFFBIG_CFLAGS)
777 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
778 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
779 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
780 if (x == _CS_XBS5_ILP32_OFFBIG_LDFLAGS)
781 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
782 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
783 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
784 if (x == _CS_XBS5_ILP32_OFFBIG_LIBS)
785 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
786 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
787 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
788 if (x == _CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
789 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
790 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
791 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
792 if (x == _CS_XBS5_LP64_OFF64_CFLAGS)
793 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
794 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
795 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
796 if (x == _CS_XBS5_LP64_OFF64_LDFLAGS)
797 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
798 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
799 #ifdef _CS_XBS5_LP64_OFF64_LIBS
800 if (x == _CS_XBS5_LP64_OFF64_LIBS)
801 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS; return 0;}
802 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
803 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
804 if (x == _CS_XBS5_LP64_OFF64_LINTFLAGS)
805 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
806 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
807 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
808 if (x == _CS_XBS5_LPBIG_OFFBIG_CFLAGS)
809 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
810 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
811 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
812 if (x == _CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
813 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
814 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
815 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
816 if (x == _CS_XBS5_LPBIG_OFFBIG_LIBS)
817 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
818 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
819 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
820 if (x == _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
821 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
822 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
823 errno = EINVAL; return -1;
826 int Mono_Posix_FromDirectoryNotifyFlags (int x, int *r)
829 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ACCESS) == Mono_Posix_DirectoryNotifyFlags_DN_ACCESS)
832 #else /* def DN_ACCESS */
833 {errno = EINVAL; return -1;}
834 #endif /* ndef DN_ACCESS */
835 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB) == Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB)
838 #else /* def DN_ATTRIB */
839 {errno = EINVAL; return -1;}
840 #endif /* ndef DN_ATTRIB */
841 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_CREATE) == Mono_Posix_DirectoryNotifyFlags_DN_CREATE)
844 #else /* def DN_CREATE */
845 {errno = EINVAL; return -1;}
846 #endif /* ndef DN_CREATE */
847 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_DELETE) == Mono_Posix_DirectoryNotifyFlags_DN_DELETE)
850 #else /* def DN_DELETE */
851 {errno = EINVAL; return -1;}
852 #endif /* ndef DN_DELETE */
853 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MODIFY) == Mono_Posix_DirectoryNotifyFlags_DN_MODIFY)
856 #else /* def DN_MODIFY */
857 {errno = EINVAL; return -1;}
858 #endif /* ndef DN_MODIFY */
859 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT) == Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT)
862 #else /* def DN_MULTISHOT */
863 {errno = EINVAL; return -1;}
864 #endif /* ndef DN_MULTISHOT */
865 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_RENAME) == Mono_Posix_DirectoryNotifyFlags_DN_RENAME)
868 #else /* def DN_RENAME */
869 {errno = EINVAL; return -1;}
870 #endif /* ndef DN_RENAME */
876 int Mono_Posix_ToDirectoryNotifyFlags (int x, int *r)
882 if ((x & DN_ACCESS) == DN_ACCESS)
883 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ACCESS;
884 #endif /* ndef DN_ACCESS */
886 if ((x & DN_ATTRIB) == DN_ATTRIB)
887 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB;
888 #endif /* ndef DN_ATTRIB */
890 if ((x & DN_CREATE) == DN_CREATE)
891 *r |= Mono_Posix_DirectoryNotifyFlags_DN_CREATE;
892 #endif /* ndef DN_CREATE */
894 if ((x & DN_DELETE) == DN_DELETE)
895 *r |= Mono_Posix_DirectoryNotifyFlags_DN_DELETE;
896 #endif /* ndef DN_DELETE */
898 if ((x & DN_MODIFY) == DN_MODIFY)
899 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MODIFY;
900 #endif /* ndef DN_MODIFY */
902 if ((x & DN_MULTISHOT) == DN_MULTISHOT)
903 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT;
904 #endif /* ndef DN_MULTISHOT */
906 if ((x & DN_RENAME) == DN_RENAME)
907 *r |= Mono_Posix_DirectoryNotifyFlags_DN_RENAME;
908 #endif /* ndef DN_RENAME */
912 int Mono_Posix_FromEpollEvents (unsigned int x, unsigned int *r)
915 if ((x & Mono_Posix_EpollEvents_EPOLLERR) == Mono_Posix_EpollEvents_EPOLLERR)
918 #else /* def EPOLLERR */
919 {errno = EINVAL; return -1;}
920 #endif /* ndef EPOLLERR */
921 if ((x & Mono_Posix_EpollEvents_EPOLLET) == Mono_Posix_EpollEvents_EPOLLET)
924 #else /* def EPOLLET */
925 {errno = EINVAL; return -1;}
926 #endif /* ndef EPOLLET */
927 if ((x & Mono_Posix_EpollEvents_EPOLLHUP) == Mono_Posix_EpollEvents_EPOLLHUP)
930 #else /* def EPOLLHUP */
931 {errno = EINVAL; return -1;}
932 #endif /* ndef EPOLLHUP */
933 if ((x & Mono_Posix_EpollEvents_EPOLLIN) == Mono_Posix_EpollEvents_EPOLLIN)
936 #else /* def EPOLLIN */
937 {errno = EINVAL; return -1;}
938 #endif /* ndef EPOLLIN */
939 if ((x & Mono_Posix_EpollEvents_EPOLLMSG) == Mono_Posix_EpollEvents_EPOLLMSG)
942 #else /* def EPOLLMSG */
943 {errno = EINVAL; return -1;}
944 #endif /* ndef EPOLLMSG */
945 if ((x & Mono_Posix_EpollEvents_EPOLLONESHOT) == Mono_Posix_EpollEvents_EPOLLONESHOT)
948 #else /* def EPOLLONESHOT */
949 {errno = EINVAL; return -1;}
950 #endif /* ndef EPOLLONESHOT */
951 if ((x & Mono_Posix_EpollEvents_EPOLLOUT) == Mono_Posix_EpollEvents_EPOLLOUT)
954 #else /* def EPOLLOUT */
955 {errno = EINVAL; return -1;}
956 #endif /* ndef EPOLLOUT */
957 if ((x & Mono_Posix_EpollEvents_EPOLLPRI) == Mono_Posix_EpollEvents_EPOLLPRI)
960 #else /* def EPOLLPRI */
961 {errno = EINVAL; return -1;}
962 #endif /* ndef EPOLLPRI */
963 if ((x & Mono_Posix_EpollEvents_EPOLLRDBAND) == Mono_Posix_EpollEvents_EPOLLRDBAND)
966 #else /* def EPOLLRDBAND */
967 {errno = EINVAL; return -1;}
968 #endif /* ndef EPOLLRDBAND */
969 if ((x & Mono_Posix_EpollEvents_EPOLLRDHUP) == Mono_Posix_EpollEvents_EPOLLRDHUP)
972 #else /* def EPOLLRDHUP */
973 {errno = EINVAL; return -1;}
974 #endif /* ndef EPOLLRDHUP */
975 if ((x & Mono_Posix_EpollEvents_EPOLLRDNORM) == Mono_Posix_EpollEvents_EPOLLRDNORM)
978 #else /* def EPOLLRDNORM */
979 {errno = EINVAL; return -1;}
980 #endif /* ndef EPOLLRDNORM */
981 if ((x & Mono_Posix_EpollEvents_EPOLLWRBAND) == Mono_Posix_EpollEvents_EPOLLWRBAND)
984 #else /* def EPOLLWRBAND */
985 {errno = EINVAL; return -1;}
986 #endif /* ndef EPOLLWRBAND */
987 if ((x & Mono_Posix_EpollEvents_EPOLLWRNORM) == Mono_Posix_EpollEvents_EPOLLWRNORM)
990 #else /* def EPOLLWRNORM */
991 {errno = EINVAL; return -1;}
992 #endif /* ndef EPOLLWRNORM */
998 int Mono_Posix_ToEpollEvents (unsigned int x, unsigned int *r)
1004 if ((x & EPOLLERR) == EPOLLERR)
1005 *r |= Mono_Posix_EpollEvents_EPOLLERR;
1006 #endif /* ndef EPOLLERR */
1008 if ((x & EPOLLET) == EPOLLET)
1009 *r |= Mono_Posix_EpollEvents_EPOLLET;
1010 #endif /* ndef EPOLLET */
1012 if ((x & EPOLLHUP) == EPOLLHUP)
1013 *r |= Mono_Posix_EpollEvents_EPOLLHUP;
1014 #endif /* ndef EPOLLHUP */
1016 if ((x & EPOLLIN) == EPOLLIN)
1017 *r |= Mono_Posix_EpollEvents_EPOLLIN;
1018 #endif /* ndef EPOLLIN */
1020 if ((x & EPOLLMSG) == EPOLLMSG)
1021 *r |= Mono_Posix_EpollEvents_EPOLLMSG;
1022 #endif /* ndef EPOLLMSG */
1024 if ((x & EPOLLONESHOT) == EPOLLONESHOT)
1025 *r |= Mono_Posix_EpollEvents_EPOLLONESHOT;
1026 #endif /* ndef EPOLLONESHOT */
1028 if ((x & EPOLLOUT) == EPOLLOUT)
1029 *r |= Mono_Posix_EpollEvents_EPOLLOUT;
1030 #endif /* ndef EPOLLOUT */
1032 if ((x & EPOLLPRI) == EPOLLPRI)
1033 *r |= Mono_Posix_EpollEvents_EPOLLPRI;
1034 #endif /* ndef EPOLLPRI */
1036 if ((x & EPOLLRDBAND) == EPOLLRDBAND)
1037 *r |= Mono_Posix_EpollEvents_EPOLLRDBAND;
1038 #endif /* ndef EPOLLRDBAND */
1040 if ((x & EPOLLRDHUP) == EPOLLRDHUP)
1041 *r |= Mono_Posix_EpollEvents_EPOLLRDHUP;
1042 #endif /* ndef EPOLLRDHUP */
1044 if ((x & EPOLLRDNORM) == EPOLLRDNORM)
1045 *r |= Mono_Posix_EpollEvents_EPOLLRDNORM;
1046 #endif /* ndef EPOLLRDNORM */
1048 if ((x & EPOLLWRBAND) == EPOLLWRBAND)
1049 *r |= Mono_Posix_EpollEvents_EPOLLWRBAND;
1050 #endif /* ndef EPOLLWRBAND */
1052 if ((x & EPOLLWRNORM) == EPOLLWRNORM)
1053 *r |= Mono_Posix_EpollEvents_EPOLLWRNORM;
1054 #endif /* ndef EPOLLWRNORM */
1058 int Mono_Posix_FromEpollFlags (int x, int *r)
1061 if ((x & Mono_Posix_EpollFlags_EPOLL_CLOEXEC) == Mono_Posix_EpollFlags_EPOLL_CLOEXEC)
1062 #ifdef EPOLL_CLOEXEC
1063 *r |= EPOLL_CLOEXEC;
1064 #else /* def EPOLL_CLOEXEC */
1065 {errno = EINVAL; return -1;}
1066 #endif /* ndef EPOLL_CLOEXEC */
1067 if ((x & Mono_Posix_EpollFlags_EPOLL_NONBLOCK) == Mono_Posix_EpollFlags_EPOLL_NONBLOCK)
1068 #ifdef EPOLL_NONBLOCK
1069 *r |= EPOLL_NONBLOCK;
1070 #else /* def EPOLL_NONBLOCK */
1071 {errno = EINVAL; return -1;}
1072 #endif /* ndef EPOLL_NONBLOCK */
1078 int Mono_Posix_ToEpollFlags (int x, int *r)
1083 #ifdef EPOLL_CLOEXEC
1084 if ((x & EPOLL_CLOEXEC) == EPOLL_CLOEXEC)
1085 *r |= Mono_Posix_EpollFlags_EPOLL_CLOEXEC;
1086 #endif /* ndef EPOLL_CLOEXEC */
1087 #ifdef EPOLL_NONBLOCK
1088 if ((x & EPOLL_NONBLOCK) == EPOLL_NONBLOCK)
1089 *r |= Mono_Posix_EpollFlags_EPOLL_NONBLOCK;
1090 #endif /* ndef EPOLL_NONBLOCK */
1094 int Mono_Posix_FromErrno (int x, int *r)
1097 if (x == Mono_Posix_Errno_E2BIG)
1099 {*r = E2BIG; return 0;}
1100 #else /* def E2BIG */
1101 {errno = EINVAL; return -1;}
1102 #endif /* ndef E2BIG */
1103 if (x == Mono_Posix_Errno_EACCES)
1105 {*r = EACCES; return 0;}
1106 #else /* def EACCES */
1107 {errno = EINVAL; return -1;}
1108 #endif /* ndef EACCES */
1109 if (x == Mono_Posix_Errno_EADDRINUSE)
1111 {*r = EADDRINUSE; return 0;}
1112 #else /* def EADDRINUSE */
1113 {errno = EINVAL; return -1;}
1114 #endif /* ndef EADDRINUSE */
1115 if (x == Mono_Posix_Errno_EADDRNOTAVAIL)
1116 #ifdef EADDRNOTAVAIL
1117 {*r = EADDRNOTAVAIL; return 0;}
1118 #else /* def EADDRNOTAVAIL */
1119 {errno = EINVAL; return -1;}
1120 #endif /* ndef EADDRNOTAVAIL */
1121 if (x == Mono_Posix_Errno_EADV)
1123 {*r = EADV; return 0;}
1124 #else /* def EADV */
1125 {errno = EINVAL; return -1;}
1126 #endif /* ndef EADV */
1127 if (x == Mono_Posix_Errno_EAFNOSUPPORT)
1129 {*r = EAFNOSUPPORT; return 0;}
1130 #else /* def EAFNOSUPPORT */
1131 {errno = EINVAL; return -1;}
1132 #endif /* ndef EAFNOSUPPORT */
1133 if (x == Mono_Posix_Errno_EAGAIN)
1135 {*r = EAGAIN; return 0;}
1136 #else /* def EAGAIN */
1137 {errno = EINVAL; return -1;}
1138 #endif /* ndef EAGAIN */
1139 if (x == Mono_Posix_Errno_EALREADY)
1141 {*r = EALREADY; return 0;}
1142 #else /* def EALREADY */
1143 {errno = EINVAL; return -1;}
1144 #endif /* ndef EALREADY */
1145 if (x == Mono_Posix_Errno_EAUTH)
1147 {*r = EAUTH; return 0;}
1148 #else /* def EAUTH */
1149 {errno = EINVAL; return -1;}
1150 #endif /* ndef EAUTH */
1151 if (x == Mono_Posix_Errno_EBADARCH)
1153 {*r = EBADARCH; return 0;}
1154 #else /* def EBADARCH */
1155 {errno = EINVAL; return -1;}
1156 #endif /* ndef EBADARCH */
1157 if (x == Mono_Posix_Errno_EBADE)
1159 {*r = EBADE; return 0;}
1160 #else /* def EBADE */
1161 {errno = EINVAL; return -1;}
1162 #endif /* ndef EBADE */
1163 if (x == Mono_Posix_Errno_EBADEXEC)
1165 {*r = EBADEXEC; return 0;}
1166 #else /* def EBADEXEC */
1167 {errno = EINVAL; return -1;}
1168 #endif /* ndef EBADEXEC */
1169 if (x == Mono_Posix_Errno_EBADF)
1171 {*r = EBADF; return 0;}
1172 #else /* def EBADF */
1173 {errno = EINVAL; return -1;}
1174 #endif /* ndef EBADF */
1175 if (x == Mono_Posix_Errno_EBADFD)
1177 {*r = EBADFD; return 0;}
1178 #else /* def EBADFD */
1179 {errno = EINVAL; return -1;}
1180 #endif /* ndef EBADFD */
1181 if (x == Mono_Posix_Errno_EBADMACHO)
1183 {*r = EBADMACHO; return 0;}
1184 #else /* def EBADMACHO */
1185 {errno = EINVAL; return -1;}
1186 #endif /* ndef EBADMACHO */
1187 if (x == Mono_Posix_Errno_EBADMSG)
1189 {*r = EBADMSG; return 0;}
1190 #else /* def EBADMSG */
1191 {errno = EINVAL; return -1;}
1192 #endif /* ndef EBADMSG */
1193 if (x == Mono_Posix_Errno_EBADR)
1195 {*r = EBADR; return 0;}
1196 #else /* def EBADR */
1197 {errno = EINVAL; return -1;}
1198 #endif /* ndef EBADR */
1199 if (x == Mono_Posix_Errno_EBADRPC)
1201 {*r = EBADRPC; return 0;}
1202 #else /* def EBADRPC */
1203 {errno = EINVAL; return -1;}
1204 #endif /* ndef EBADRPC */
1205 if (x == Mono_Posix_Errno_EBADRQC)
1207 {*r = EBADRQC; return 0;}
1208 #else /* def EBADRQC */
1209 {errno = EINVAL; return -1;}
1210 #endif /* ndef EBADRQC */
1211 if (x == Mono_Posix_Errno_EBADSLT)
1213 {*r = EBADSLT; return 0;}
1214 #else /* def EBADSLT */
1215 {errno = EINVAL; return -1;}
1216 #endif /* ndef EBADSLT */
1217 if (x == Mono_Posix_Errno_EBFONT)
1219 {*r = EBFONT; return 0;}
1220 #else /* def EBFONT */
1221 {errno = EINVAL; return -1;}
1222 #endif /* ndef EBFONT */
1223 if (x == Mono_Posix_Errno_EBUSY)
1225 {*r = EBUSY; return 0;}
1226 #else /* def EBUSY */
1227 {errno = EINVAL; return -1;}
1228 #endif /* ndef EBUSY */
1229 if (x == Mono_Posix_Errno_ECANCELED)
1231 {*r = ECANCELED; return 0;}
1232 #else /* def ECANCELED */
1233 {errno = EINVAL; return -1;}
1234 #endif /* ndef ECANCELED */
1235 if (x == Mono_Posix_Errno_ECHILD)
1237 {*r = ECHILD; return 0;}
1238 #else /* def ECHILD */
1239 {errno = EINVAL; return -1;}
1240 #endif /* ndef ECHILD */
1241 if (x == Mono_Posix_Errno_ECHRNG)
1243 {*r = ECHRNG; return 0;}
1244 #else /* def ECHRNG */
1245 {errno = EINVAL; return -1;}
1246 #endif /* ndef ECHRNG */
1247 if (x == Mono_Posix_Errno_ECOMM)
1249 {*r = ECOMM; return 0;}
1250 #else /* def ECOMM */
1251 {errno = EINVAL; return -1;}
1252 #endif /* ndef ECOMM */
1253 if (x == Mono_Posix_Errno_ECONNABORTED)
1255 {*r = ECONNABORTED; return 0;}
1256 #else /* def ECONNABORTED */
1257 {errno = EINVAL; return -1;}
1258 #endif /* ndef ECONNABORTED */
1259 if (x == Mono_Posix_Errno_ECONNREFUSED)
1261 {*r = ECONNREFUSED; return 0;}
1262 #else /* def ECONNREFUSED */
1263 {errno = EINVAL; return -1;}
1264 #endif /* ndef ECONNREFUSED */
1265 if (x == Mono_Posix_Errno_ECONNRESET)
1267 {*r = ECONNRESET; return 0;}
1268 #else /* def ECONNRESET */
1269 {errno = EINVAL; return -1;}
1270 #endif /* ndef ECONNRESET */
1271 if (x == Mono_Posix_Errno_EDEADLK)
1273 {*r = EDEADLK; return 0;}
1274 #else /* def EDEADLK */
1275 {errno = EINVAL; return -1;}
1276 #endif /* ndef EDEADLK */
1277 if (x == Mono_Posix_Errno_EDEADLOCK)
1279 {*r = EDEADLOCK; return 0;}
1280 #else /* def EDEADLOCK */
1281 {errno = EINVAL; return -1;}
1282 #endif /* ndef EDEADLOCK */
1283 if (x == Mono_Posix_Errno_EDESTADDRREQ)
1285 {*r = EDESTADDRREQ; return 0;}
1286 #else /* def EDESTADDRREQ */
1287 {errno = EINVAL; return -1;}
1288 #endif /* ndef EDESTADDRREQ */
1289 if (x == Mono_Posix_Errno_EDEVERR)
1291 {*r = EDEVERR; return 0;}
1292 #else /* def EDEVERR */
1293 {errno = EINVAL; return -1;}
1294 #endif /* ndef EDEVERR */
1295 if (x == Mono_Posix_Errno_EDOM)
1297 {*r = EDOM; return 0;}
1298 #else /* def EDOM */
1299 {errno = EINVAL; return -1;}
1300 #endif /* ndef EDOM */
1301 if (x == Mono_Posix_Errno_EDOTDOT)
1303 {*r = EDOTDOT; return 0;}
1304 #else /* def EDOTDOT */
1305 {errno = EINVAL; return -1;}
1306 #endif /* ndef EDOTDOT */
1307 if (x == Mono_Posix_Errno_EDQUOT)
1309 {*r = EDQUOT; return 0;}
1310 #else /* def EDQUOT */
1311 {errno = EINVAL; return -1;}
1312 #endif /* ndef EDQUOT */
1313 if (x == Mono_Posix_Errno_EEXIST)
1315 {*r = EEXIST; return 0;}
1316 #else /* def EEXIST */
1317 {errno = EINVAL; return -1;}
1318 #endif /* ndef EEXIST */
1319 if (x == Mono_Posix_Errno_EFAULT)
1321 {*r = EFAULT; return 0;}
1322 #else /* def EFAULT */
1323 {errno = EINVAL; return -1;}
1324 #endif /* ndef EFAULT */
1325 if (x == Mono_Posix_Errno_EFBIG)
1327 {*r = EFBIG; return 0;}
1328 #else /* def EFBIG */
1329 {errno = EINVAL; return -1;}
1330 #endif /* ndef EFBIG */
1331 if (x == Mono_Posix_Errno_EFTYPE)
1333 {*r = EFTYPE; return 0;}
1334 #else /* def EFTYPE */
1335 {errno = EINVAL; return -1;}
1336 #endif /* ndef EFTYPE */
1337 if (x == Mono_Posix_Errno_EHOSTDOWN)
1339 {*r = EHOSTDOWN; return 0;}
1340 #else /* def EHOSTDOWN */
1341 {errno = EINVAL; return -1;}
1342 #endif /* ndef EHOSTDOWN */
1343 if (x == Mono_Posix_Errno_EHOSTUNREACH)
1345 {*r = EHOSTUNREACH; return 0;}
1346 #else /* def EHOSTUNREACH */
1347 {errno = EINVAL; return -1;}
1348 #endif /* ndef EHOSTUNREACH */
1349 if (x == Mono_Posix_Errno_EIDRM)
1351 {*r = EIDRM; return 0;}
1352 #else /* def EIDRM */
1353 {errno = EINVAL; return -1;}
1354 #endif /* ndef EIDRM */
1355 if (x == Mono_Posix_Errno_EILSEQ)
1357 {*r = EILSEQ; return 0;}
1358 #else /* def EILSEQ */
1359 {errno = EINVAL; return -1;}
1360 #endif /* ndef EILSEQ */
1361 if (x == Mono_Posix_Errno_EINPROGRESS)
1363 {*r = EINPROGRESS; return 0;}
1364 #else /* def EINPROGRESS */
1365 {errno = EINVAL; return -1;}
1366 #endif /* ndef EINPROGRESS */
1367 if (x == Mono_Posix_Errno_EINTR)
1369 {*r = EINTR; return 0;}
1370 #else /* def EINTR */
1371 {errno = EINVAL; return -1;}
1372 #endif /* ndef EINTR */
1373 if (x == Mono_Posix_Errno_EINVAL)
1375 {*r = EINVAL; return 0;}
1376 #else /* def EINVAL */
1377 {errno = EINVAL; return -1;}
1378 #endif /* ndef EINVAL */
1379 if (x == Mono_Posix_Errno_EIO)
1381 {*r = EIO; return 0;}
1383 {errno = EINVAL; return -1;}
1384 #endif /* ndef EIO */
1385 if (x == Mono_Posix_Errno_EISCONN)
1387 {*r = EISCONN; return 0;}
1388 #else /* def EISCONN */
1389 {errno = EINVAL; return -1;}
1390 #endif /* ndef EISCONN */
1391 if (x == Mono_Posix_Errno_EISDIR)
1393 {*r = EISDIR; return 0;}
1394 #else /* def EISDIR */
1395 {errno = EINVAL; return -1;}
1396 #endif /* ndef EISDIR */
1397 if (x == Mono_Posix_Errno_EISNAM)
1399 {*r = EISNAM; return 0;}
1400 #else /* def EISNAM */
1401 {errno = EINVAL; return -1;}
1402 #endif /* ndef EISNAM */
1403 if (x == Mono_Posix_Errno_EKEYEXPIRED)
1405 {*r = EKEYEXPIRED; return 0;}
1406 #else /* def EKEYEXPIRED */
1407 {errno = EINVAL; return -1;}
1408 #endif /* ndef EKEYEXPIRED */
1409 if (x == Mono_Posix_Errno_EKEYREJECTED)
1411 {*r = EKEYREJECTED; return 0;}
1412 #else /* def EKEYREJECTED */
1413 {errno = EINVAL; return -1;}
1414 #endif /* ndef EKEYREJECTED */
1415 if (x == Mono_Posix_Errno_EKEYREVOKED)
1417 {*r = EKEYREVOKED; return 0;}
1418 #else /* def EKEYREVOKED */
1419 {errno = EINVAL; return -1;}
1420 #endif /* ndef EKEYREVOKED */
1421 if (x == Mono_Posix_Errno_EL2HLT)
1423 {*r = EL2HLT; return 0;}
1424 #else /* def EL2HLT */
1425 {errno = EINVAL; return -1;}
1426 #endif /* ndef EL2HLT */
1427 if (x == Mono_Posix_Errno_EL2NSYNC)
1429 {*r = EL2NSYNC; return 0;}
1430 #else /* def EL2NSYNC */
1431 {errno = EINVAL; return -1;}
1432 #endif /* ndef EL2NSYNC */
1433 if (x == Mono_Posix_Errno_EL3HLT)
1435 {*r = EL3HLT; return 0;}
1436 #else /* def EL3HLT */
1437 {errno = EINVAL; return -1;}
1438 #endif /* ndef EL3HLT */
1439 if (x == Mono_Posix_Errno_EL3RST)
1441 {*r = EL3RST; return 0;}
1442 #else /* def EL3RST */
1443 {errno = EINVAL; return -1;}
1444 #endif /* ndef EL3RST */
1445 if (x == Mono_Posix_Errno_ELIBACC)
1447 {*r = ELIBACC; return 0;}
1448 #else /* def ELIBACC */
1449 {errno = EINVAL; return -1;}
1450 #endif /* ndef ELIBACC */
1451 if (x == Mono_Posix_Errno_ELIBBAD)
1453 {*r = ELIBBAD; return 0;}
1454 #else /* def ELIBBAD */
1455 {errno = EINVAL; return -1;}
1456 #endif /* ndef ELIBBAD */
1457 if (x == Mono_Posix_Errno_ELIBEXEC)
1459 {*r = ELIBEXEC; return 0;}
1460 #else /* def ELIBEXEC */
1461 {errno = EINVAL; return -1;}
1462 #endif /* ndef ELIBEXEC */
1463 if (x == Mono_Posix_Errno_ELIBMAX)
1465 {*r = ELIBMAX; return 0;}
1466 #else /* def ELIBMAX */
1467 {errno = EINVAL; return -1;}
1468 #endif /* ndef ELIBMAX */
1469 if (x == Mono_Posix_Errno_ELIBSCN)
1471 {*r = ELIBSCN; return 0;}
1472 #else /* def ELIBSCN */
1473 {errno = EINVAL; return -1;}
1474 #endif /* ndef ELIBSCN */
1475 if (x == Mono_Posix_Errno_ELNRNG)
1477 {*r = ELNRNG; return 0;}
1478 #else /* def ELNRNG */
1479 {errno = EINVAL; return -1;}
1480 #endif /* ndef ELNRNG */
1481 if (x == Mono_Posix_Errno_ELOOP)
1483 {*r = ELOOP; return 0;}
1484 #else /* def ELOOP */
1485 {errno = EINVAL; return -1;}
1486 #endif /* ndef ELOOP */
1487 if (x == Mono_Posix_Errno_EMEDIUMTYPE)
1489 {*r = EMEDIUMTYPE; return 0;}
1490 #else /* def EMEDIUMTYPE */
1491 {errno = EINVAL; return -1;}
1492 #endif /* ndef EMEDIUMTYPE */
1493 if (x == Mono_Posix_Errno_EMFILE)
1495 {*r = EMFILE; return 0;}
1496 #else /* def EMFILE */
1497 {errno = EINVAL; return -1;}
1498 #endif /* ndef EMFILE */
1499 if (x == Mono_Posix_Errno_EMLINK)
1501 {*r = EMLINK; return 0;}
1502 #else /* def EMLINK */
1503 {errno = EINVAL; return -1;}
1504 #endif /* ndef EMLINK */
1505 if (x == Mono_Posix_Errno_EMSGSIZE)
1507 {*r = EMSGSIZE; return 0;}
1508 #else /* def EMSGSIZE */
1509 {errno = EINVAL; return -1;}
1510 #endif /* ndef EMSGSIZE */
1511 if (x == Mono_Posix_Errno_EMULTIHOP)
1513 {*r = EMULTIHOP; return 0;}
1514 #else /* def EMULTIHOP */
1515 {errno = EINVAL; return -1;}
1516 #endif /* ndef EMULTIHOP */
1517 if (x == Mono_Posix_Errno_ENAMETOOLONG)
1519 {*r = ENAMETOOLONG; return 0;}
1520 #else /* def ENAMETOOLONG */
1521 {errno = EINVAL; return -1;}
1522 #endif /* ndef ENAMETOOLONG */
1523 if (x == Mono_Posix_Errno_ENAVAIL)
1525 {*r = ENAVAIL; return 0;}
1526 #else /* def ENAVAIL */
1527 {errno = EINVAL; return -1;}
1528 #endif /* ndef ENAVAIL */
1529 if (x == Mono_Posix_Errno_ENEEDAUTH)
1531 {*r = ENEEDAUTH; return 0;}
1532 #else /* def ENEEDAUTH */
1533 {errno = EINVAL; return -1;}
1534 #endif /* ndef ENEEDAUTH */
1535 if (x == Mono_Posix_Errno_ENETDOWN)
1537 {*r = ENETDOWN; return 0;}
1538 #else /* def ENETDOWN */
1539 {errno = EINVAL; return -1;}
1540 #endif /* ndef ENETDOWN */
1541 if (x == Mono_Posix_Errno_ENETRESET)
1543 {*r = ENETRESET; return 0;}
1544 #else /* def ENETRESET */
1545 {errno = EINVAL; return -1;}
1546 #endif /* ndef ENETRESET */
1547 if (x == Mono_Posix_Errno_ENETUNREACH)
1549 {*r = ENETUNREACH; return 0;}
1550 #else /* def ENETUNREACH */
1551 {errno = EINVAL; return -1;}
1552 #endif /* ndef ENETUNREACH */
1553 if (x == Mono_Posix_Errno_ENFILE)
1555 {*r = ENFILE; return 0;}
1556 #else /* def ENFILE */
1557 {errno = EINVAL; return -1;}
1558 #endif /* ndef ENFILE */
1559 if (x == Mono_Posix_Errno_ENOANO)
1561 {*r = ENOANO; return 0;}
1562 #else /* def ENOANO */
1563 {errno = EINVAL; return -1;}
1564 #endif /* ndef ENOANO */
1565 if (x == Mono_Posix_Errno_ENOATTR)
1567 {*r = ENOATTR; return 0;}
1568 #else /* def ENOATTR */
1569 {errno = EINVAL; return -1;}
1570 #endif /* ndef ENOATTR */
1571 if (x == Mono_Posix_Errno_ENOBUFS)
1573 {*r = ENOBUFS; return 0;}
1574 #else /* def ENOBUFS */
1575 {errno = EINVAL; return -1;}
1576 #endif /* ndef ENOBUFS */
1577 if (x == Mono_Posix_Errno_ENOCSI)
1579 {*r = ENOCSI; return 0;}
1580 #else /* def ENOCSI */
1581 {errno = EINVAL; return -1;}
1582 #endif /* ndef ENOCSI */
1583 if (x == Mono_Posix_Errno_ENODATA)
1585 {*r = ENODATA; return 0;}
1586 #else /* def ENODATA */
1587 {errno = EINVAL; return -1;}
1588 #endif /* ndef ENODATA */
1589 if (x == Mono_Posix_Errno_ENODEV)
1591 {*r = ENODEV; return 0;}
1592 #else /* def ENODEV */
1593 {errno = EINVAL; return -1;}
1594 #endif /* ndef ENODEV */
1595 if (x == Mono_Posix_Errno_ENOENT)
1597 {*r = ENOENT; return 0;}
1598 #else /* def ENOENT */
1599 {errno = EINVAL; return -1;}
1600 #endif /* ndef ENOENT */
1601 if (x == Mono_Posix_Errno_ENOEXEC)
1603 {*r = ENOEXEC; return 0;}
1604 #else /* def ENOEXEC */
1605 {errno = EINVAL; return -1;}
1606 #endif /* ndef ENOEXEC */
1607 if (x == Mono_Posix_Errno_ENOKEY)
1609 {*r = ENOKEY; return 0;}
1610 #else /* def ENOKEY */
1611 {errno = EINVAL; return -1;}
1612 #endif /* ndef ENOKEY */
1613 if (x == Mono_Posix_Errno_ENOLCK)
1615 {*r = ENOLCK; return 0;}
1616 #else /* def ENOLCK */
1617 {errno = EINVAL; return -1;}
1618 #endif /* ndef ENOLCK */
1619 if (x == Mono_Posix_Errno_ENOLINK)
1621 {*r = ENOLINK; return 0;}
1622 #else /* def ENOLINK */
1623 {errno = EINVAL; return -1;}
1624 #endif /* ndef ENOLINK */
1625 if (x == Mono_Posix_Errno_ENOMEDIUM)
1627 {*r = ENOMEDIUM; return 0;}
1628 #else /* def ENOMEDIUM */
1629 {errno = EINVAL; return -1;}
1630 #endif /* ndef ENOMEDIUM */
1631 if (x == Mono_Posix_Errno_ENOMEM)
1633 {*r = ENOMEM; return 0;}
1634 #else /* def ENOMEM */
1635 {errno = EINVAL; return -1;}
1636 #endif /* ndef ENOMEM */
1637 if (x == Mono_Posix_Errno_ENOMSG)
1639 {*r = ENOMSG; return 0;}
1640 #else /* def ENOMSG */
1641 {errno = EINVAL; return -1;}
1642 #endif /* ndef ENOMSG */
1643 if (x == Mono_Posix_Errno_ENONET)
1645 {*r = ENONET; return 0;}
1646 #else /* def ENONET */
1647 {errno = EINVAL; return -1;}
1648 #endif /* ndef ENONET */
1649 if (x == Mono_Posix_Errno_ENOPKG)
1651 {*r = ENOPKG; return 0;}
1652 #else /* def ENOPKG */
1653 {errno = EINVAL; return -1;}
1654 #endif /* ndef ENOPKG */
1655 if (x == Mono_Posix_Errno_ENOPOLICY)
1657 {*r = ENOPOLICY; return 0;}
1658 #else /* def ENOPOLICY */
1659 {errno = EINVAL; return -1;}
1660 #endif /* ndef ENOPOLICY */
1661 if (x == Mono_Posix_Errno_ENOPROTOOPT)
1663 {*r = ENOPROTOOPT; return 0;}
1664 #else /* def ENOPROTOOPT */
1665 {errno = EINVAL; return -1;}
1666 #endif /* ndef ENOPROTOOPT */
1667 if (x == Mono_Posix_Errno_ENOSPC)
1669 {*r = ENOSPC; return 0;}
1670 #else /* def ENOSPC */
1671 {errno = EINVAL; return -1;}
1672 #endif /* ndef ENOSPC */
1673 if (x == Mono_Posix_Errno_ENOSR)
1675 {*r = ENOSR; return 0;}
1676 #else /* def ENOSR */
1677 {errno = EINVAL; return -1;}
1678 #endif /* ndef ENOSR */
1679 if (x == Mono_Posix_Errno_ENOSTR)
1681 {*r = ENOSTR; return 0;}
1682 #else /* def ENOSTR */
1683 {errno = EINVAL; return -1;}
1684 #endif /* ndef ENOSTR */
1685 if (x == Mono_Posix_Errno_ENOSYS)
1687 {*r = ENOSYS; return 0;}
1688 #else /* def ENOSYS */
1689 {errno = EINVAL; return -1;}
1690 #endif /* ndef ENOSYS */
1691 if (x == Mono_Posix_Errno_ENOTBLK)
1693 {*r = ENOTBLK; return 0;}
1694 #else /* def ENOTBLK */
1695 {errno = EINVAL; return -1;}
1696 #endif /* ndef ENOTBLK */
1697 if (x == Mono_Posix_Errno_ENOTCONN)
1699 {*r = ENOTCONN; return 0;}
1700 #else /* def ENOTCONN */
1701 {errno = EINVAL; return -1;}
1702 #endif /* ndef ENOTCONN */
1703 if (x == Mono_Posix_Errno_ENOTDIR)
1705 {*r = ENOTDIR; return 0;}
1706 #else /* def ENOTDIR */
1707 {errno = EINVAL; return -1;}
1708 #endif /* ndef ENOTDIR */
1709 if (x == Mono_Posix_Errno_ENOTEMPTY)
1711 {*r = ENOTEMPTY; return 0;}
1712 #else /* def ENOTEMPTY */
1713 {errno = EINVAL; return -1;}
1714 #endif /* ndef ENOTEMPTY */
1715 if (x == Mono_Posix_Errno_ENOTNAM)
1717 {*r = ENOTNAM; return 0;}
1718 #else /* def ENOTNAM */
1719 {errno = EINVAL; return -1;}
1720 #endif /* ndef ENOTNAM */
1721 if (x == Mono_Posix_Errno_ENOTRECOVERABLE)
1722 #ifdef ENOTRECOVERABLE
1723 {*r = ENOTRECOVERABLE; return 0;}
1724 #else /* def ENOTRECOVERABLE */
1725 {errno = EINVAL; return -1;}
1726 #endif /* ndef ENOTRECOVERABLE */
1727 if (x == Mono_Posix_Errno_ENOTSOCK)
1729 {*r = ENOTSOCK; return 0;}
1730 #else /* def ENOTSOCK */
1731 {errno = EINVAL; return -1;}
1732 #endif /* ndef ENOTSOCK */
1733 if (x == Mono_Posix_Errno_ENOTTY)
1735 {*r = ENOTTY; return 0;}
1736 #else /* def ENOTTY */
1737 {errno = EINVAL; return -1;}
1738 #endif /* ndef ENOTTY */
1739 if (x == Mono_Posix_Errno_ENOTUNIQ)
1741 {*r = ENOTUNIQ; return 0;}
1742 #else /* def ENOTUNIQ */
1743 {errno = EINVAL; return -1;}
1744 #endif /* ndef ENOTUNIQ */
1745 if (x == Mono_Posix_Errno_ENXIO)
1747 {*r = ENXIO; return 0;}
1748 #else /* def ENXIO */
1749 {errno = EINVAL; return -1;}
1750 #endif /* ndef ENXIO */
1751 if (x == Mono_Posix_Errno_EOPNOTSUPP)
1753 {*r = EOPNOTSUPP; return 0;}
1754 #else /* def EOPNOTSUPP */
1755 {errno = EINVAL; return -1;}
1756 #endif /* ndef EOPNOTSUPP */
1757 if (x == Mono_Posix_Errno_EOVERFLOW)
1759 {*r = EOVERFLOW; return 0;}
1760 #else /* def EOVERFLOW */
1761 {errno = EINVAL; return -1;}
1762 #endif /* ndef EOVERFLOW */
1763 if (x == Mono_Posix_Errno_EOWNERDEAD)
1765 {*r = EOWNERDEAD; return 0;}
1766 #else /* def EOWNERDEAD */
1767 {errno = EINVAL; return -1;}
1768 #endif /* ndef EOWNERDEAD */
1769 if (x == Mono_Posix_Errno_EPERM)
1771 {*r = EPERM; return 0;}
1772 #else /* def EPERM */
1773 {errno = EINVAL; return -1;}
1774 #endif /* ndef EPERM */
1775 if (x == Mono_Posix_Errno_EPFNOSUPPORT)
1777 {*r = EPFNOSUPPORT; return 0;}
1778 #else /* def EPFNOSUPPORT */
1779 {errno = EINVAL; return -1;}
1780 #endif /* ndef EPFNOSUPPORT */
1781 if (x == Mono_Posix_Errno_EPIPE)
1783 {*r = EPIPE; return 0;}
1784 #else /* def EPIPE */
1785 {errno = EINVAL; return -1;}
1786 #endif /* ndef EPIPE */
1787 if (x == Mono_Posix_Errno_EPROCLIM)
1789 {*r = EPROCLIM; return 0;}
1790 #else /* def EPROCLIM */
1791 {errno = EINVAL; return -1;}
1792 #endif /* ndef EPROCLIM */
1793 if (x == Mono_Posix_Errno_EPROCUNAVAIL)
1795 {*r = EPROCUNAVAIL; return 0;}
1796 #else /* def EPROCUNAVAIL */
1797 {errno = EINVAL; return -1;}
1798 #endif /* ndef EPROCUNAVAIL */
1799 if (x == Mono_Posix_Errno_EPROGMISMATCH)
1800 #ifdef EPROGMISMATCH
1801 {*r = EPROGMISMATCH; return 0;}
1802 #else /* def EPROGMISMATCH */
1803 {errno = EINVAL; return -1;}
1804 #endif /* ndef EPROGMISMATCH */
1805 if (x == Mono_Posix_Errno_EPROGUNAVAIL)
1807 {*r = EPROGUNAVAIL; return 0;}
1808 #else /* def EPROGUNAVAIL */
1809 {errno = EINVAL; return -1;}
1810 #endif /* ndef EPROGUNAVAIL */
1811 if (x == Mono_Posix_Errno_EPROTO)
1813 {*r = EPROTO; return 0;}
1814 #else /* def EPROTO */
1815 {errno = EINVAL; return -1;}
1816 #endif /* ndef EPROTO */
1817 if (x == Mono_Posix_Errno_EPROTONOSUPPORT)
1818 #ifdef EPROTONOSUPPORT
1819 {*r = EPROTONOSUPPORT; return 0;}
1820 #else /* def EPROTONOSUPPORT */
1821 {errno = EINVAL; return -1;}
1822 #endif /* ndef EPROTONOSUPPORT */
1823 if (x == Mono_Posix_Errno_EPROTOTYPE)
1825 {*r = EPROTOTYPE; return 0;}
1826 #else /* def EPROTOTYPE */
1827 {errno = EINVAL; return -1;}
1828 #endif /* ndef EPROTOTYPE */
1829 if (x == Mono_Posix_Errno_EPWROFF)
1831 {*r = EPWROFF; return 0;}
1832 #else /* def EPWROFF */
1833 {errno = EINVAL; return -1;}
1834 #endif /* ndef EPWROFF */
1835 if (x == Mono_Posix_Errno_ERANGE)
1837 {*r = ERANGE; return 0;}
1838 #else /* def ERANGE */
1839 {errno = EINVAL; return -1;}
1840 #endif /* ndef ERANGE */
1841 if (x == Mono_Posix_Errno_EREMCHG)
1843 {*r = EREMCHG; return 0;}
1844 #else /* def EREMCHG */
1845 {errno = EINVAL; return -1;}
1846 #endif /* ndef EREMCHG */
1847 if (x == Mono_Posix_Errno_EREMOTE)
1849 {*r = EREMOTE; return 0;}
1850 #else /* def EREMOTE */
1851 {errno = EINVAL; return -1;}
1852 #endif /* ndef EREMOTE */
1853 if (x == Mono_Posix_Errno_EREMOTEIO)
1855 {*r = EREMOTEIO; return 0;}
1856 #else /* def EREMOTEIO */
1857 {errno = EINVAL; return -1;}
1858 #endif /* ndef EREMOTEIO */
1859 if (x == Mono_Posix_Errno_ERESTART)
1861 {*r = ERESTART; return 0;}
1862 #else /* def ERESTART */
1863 {errno = EINVAL; return -1;}
1864 #endif /* ndef ERESTART */
1865 if (x == Mono_Posix_Errno_EROFS)
1867 {*r = EROFS; return 0;}
1868 #else /* def EROFS */
1869 {errno = EINVAL; return -1;}
1870 #endif /* ndef EROFS */
1871 if (x == Mono_Posix_Errno_ERPCMISMATCH)
1873 {*r = ERPCMISMATCH; return 0;}
1874 #else /* def ERPCMISMATCH */
1875 {errno = EINVAL; return -1;}
1876 #endif /* ndef ERPCMISMATCH */
1877 if (x == Mono_Posix_Errno_ESHLIBVERS)
1879 {*r = ESHLIBVERS; return 0;}
1880 #else /* def ESHLIBVERS */
1881 {errno = EINVAL; return -1;}
1882 #endif /* ndef ESHLIBVERS */
1883 if (x == Mono_Posix_Errno_ESHUTDOWN)
1885 {*r = ESHUTDOWN; return 0;}
1886 #else /* def ESHUTDOWN */
1887 {errno = EINVAL; return -1;}
1888 #endif /* ndef ESHUTDOWN */
1889 if (x == Mono_Posix_Errno_ESOCKTNOSUPPORT)
1890 #ifdef ESOCKTNOSUPPORT
1891 {*r = ESOCKTNOSUPPORT; return 0;}
1892 #else /* def ESOCKTNOSUPPORT */
1893 {errno = EINVAL; return -1;}
1894 #endif /* ndef ESOCKTNOSUPPORT */
1895 if (x == Mono_Posix_Errno_ESPIPE)
1897 {*r = ESPIPE; return 0;}
1898 #else /* def ESPIPE */
1899 {errno = EINVAL; return -1;}
1900 #endif /* ndef ESPIPE */
1901 if (x == Mono_Posix_Errno_ESRCH)
1903 {*r = ESRCH; return 0;}
1904 #else /* def ESRCH */
1905 {errno = EINVAL; return -1;}
1906 #endif /* ndef ESRCH */
1907 if (x == Mono_Posix_Errno_ESRMNT)
1909 {*r = ESRMNT; return 0;}
1910 #else /* def ESRMNT */
1911 {errno = EINVAL; return -1;}
1912 #endif /* ndef ESRMNT */
1913 if (x == Mono_Posix_Errno_ESTALE)
1915 {*r = ESTALE; return 0;}
1916 #else /* def ESTALE */
1917 {errno = EINVAL; return -1;}
1918 #endif /* ndef ESTALE */
1919 if (x == Mono_Posix_Errno_ESTRPIPE)
1921 {*r = ESTRPIPE; return 0;}
1922 #else /* def ESTRPIPE */
1923 {errno = EINVAL; return -1;}
1924 #endif /* ndef ESTRPIPE */
1925 if (x == Mono_Posix_Errno_ETIME)
1927 {*r = ETIME; return 0;}
1928 #else /* def ETIME */
1929 {errno = EINVAL; return -1;}
1930 #endif /* ndef ETIME */
1931 if (x == Mono_Posix_Errno_ETIMEDOUT)
1933 {*r = ETIMEDOUT; return 0;}
1934 #else /* def ETIMEDOUT */
1935 {errno = EINVAL; return -1;}
1936 #endif /* ndef ETIMEDOUT */
1937 if (x == Mono_Posix_Errno_ETOOMANYREFS)
1939 {*r = ETOOMANYREFS; return 0;}
1940 #else /* def ETOOMANYREFS */
1941 {errno = EINVAL; return -1;}
1942 #endif /* ndef ETOOMANYREFS */
1943 if (x == Mono_Posix_Errno_ETXTBSY)
1945 {*r = ETXTBSY; return 0;}
1946 #else /* def ETXTBSY */
1947 {errno = EINVAL; return -1;}
1948 #endif /* ndef ETXTBSY */
1949 if (x == Mono_Posix_Errno_EUCLEAN)
1951 {*r = EUCLEAN; return 0;}
1952 #else /* def EUCLEAN */
1953 {errno = EINVAL; return -1;}
1954 #endif /* ndef EUCLEAN */
1955 if (x == Mono_Posix_Errno_EUNATCH)
1957 {*r = EUNATCH; return 0;}
1958 #else /* def EUNATCH */
1959 {errno = EINVAL; return -1;}
1960 #endif /* ndef EUNATCH */
1961 if (x == Mono_Posix_Errno_EUSERS)
1963 {*r = EUSERS; return 0;}
1964 #else /* def EUSERS */
1965 {errno = EINVAL; return -1;}
1966 #endif /* ndef EUSERS */
1967 if (x == Mono_Posix_Errno_EWOULDBLOCK)
1969 {*r = EWOULDBLOCK; return 0;}
1970 #else /* def EWOULDBLOCK */
1971 {errno = EINVAL; return -1;}
1972 #endif /* ndef EWOULDBLOCK */
1973 if (x == Mono_Posix_Errno_EXDEV)
1975 {*r = EXDEV; return 0;}
1976 #else /* def EXDEV */
1977 {errno = EINVAL; return -1;}
1978 #endif /* ndef EXDEV */
1979 if (x == Mono_Posix_Errno_EXFULL)
1981 {*r = EXFULL; return 0;}
1982 #else /* def EXFULL */
1983 {errno = EINVAL; return -1;}
1984 #endif /* ndef EXFULL */
1987 errno = EINVAL; return -1;
1990 int Mono_Posix_ToErrno (int x, int *r)
1997 {*r = Mono_Posix_Errno_E2BIG; return 0;}
1998 #endif /* ndef E2BIG */
2001 {*r = Mono_Posix_Errno_EACCES; return 0;}
2002 #endif /* ndef EACCES */
2004 if (x == EADDRINUSE)
2005 {*r = Mono_Posix_Errno_EADDRINUSE; return 0;}
2006 #endif /* ndef EADDRINUSE */
2007 #ifdef EADDRNOTAVAIL
2008 if (x == EADDRNOTAVAIL)
2009 {*r = Mono_Posix_Errno_EADDRNOTAVAIL; return 0;}
2010 #endif /* ndef EADDRNOTAVAIL */
2013 {*r = Mono_Posix_Errno_EADV; return 0;}
2014 #endif /* ndef EADV */
2016 if (x == EAFNOSUPPORT)
2017 {*r = Mono_Posix_Errno_EAFNOSUPPORT; return 0;}
2018 #endif /* ndef EAFNOSUPPORT */
2021 {*r = Mono_Posix_Errno_EAGAIN; return 0;}
2022 #endif /* ndef EAGAIN */
2025 {*r = Mono_Posix_Errno_EALREADY; return 0;}
2026 #endif /* ndef EALREADY */
2029 {*r = Mono_Posix_Errno_EAUTH; return 0;}
2030 #endif /* ndef EAUTH */
2033 {*r = Mono_Posix_Errno_EBADARCH; return 0;}
2034 #endif /* ndef EBADARCH */
2037 {*r = Mono_Posix_Errno_EBADE; return 0;}
2038 #endif /* ndef EBADE */
2041 {*r = Mono_Posix_Errno_EBADEXEC; return 0;}
2042 #endif /* ndef EBADEXEC */
2045 {*r = Mono_Posix_Errno_EBADF; return 0;}
2046 #endif /* ndef EBADF */
2049 {*r = Mono_Posix_Errno_EBADFD; return 0;}
2050 #endif /* ndef EBADFD */
2053 {*r = Mono_Posix_Errno_EBADMACHO; return 0;}
2054 #endif /* ndef EBADMACHO */
2057 {*r = Mono_Posix_Errno_EBADMSG; return 0;}
2058 #endif /* ndef EBADMSG */
2061 {*r = Mono_Posix_Errno_EBADR; return 0;}
2062 #endif /* ndef EBADR */
2065 {*r = Mono_Posix_Errno_EBADRPC; return 0;}
2066 #endif /* ndef EBADRPC */
2069 {*r = Mono_Posix_Errno_EBADRQC; return 0;}
2070 #endif /* ndef EBADRQC */
2073 {*r = Mono_Posix_Errno_EBADSLT; return 0;}
2074 #endif /* ndef EBADSLT */
2077 {*r = Mono_Posix_Errno_EBFONT; return 0;}
2078 #endif /* ndef EBFONT */
2081 {*r = Mono_Posix_Errno_EBUSY; return 0;}
2082 #endif /* ndef EBUSY */
2085 {*r = Mono_Posix_Errno_ECANCELED; return 0;}
2086 #endif /* ndef ECANCELED */
2089 {*r = Mono_Posix_Errno_ECHILD; return 0;}
2090 #endif /* ndef ECHILD */
2093 {*r = Mono_Posix_Errno_ECHRNG; return 0;}
2094 #endif /* ndef ECHRNG */
2097 {*r = Mono_Posix_Errno_ECOMM; return 0;}
2098 #endif /* ndef ECOMM */
2100 if (x == ECONNABORTED)
2101 {*r = Mono_Posix_Errno_ECONNABORTED; return 0;}
2102 #endif /* ndef ECONNABORTED */
2104 if (x == ECONNREFUSED)
2105 {*r = Mono_Posix_Errno_ECONNREFUSED; return 0;}
2106 #endif /* ndef ECONNREFUSED */
2108 if (x == ECONNRESET)
2109 {*r = Mono_Posix_Errno_ECONNRESET; return 0;}
2110 #endif /* ndef ECONNRESET */
2113 {*r = Mono_Posix_Errno_EDEADLK; return 0;}
2114 #endif /* ndef EDEADLK */
2117 {*r = Mono_Posix_Errno_EDEADLOCK; return 0;}
2118 #endif /* ndef EDEADLOCK */
2120 if (x == EDESTADDRREQ)
2121 {*r = Mono_Posix_Errno_EDESTADDRREQ; return 0;}
2122 #endif /* ndef EDESTADDRREQ */
2125 {*r = Mono_Posix_Errno_EDEVERR; return 0;}
2126 #endif /* ndef EDEVERR */
2129 {*r = Mono_Posix_Errno_EDOM; return 0;}
2130 #endif /* ndef EDOM */
2133 {*r = Mono_Posix_Errno_EDOTDOT; return 0;}
2134 #endif /* ndef EDOTDOT */
2137 {*r = Mono_Posix_Errno_EDQUOT; return 0;}
2138 #endif /* ndef EDQUOT */
2141 {*r = Mono_Posix_Errno_EEXIST; return 0;}
2142 #endif /* ndef EEXIST */
2145 {*r = Mono_Posix_Errno_EFAULT; return 0;}
2146 #endif /* ndef EFAULT */
2149 {*r = Mono_Posix_Errno_EFBIG; return 0;}
2150 #endif /* ndef EFBIG */
2153 {*r = Mono_Posix_Errno_EFTYPE; return 0;}
2154 #endif /* ndef EFTYPE */
2157 {*r = Mono_Posix_Errno_EHOSTDOWN; return 0;}
2158 #endif /* ndef EHOSTDOWN */
2160 if (x == EHOSTUNREACH)
2161 {*r = Mono_Posix_Errno_EHOSTUNREACH; return 0;}
2162 #endif /* ndef EHOSTUNREACH */
2165 {*r = Mono_Posix_Errno_EIDRM; return 0;}
2166 #endif /* ndef EIDRM */
2169 {*r = Mono_Posix_Errno_EILSEQ; return 0;}
2170 #endif /* ndef EILSEQ */
2172 if (x == EINPROGRESS)
2173 {*r = Mono_Posix_Errno_EINPROGRESS; return 0;}
2174 #endif /* ndef EINPROGRESS */
2177 {*r = Mono_Posix_Errno_EINTR; return 0;}
2178 #endif /* ndef EINTR */
2181 {*r = Mono_Posix_Errno_EINVAL; return 0;}
2182 #endif /* ndef EINVAL */
2185 {*r = Mono_Posix_Errno_EIO; return 0;}
2186 #endif /* ndef EIO */
2189 {*r = Mono_Posix_Errno_EISCONN; return 0;}
2190 #endif /* ndef EISCONN */
2193 {*r = Mono_Posix_Errno_EISDIR; return 0;}
2194 #endif /* ndef EISDIR */
2197 {*r = Mono_Posix_Errno_EISNAM; return 0;}
2198 #endif /* ndef EISNAM */
2200 if (x == EKEYEXPIRED)
2201 {*r = Mono_Posix_Errno_EKEYEXPIRED; return 0;}
2202 #endif /* ndef EKEYEXPIRED */
2204 if (x == EKEYREJECTED)
2205 {*r = Mono_Posix_Errno_EKEYREJECTED; return 0;}
2206 #endif /* ndef EKEYREJECTED */
2208 if (x == EKEYREVOKED)
2209 {*r = Mono_Posix_Errno_EKEYREVOKED; return 0;}
2210 #endif /* ndef EKEYREVOKED */
2213 {*r = Mono_Posix_Errno_EL2HLT; return 0;}
2214 #endif /* ndef EL2HLT */
2217 {*r = Mono_Posix_Errno_EL2NSYNC; return 0;}
2218 #endif /* ndef EL2NSYNC */
2221 {*r = Mono_Posix_Errno_EL3HLT; return 0;}
2222 #endif /* ndef EL3HLT */
2225 {*r = Mono_Posix_Errno_EL3RST; return 0;}
2226 #endif /* ndef EL3RST */
2229 {*r = Mono_Posix_Errno_ELIBACC; return 0;}
2230 #endif /* ndef ELIBACC */
2233 {*r = Mono_Posix_Errno_ELIBBAD; return 0;}
2234 #endif /* ndef ELIBBAD */
2237 {*r = Mono_Posix_Errno_ELIBEXEC; return 0;}
2238 #endif /* ndef ELIBEXEC */
2241 {*r = Mono_Posix_Errno_ELIBMAX; return 0;}
2242 #endif /* ndef ELIBMAX */
2245 {*r = Mono_Posix_Errno_ELIBSCN; return 0;}
2246 #endif /* ndef ELIBSCN */
2249 {*r = Mono_Posix_Errno_ELNRNG; return 0;}
2250 #endif /* ndef ELNRNG */
2253 {*r = Mono_Posix_Errno_ELOOP; return 0;}
2254 #endif /* ndef ELOOP */
2256 if (x == EMEDIUMTYPE)
2257 {*r = Mono_Posix_Errno_EMEDIUMTYPE; return 0;}
2258 #endif /* ndef EMEDIUMTYPE */
2261 {*r = Mono_Posix_Errno_EMFILE; return 0;}
2262 #endif /* ndef EMFILE */
2265 {*r = Mono_Posix_Errno_EMLINK; return 0;}
2266 #endif /* ndef EMLINK */
2269 {*r = Mono_Posix_Errno_EMSGSIZE; return 0;}
2270 #endif /* ndef EMSGSIZE */
2273 {*r = Mono_Posix_Errno_EMULTIHOP; return 0;}
2274 #endif /* ndef EMULTIHOP */
2276 if (x == ENAMETOOLONG)
2277 {*r = Mono_Posix_Errno_ENAMETOOLONG; return 0;}
2278 #endif /* ndef ENAMETOOLONG */
2281 {*r = Mono_Posix_Errno_ENAVAIL; return 0;}
2282 #endif /* ndef ENAVAIL */
2285 {*r = Mono_Posix_Errno_ENEEDAUTH; return 0;}
2286 #endif /* ndef ENEEDAUTH */
2289 {*r = Mono_Posix_Errno_ENETDOWN; return 0;}
2290 #endif /* ndef ENETDOWN */
2293 {*r = Mono_Posix_Errno_ENETRESET; return 0;}
2294 #endif /* ndef ENETRESET */
2296 if (x == ENETUNREACH)
2297 {*r = Mono_Posix_Errno_ENETUNREACH; return 0;}
2298 #endif /* ndef ENETUNREACH */
2301 {*r = Mono_Posix_Errno_ENFILE; return 0;}
2302 #endif /* ndef ENFILE */
2305 {*r = Mono_Posix_Errno_ENOANO; return 0;}
2306 #endif /* ndef ENOANO */
2309 {*r = Mono_Posix_Errno_ENOATTR; return 0;}
2310 #endif /* ndef ENOATTR */
2313 {*r = Mono_Posix_Errno_ENOBUFS; return 0;}
2314 #endif /* ndef ENOBUFS */
2317 {*r = Mono_Posix_Errno_ENOCSI; return 0;}
2318 #endif /* ndef ENOCSI */
2321 {*r = Mono_Posix_Errno_ENODATA; return 0;}
2322 #endif /* ndef ENODATA */
2325 {*r = Mono_Posix_Errno_ENODEV; return 0;}
2326 #endif /* ndef ENODEV */
2329 {*r = Mono_Posix_Errno_ENOENT; return 0;}
2330 #endif /* ndef ENOENT */
2333 {*r = Mono_Posix_Errno_ENOEXEC; return 0;}
2334 #endif /* ndef ENOEXEC */
2337 {*r = Mono_Posix_Errno_ENOKEY; return 0;}
2338 #endif /* ndef ENOKEY */
2341 {*r = Mono_Posix_Errno_ENOLCK; return 0;}
2342 #endif /* ndef ENOLCK */
2345 {*r = Mono_Posix_Errno_ENOLINK; return 0;}
2346 #endif /* ndef ENOLINK */
2349 {*r = Mono_Posix_Errno_ENOMEDIUM; return 0;}
2350 #endif /* ndef ENOMEDIUM */
2353 {*r = Mono_Posix_Errno_ENOMEM; return 0;}
2354 #endif /* ndef ENOMEM */
2357 {*r = Mono_Posix_Errno_ENOMSG; return 0;}
2358 #endif /* ndef ENOMSG */
2361 {*r = Mono_Posix_Errno_ENONET; return 0;}
2362 #endif /* ndef ENONET */
2365 {*r = Mono_Posix_Errno_ENOPKG; return 0;}
2366 #endif /* ndef ENOPKG */
2369 {*r = Mono_Posix_Errno_ENOPOLICY; return 0;}
2370 #endif /* ndef ENOPOLICY */
2372 if (x == ENOPROTOOPT)
2373 {*r = Mono_Posix_Errno_ENOPROTOOPT; return 0;}
2374 #endif /* ndef ENOPROTOOPT */
2377 {*r = Mono_Posix_Errno_ENOSPC; return 0;}
2378 #endif /* ndef ENOSPC */
2381 {*r = Mono_Posix_Errno_ENOSR; return 0;}
2382 #endif /* ndef ENOSR */
2385 {*r = Mono_Posix_Errno_ENOSTR; return 0;}
2386 #endif /* ndef ENOSTR */
2389 {*r = Mono_Posix_Errno_ENOSYS; return 0;}
2390 #endif /* ndef ENOSYS */
2393 {*r = Mono_Posix_Errno_ENOTBLK; return 0;}
2394 #endif /* ndef ENOTBLK */
2397 {*r = Mono_Posix_Errno_ENOTCONN; return 0;}
2398 #endif /* ndef ENOTCONN */
2401 {*r = Mono_Posix_Errno_ENOTDIR; return 0;}
2402 #endif /* ndef ENOTDIR */
2405 {*r = Mono_Posix_Errno_ENOTEMPTY; return 0;}
2406 #endif /* ndef ENOTEMPTY */
2409 {*r = Mono_Posix_Errno_ENOTNAM; return 0;}
2410 #endif /* ndef ENOTNAM */
2411 #ifdef ENOTRECOVERABLE
2412 if (x == ENOTRECOVERABLE)
2413 {*r = Mono_Posix_Errno_ENOTRECOVERABLE; return 0;}
2414 #endif /* ndef ENOTRECOVERABLE */
2417 {*r = Mono_Posix_Errno_ENOTSOCK; return 0;}
2418 #endif /* ndef ENOTSOCK */
2421 {*r = Mono_Posix_Errno_ENOTTY; return 0;}
2422 #endif /* ndef ENOTTY */
2425 {*r = Mono_Posix_Errno_ENOTUNIQ; return 0;}
2426 #endif /* ndef ENOTUNIQ */
2429 {*r = Mono_Posix_Errno_ENXIO; return 0;}
2430 #endif /* ndef ENXIO */
2432 if (x == EOPNOTSUPP)
2433 {*r = Mono_Posix_Errno_EOPNOTSUPP; return 0;}
2434 #endif /* ndef EOPNOTSUPP */
2437 {*r = Mono_Posix_Errno_EOVERFLOW; return 0;}
2438 #endif /* ndef EOVERFLOW */
2440 if (x == EOWNERDEAD)
2441 {*r = Mono_Posix_Errno_EOWNERDEAD; return 0;}
2442 #endif /* ndef EOWNERDEAD */
2445 {*r = Mono_Posix_Errno_EPERM; return 0;}
2446 #endif /* ndef EPERM */
2448 if (x == EPFNOSUPPORT)
2449 {*r = Mono_Posix_Errno_EPFNOSUPPORT; return 0;}
2450 #endif /* ndef EPFNOSUPPORT */
2453 {*r = Mono_Posix_Errno_EPIPE; return 0;}
2454 #endif /* ndef EPIPE */
2457 {*r = Mono_Posix_Errno_EPROCLIM; return 0;}
2458 #endif /* ndef EPROCLIM */
2460 if (x == EPROCUNAVAIL)
2461 {*r = Mono_Posix_Errno_EPROCUNAVAIL; return 0;}
2462 #endif /* ndef EPROCUNAVAIL */
2463 #ifdef EPROGMISMATCH
2464 if (x == EPROGMISMATCH)
2465 {*r = Mono_Posix_Errno_EPROGMISMATCH; return 0;}
2466 #endif /* ndef EPROGMISMATCH */
2468 if (x == EPROGUNAVAIL)
2469 {*r = Mono_Posix_Errno_EPROGUNAVAIL; return 0;}
2470 #endif /* ndef EPROGUNAVAIL */
2473 {*r = Mono_Posix_Errno_EPROTO; return 0;}
2474 #endif /* ndef EPROTO */
2475 #ifdef EPROTONOSUPPORT
2476 if (x == EPROTONOSUPPORT)
2477 {*r = Mono_Posix_Errno_EPROTONOSUPPORT; return 0;}
2478 #endif /* ndef EPROTONOSUPPORT */
2480 if (x == EPROTOTYPE)
2481 {*r = Mono_Posix_Errno_EPROTOTYPE; return 0;}
2482 #endif /* ndef EPROTOTYPE */
2485 {*r = Mono_Posix_Errno_EPWROFF; return 0;}
2486 #endif /* ndef EPWROFF */
2489 {*r = Mono_Posix_Errno_ERANGE; return 0;}
2490 #endif /* ndef ERANGE */
2493 {*r = Mono_Posix_Errno_EREMCHG; return 0;}
2494 #endif /* ndef EREMCHG */
2497 {*r = Mono_Posix_Errno_EREMOTE; return 0;}
2498 #endif /* ndef EREMOTE */
2501 {*r = Mono_Posix_Errno_EREMOTEIO; return 0;}
2502 #endif /* ndef EREMOTEIO */
2505 {*r = Mono_Posix_Errno_ERESTART; return 0;}
2506 #endif /* ndef ERESTART */
2509 {*r = Mono_Posix_Errno_EROFS; return 0;}
2510 #endif /* ndef EROFS */
2512 if (x == ERPCMISMATCH)
2513 {*r = Mono_Posix_Errno_ERPCMISMATCH; return 0;}
2514 #endif /* ndef ERPCMISMATCH */
2516 if (x == ESHLIBVERS)
2517 {*r = Mono_Posix_Errno_ESHLIBVERS; return 0;}
2518 #endif /* ndef ESHLIBVERS */
2521 {*r = Mono_Posix_Errno_ESHUTDOWN; return 0;}
2522 #endif /* ndef ESHUTDOWN */
2523 #ifdef ESOCKTNOSUPPORT
2524 if (x == ESOCKTNOSUPPORT)
2525 {*r = Mono_Posix_Errno_ESOCKTNOSUPPORT; return 0;}
2526 #endif /* ndef ESOCKTNOSUPPORT */
2529 {*r = Mono_Posix_Errno_ESPIPE; return 0;}
2530 #endif /* ndef ESPIPE */
2533 {*r = Mono_Posix_Errno_ESRCH; return 0;}
2534 #endif /* ndef ESRCH */
2537 {*r = Mono_Posix_Errno_ESRMNT; return 0;}
2538 #endif /* ndef ESRMNT */
2541 {*r = Mono_Posix_Errno_ESTALE; return 0;}
2542 #endif /* ndef ESTALE */
2545 {*r = Mono_Posix_Errno_ESTRPIPE; return 0;}
2546 #endif /* ndef ESTRPIPE */
2549 {*r = Mono_Posix_Errno_ETIME; return 0;}
2550 #endif /* ndef ETIME */
2553 {*r = Mono_Posix_Errno_ETIMEDOUT; return 0;}
2554 #endif /* ndef ETIMEDOUT */
2556 if (x == ETOOMANYREFS)
2557 {*r = Mono_Posix_Errno_ETOOMANYREFS; return 0;}
2558 #endif /* ndef ETOOMANYREFS */
2561 {*r = Mono_Posix_Errno_ETXTBSY; return 0;}
2562 #endif /* ndef ETXTBSY */
2565 {*r = Mono_Posix_Errno_EUCLEAN; return 0;}
2566 #endif /* ndef EUCLEAN */
2569 {*r = Mono_Posix_Errno_EUNATCH; return 0;}
2570 #endif /* ndef EUNATCH */
2573 {*r = Mono_Posix_Errno_EUSERS; return 0;}
2574 #endif /* ndef EUSERS */
2576 if (x == EWOULDBLOCK)
2577 {*r = Mono_Posix_Errno_EWOULDBLOCK; return 0;}
2578 #endif /* ndef EWOULDBLOCK */
2581 {*r = Mono_Posix_Errno_EXDEV; return 0;}
2582 #endif /* ndef EXDEV */
2585 {*r = Mono_Posix_Errno_EXFULL; return 0;}
2586 #endif /* ndef EXFULL */
2587 errno = EINVAL; return -1;
2590 int Mono_Posix_FromFcntlCommand (int x, int *r)
2593 if (x == Mono_Posix_FcntlCommand_F_DUPFD)
2595 {*r = F_DUPFD; return 0;}
2596 #else /* def F_DUPFD */
2597 {errno = EINVAL; return -1;}
2598 #endif /* ndef F_DUPFD */
2599 if (x == Mono_Posix_FcntlCommand_F_GETFD)
2601 {*r = F_GETFD; return 0;}
2602 #else /* def F_GETFD */
2603 {errno = EINVAL; return -1;}
2604 #endif /* ndef F_GETFD */
2605 if (x == Mono_Posix_FcntlCommand_F_GETFL)
2607 {*r = F_GETFL; return 0;}
2608 #else /* def F_GETFL */
2609 {errno = EINVAL; return -1;}
2610 #endif /* ndef F_GETFL */
2611 if (x == Mono_Posix_FcntlCommand_F_GETLEASE)
2613 {*r = F_GETLEASE; return 0;}
2614 #else /* def F_GETLEASE */
2615 {errno = EINVAL; return -1;}
2616 #endif /* ndef F_GETLEASE */
2617 if (x == Mono_Posix_FcntlCommand_F_GETLK)
2619 {*r = F_GETLK; return 0;}
2620 #else /* def F_GETLK */
2621 {errno = EINVAL; return -1;}
2622 #endif /* ndef F_GETLK */
2623 if (x == Mono_Posix_FcntlCommand_F_GETOWN)
2625 {*r = F_GETOWN; return 0;}
2626 #else /* def F_GETOWN */
2627 {errno = EINVAL; return -1;}
2628 #endif /* ndef F_GETOWN */
2629 if (x == Mono_Posix_FcntlCommand_F_GETSIG)
2631 {*r = F_GETSIG; return 0;}
2632 #else /* def F_GETSIG */
2633 {errno = EINVAL; return -1;}
2634 #endif /* ndef F_GETSIG */
2635 if (x == Mono_Posix_FcntlCommand_F_NOCACHE)
2637 {*r = F_NOCACHE; return 0;}
2638 #else /* def F_NOCACHE */
2639 {errno = EINVAL; return -1;}
2640 #endif /* ndef F_NOCACHE */
2641 if (x == Mono_Posix_FcntlCommand_F_NOTIFY)
2643 {*r = F_NOTIFY; return 0;}
2644 #else /* def F_NOTIFY */
2645 {errno = EINVAL; return -1;}
2646 #endif /* ndef F_NOTIFY */
2647 if (x == Mono_Posix_FcntlCommand_F_SETFD)
2649 {*r = F_SETFD; return 0;}
2650 #else /* def F_SETFD */
2651 {errno = EINVAL; return -1;}
2652 #endif /* ndef F_SETFD */
2653 if (x == Mono_Posix_FcntlCommand_F_SETFL)
2655 {*r = F_SETFL; return 0;}
2656 #else /* def F_SETFL */
2657 {errno = EINVAL; return -1;}
2658 #endif /* ndef F_SETFL */
2659 if (x == Mono_Posix_FcntlCommand_F_SETLEASE)
2661 {*r = F_SETLEASE; return 0;}
2662 #else /* def F_SETLEASE */
2663 {errno = EINVAL; return -1;}
2664 #endif /* ndef F_SETLEASE */
2665 if (x == Mono_Posix_FcntlCommand_F_SETLK)
2667 {*r = F_SETLK; return 0;}
2668 #else /* def F_SETLK */
2669 {errno = EINVAL; return -1;}
2670 #endif /* ndef F_SETLK */
2671 if (x == Mono_Posix_FcntlCommand_F_SETLKW)
2673 {*r = F_SETLKW; return 0;}
2674 #else /* def F_SETLKW */
2675 {errno = EINVAL; return -1;}
2676 #endif /* ndef F_SETLKW */
2677 if (x == Mono_Posix_FcntlCommand_F_SETOWN)
2679 {*r = F_SETOWN; return 0;}
2680 #else /* def F_SETOWN */
2681 {errno = EINVAL; return -1;}
2682 #endif /* ndef F_SETOWN */
2683 if (x == Mono_Posix_FcntlCommand_F_SETSIG)
2685 {*r = F_SETSIG; return 0;}
2686 #else /* def F_SETSIG */
2687 {errno = EINVAL; return -1;}
2688 #endif /* ndef F_SETSIG */
2691 errno = EINVAL; return -1;
2694 int Mono_Posix_ToFcntlCommand (int x, int *r)
2701 {*r = Mono_Posix_FcntlCommand_F_DUPFD; return 0;}
2702 #endif /* ndef F_DUPFD */
2705 {*r = Mono_Posix_FcntlCommand_F_GETFD; return 0;}
2706 #endif /* ndef F_GETFD */
2709 {*r = Mono_Posix_FcntlCommand_F_GETFL; return 0;}
2710 #endif /* ndef F_GETFL */
2712 if (x == F_GETLEASE)
2713 {*r = Mono_Posix_FcntlCommand_F_GETLEASE; return 0;}
2714 #endif /* ndef F_GETLEASE */
2717 {*r = Mono_Posix_FcntlCommand_F_GETLK; return 0;}
2718 #endif /* ndef F_GETLK */
2721 {*r = Mono_Posix_FcntlCommand_F_GETOWN; return 0;}
2722 #endif /* ndef F_GETOWN */
2725 {*r = Mono_Posix_FcntlCommand_F_GETSIG; return 0;}
2726 #endif /* ndef F_GETSIG */
2729 {*r = Mono_Posix_FcntlCommand_F_NOCACHE; return 0;}
2730 #endif /* ndef F_NOCACHE */
2733 {*r = Mono_Posix_FcntlCommand_F_NOTIFY; return 0;}
2734 #endif /* ndef F_NOTIFY */
2737 {*r = Mono_Posix_FcntlCommand_F_SETFD; return 0;}
2738 #endif /* ndef F_SETFD */
2741 {*r = Mono_Posix_FcntlCommand_F_SETFL; return 0;}
2742 #endif /* ndef F_SETFL */
2744 if (x == F_SETLEASE)
2745 {*r = Mono_Posix_FcntlCommand_F_SETLEASE; return 0;}
2746 #endif /* ndef F_SETLEASE */
2749 {*r = Mono_Posix_FcntlCommand_F_SETLK; return 0;}
2750 #endif /* ndef F_SETLK */
2753 {*r = Mono_Posix_FcntlCommand_F_SETLKW; return 0;}
2754 #endif /* ndef F_SETLKW */
2757 {*r = Mono_Posix_FcntlCommand_F_SETOWN; return 0;}
2758 #endif /* ndef F_SETOWN */
2761 {*r = Mono_Posix_FcntlCommand_F_SETSIG; return 0;}
2762 #endif /* ndef F_SETSIG */
2763 errno = EINVAL; return -1;
2766 int Mono_Posix_FromFilePermissions (unsigned int x, unsigned int *r)
2769 if ((x & Mono_Posix_FilePermissions_ACCESSPERMS) == Mono_Posix_FilePermissions_ACCESSPERMS)
2772 #else /* def ACCESSPERMS */
2773 {/* Ignoring Mono_Posix_FilePermissions_ACCESSPERMS, as it is constructed from other values */}
2774 #endif /* ndef ACCESSPERMS */
2775 if ((x & Mono_Posix_FilePermissions_ALLPERMS) == Mono_Posix_FilePermissions_ALLPERMS)
2778 #else /* def ALLPERMS */
2779 {/* Ignoring Mono_Posix_FilePermissions_ALLPERMS, as it is constructed from other values */}
2780 #endif /* ndef ALLPERMS */
2781 if ((x & Mono_Posix_FilePermissions_DEFFILEMODE) == Mono_Posix_FilePermissions_DEFFILEMODE)
2784 #else /* def DEFFILEMODE */
2785 {/* Ignoring Mono_Posix_FilePermissions_DEFFILEMODE, as it is constructed from other values */}
2786 #endif /* ndef DEFFILEMODE */
2787 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFBLK)
2790 #else /* def S_IFBLK */
2791 {errno = EINVAL; return -1;}
2792 #endif /* ndef S_IFBLK */
2793 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFCHR)
2796 #else /* def S_IFCHR */
2797 {errno = EINVAL; return -1;}
2798 #endif /* ndef S_IFCHR */
2799 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFDIR)
2802 #else /* def S_IFDIR */
2803 {errno = EINVAL; return -1;}
2804 #endif /* ndef S_IFDIR */
2805 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFIFO)
2808 #else /* def S_IFIFO */
2809 {errno = EINVAL; return -1;}
2810 #endif /* ndef S_IFIFO */
2811 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFLNK)
2814 #else /* def S_IFLNK */
2815 {errno = EINVAL; return -1;}
2816 #endif /* ndef S_IFLNK */
2817 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFMT)
2820 #else /* def S_IFMT */
2821 {/* Ignoring Mono_Posix_FilePermissions_S_IFMT, as it is constructed from other values */}
2822 #endif /* ndef S_IFMT */
2823 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFREG)
2826 #else /* def S_IFREG */
2827 {errno = EINVAL; return -1;}
2828 #endif /* ndef S_IFREG */
2829 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFSOCK)
2832 #else /* def S_IFSOCK */
2833 {errno = EINVAL; return -1;}
2834 #endif /* ndef S_IFSOCK */
2835 if ((x & Mono_Posix_FilePermissions_S_IRGRP) == Mono_Posix_FilePermissions_S_IRGRP)
2838 #else /* def S_IRGRP */
2839 {errno = EINVAL; return -1;}
2840 #endif /* ndef S_IRGRP */
2841 if ((x & Mono_Posix_FilePermissions_S_IROTH) == Mono_Posix_FilePermissions_S_IROTH)
2844 #else /* def S_IROTH */
2845 {errno = EINVAL; return -1;}
2846 #endif /* ndef S_IROTH */
2847 if ((x & Mono_Posix_FilePermissions_S_IRUSR) == Mono_Posix_FilePermissions_S_IRUSR)
2850 #else /* def S_IRUSR */
2851 {errno = EINVAL; return -1;}
2852 #endif /* ndef S_IRUSR */
2853 if ((x & Mono_Posix_FilePermissions_S_IRWXG) == Mono_Posix_FilePermissions_S_IRWXG)
2856 #else /* def S_IRWXG */
2857 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXG, as it is constructed from other values */}
2858 #endif /* ndef S_IRWXG */
2859 if ((x & Mono_Posix_FilePermissions_S_IRWXO) == Mono_Posix_FilePermissions_S_IRWXO)
2862 #else /* def S_IRWXO */
2863 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXO, as it is constructed from other values */}
2864 #endif /* ndef S_IRWXO */
2865 if ((x & Mono_Posix_FilePermissions_S_IRWXU) == Mono_Posix_FilePermissions_S_IRWXU)
2868 #else /* def S_IRWXU */
2869 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXU, as it is constructed from other values */}
2870 #endif /* ndef S_IRWXU */
2871 if ((x & Mono_Posix_FilePermissions_S_ISGID) == Mono_Posix_FilePermissions_S_ISGID)
2874 #else /* def S_ISGID */
2875 {errno = EINVAL; return -1;}
2876 #endif /* ndef S_ISGID */
2877 if ((x & Mono_Posix_FilePermissions_S_ISUID) == Mono_Posix_FilePermissions_S_ISUID)
2880 #else /* def S_ISUID */
2881 {errno = EINVAL; return -1;}
2882 #endif /* ndef S_ISUID */
2883 if ((x & Mono_Posix_FilePermissions_S_ISVTX) == Mono_Posix_FilePermissions_S_ISVTX)
2886 #else /* def S_ISVTX */
2887 {errno = EINVAL; return -1;}
2888 #endif /* ndef S_ISVTX */
2889 if ((x & Mono_Posix_FilePermissions_S_IWGRP) == Mono_Posix_FilePermissions_S_IWGRP)
2892 #else /* def S_IWGRP */
2893 {errno = EINVAL; return -1;}
2894 #endif /* ndef S_IWGRP */
2895 if ((x & Mono_Posix_FilePermissions_S_IWOTH) == Mono_Posix_FilePermissions_S_IWOTH)
2898 #else /* def S_IWOTH */
2899 {errno = EINVAL; return -1;}
2900 #endif /* ndef S_IWOTH */
2901 if ((x & Mono_Posix_FilePermissions_S_IWUSR) == Mono_Posix_FilePermissions_S_IWUSR)
2904 #else /* def S_IWUSR */
2905 {errno = EINVAL; return -1;}
2906 #endif /* ndef S_IWUSR */
2907 if ((x & Mono_Posix_FilePermissions_S_IXGRP) == Mono_Posix_FilePermissions_S_IXGRP)
2910 #else /* def S_IXGRP */
2911 {errno = EINVAL; return -1;}
2912 #endif /* ndef S_IXGRP */
2913 if ((x & Mono_Posix_FilePermissions_S_IXOTH) == Mono_Posix_FilePermissions_S_IXOTH)
2916 #else /* def S_IXOTH */
2917 {errno = EINVAL; return -1;}
2918 #endif /* ndef S_IXOTH */
2919 if ((x & Mono_Posix_FilePermissions_S_IXUSR) == Mono_Posix_FilePermissions_S_IXUSR)
2922 #else /* def S_IXUSR */
2923 {errno = EINVAL; return -1;}
2924 #endif /* ndef S_IXUSR */
2930 int Mono_Posix_ToFilePermissions (unsigned int x, unsigned int *r)
2936 if ((x & ACCESSPERMS) == ACCESSPERMS)
2937 *r |= Mono_Posix_FilePermissions_ACCESSPERMS;
2938 #endif /* ndef ACCESSPERMS */
2940 if ((x & ALLPERMS) == ALLPERMS)
2941 *r |= Mono_Posix_FilePermissions_ALLPERMS;
2942 #endif /* ndef ALLPERMS */
2944 if ((x & DEFFILEMODE) == DEFFILEMODE)
2945 *r |= Mono_Posix_FilePermissions_DEFFILEMODE;
2946 #endif /* ndef DEFFILEMODE */
2948 if ((x & S_IFMT) == S_IFBLK)
2949 *r |= Mono_Posix_FilePermissions_S_IFBLK;
2950 #endif /* ndef S_IFBLK */
2952 if ((x & S_IFMT) == S_IFCHR)
2953 *r |= Mono_Posix_FilePermissions_S_IFCHR;
2954 #endif /* ndef S_IFCHR */
2956 if ((x & S_IFMT) == S_IFDIR)
2957 *r |= Mono_Posix_FilePermissions_S_IFDIR;
2958 #endif /* ndef S_IFDIR */
2960 if ((x & S_IFMT) == S_IFIFO)
2961 *r |= Mono_Posix_FilePermissions_S_IFIFO;
2962 #endif /* ndef S_IFIFO */
2964 if ((x & S_IFMT) == S_IFLNK)
2965 *r |= Mono_Posix_FilePermissions_S_IFLNK;
2966 #endif /* ndef S_IFLNK */
2968 if ((x & S_IFMT) == S_IFMT)
2969 *r |= Mono_Posix_FilePermissions_S_IFMT;
2970 #endif /* ndef S_IFMT */
2972 if ((x & S_IFMT) == S_IFREG)
2973 *r |= Mono_Posix_FilePermissions_S_IFREG;
2974 #endif /* ndef S_IFREG */
2976 if ((x & S_IFMT) == S_IFSOCK)
2977 *r |= Mono_Posix_FilePermissions_S_IFSOCK;
2978 #endif /* ndef S_IFSOCK */
2980 if ((x & S_IRGRP) == S_IRGRP)
2981 *r |= Mono_Posix_FilePermissions_S_IRGRP;
2982 #endif /* ndef S_IRGRP */
2984 if ((x & S_IROTH) == S_IROTH)
2985 *r |= Mono_Posix_FilePermissions_S_IROTH;
2986 #endif /* ndef S_IROTH */
2988 if ((x & S_IRUSR) == S_IRUSR)
2989 *r |= Mono_Posix_FilePermissions_S_IRUSR;
2990 #endif /* ndef S_IRUSR */
2992 if ((x & S_IRWXG) == S_IRWXG)
2993 *r |= Mono_Posix_FilePermissions_S_IRWXG;
2994 #endif /* ndef S_IRWXG */
2996 if ((x & S_IRWXO) == S_IRWXO)
2997 *r |= Mono_Posix_FilePermissions_S_IRWXO;
2998 #endif /* ndef S_IRWXO */
3000 if ((x & S_IRWXU) == S_IRWXU)
3001 *r |= Mono_Posix_FilePermissions_S_IRWXU;
3002 #endif /* ndef S_IRWXU */
3004 if ((x & S_ISGID) == S_ISGID)
3005 *r |= Mono_Posix_FilePermissions_S_ISGID;
3006 #endif /* ndef S_ISGID */
3008 if ((x & S_ISUID) == S_ISUID)
3009 *r |= Mono_Posix_FilePermissions_S_ISUID;
3010 #endif /* ndef S_ISUID */
3012 if ((x & S_ISVTX) == S_ISVTX)
3013 *r |= Mono_Posix_FilePermissions_S_ISVTX;
3014 #endif /* ndef S_ISVTX */
3016 if ((x & S_IWGRP) == S_IWGRP)
3017 *r |= Mono_Posix_FilePermissions_S_IWGRP;
3018 #endif /* ndef S_IWGRP */
3020 if ((x & S_IWOTH) == S_IWOTH)
3021 *r |= Mono_Posix_FilePermissions_S_IWOTH;
3022 #endif /* ndef S_IWOTH */
3024 if ((x & S_IWUSR) == S_IWUSR)
3025 *r |= Mono_Posix_FilePermissions_S_IWUSR;
3026 #endif /* ndef S_IWUSR */
3028 if ((x & S_IXGRP) == S_IXGRP)
3029 *r |= Mono_Posix_FilePermissions_S_IXGRP;
3030 #endif /* ndef S_IXGRP */
3032 if ((x & S_IXOTH) == S_IXOTH)
3033 *r |= Mono_Posix_FilePermissions_S_IXOTH;
3034 #endif /* ndef S_IXOTH */
3036 if ((x & S_IXUSR) == S_IXUSR)
3037 *r |= Mono_Posix_FilePermissions_S_IXUSR;
3038 #endif /* ndef S_IXUSR */
3042 #ifdef HAVE_STRUCT_FLOCK
3044 Mono_Posix_FromFlock (struct Mono_Posix_Flock *from, struct flock *to)
3046 _cnm_return_val_if_overflow (off_t, from->l_start, -1);
3047 _cnm_return_val_if_overflow (off_t, from->l_len, -1);
3048 _cnm_return_val_if_overflow (pid_t, from->l_pid, -1);
3050 memset (to, 0, sizeof(*to));
3052 if (Mono_Posix_FromLockType (from->l_type, &to->l_type) != 0) {
3055 if (Mono_Posix_FromSeekFlags (from->l_whence, &to->l_whence) != 0) {
3058 to->l_start = from->l_start;
3059 to->l_len = from->l_len;
3060 to->l_pid = from->l_pid;
3064 #endif /* ndef HAVE_STRUCT_FLOCK */
3067 #ifdef HAVE_STRUCT_FLOCK
3069 Mono_Posix_ToFlock (struct flock *from, struct Mono_Posix_Flock *to)
3071 _cnm_return_val_if_overflow (gint64, from->l_start, -1);
3072 _cnm_return_val_if_overflow (gint64, from->l_len, -1);
3073 _cnm_return_val_if_overflow (int, from->l_pid, -1);
3075 memset (to, 0, sizeof(*to));
3077 if (Mono_Posix_ToLockType (from->l_type, &to->l_type) != 0) {
3080 if (Mono_Posix_ToSeekFlags (from->l_whence, &to->l_whence) != 0) {
3083 to->l_start = from->l_start;
3084 to->l_len = from->l_len;
3085 to->l_pid = from->l_pid;
3089 #endif /* ndef HAVE_STRUCT_FLOCK */
3092 #ifdef HAVE_STRUCT_IOVEC
3094 Mono_Posix_FromIovec (struct Mono_Posix_Iovec *from, struct iovec *to)
3096 _cnm_return_val_if_overflow (guint64, from->iov_len, -1);
3098 memset (to, 0, sizeof(*to));
3100 to->iov_base = from->iov_base;
3101 to->iov_len = from->iov_len;
3105 #endif /* ndef HAVE_STRUCT_IOVEC */
3108 #ifdef HAVE_STRUCT_IOVEC
3110 Mono_Posix_ToIovec (struct iovec *from, struct Mono_Posix_Iovec *to)
3112 _cnm_return_val_if_overflow (guint64, from->iov_len, -1);
3114 memset (to, 0, sizeof(*to));
3116 to->iov_base = from->iov_base;
3117 to->iov_len = from->iov_len;
3121 #endif /* ndef HAVE_STRUCT_IOVEC */
3124 #ifdef HAVE_STRUCT_LINGER
3126 Mono_Posix_FromLinger (struct Mono_Posix_Linger *from, struct linger *to)
3128 _cnm_return_val_if_overflow (int, from->l_onoff, -1);
3129 _cnm_return_val_if_overflow (int, from->l_linger, -1);
3131 memset (to, 0, sizeof(*to));
3133 to->l_onoff = from->l_onoff;
3134 to->l_linger = from->l_linger;
3138 #endif /* ndef HAVE_STRUCT_LINGER */
3141 #ifdef HAVE_STRUCT_LINGER
3143 Mono_Posix_ToLinger (struct linger *from, struct Mono_Posix_Linger *to)
3145 _cnm_return_val_if_overflow (int, from->l_onoff, -1);
3146 _cnm_return_val_if_overflow (int, from->l_linger, -1);
3148 memset (to, 0, sizeof(*to));
3150 to->l_onoff = from->l_onoff;
3151 to->l_linger = from->l_linger;
3155 #endif /* ndef HAVE_STRUCT_LINGER */
3158 int Mono_Posix_FromLockType (short x, short *r)
3161 if (x == Mono_Posix_LockType_F_RDLCK)
3163 {*r = F_RDLCK; return 0;}
3164 #else /* def F_RDLCK */
3165 {errno = EINVAL; return -1;}
3166 #endif /* ndef F_RDLCK */
3167 if (x == Mono_Posix_LockType_F_UNLCK)
3169 {*r = F_UNLCK; return 0;}
3170 #else /* def F_UNLCK */
3171 {errno = EINVAL; return -1;}
3172 #endif /* ndef F_UNLCK */
3173 if (x == Mono_Posix_LockType_F_WRLCK)
3175 {*r = F_WRLCK; return 0;}
3176 #else /* def F_WRLCK */
3177 {errno = EINVAL; return -1;}
3178 #endif /* ndef F_WRLCK */
3181 errno = EINVAL; return -1;
3184 int Mono_Posix_ToLockType (short x, short *r)
3191 {*r = Mono_Posix_LockType_F_RDLCK; return 0;}
3192 #endif /* ndef F_RDLCK */
3195 {*r = Mono_Posix_LockType_F_UNLCK; return 0;}
3196 #endif /* ndef F_UNLCK */
3199 {*r = Mono_Posix_LockType_F_WRLCK; return 0;}
3200 #endif /* ndef F_WRLCK */
3201 errno = EINVAL; return -1;
3204 int Mono_Posix_FromLockfCommand (int x, int *r)
3207 if (x == Mono_Posix_LockfCommand_F_LOCK)
3209 {*r = F_LOCK; return 0;}
3210 #else /* def F_LOCK */
3211 {errno = EINVAL; return -1;}
3212 #endif /* ndef F_LOCK */
3213 if (x == Mono_Posix_LockfCommand_F_TEST)
3215 {*r = F_TEST; return 0;}
3216 #else /* def F_TEST */
3217 {errno = EINVAL; return -1;}
3218 #endif /* ndef F_TEST */
3219 if (x == Mono_Posix_LockfCommand_F_TLOCK)
3221 {*r = F_TLOCK; return 0;}
3222 #else /* def F_TLOCK */
3223 {errno = EINVAL; return -1;}
3224 #endif /* ndef F_TLOCK */
3225 if (x == Mono_Posix_LockfCommand_F_ULOCK)
3227 {*r = F_ULOCK; return 0;}
3228 #else /* def F_ULOCK */
3229 {errno = EINVAL; return -1;}
3230 #endif /* ndef F_ULOCK */
3233 errno = EINVAL; return -1;
3236 int Mono_Posix_ToLockfCommand (int x, int *r)
3243 {*r = Mono_Posix_LockfCommand_F_LOCK; return 0;}
3244 #endif /* ndef F_LOCK */
3247 {*r = Mono_Posix_LockfCommand_F_TEST; return 0;}
3248 #endif /* ndef F_TEST */
3251 {*r = Mono_Posix_LockfCommand_F_TLOCK; return 0;}
3252 #endif /* ndef F_TLOCK */
3255 {*r = Mono_Posix_LockfCommand_F_ULOCK; return 0;}
3256 #endif /* ndef F_ULOCK */
3257 errno = EINVAL; return -1;
3260 int Mono_Posix_FromMessageFlags (int x, int *r)
3263 if ((x & Mono_Posix_MessageFlags_MSG_CMSG_CLOEXEC) == Mono_Posix_MessageFlags_MSG_CMSG_CLOEXEC)
3264 #ifdef MSG_CMSG_CLOEXEC
3265 *r |= MSG_CMSG_CLOEXEC;
3266 #else /* def MSG_CMSG_CLOEXEC */
3267 {errno = EINVAL; return -1;}
3268 #endif /* ndef MSG_CMSG_CLOEXEC */
3269 if ((x & Mono_Posix_MessageFlags_MSG_CONFIRM) == Mono_Posix_MessageFlags_MSG_CONFIRM)
3272 #else /* def MSG_CONFIRM */
3273 {errno = EINVAL; return -1;}
3274 #endif /* ndef MSG_CONFIRM */
3275 if ((x & Mono_Posix_MessageFlags_MSG_CTRUNC) == Mono_Posix_MessageFlags_MSG_CTRUNC)
3278 #else /* def MSG_CTRUNC */
3279 {errno = EINVAL; return -1;}
3280 #endif /* ndef MSG_CTRUNC */
3281 if ((x & Mono_Posix_MessageFlags_MSG_DONTROUTE) == Mono_Posix_MessageFlags_MSG_DONTROUTE)
3282 #ifdef MSG_DONTROUTE
3283 *r |= MSG_DONTROUTE;
3284 #else /* def MSG_DONTROUTE */
3285 {errno = EINVAL; return -1;}
3286 #endif /* ndef MSG_DONTROUTE */
3287 if ((x & Mono_Posix_MessageFlags_MSG_DONTWAIT) == Mono_Posix_MessageFlags_MSG_DONTWAIT)
3290 #else /* def MSG_DONTWAIT */
3291 {errno = EINVAL; return -1;}
3292 #endif /* ndef MSG_DONTWAIT */
3293 if ((x & Mono_Posix_MessageFlags_MSG_EOR) == Mono_Posix_MessageFlags_MSG_EOR)
3296 #else /* def MSG_EOR */
3297 {errno = EINVAL; return -1;}
3298 #endif /* ndef MSG_EOR */
3299 if ((x & Mono_Posix_MessageFlags_MSG_ERRQUEUE) == Mono_Posix_MessageFlags_MSG_ERRQUEUE)
3302 #else /* def MSG_ERRQUEUE */
3303 {errno = EINVAL; return -1;}
3304 #endif /* ndef MSG_ERRQUEUE */
3305 if ((x & Mono_Posix_MessageFlags_MSG_FASTOPEN) == Mono_Posix_MessageFlags_MSG_FASTOPEN)
3308 #else /* def MSG_FASTOPEN */
3309 {errno = EINVAL; return -1;}
3310 #endif /* ndef MSG_FASTOPEN */
3311 if ((x & Mono_Posix_MessageFlags_MSG_FIN) == Mono_Posix_MessageFlags_MSG_FIN)
3314 #else /* def MSG_FIN */
3315 {errno = EINVAL; return -1;}
3316 #endif /* ndef MSG_FIN */
3317 if ((x & Mono_Posix_MessageFlags_MSG_MORE) == Mono_Posix_MessageFlags_MSG_MORE)
3320 #else /* def MSG_MORE */
3321 {errno = EINVAL; return -1;}
3322 #endif /* ndef MSG_MORE */
3323 if ((x & Mono_Posix_MessageFlags_MSG_NOSIGNAL) == Mono_Posix_MessageFlags_MSG_NOSIGNAL)
3326 #else /* def MSG_NOSIGNAL */
3327 {errno = EINVAL; return -1;}
3328 #endif /* ndef MSG_NOSIGNAL */
3329 if ((x & Mono_Posix_MessageFlags_MSG_OOB) == Mono_Posix_MessageFlags_MSG_OOB)
3332 #else /* def MSG_OOB */
3333 {errno = EINVAL; return -1;}
3334 #endif /* ndef MSG_OOB */
3335 if ((x & Mono_Posix_MessageFlags_MSG_PEEK) == Mono_Posix_MessageFlags_MSG_PEEK)
3338 #else /* def MSG_PEEK */
3339 {errno = EINVAL; return -1;}
3340 #endif /* ndef MSG_PEEK */
3341 if ((x & Mono_Posix_MessageFlags_MSG_PROXY) == Mono_Posix_MessageFlags_MSG_PROXY)
3344 #else /* def MSG_PROXY */
3345 {errno = EINVAL; return -1;}
3346 #endif /* ndef MSG_PROXY */
3347 if ((x & Mono_Posix_MessageFlags_MSG_RST) == Mono_Posix_MessageFlags_MSG_RST)
3350 #else /* def MSG_RST */
3351 {errno = EINVAL; return -1;}
3352 #endif /* ndef MSG_RST */
3353 if ((x & Mono_Posix_MessageFlags_MSG_SYN) == Mono_Posix_MessageFlags_MSG_SYN)
3356 #else /* def MSG_SYN */
3357 {errno = EINVAL; return -1;}
3358 #endif /* ndef MSG_SYN */
3359 if ((x & Mono_Posix_MessageFlags_MSG_TRUNC) == Mono_Posix_MessageFlags_MSG_TRUNC)
3362 #else /* def MSG_TRUNC */
3363 {errno = EINVAL; return -1;}
3364 #endif /* ndef MSG_TRUNC */
3365 if ((x & Mono_Posix_MessageFlags_MSG_WAITALL) == Mono_Posix_MessageFlags_MSG_WAITALL)
3368 #else /* def MSG_WAITALL */
3369 {errno = EINVAL; return -1;}
3370 #endif /* ndef MSG_WAITALL */
3371 if ((x & Mono_Posix_MessageFlags_MSG_WAITFORONE) == Mono_Posix_MessageFlags_MSG_WAITFORONE)
3372 #ifdef MSG_WAITFORONE
3373 *r |= MSG_WAITFORONE;
3374 #else /* def MSG_WAITFORONE */
3375 {errno = EINVAL; return -1;}
3376 #endif /* ndef MSG_WAITFORONE */
3382 int Mono_Posix_ToMessageFlags (int x, int *r)
3387 #ifdef MSG_CMSG_CLOEXEC
3388 if ((x & MSG_CMSG_CLOEXEC) == MSG_CMSG_CLOEXEC)
3389 *r |= Mono_Posix_MessageFlags_MSG_CMSG_CLOEXEC;
3390 #endif /* ndef MSG_CMSG_CLOEXEC */
3392 if ((x & MSG_CONFIRM) == MSG_CONFIRM)
3393 *r |= Mono_Posix_MessageFlags_MSG_CONFIRM;
3394 #endif /* ndef MSG_CONFIRM */
3396 if ((x & MSG_CTRUNC) == MSG_CTRUNC)
3397 *r |= Mono_Posix_MessageFlags_MSG_CTRUNC;
3398 #endif /* ndef MSG_CTRUNC */
3399 #ifdef MSG_DONTROUTE
3400 if ((x & MSG_DONTROUTE) == MSG_DONTROUTE)
3401 *r |= Mono_Posix_MessageFlags_MSG_DONTROUTE;
3402 #endif /* ndef MSG_DONTROUTE */
3404 if ((x & MSG_DONTWAIT) == MSG_DONTWAIT)
3405 *r |= Mono_Posix_MessageFlags_MSG_DONTWAIT;
3406 #endif /* ndef MSG_DONTWAIT */
3408 if ((x & MSG_EOR) == MSG_EOR)
3409 *r |= Mono_Posix_MessageFlags_MSG_EOR;
3410 #endif /* ndef MSG_EOR */
3412 if ((x & MSG_ERRQUEUE) == MSG_ERRQUEUE)
3413 *r |= Mono_Posix_MessageFlags_MSG_ERRQUEUE;
3414 #endif /* ndef MSG_ERRQUEUE */
3416 if ((x & MSG_FASTOPEN) == MSG_FASTOPEN)
3417 *r |= Mono_Posix_MessageFlags_MSG_FASTOPEN;
3418 #endif /* ndef MSG_FASTOPEN */
3420 if ((x & MSG_FIN) == MSG_FIN)
3421 *r |= Mono_Posix_MessageFlags_MSG_FIN;
3422 #endif /* ndef MSG_FIN */
3424 if ((x & MSG_MORE) == MSG_MORE)
3425 *r |= Mono_Posix_MessageFlags_MSG_MORE;
3426 #endif /* ndef MSG_MORE */
3428 if ((x & MSG_NOSIGNAL) == MSG_NOSIGNAL)
3429 *r |= Mono_Posix_MessageFlags_MSG_NOSIGNAL;
3430 #endif /* ndef MSG_NOSIGNAL */
3432 if ((x & MSG_OOB) == MSG_OOB)
3433 *r |= Mono_Posix_MessageFlags_MSG_OOB;
3434 #endif /* ndef MSG_OOB */
3436 if ((x & MSG_PEEK) == MSG_PEEK)
3437 *r |= Mono_Posix_MessageFlags_MSG_PEEK;
3438 #endif /* ndef MSG_PEEK */
3440 if ((x & MSG_PROXY) == MSG_PROXY)
3441 *r |= Mono_Posix_MessageFlags_MSG_PROXY;
3442 #endif /* ndef MSG_PROXY */
3444 if ((x & MSG_RST) == MSG_RST)
3445 *r |= Mono_Posix_MessageFlags_MSG_RST;
3446 #endif /* ndef MSG_RST */
3448 if ((x & MSG_SYN) == MSG_SYN)
3449 *r |= Mono_Posix_MessageFlags_MSG_SYN;
3450 #endif /* ndef MSG_SYN */
3452 if ((x & MSG_TRUNC) == MSG_TRUNC)
3453 *r |= Mono_Posix_MessageFlags_MSG_TRUNC;
3454 #endif /* ndef MSG_TRUNC */
3456 if ((x & MSG_WAITALL) == MSG_WAITALL)
3457 *r |= Mono_Posix_MessageFlags_MSG_WAITALL;
3458 #endif /* ndef MSG_WAITALL */
3459 #ifdef MSG_WAITFORONE
3460 if ((x & MSG_WAITFORONE) == MSG_WAITFORONE)
3461 *r |= Mono_Posix_MessageFlags_MSG_WAITFORONE;
3462 #endif /* ndef MSG_WAITFORONE */
3466 int Mono_Posix_FromMlockallFlags (int x, int *r)
3469 if ((x & Mono_Posix_MlockallFlags_MCL_CURRENT) == Mono_Posix_MlockallFlags_MCL_CURRENT)
3472 #else /* def MCL_CURRENT */
3473 {errno = EINVAL; return -1;}
3474 #endif /* ndef MCL_CURRENT */
3475 if ((x & Mono_Posix_MlockallFlags_MCL_FUTURE) == Mono_Posix_MlockallFlags_MCL_FUTURE)
3478 #else /* def MCL_FUTURE */
3479 {errno = EINVAL; return -1;}
3480 #endif /* ndef MCL_FUTURE */
3486 int Mono_Posix_ToMlockallFlags (int x, int *r)
3492 if ((x & MCL_CURRENT) == MCL_CURRENT)
3493 *r |= Mono_Posix_MlockallFlags_MCL_CURRENT;
3494 #endif /* ndef MCL_CURRENT */
3496 if ((x & MCL_FUTURE) == MCL_FUTURE)
3497 *r |= Mono_Posix_MlockallFlags_MCL_FUTURE;
3498 #endif /* ndef MCL_FUTURE */
3502 int Mono_Posix_FromMmapFlags (int x, int *r)
3505 if ((x & Mono_Posix_MmapFlags_MAP_ANON) == Mono_Posix_MmapFlags_MAP_ANON)
3508 #else /* def MAP_ANON */
3509 {errno = EINVAL; return -1;}
3510 #endif /* ndef MAP_ANON */
3511 if ((x & Mono_Posix_MmapFlags_MAP_ANONYMOUS) == Mono_Posix_MmapFlags_MAP_ANONYMOUS)
3512 #ifdef MAP_ANONYMOUS
3513 *r |= MAP_ANONYMOUS;
3514 #else /* def MAP_ANONYMOUS */
3515 {errno = EINVAL; return -1;}
3516 #endif /* ndef MAP_ANONYMOUS */
3517 if ((x & Mono_Posix_MmapFlags_MAP_DENYWRITE) == Mono_Posix_MmapFlags_MAP_DENYWRITE)
3518 #ifdef MAP_DENYWRITE
3519 *r |= MAP_DENYWRITE;
3520 #else /* def MAP_DENYWRITE */
3521 {errno = EINVAL; return -1;}
3522 #endif /* ndef MAP_DENYWRITE */
3523 if ((x & Mono_Posix_MmapFlags_MAP_EXECUTABLE) == Mono_Posix_MmapFlags_MAP_EXECUTABLE)
3524 #ifdef MAP_EXECUTABLE
3525 *r |= MAP_EXECUTABLE;
3526 #else /* def MAP_EXECUTABLE */
3527 {errno = EINVAL; return -1;}
3528 #endif /* ndef MAP_EXECUTABLE */
3529 if ((x & Mono_Posix_MmapFlags_MAP_FILE) == Mono_Posix_MmapFlags_MAP_FILE)
3532 #else /* def MAP_FILE */
3533 {errno = EINVAL; return -1;}
3534 #endif /* ndef MAP_FILE */
3535 if ((x & Mono_Posix_MmapFlags_MAP_FIXED) == Mono_Posix_MmapFlags_MAP_FIXED)
3538 #else /* def MAP_FIXED */
3539 {errno = EINVAL; return -1;}
3540 #endif /* ndef MAP_FIXED */
3541 if ((x & Mono_Posix_MmapFlags_MAP_GROWSDOWN) == Mono_Posix_MmapFlags_MAP_GROWSDOWN)
3542 #ifdef MAP_GROWSDOWN
3543 *r |= MAP_GROWSDOWN;
3544 #else /* def MAP_GROWSDOWN */
3545 {errno = EINVAL; return -1;}
3546 #endif /* ndef MAP_GROWSDOWN */
3547 if ((x & Mono_Posix_MmapFlags_MAP_LOCKED) == Mono_Posix_MmapFlags_MAP_LOCKED)
3550 #else /* def MAP_LOCKED */
3551 {errno = EINVAL; return -1;}
3552 #endif /* ndef MAP_LOCKED */
3553 if ((x & Mono_Posix_MmapFlags_MAP_NONBLOCK) == Mono_Posix_MmapFlags_MAP_NONBLOCK)
3556 #else /* def MAP_NONBLOCK */
3557 {errno = EINVAL; return -1;}
3558 #endif /* ndef MAP_NONBLOCK */
3559 if ((x & Mono_Posix_MmapFlags_MAP_NORESERVE) == Mono_Posix_MmapFlags_MAP_NORESERVE)
3560 #ifdef MAP_NORESERVE
3561 *r |= MAP_NORESERVE;
3562 #else /* def MAP_NORESERVE */
3563 {errno = EINVAL; return -1;}
3564 #endif /* ndef MAP_NORESERVE */
3565 if ((x & Mono_Posix_MmapFlags_MAP_POPULATE) == Mono_Posix_MmapFlags_MAP_POPULATE)
3568 #else /* def MAP_POPULATE */
3569 {errno = EINVAL; return -1;}
3570 #endif /* ndef MAP_POPULATE */
3571 if ((x & Mono_Posix_MmapFlags_MAP_PRIVATE) == Mono_Posix_MmapFlags_MAP_PRIVATE)
3574 #else /* def MAP_PRIVATE */
3575 {errno = EINVAL; return -1;}
3576 #endif /* ndef MAP_PRIVATE */
3577 if ((x & Mono_Posix_MmapFlags_MAP_SHARED) == Mono_Posix_MmapFlags_MAP_SHARED)
3580 #else /* def MAP_SHARED */
3581 {errno = EINVAL; return -1;}
3582 #endif /* ndef MAP_SHARED */
3583 if ((x & Mono_Posix_MmapFlags_MAP_TYPE) == Mono_Posix_MmapFlags_MAP_TYPE)
3586 #else /* def MAP_TYPE */
3587 {errno = EINVAL; return -1;}
3588 #endif /* ndef MAP_TYPE */
3594 int Mono_Posix_ToMmapFlags (int x, int *r)
3600 if ((x & MAP_ANON) == MAP_ANON)
3601 *r |= Mono_Posix_MmapFlags_MAP_ANON;
3602 #endif /* ndef MAP_ANON */
3603 #ifdef MAP_ANONYMOUS
3604 if ((x & MAP_ANONYMOUS) == MAP_ANONYMOUS)
3605 *r |= Mono_Posix_MmapFlags_MAP_ANONYMOUS;
3606 #endif /* ndef MAP_ANONYMOUS */
3607 #ifdef MAP_DENYWRITE
3608 if ((x & MAP_DENYWRITE) == MAP_DENYWRITE)
3609 *r |= Mono_Posix_MmapFlags_MAP_DENYWRITE;
3610 #endif /* ndef MAP_DENYWRITE */
3611 #ifdef MAP_EXECUTABLE
3612 if ((x & MAP_EXECUTABLE) == MAP_EXECUTABLE)
3613 *r |= Mono_Posix_MmapFlags_MAP_EXECUTABLE;
3614 #endif /* ndef MAP_EXECUTABLE */
3616 if ((x & MAP_FILE) == MAP_FILE)
3617 *r |= Mono_Posix_MmapFlags_MAP_FILE;
3618 #endif /* ndef MAP_FILE */
3620 if ((x & MAP_FIXED) == MAP_FIXED)
3621 *r |= Mono_Posix_MmapFlags_MAP_FIXED;
3622 #endif /* ndef MAP_FIXED */
3623 #ifdef MAP_GROWSDOWN
3624 if ((x & MAP_GROWSDOWN) == MAP_GROWSDOWN)
3625 *r |= Mono_Posix_MmapFlags_MAP_GROWSDOWN;
3626 #endif /* ndef MAP_GROWSDOWN */
3628 if ((x & MAP_LOCKED) == MAP_LOCKED)
3629 *r |= Mono_Posix_MmapFlags_MAP_LOCKED;
3630 #endif /* ndef MAP_LOCKED */
3632 if ((x & MAP_NONBLOCK) == MAP_NONBLOCK)
3633 *r |= Mono_Posix_MmapFlags_MAP_NONBLOCK;
3634 #endif /* ndef MAP_NONBLOCK */
3635 #ifdef MAP_NORESERVE
3636 if ((x & MAP_NORESERVE) == MAP_NORESERVE)
3637 *r |= Mono_Posix_MmapFlags_MAP_NORESERVE;
3638 #endif /* ndef MAP_NORESERVE */
3640 if ((x & MAP_POPULATE) == MAP_POPULATE)
3641 *r |= Mono_Posix_MmapFlags_MAP_POPULATE;
3642 #endif /* ndef MAP_POPULATE */
3644 if ((x & MAP_PRIVATE) == MAP_PRIVATE)
3645 *r |= Mono_Posix_MmapFlags_MAP_PRIVATE;
3646 #endif /* ndef MAP_PRIVATE */
3648 if ((x & MAP_SHARED) == MAP_SHARED)
3649 *r |= Mono_Posix_MmapFlags_MAP_SHARED;
3650 #endif /* ndef MAP_SHARED */
3652 if ((x & MAP_TYPE) == MAP_TYPE)
3653 *r |= Mono_Posix_MmapFlags_MAP_TYPE;
3654 #endif /* ndef MAP_TYPE */
3658 int Mono_Posix_FromMmapProts (int x, int *r)
3661 if ((x & Mono_Posix_MmapProts_PROT_EXEC) == Mono_Posix_MmapProts_PROT_EXEC)
3664 #else /* def PROT_EXEC */
3665 {errno = EINVAL; return -1;}
3666 #endif /* ndef PROT_EXEC */
3667 if ((x & Mono_Posix_MmapProts_PROT_GROWSDOWN) == Mono_Posix_MmapProts_PROT_GROWSDOWN)
3668 #ifdef PROT_GROWSDOWN
3669 *r |= PROT_GROWSDOWN;
3670 #else /* def PROT_GROWSDOWN */
3671 {errno = EINVAL; return -1;}
3672 #endif /* ndef PROT_GROWSDOWN */
3673 if ((x & Mono_Posix_MmapProts_PROT_GROWSUP) == Mono_Posix_MmapProts_PROT_GROWSUP)
3676 #else /* def PROT_GROWSUP */
3677 {errno = EINVAL; return -1;}
3678 #endif /* ndef PROT_GROWSUP */
3679 if ((x & Mono_Posix_MmapProts_PROT_NONE) == Mono_Posix_MmapProts_PROT_NONE)
3682 #else /* def PROT_NONE */
3683 {errno = EINVAL; return -1;}
3684 #endif /* ndef PROT_NONE */
3685 if ((x & Mono_Posix_MmapProts_PROT_READ) == Mono_Posix_MmapProts_PROT_READ)
3688 #else /* def PROT_READ */
3689 {errno = EINVAL; return -1;}
3690 #endif /* ndef PROT_READ */
3691 if ((x & Mono_Posix_MmapProts_PROT_WRITE) == Mono_Posix_MmapProts_PROT_WRITE)
3694 #else /* def PROT_WRITE */
3695 {errno = EINVAL; return -1;}
3696 #endif /* ndef PROT_WRITE */
3702 int Mono_Posix_ToMmapProts (int x, int *r)
3708 if ((x & PROT_EXEC) == PROT_EXEC)
3709 *r |= Mono_Posix_MmapProts_PROT_EXEC;
3710 #endif /* ndef PROT_EXEC */
3711 #ifdef PROT_GROWSDOWN
3712 if ((x & PROT_GROWSDOWN) == PROT_GROWSDOWN)
3713 *r |= Mono_Posix_MmapProts_PROT_GROWSDOWN;
3714 #endif /* ndef PROT_GROWSDOWN */
3716 if ((x & PROT_GROWSUP) == PROT_GROWSUP)
3717 *r |= Mono_Posix_MmapProts_PROT_GROWSUP;
3718 #endif /* ndef PROT_GROWSUP */
3720 if ((x & PROT_NONE) == PROT_NONE)
3721 *r |= Mono_Posix_MmapProts_PROT_NONE;
3722 #endif /* ndef PROT_NONE */
3724 if ((x & PROT_READ) == PROT_READ)
3725 *r |= Mono_Posix_MmapProts_PROT_READ;
3726 #endif /* ndef PROT_READ */
3728 if ((x & PROT_WRITE) == PROT_WRITE)
3729 *r |= Mono_Posix_MmapProts_PROT_WRITE;
3730 #endif /* ndef PROT_WRITE */
3734 int Mono_Posix_FromMountFlags (guint64 x, guint64 *r)
3737 if ((x & Mono_Posix_MountFlags_ST_APPEND) == Mono_Posix_MountFlags_ST_APPEND)
3740 #else /* def ST_APPEND */
3741 {errno = EINVAL; return -1;}
3742 #endif /* ndef ST_APPEND */
3743 if ((x & Mono_Posix_MountFlags_ST_BIND) == Mono_Posix_MountFlags_ST_BIND)
3746 #else /* def ST_BIND */
3747 {errno = EINVAL; return -1;}
3748 #endif /* ndef ST_BIND */
3749 if ((x & Mono_Posix_MountFlags_ST_IMMUTABLE) == Mono_Posix_MountFlags_ST_IMMUTABLE)
3752 #else /* def ST_IMMUTABLE */
3753 {errno = EINVAL; return -1;}
3754 #endif /* ndef ST_IMMUTABLE */
3755 if ((x & Mono_Posix_MountFlags_ST_MANDLOCK) == Mono_Posix_MountFlags_ST_MANDLOCK)
3758 #else /* def ST_MANDLOCK */
3759 {errno = EINVAL; return -1;}
3760 #endif /* ndef ST_MANDLOCK */
3761 if ((x & Mono_Posix_MountFlags_ST_NOATIME) == Mono_Posix_MountFlags_ST_NOATIME)
3764 #else /* def ST_NOATIME */
3765 {errno = EINVAL; return -1;}
3766 #endif /* ndef ST_NOATIME */
3767 if ((x & Mono_Posix_MountFlags_ST_NODEV) == Mono_Posix_MountFlags_ST_NODEV)
3770 #else /* def ST_NODEV */
3771 {errno = EINVAL; return -1;}
3772 #endif /* ndef ST_NODEV */
3773 if ((x & Mono_Posix_MountFlags_ST_NODIRATIME) == Mono_Posix_MountFlags_ST_NODIRATIME)
3774 #ifdef ST_NODIRATIME
3775 *r |= ST_NODIRATIME;
3776 #else /* def ST_NODIRATIME */
3777 {errno = EINVAL; return -1;}
3778 #endif /* ndef ST_NODIRATIME */
3779 if ((x & Mono_Posix_MountFlags_ST_NOEXEC) == Mono_Posix_MountFlags_ST_NOEXEC)
3782 #else /* def ST_NOEXEC */
3783 {errno = EINVAL; return -1;}
3784 #endif /* ndef ST_NOEXEC */
3785 if ((x & Mono_Posix_MountFlags_ST_NOSUID) == Mono_Posix_MountFlags_ST_NOSUID)
3788 #else /* def ST_NOSUID */
3789 {errno = EINVAL; return -1;}
3790 #endif /* ndef ST_NOSUID */
3791 if ((x & Mono_Posix_MountFlags_ST_RDONLY) == Mono_Posix_MountFlags_ST_RDONLY)
3794 #else /* def ST_RDONLY */
3795 {errno = EINVAL; return -1;}
3796 #endif /* ndef ST_RDONLY */
3797 if ((x & Mono_Posix_MountFlags_ST_REMOUNT) == Mono_Posix_MountFlags_ST_REMOUNT)
3800 #else /* def ST_REMOUNT */
3801 {errno = EINVAL; return -1;}
3802 #endif /* ndef ST_REMOUNT */
3803 if ((x & Mono_Posix_MountFlags_ST_SYNCHRONOUS) == Mono_Posix_MountFlags_ST_SYNCHRONOUS)
3804 #ifdef ST_SYNCHRONOUS
3805 *r |= ST_SYNCHRONOUS;
3806 #else /* def ST_SYNCHRONOUS */
3807 {errno = EINVAL; return -1;}
3808 #endif /* ndef ST_SYNCHRONOUS */
3809 if ((x & Mono_Posix_MountFlags_ST_WRITE) == Mono_Posix_MountFlags_ST_WRITE)
3812 #else /* def ST_WRITE */
3813 {errno = EINVAL; return -1;}
3814 #endif /* ndef ST_WRITE */
3820 int Mono_Posix_ToMountFlags (guint64 x, guint64 *r)
3826 if ((x & ST_APPEND) == ST_APPEND)
3827 *r |= Mono_Posix_MountFlags_ST_APPEND;
3828 #endif /* ndef ST_APPEND */
3830 if ((x & ST_BIND) == ST_BIND)
3831 *r |= Mono_Posix_MountFlags_ST_BIND;
3832 #endif /* ndef ST_BIND */
3834 if ((x & ST_IMMUTABLE) == ST_IMMUTABLE)
3835 *r |= Mono_Posix_MountFlags_ST_IMMUTABLE;
3836 #endif /* ndef ST_IMMUTABLE */
3838 if ((x & ST_MANDLOCK) == ST_MANDLOCK)
3839 *r |= Mono_Posix_MountFlags_ST_MANDLOCK;
3840 #endif /* ndef ST_MANDLOCK */
3842 if ((x & ST_NOATIME) == ST_NOATIME)
3843 *r |= Mono_Posix_MountFlags_ST_NOATIME;
3844 #endif /* ndef ST_NOATIME */
3846 if ((x & ST_NODEV) == ST_NODEV)
3847 *r |= Mono_Posix_MountFlags_ST_NODEV;
3848 #endif /* ndef ST_NODEV */
3849 #ifdef ST_NODIRATIME
3850 if ((x & ST_NODIRATIME) == ST_NODIRATIME)
3851 *r |= Mono_Posix_MountFlags_ST_NODIRATIME;
3852 #endif /* ndef ST_NODIRATIME */
3854 if ((x & ST_NOEXEC) == ST_NOEXEC)
3855 *r |= Mono_Posix_MountFlags_ST_NOEXEC;
3856 #endif /* ndef ST_NOEXEC */
3858 if ((x & ST_NOSUID) == ST_NOSUID)
3859 *r |= Mono_Posix_MountFlags_ST_NOSUID;
3860 #endif /* ndef ST_NOSUID */
3862 if ((x & ST_RDONLY) == ST_RDONLY)
3863 *r |= Mono_Posix_MountFlags_ST_RDONLY;
3864 #endif /* ndef ST_RDONLY */
3866 if ((x & ST_REMOUNT) == ST_REMOUNT)
3867 *r |= Mono_Posix_MountFlags_ST_REMOUNT;
3868 #endif /* ndef ST_REMOUNT */
3869 #ifdef ST_SYNCHRONOUS
3870 if ((x & ST_SYNCHRONOUS) == ST_SYNCHRONOUS)
3871 *r |= Mono_Posix_MountFlags_ST_SYNCHRONOUS;
3872 #endif /* ndef ST_SYNCHRONOUS */
3874 if ((x & ST_WRITE) == ST_WRITE)
3875 *r |= Mono_Posix_MountFlags_ST_WRITE;
3876 #endif /* ndef ST_WRITE */
3880 int Mono_Posix_FromMremapFlags (guint64 x, guint64 *r)
3883 if ((x & Mono_Posix_MremapFlags_MREMAP_MAYMOVE) == Mono_Posix_MremapFlags_MREMAP_MAYMOVE)
3884 #ifdef MREMAP_MAYMOVE
3885 *r |= MREMAP_MAYMOVE;
3886 #else /* def MREMAP_MAYMOVE */
3887 {errno = EINVAL; return -1;}
3888 #endif /* ndef MREMAP_MAYMOVE */
3894 int Mono_Posix_ToMremapFlags (guint64 x, guint64 *r)
3899 #ifdef MREMAP_MAYMOVE
3900 if ((x & MREMAP_MAYMOVE) == MREMAP_MAYMOVE)
3901 *r |= Mono_Posix_MremapFlags_MREMAP_MAYMOVE;
3902 #endif /* ndef MREMAP_MAYMOVE */
3906 int Mono_Posix_FromMsyncFlags (int x, int *r)
3909 if ((x & Mono_Posix_MsyncFlags_MS_ASYNC) == Mono_Posix_MsyncFlags_MS_ASYNC)
3912 #else /* def MS_ASYNC */
3913 {errno = EINVAL; return -1;}
3914 #endif /* ndef MS_ASYNC */
3915 if ((x & Mono_Posix_MsyncFlags_MS_INVALIDATE) == Mono_Posix_MsyncFlags_MS_INVALIDATE)
3916 #ifdef MS_INVALIDATE
3917 *r |= MS_INVALIDATE;
3918 #else /* def MS_INVALIDATE */
3919 {errno = EINVAL; return -1;}
3920 #endif /* ndef MS_INVALIDATE */
3921 if ((x & Mono_Posix_MsyncFlags_MS_SYNC) == Mono_Posix_MsyncFlags_MS_SYNC)
3924 #else /* def MS_SYNC */
3925 {errno = EINVAL; return -1;}
3926 #endif /* ndef MS_SYNC */
3932 int Mono_Posix_ToMsyncFlags (int x, int *r)
3938 if ((x & MS_ASYNC) == MS_ASYNC)
3939 *r |= Mono_Posix_MsyncFlags_MS_ASYNC;
3940 #endif /* ndef MS_ASYNC */
3941 #ifdef MS_INVALIDATE
3942 if ((x & MS_INVALIDATE) == MS_INVALIDATE)
3943 *r |= Mono_Posix_MsyncFlags_MS_INVALIDATE;
3944 #endif /* ndef MS_INVALIDATE */
3946 if ((x & MS_SYNC) == MS_SYNC)
3947 *r |= Mono_Posix_MsyncFlags_MS_SYNC;
3948 #endif /* ndef MS_SYNC */
3952 int Mono_Posix_FromOpenFlags (int x, int *r)
3955 if ((x & Mono_Posix_OpenFlags_O_APPEND) == Mono_Posix_OpenFlags_O_APPEND)
3958 #else /* def O_APPEND */
3959 {errno = EINVAL; return -1;}
3960 #endif /* ndef O_APPEND */
3961 if ((x & Mono_Posix_OpenFlags_O_ASYNC) == Mono_Posix_OpenFlags_O_ASYNC)
3964 #else /* def O_ASYNC */
3965 {errno = EINVAL; return -1;}
3966 #endif /* ndef O_ASYNC */
3967 if ((x & Mono_Posix_OpenFlags_O_CLOEXEC) == Mono_Posix_OpenFlags_O_CLOEXEC)
3970 #else /* def O_CLOEXEC */
3971 {errno = EINVAL; return -1;}
3972 #endif /* ndef O_CLOEXEC */
3973 if ((x & Mono_Posix_OpenFlags_O_CREAT) == Mono_Posix_OpenFlags_O_CREAT)
3976 #else /* def O_CREAT */
3977 {errno = EINVAL; return -1;}
3978 #endif /* ndef O_CREAT */
3979 if ((x & Mono_Posix_OpenFlags_O_DIRECT) == Mono_Posix_OpenFlags_O_DIRECT)
3982 #else /* def O_DIRECT */
3983 {errno = EINVAL; return -1;}
3984 #endif /* ndef O_DIRECT */
3985 if ((x & Mono_Posix_OpenFlags_O_DIRECTORY) == Mono_Posix_OpenFlags_O_DIRECTORY)
3988 #else /* def O_DIRECTORY */
3989 {errno = EINVAL; return -1;}
3990 #endif /* ndef O_DIRECTORY */
3991 if ((x & Mono_Posix_OpenFlags_O_EXCL) == Mono_Posix_OpenFlags_O_EXCL)
3994 #else /* def O_EXCL */
3995 {errno = EINVAL; return -1;}
3996 #endif /* ndef O_EXCL */
3997 if ((x & Mono_Posix_OpenFlags_O_LARGEFILE) == Mono_Posix_OpenFlags_O_LARGEFILE)
4000 #else /* def O_LARGEFILE */
4001 {errno = EINVAL; return -1;}
4002 #endif /* ndef O_LARGEFILE */
4003 if ((x & Mono_Posix_OpenFlags_O_NOCTTY) == Mono_Posix_OpenFlags_O_NOCTTY)
4006 #else /* def O_NOCTTY */
4007 {errno = EINVAL; return -1;}
4008 #endif /* ndef O_NOCTTY */
4009 if ((x & Mono_Posix_OpenFlags_O_NOFOLLOW) == Mono_Posix_OpenFlags_O_NOFOLLOW)
4012 #else /* def O_NOFOLLOW */
4013 {errno = EINVAL; return -1;}
4014 #endif /* ndef O_NOFOLLOW */
4015 if ((x & Mono_Posix_OpenFlags_O_NONBLOCK) == Mono_Posix_OpenFlags_O_NONBLOCK)
4018 #else /* def O_NONBLOCK */
4019 {errno = EINVAL; return -1;}
4020 #endif /* ndef O_NONBLOCK */
4021 if ((x & Mono_Posix_OpenFlags_O_PATH) == Mono_Posix_OpenFlags_O_PATH)
4024 #else /* def O_PATH */
4025 {errno = EINVAL; return -1;}
4026 #endif /* ndef O_PATH */
4027 if ((x & Mono_Posix_OpenFlags_O_RDONLY) == Mono_Posix_OpenFlags_O_RDONLY)
4030 #else /* def O_RDONLY */
4031 {errno = EINVAL; return -1;}
4032 #endif /* ndef O_RDONLY */
4033 if ((x & Mono_Posix_OpenFlags_O_RDWR) == Mono_Posix_OpenFlags_O_RDWR)
4036 #else /* def O_RDWR */
4037 {errno = EINVAL; return -1;}
4038 #endif /* ndef O_RDWR */
4039 if ((x & Mono_Posix_OpenFlags_O_SYNC) == Mono_Posix_OpenFlags_O_SYNC)
4042 #else /* def O_SYNC */
4043 {errno = EINVAL; return -1;}
4044 #endif /* ndef O_SYNC */
4045 if ((x & Mono_Posix_OpenFlags_O_TRUNC) == Mono_Posix_OpenFlags_O_TRUNC)
4048 #else /* def O_TRUNC */
4049 {errno = EINVAL; return -1;}
4050 #endif /* ndef O_TRUNC */
4051 if ((x & Mono_Posix_OpenFlags_O_WRONLY) == Mono_Posix_OpenFlags_O_WRONLY)
4054 #else /* def O_WRONLY */
4055 {errno = EINVAL; return -1;}
4056 #endif /* ndef O_WRONLY */
4062 int Mono_Posix_ToOpenFlags (int x, int *r)
4068 if ((x & O_APPEND) == O_APPEND)
4069 *r |= Mono_Posix_OpenFlags_O_APPEND;
4070 #endif /* ndef O_APPEND */
4072 if ((x & O_ASYNC) == O_ASYNC)
4073 *r |= Mono_Posix_OpenFlags_O_ASYNC;
4074 #endif /* ndef O_ASYNC */
4076 if ((x & O_CLOEXEC) == O_CLOEXEC)
4077 *r |= Mono_Posix_OpenFlags_O_CLOEXEC;
4078 #endif /* ndef O_CLOEXEC */
4080 if ((x & O_CREAT) == O_CREAT)
4081 *r |= Mono_Posix_OpenFlags_O_CREAT;
4082 #endif /* ndef O_CREAT */
4084 if ((x & O_DIRECT) == O_DIRECT)
4085 *r |= Mono_Posix_OpenFlags_O_DIRECT;
4086 #endif /* ndef O_DIRECT */
4088 if ((x & O_DIRECTORY) == O_DIRECTORY)
4089 *r |= Mono_Posix_OpenFlags_O_DIRECTORY;
4090 #endif /* ndef O_DIRECTORY */
4092 if ((x & O_EXCL) == O_EXCL)
4093 *r |= Mono_Posix_OpenFlags_O_EXCL;
4094 #endif /* ndef O_EXCL */
4096 if ((x & O_LARGEFILE) == O_LARGEFILE)
4097 *r |= Mono_Posix_OpenFlags_O_LARGEFILE;
4098 #endif /* ndef O_LARGEFILE */
4100 if ((x & O_NOCTTY) == O_NOCTTY)
4101 *r |= Mono_Posix_OpenFlags_O_NOCTTY;
4102 #endif /* ndef O_NOCTTY */
4104 if ((x & O_NOFOLLOW) == O_NOFOLLOW)
4105 *r |= Mono_Posix_OpenFlags_O_NOFOLLOW;
4106 #endif /* ndef O_NOFOLLOW */
4108 if ((x & O_NONBLOCK) == O_NONBLOCK)
4109 *r |= Mono_Posix_OpenFlags_O_NONBLOCK;
4110 #endif /* ndef O_NONBLOCK */
4112 if ((x & O_PATH) == O_PATH)
4113 *r |= Mono_Posix_OpenFlags_O_PATH;
4114 #endif /* ndef O_PATH */
4116 if ((x & O_RDONLY) == O_RDONLY)
4117 *r |= Mono_Posix_OpenFlags_O_RDONLY;
4118 #endif /* ndef O_RDONLY */
4120 if ((x & O_RDWR) == O_RDWR)
4121 *r |= Mono_Posix_OpenFlags_O_RDWR;
4122 #endif /* ndef O_RDWR */
4124 if ((x & O_SYNC) == O_SYNC)
4125 *r |= Mono_Posix_OpenFlags_O_SYNC;
4126 #endif /* ndef O_SYNC */
4128 if ((x & O_TRUNC) == O_TRUNC)
4129 *r |= Mono_Posix_OpenFlags_O_TRUNC;
4130 #endif /* ndef O_TRUNC */
4132 if ((x & O_WRONLY) == O_WRONLY)
4133 *r |= Mono_Posix_OpenFlags_O_WRONLY;
4134 #endif /* ndef O_WRONLY */
4138 int Mono_Posix_FromPathconfName (int x, int *r)
4141 if (x == Mono_Posix_PathconfName__PC_2_SYMLINKS)
4142 #ifdef _PC_2_SYMLINKS
4143 {*r = _PC_2_SYMLINKS; return 0;}
4144 #else /* def _PC_2_SYMLINKS */
4145 {errno = EINVAL; return -1;}
4146 #endif /* ndef _PC_2_SYMLINKS */
4147 if (x == Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN)
4148 #ifdef _PC_ALLOC_SIZE_MIN
4149 {*r = _PC_ALLOC_SIZE_MIN; return 0;}
4150 #else /* def _PC_ALLOC_SIZE_MIN */
4151 {errno = EINVAL; return -1;}
4152 #endif /* ndef _PC_ALLOC_SIZE_MIN */
4153 if (x == Mono_Posix_PathconfName__PC_ASYNC_IO)
4155 {*r = _PC_ASYNC_IO; return 0;}
4156 #else /* def _PC_ASYNC_IO */
4157 {errno = EINVAL; return -1;}
4158 #endif /* ndef _PC_ASYNC_IO */
4159 if (x == Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED)
4160 #ifdef _PC_CHOWN_RESTRICTED
4161 {*r = _PC_CHOWN_RESTRICTED; return 0;}
4162 #else /* def _PC_CHOWN_RESTRICTED */
4163 {errno = EINVAL; return -1;}
4164 #endif /* ndef _PC_CHOWN_RESTRICTED */
4165 if (x == Mono_Posix_PathconfName__PC_FILESIZEBITS)
4166 #ifdef _PC_FILESIZEBITS
4167 {*r = _PC_FILESIZEBITS; return 0;}
4168 #else /* def _PC_FILESIZEBITS */
4169 {errno = EINVAL; return -1;}
4170 #endif /* ndef _PC_FILESIZEBITS */
4171 if (x == Mono_Posix_PathconfName__PC_LINK_MAX)
4173 {*r = _PC_LINK_MAX; return 0;}
4174 #else /* def _PC_LINK_MAX */
4175 {errno = EINVAL; return -1;}
4176 #endif /* ndef _PC_LINK_MAX */
4177 if (x == Mono_Posix_PathconfName__PC_MAX_CANON)
4178 #ifdef _PC_MAX_CANON
4179 {*r = _PC_MAX_CANON; return 0;}
4180 #else /* def _PC_MAX_CANON */
4181 {errno = EINVAL; return -1;}
4182 #endif /* ndef _PC_MAX_CANON */
4183 if (x == Mono_Posix_PathconfName__PC_MAX_INPUT)
4184 #ifdef _PC_MAX_INPUT
4185 {*r = _PC_MAX_INPUT; return 0;}
4186 #else /* def _PC_MAX_INPUT */
4187 {errno = EINVAL; return -1;}
4188 #endif /* ndef _PC_MAX_INPUT */
4189 if (x == Mono_Posix_PathconfName__PC_NAME_MAX)
4191 {*r = _PC_NAME_MAX; return 0;}
4192 #else /* def _PC_NAME_MAX */
4193 {errno = EINVAL; return -1;}
4194 #endif /* ndef _PC_NAME_MAX */
4195 if (x == Mono_Posix_PathconfName__PC_NO_TRUNC)
4197 {*r = _PC_NO_TRUNC; return 0;}
4198 #else /* def _PC_NO_TRUNC */
4199 {errno = EINVAL; return -1;}
4200 #endif /* ndef _PC_NO_TRUNC */
4201 if (x == Mono_Posix_PathconfName__PC_PATH_MAX)
4203 {*r = _PC_PATH_MAX; return 0;}
4204 #else /* def _PC_PATH_MAX */
4205 {errno = EINVAL; return -1;}
4206 #endif /* ndef _PC_PATH_MAX */
4207 if (x == Mono_Posix_PathconfName__PC_PIPE_BUF)
4209 {*r = _PC_PIPE_BUF; return 0;}
4210 #else /* def _PC_PIPE_BUF */
4211 {errno = EINVAL; return -1;}
4212 #endif /* ndef _PC_PIPE_BUF */
4213 if (x == Mono_Posix_PathconfName__PC_PRIO_IO)
4215 {*r = _PC_PRIO_IO; return 0;}
4216 #else /* def _PC_PRIO_IO */
4217 {errno = EINVAL; return -1;}
4218 #endif /* ndef _PC_PRIO_IO */
4219 if (x == Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE)
4220 #ifdef _PC_REC_INCR_XFER_SIZE
4221 {*r = _PC_REC_INCR_XFER_SIZE; return 0;}
4222 #else /* def _PC_REC_INCR_XFER_SIZE */
4223 {errno = EINVAL; return -1;}
4224 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
4225 if (x == Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE)
4226 #ifdef _PC_REC_MAX_XFER_SIZE
4227 {*r = _PC_REC_MAX_XFER_SIZE; return 0;}
4228 #else /* def _PC_REC_MAX_XFER_SIZE */
4229 {errno = EINVAL; return -1;}
4230 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
4231 if (x == Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE)
4232 #ifdef _PC_REC_MIN_XFER_SIZE
4233 {*r = _PC_REC_MIN_XFER_SIZE; return 0;}
4234 #else /* def _PC_REC_MIN_XFER_SIZE */
4235 {errno = EINVAL; return -1;}
4236 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
4237 if (x == Mono_Posix_PathconfName__PC_REC_XFER_ALIGN)
4238 #ifdef _PC_REC_XFER_ALIGN
4239 {*r = _PC_REC_XFER_ALIGN; return 0;}
4240 #else /* def _PC_REC_XFER_ALIGN */
4241 {errno = EINVAL; return -1;}
4242 #endif /* ndef _PC_REC_XFER_ALIGN */
4243 if (x == Mono_Posix_PathconfName__PC_SOCK_MAXBUF)
4244 #ifdef _PC_SOCK_MAXBUF
4245 {*r = _PC_SOCK_MAXBUF; return 0;}
4246 #else /* def _PC_SOCK_MAXBUF */
4247 {errno = EINVAL; return -1;}
4248 #endif /* ndef _PC_SOCK_MAXBUF */
4249 if (x == Mono_Posix_PathconfName__PC_SYMLINK_MAX)
4250 #ifdef _PC_SYMLINK_MAX
4251 {*r = _PC_SYMLINK_MAX; return 0;}
4252 #else /* def _PC_SYMLINK_MAX */
4253 {errno = EINVAL; return -1;}
4254 #endif /* ndef _PC_SYMLINK_MAX */
4255 if (x == Mono_Posix_PathconfName__PC_SYNC_IO)
4257 {*r = _PC_SYNC_IO; return 0;}
4258 #else /* def _PC_SYNC_IO */
4259 {errno = EINVAL; return -1;}
4260 #endif /* ndef _PC_SYNC_IO */
4261 if (x == Mono_Posix_PathconfName__PC_VDISABLE)
4263 {*r = _PC_VDISABLE; return 0;}
4264 #else /* def _PC_VDISABLE */
4265 {errno = EINVAL; return -1;}
4266 #endif /* ndef _PC_VDISABLE */
4269 errno = EINVAL; return -1;
4272 int Mono_Posix_ToPathconfName (int x, int *r)
4277 #ifdef _PC_2_SYMLINKS
4278 if (x == _PC_2_SYMLINKS)
4279 {*r = Mono_Posix_PathconfName__PC_2_SYMLINKS; return 0;}
4280 #endif /* ndef _PC_2_SYMLINKS */
4281 #ifdef _PC_ALLOC_SIZE_MIN
4282 if (x == _PC_ALLOC_SIZE_MIN)
4283 {*r = Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN; return 0;}
4284 #endif /* ndef _PC_ALLOC_SIZE_MIN */
4286 if (x == _PC_ASYNC_IO)
4287 {*r = Mono_Posix_PathconfName__PC_ASYNC_IO; return 0;}
4288 #endif /* ndef _PC_ASYNC_IO */
4289 #ifdef _PC_CHOWN_RESTRICTED
4290 if (x == _PC_CHOWN_RESTRICTED)
4291 {*r = Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED; return 0;}
4292 #endif /* ndef _PC_CHOWN_RESTRICTED */
4293 #ifdef _PC_FILESIZEBITS
4294 if (x == _PC_FILESIZEBITS)
4295 {*r = Mono_Posix_PathconfName__PC_FILESIZEBITS; return 0;}
4296 #endif /* ndef _PC_FILESIZEBITS */
4298 if (x == _PC_LINK_MAX)
4299 {*r = Mono_Posix_PathconfName__PC_LINK_MAX; return 0;}
4300 #endif /* ndef _PC_LINK_MAX */
4301 #ifdef _PC_MAX_CANON
4302 if (x == _PC_MAX_CANON)
4303 {*r = Mono_Posix_PathconfName__PC_MAX_CANON; return 0;}
4304 #endif /* ndef _PC_MAX_CANON */
4305 #ifdef _PC_MAX_INPUT
4306 if (x == _PC_MAX_INPUT)
4307 {*r = Mono_Posix_PathconfName__PC_MAX_INPUT; return 0;}
4308 #endif /* ndef _PC_MAX_INPUT */
4310 if (x == _PC_NAME_MAX)
4311 {*r = Mono_Posix_PathconfName__PC_NAME_MAX; return 0;}
4312 #endif /* ndef _PC_NAME_MAX */
4314 if (x == _PC_NO_TRUNC)
4315 {*r = Mono_Posix_PathconfName__PC_NO_TRUNC; return 0;}
4316 #endif /* ndef _PC_NO_TRUNC */
4318 if (x == _PC_PATH_MAX)
4319 {*r = Mono_Posix_PathconfName__PC_PATH_MAX; return 0;}
4320 #endif /* ndef _PC_PATH_MAX */
4322 if (x == _PC_PIPE_BUF)
4323 {*r = Mono_Posix_PathconfName__PC_PIPE_BUF; return 0;}
4324 #endif /* ndef _PC_PIPE_BUF */
4326 if (x == _PC_PRIO_IO)
4327 {*r = Mono_Posix_PathconfName__PC_PRIO_IO; return 0;}
4328 #endif /* ndef _PC_PRIO_IO */
4329 #ifdef _PC_REC_INCR_XFER_SIZE
4330 if (x == _PC_REC_INCR_XFER_SIZE)
4331 {*r = Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE; return 0;}
4332 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
4333 #ifdef _PC_REC_MAX_XFER_SIZE
4334 if (x == _PC_REC_MAX_XFER_SIZE)
4335 {*r = Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE; return 0;}
4336 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
4337 #ifdef _PC_REC_MIN_XFER_SIZE
4338 if (x == _PC_REC_MIN_XFER_SIZE)
4339 {*r = Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE; return 0;}
4340 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
4341 #ifdef _PC_REC_XFER_ALIGN
4342 if (x == _PC_REC_XFER_ALIGN)
4343 {*r = Mono_Posix_PathconfName__PC_REC_XFER_ALIGN; return 0;}
4344 #endif /* ndef _PC_REC_XFER_ALIGN */
4345 #ifdef _PC_SOCK_MAXBUF
4346 if (x == _PC_SOCK_MAXBUF)
4347 {*r = Mono_Posix_PathconfName__PC_SOCK_MAXBUF; return 0;}
4348 #endif /* ndef _PC_SOCK_MAXBUF */
4349 #ifdef _PC_SYMLINK_MAX
4350 if (x == _PC_SYMLINK_MAX)
4351 {*r = Mono_Posix_PathconfName__PC_SYMLINK_MAX; return 0;}
4352 #endif /* ndef _PC_SYMLINK_MAX */
4354 if (x == _PC_SYNC_IO)
4355 {*r = Mono_Posix_PathconfName__PC_SYNC_IO; return 0;}
4356 #endif /* ndef _PC_SYNC_IO */
4358 if (x == _PC_VDISABLE)
4359 {*r = Mono_Posix_PathconfName__PC_VDISABLE; return 0;}
4360 #endif /* ndef _PC_VDISABLE */
4361 errno = EINVAL; return -1;
4364 int Mono_Posix_FromPollEvents (short x, short *r)
4367 if ((x & Mono_Posix_PollEvents_POLLERR) == Mono_Posix_PollEvents_POLLERR)
4370 #else /* def POLLERR */
4371 {errno = EINVAL; return -1;}
4372 #endif /* ndef POLLERR */
4373 if ((x & Mono_Posix_PollEvents_POLLHUP) == Mono_Posix_PollEvents_POLLHUP)
4376 #else /* def POLLHUP */
4377 {errno = EINVAL; return -1;}
4378 #endif /* ndef POLLHUP */
4379 if ((x & Mono_Posix_PollEvents_POLLIN) == Mono_Posix_PollEvents_POLLIN)
4382 #else /* def POLLIN */
4383 {errno = EINVAL; return -1;}
4384 #endif /* ndef POLLIN */
4385 if ((x & Mono_Posix_PollEvents_POLLNVAL) == Mono_Posix_PollEvents_POLLNVAL)
4388 #else /* def POLLNVAL */
4389 {errno = EINVAL; return -1;}
4390 #endif /* ndef POLLNVAL */
4391 if ((x & Mono_Posix_PollEvents_POLLOUT) == Mono_Posix_PollEvents_POLLOUT)
4394 #else /* def POLLOUT */
4395 {errno = EINVAL; return -1;}
4396 #endif /* ndef POLLOUT */
4397 if ((x & Mono_Posix_PollEvents_POLLPRI) == Mono_Posix_PollEvents_POLLPRI)
4400 #else /* def POLLPRI */
4401 {errno = EINVAL; return -1;}
4402 #endif /* ndef POLLPRI */
4403 if ((x & Mono_Posix_PollEvents_POLLRDBAND) == Mono_Posix_PollEvents_POLLRDBAND)
4406 #else /* def POLLRDBAND */
4407 {errno = EINVAL; return -1;}
4408 #endif /* ndef POLLRDBAND */
4409 if ((x & Mono_Posix_PollEvents_POLLRDNORM) == Mono_Posix_PollEvents_POLLRDNORM)
4412 #else /* def POLLRDNORM */
4413 {errno = EINVAL; return -1;}
4414 #endif /* ndef POLLRDNORM */
4415 if ((x & Mono_Posix_PollEvents_POLLWRBAND) == Mono_Posix_PollEvents_POLLWRBAND)
4418 #else /* def POLLWRBAND */
4419 {errno = EINVAL; return -1;}
4420 #endif /* ndef POLLWRBAND */
4421 if ((x & Mono_Posix_PollEvents_POLLWRNORM) == Mono_Posix_PollEvents_POLLWRNORM)
4424 #else /* def POLLWRNORM */
4425 {errno = EINVAL; return -1;}
4426 #endif /* ndef POLLWRNORM */
4432 int Mono_Posix_ToPollEvents (short x, short *r)
4438 if ((x & POLLERR) == POLLERR)
4439 *r |= Mono_Posix_PollEvents_POLLERR;
4440 #endif /* ndef POLLERR */
4442 if ((x & POLLHUP) == POLLHUP)
4443 *r |= Mono_Posix_PollEvents_POLLHUP;
4444 #endif /* ndef POLLHUP */
4446 if ((x & POLLIN) == POLLIN)
4447 *r |= Mono_Posix_PollEvents_POLLIN;
4448 #endif /* ndef POLLIN */
4450 if ((x & POLLNVAL) == POLLNVAL)
4451 *r |= Mono_Posix_PollEvents_POLLNVAL;
4452 #endif /* ndef POLLNVAL */
4454 if ((x & POLLOUT) == POLLOUT)
4455 *r |= Mono_Posix_PollEvents_POLLOUT;
4456 #endif /* ndef POLLOUT */
4458 if ((x & POLLPRI) == POLLPRI)
4459 *r |= Mono_Posix_PollEvents_POLLPRI;
4460 #endif /* ndef POLLPRI */
4462 if ((x & POLLRDBAND) == POLLRDBAND)
4463 *r |= Mono_Posix_PollEvents_POLLRDBAND;
4464 #endif /* ndef POLLRDBAND */
4466 if ((x & POLLRDNORM) == POLLRDNORM)
4467 *r |= Mono_Posix_PollEvents_POLLRDNORM;
4468 #endif /* ndef POLLRDNORM */
4470 if ((x & POLLWRBAND) == POLLWRBAND)
4471 *r |= Mono_Posix_PollEvents_POLLWRBAND;
4472 #endif /* ndef POLLWRBAND */
4474 if ((x & POLLWRNORM) == POLLWRNORM)
4475 *r |= Mono_Posix_PollEvents_POLLWRNORM;
4476 #endif /* ndef POLLWRNORM */
4480 #ifdef HAVE_STRUCT_POLLFD
4482 Mono_Posix_FromPollfd (struct Mono_Posix_Pollfd *from, struct pollfd *to)
4484 _cnm_return_val_if_overflow (int, from->fd, -1);
4486 memset (to, 0, sizeof(*to));
4489 if (Mono_Posix_FromPollEvents (from->events, &to->events) != 0) {
4492 if (Mono_Posix_FromPollEvents (from->revents, &to->revents) != 0) {
4498 #endif /* ndef HAVE_STRUCT_POLLFD */
4501 #ifdef HAVE_STRUCT_POLLFD
4503 Mono_Posix_ToPollfd (struct pollfd *from, struct Mono_Posix_Pollfd *to)
4505 _cnm_return_val_if_overflow (int, from->fd, -1);
4507 memset (to, 0, sizeof(*to));
4510 if (Mono_Posix_ToPollEvents (from->events, &to->events) != 0) {
4513 if (Mono_Posix_ToPollEvents (from->revents, &to->revents) != 0) {
4519 #endif /* ndef HAVE_STRUCT_POLLFD */
4522 int Mono_Posix_FromPosixFadviseAdvice (int x, int *r)
4525 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED)
4526 #ifdef POSIX_FADV_DONTNEED
4527 {*r = POSIX_FADV_DONTNEED; return 0;}
4528 #else /* def POSIX_FADV_DONTNEED */
4529 {errno = EINVAL; return -1;}
4530 #endif /* ndef POSIX_FADV_DONTNEED */
4531 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE)
4532 #ifdef POSIX_FADV_NOREUSE
4533 {*r = POSIX_FADV_NOREUSE; return 0;}
4534 #else /* def POSIX_FADV_NOREUSE */
4535 {errno = EINVAL; return -1;}
4536 #endif /* ndef POSIX_FADV_NOREUSE */
4537 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL)
4538 #ifdef POSIX_FADV_NORMAL
4539 {*r = POSIX_FADV_NORMAL; return 0;}
4540 #else /* def POSIX_FADV_NORMAL */
4541 {errno = EINVAL; return -1;}
4542 #endif /* ndef POSIX_FADV_NORMAL */
4543 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM)
4544 #ifdef POSIX_FADV_RANDOM
4545 {*r = POSIX_FADV_RANDOM; return 0;}
4546 #else /* def POSIX_FADV_RANDOM */
4547 {errno = EINVAL; return -1;}
4548 #endif /* ndef POSIX_FADV_RANDOM */
4549 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL)
4550 #ifdef POSIX_FADV_SEQUENTIAL
4551 {*r = POSIX_FADV_SEQUENTIAL; return 0;}
4552 #else /* def POSIX_FADV_SEQUENTIAL */
4553 {errno = EINVAL; return -1;}
4554 #endif /* ndef POSIX_FADV_SEQUENTIAL */
4555 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED)
4556 #ifdef POSIX_FADV_WILLNEED
4557 {*r = POSIX_FADV_WILLNEED; return 0;}
4558 #else /* def POSIX_FADV_WILLNEED */
4559 {errno = EINVAL; return -1;}
4560 #endif /* ndef POSIX_FADV_WILLNEED */
4563 errno = EINVAL; return -1;
4566 int Mono_Posix_ToPosixFadviseAdvice (int x, int *r)
4571 #ifdef POSIX_FADV_DONTNEED
4572 if (x == POSIX_FADV_DONTNEED)
4573 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED; return 0;}
4574 #endif /* ndef POSIX_FADV_DONTNEED */
4575 #ifdef POSIX_FADV_NOREUSE
4576 if (x == POSIX_FADV_NOREUSE)
4577 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE; return 0;}
4578 #endif /* ndef POSIX_FADV_NOREUSE */
4579 #ifdef POSIX_FADV_NORMAL
4580 if (x == POSIX_FADV_NORMAL)
4581 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL; return 0;}
4582 #endif /* ndef POSIX_FADV_NORMAL */
4583 #ifdef POSIX_FADV_RANDOM
4584 if (x == POSIX_FADV_RANDOM)
4585 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM; return 0;}
4586 #endif /* ndef POSIX_FADV_RANDOM */
4587 #ifdef POSIX_FADV_SEQUENTIAL
4588 if (x == POSIX_FADV_SEQUENTIAL)
4589 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL; return 0;}
4590 #endif /* ndef POSIX_FADV_SEQUENTIAL */
4591 #ifdef POSIX_FADV_WILLNEED
4592 if (x == POSIX_FADV_WILLNEED)
4593 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED; return 0;}
4594 #endif /* ndef POSIX_FADV_WILLNEED */
4595 errno = EINVAL; return -1;
4598 int Mono_Posix_FromPosixMadviseAdvice (int x, int *r)
4601 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED)
4602 #ifdef POSIX_MADV_DONTNEED
4603 {*r = POSIX_MADV_DONTNEED; return 0;}
4604 #else /* def POSIX_MADV_DONTNEED */
4605 {errno = EINVAL; return -1;}
4606 #endif /* ndef POSIX_MADV_DONTNEED */
4607 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL)
4608 #ifdef POSIX_MADV_NORMAL
4609 {*r = POSIX_MADV_NORMAL; return 0;}
4610 #else /* def POSIX_MADV_NORMAL */
4611 {errno = EINVAL; return -1;}
4612 #endif /* ndef POSIX_MADV_NORMAL */
4613 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM)
4614 #ifdef POSIX_MADV_RANDOM
4615 {*r = POSIX_MADV_RANDOM; return 0;}
4616 #else /* def POSIX_MADV_RANDOM */
4617 {errno = EINVAL; return -1;}
4618 #endif /* ndef POSIX_MADV_RANDOM */
4619 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL)
4620 #ifdef POSIX_MADV_SEQUENTIAL
4621 {*r = POSIX_MADV_SEQUENTIAL; return 0;}
4622 #else /* def POSIX_MADV_SEQUENTIAL */
4623 {errno = EINVAL; return -1;}
4624 #endif /* ndef POSIX_MADV_SEQUENTIAL */
4625 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED)
4626 #ifdef POSIX_MADV_WILLNEED
4627 {*r = POSIX_MADV_WILLNEED; return 0;}
4628 #else /* def POSIX_MADV_WILLNEED */
4629 {errno = EINVAL; return -1;}
4630 #endif /* ndef POSIX_MADV_WILLNEED */
4633 errno = EINVAL; return -1;
4636 int Mono_Posix_ToPosixMadviseAdvice (int x, int *r)
4641 #ifdef POSIX_MADV_DONTNEED
4642 if (x == POSIX_MADV_DONTNEED)
4643 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED; return 0;}
4644 #endif /* ndef POSIX_MADV_DONTNEED */
4645 #ifdef POSIX_MADV_NORMAL
4646 if (x == POSIX_MADV_NORMAL)
4647 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL; return 0;}
4648 #endif /* ndef POSIX_MADV_NORMAL */
4649 #ifdef POSIX_MADV_RANDOM
4650 if (x == POSIX_MADV_RANDOM)
4651 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM; return 0;}
4652 #endif /* ndef POSIX_MADV_RANDOM */
4653 #ifdef POSIX_MADV_SEQUENTIAL
4654 if (x == POSIX_MADV_SEQUENTIAL)
4655 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL; return 0;}
4656 #endif /* ndef POSIX_MADV_SEQUENTIAL */
4657 #ifdef POSIX_MADV_WILLNEED
4658 if (x == POSIX_MADV_WILLNEED)
4659 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED; return 0;}
4660 #endif /* ndef POSIX_MADV_WILLNEED */
4661 errno = EINVAL; return -1;
4664 int Mono_Posix_FromSeekFlags (short x, short *r)
4667 if (x == Mono_Posix_SeekFlags_L_INCR)
4669 {*r = L_INCR; return 0;}
4670 #else /* def L_INCR */
4671 {errno = EINVAL; return -1;}
4672 #endif /* ndef L_INCR */
4673 if (x == Mono_Posix_SeekFlags_L_SET)
4675 {*r = L_SET; return 0;}
4676 #else /* def L_SET */
4677 {errno = EINVAL; return -1;}
4678 #endif /* ndef L_SET */
4679 if (x == Mono_Posix_SeekFlags_L_XTND)
4681 {*r = L_XTND; return 0;}
4682 #else /* def L_XTND */
4683 {errno = EINVAL; return -1;}
4684 #endif /* ndef L_XTND */
4685 if (x == Mono_Posix_SeekFlags_SEEK_CUR)
4687 {*r = SEEK_CUR; return 0;}
4688 #else /* def SEEK_CUR */
4689 {errno = EINVAL; return -1;}
4690 #endif /* ndef SEEK_CUR */
4691 if (x == Mono_Posix_SeekFlags_SEEK_END)
4693 {*r = SEEK_END; return 0;}
4694 #else /* def SEEK_END */
4695 {errno = EINVAL; return -1;}
4696 #endif /* ndef SEEK_END */
4697 if (x == Mono_Posix_SeekFlags_SEEK_SET)
4699 {*r = SEEK_SET; return 0;}
4700 #else /* def SEEK_SET */
4701 {errno = EINVAL; return -1;}
4702 #endif /* ndef SEEK_SET */
4705 errno = EINVAL; return -1;
4708 int Mono_Posix_ToSeekFlags (short x, short *r)
4715 {*r = Mono_Posix_SeekFlags_L_INCR; return 0;}
4716 #endif /* ndef L_INCR */
4719 {*r = Mono_Posix_SeekFlags_L_SET; return 0;}
4720 #endif /* ndef L_SET */
4723 {*r = Mono_Posix_SeekFlags_L_XTND; return 0;}
4724 #endif /* ndef L_XTND */
4727 {*r = Mono_Posix_SeekFlags_SEEK_CUR; return 0;}
4728 #endif /* ndef SEEK_CUR */
4731 {*r = Mono_Posix_SeekFlags_SEEK_END; return 0;}
4732 #endif /* ndef SEEK_END */
4735 {*r = Mono_Posix_SeekFlags_SEEK_SET; return 0;}
4736 #endif /* ndef SEEK_SET */
4737 errno = EINVAL; return -1;
4740 int Mono_Posix_FromShutdownOption (int x, int *r)
4743 if (x == Mono_Posix_ShutdownOption_SHUT_RD)
4745 {*r = SHUT_RD; return 0;}
4746 #else /* def SHUT_RD */
4747 {errno = EINVAL; return -1;}
4748 #endif /* ndef SHUT_RD */
4749 if (x == Mono_Posix_ShutdownOption_SHUT_RDWR)
4751 {*r = SHUT_RDWR; return 0;}
4752 #else /* def SHUT_RDWR */
4753 {errno = EINVAL; return -1;}
4754 #endif /* ndef SHUT_RDWR */
4755 if (x == Mono_Posix_ShutdownOption_SHUT_WR)
4757 {*r = SHUT_WR; return 0;}
4758 #else /* def SHUT_WR */
4759 {errno = EINVAL; return -1;}
4760 #endif /* ndef SHUT_WR */
4763 errno = EINVAL; return -1;
4766 int Mono_Posix_ToShutdownOption (int x, int *r)
4773 {*r = Mono_Posix_ShutdownOption_SHUT_RD; return 0;}
4774 #endif /* ndef SHUT_RD */
4777 {*r = Mono_Posix_ShutdownOption_SHUT_RDWR; return 0;}
4778 #endif /* ndef SHUT_RDWR */
4781 {*r = Mono_Posix_ShutdownOption_SHUT_WR; return 0;}
4782 #endif /* ndef SHUT_WR */
4783 errno = EINVAL; return -1;
4786 int Mono_Posix_FromSignum (int x, int *r)
4789 if (x == Mono_Posix_Signum_SIGABRT)
4791 {*r = SIGABRT; return 0;}
4792 #else /* def SIGABRT */
4793 {errno = EINVAL; return -1;}
4794 #endif /* ndef SIGABRT */
4795 if (x == Mono_Posix_Signum_SIGALRM)
4797 {*r = SIGALRM; return 0;}
4798 #else /* def SIGALRM */
4799 {errno = EINVAL; return -1;}
4800 #endif /* ndef SIGALRM */
4801 if (x == Mono_Posix_Signum_SIGBUS)
4803 {*r = SIGBUS; return 0;}
4804 #else /* def SIGBUS */
4805 {errno = EINVAL; return -1;}
4806 #endif /* ndef SIGBUS */
4807 if (x == Mono_Posix_Signum_SIGCHLD)
4809 {*r = SIGCHLD; return 0;}
4810 #else /* def SIGCHLD */
4811 {errno = EINVAL; return -1;}
4812 #endif /* ndef SIGCHLD */
4813 if (x == Mono_Posix_Signum_SIGCLD)
4815 {*r = SIGCLD; return 0;}
4816 #else /* def SIGCLD */
4817 {errno = EINVAL; return -1;}
4818 #endif /* ndef SIGCLD */
4819 if (x == Mono_Posix_Signum_SIGCONT)
4821 {*r = SIGCONT; return 0;}
4822 #else /* def SIGCONT */
4823 {errno = EINVAL; return -1;}
4824 #endif /* ndef SIGCONT */
4825 if (x == Mono_Posix_Signum_SIGFPE)
4827 {*r = SIGFPE; return 0;}
4828 #else /* def SIGFPE */
4829 {errno = EINVAL; return -1;}
4830 #endif /* ndef SIGFPE */
4831 if (x == Mono_Posix_Signum_SIGHUP)
4833 {*r = SIGHUP; return 0;}
4834 #else /* def SIGHUP */
4835 {errno = EINVAL; return -1;}
4836 #endif /* ndef SIGHUP */
4837 if (x == Mono_Posix_Signum_SIGILL)
4839 {*r = SIGILL; return 0;}
4840 #else /* def SIGILL */
4841 {errno = EINVAL; return -1;}
4842 #endif /* ndef SIGILL */
4843 if (x == Mono_Posix_Signum_SIGINT)
4845 {*r = SIGINT; return 0;}
4846 #else /* def SIGINT */
4847 {errno = EINVAL; return -1;}
4848 #endif /* ndef SIGINT */
4849 if (x == Mono_Posix_Signum_SIGIO)
4851 {*r = SIGIO; return 0;}
4852 #else /* def SIGIO */
4853 {errno = EINVAL; return -1;}
4854 #endif /* ndef SIGIO */
4855 if (x == Mono_Posix_Signum_SIGIOT)
4857 {*r = SIGIOT; return 0;}
4858 #else /* def SIGIOT */
4859 {errno = EINVAL; return -1;}
4860 #endif /* ndef SIGIOT */
4861 if (x == Mono_Posix_Signum_SIGKILL)
4863 {*r = SIGKILL; return 0;}
4864 #else /* def SIGKILL */
4865 {errno = EINVAL; return -1;}
4866 #endif /* ndef SIGKILL */
4867 if (x == Mono_Posix_Signum_SIGPIPE)
4869 {*r = SIGPIPE; return 0;}
4870 #else /* def SIGPIPE */
4871 {errno = EINVAL; return -1;}
4872 #endif /* ndef SIGPIPE */
4873 if (x == Mono_Posix_Signum_SIGPOLL)
4875 {*r = SIGPOLL; return 0;}
4876 #else /* def SIGPOLL */
4877 {errno = EINVAL; return -1;}
4878 #endif /* ndef SIGPOLL */
4879 if (x == Mono_Posix_Signum_SIGPROF)
4881 {*r = SIGPROF; return 0;}
4882 #else /* def SIGPROF */
4883 {errno = EINVAL; return -1;}
4884 #endif /* ndef SIGPROF */
4885 if (x == Mono_Posix_Signum_SIGPWR)
4887 {*r = SIGPWR; return 0;}
4888 #else /* def SIGPWR */
4889 {errno = EINVAL; return -1;}
4890 #endif /* ndef SIGPWR */
4891 if (x == Mono_Posix_Signum_SIGQUIT)
4893 {*r = SIGQUIT; return 0;}
4894 #else /* def SIGQUIT */
4895 {errno = EINVAL; return -1;}
4896 #endif /* ndef SIGQUIT */
4897 if (x == Mono_Posix_Signum_SIGSEGV)
4899 {*r = SIGSEGV; return 0;}
4900 #else /* def SIGSEGV */
4901 {errno = EINVAL; return -1;}
4902 #endif /* ndef SIGSEGV */
4903 if (x == Mono_Posix_Signum_SIGSTKFLT)
4905 {*r = SIGSTKFLT; return 0;}
4906 #else /* def SIGSTKFLT */
4907 {errno = EINVAL; return -1;}
4908 #endif /* ndef SIGSTKFLT */
4909 if (x == Mono_Posix_Signum_SIGSTOP)
4911 {*r = SIGSTOP; return 0;}
4912 #else /* def SIGSTOP */
4913 {errno = EINVAL; return -1;}
4914 #endif /* ndef SIGSTOP */
4915 if (x == Mono_Posix_Signum_SIGSYS)
4917 {*r = SIGSYS; return 0;}
4918 #else /* def SIGSYS */
4919 {errno = EINVAL; return -1;}
4920 #endif /* ndef SIGSYS */
4921 if (x == Mono_Posix_Signum_SIGTERM)
4923 {*r = SIGTERM; return 0;}
4924 #else /* def SIGTERM */
4925 {errno = EINVAL; return -1;}
4926 #endif /* ndef SIGTERM */
4927 if (x == Mono_Posix_Signum_SIGTRAP)
4929 {*r = SIGTRAP; return 0;}
4930 #else /* def SIGTRAP */
4931 {errno = EINVAL; return -1;}
4932 #endif /* ndef SIGTRAP */
4933 if (x == Mono_Posix_Signum_SIGTSTP)
4935 {*r = SIGTSTP; return 0;}
4936 #else /* def SIGTSTP */
4937 {errno = EINVAL; return -1;}
4938 #endif /* ndef SIGTSTP */
4939 if (x == Mono_Posix_Signum_SIGTTIN)
4941 {*r = SIGTTIN; return 0;}
4942 #else /* def SIGTTIN */
4943 {errno = EINVAL; return -1;}
4944 #endif /* ndef SIGTTIN */
4945 if (x == Mono_Posix_Signum_SIGTTOU)
4947 {*r = SIGTTOU; return 0;}
4948 #else /* def SIGTTOU */
4949 {errno = EINVAL; return -1;}
4950 #endif /* ndef SIGTTOU */
4951 if (x == Mono_Posix_Signum_SIGUNUSED)
4953 {*r = SIGUNUSED; return 0;}
4954 #else /* def SIGUNUSED */
4955 {errno = EINVAL; return -1;}
4956 #endif /* ndef SIGUNUSED */
4957 if (x == Mono_Posix_Signum_SIGURG)
4959 {*r = SIGURG; return 0;}
4960 #else /* def SIGURG */
4961 {errno = EINVAL; return -1;}
4962 #endif /* ndef SIGURG */
4963 if (x == Mono_Posix_Signum_SIGUSR1)
4965 {*r = SIGUSR1; return 0;}
4966 #else /* def SIGUSR1 */
4967 {errno = EINVAL; return -1;}
4968 #endif /* ndef SIGUSR1 */
4969 if (x == Mono_Posix_Signum_SIGUSR2)
4971 {*r = SIGUSR2; return 0;}
4972 #else /* def SIGUSR2 */
4973 {errno = EINVAL; return -1;}
4974 #endif /* ndef SIGUSR2 */
4975 if (x == Mono_Posix_Signum_SIGVTALRM)
4977 {*r = SIGVTALRM; return 0;}
4978 #else /* def SIGVTALRM */
4979 {errno = EINVAL; return -1;}
4980 #endif /* ndef SIGVTALRM */
4981 if (x == Mono_Posix_Signum_SIGWINCH)
4983 {*r = SIGWINCH; return 0;}
4984 #else /* def SIGWINCH */
4985 {errno = EINVAL; return -1;}
4986 #endif /* ndef SIGWINCH */
4987 if (x == Mono_Posix_Signum_SIGXCPU)
4989 {*r = SIGXCPU; return 0;}
4990 #else /* def SIGXCPU */
4991 {errno = EINVAL; return -1;}
4992 #endif /* ndef SIGXCPU */
4993 if (x == Mono_Posix_Signum_SIGXFSZ)
4995 {*r = SIGXFSZ; return 0;}
4996 #else /* def SIGXFSZ */
4997 {errno = EINVAL; return -1;}
4998 #endif /* ndef SIGXFSZ */
5001 errno = EINVAL; return -1;
5004 int Mono_Posix_ToSignum (int x, int *r)
5011 {*r = Mono_Posix_Signum_SIGABRT; return 0;}
5012 #endif /* ndef SIGABRT */
5015 {*r = Mono_Posix_Signum_SIGALRM; return 0;}
5016 #endif /* ndef SIGALRM */
5019 {*r = Mono_Posix_Signum_SIGBUS; return 0;}
5020 #endif /* ndef SIGBUS */
5023 {*r = Mono_Posix_Signum_SIGCHLD; return 0;}
5024 #endif /* ndef SIGCHLD */
5027 {*r = Mono_Posix_Signum_SIGCLD; return 0;}
5028 #endif /* ndef SIGCLD */
5031 {*r = Mono_Posix_Signum_SIGCONT; return 0;}
5032 #endif /* ndef SIGCONT */
5035 {*r = Mono_Posix_Signum_SIGFPE; return 0;}
5036 #endif /* ndef SIGFPE */
5039 {*r = Mono_Posix_Signum_SIGHUP; return 0;}
5040 #endif /* ndef SIGHUP */
5043 {*r = Mono_Posix_Signum_SIGILL; return 0;}
5044 #endif /* ndef SIGILL */
5047 {*r = Mono_Posix_Signum_SIGINT; return 0;}
5048 #endif /* ndef SIGINT */
5051 {*r = Mono_Posix_Signum_SIGIO; return 0;}
5052 #endif /* ndef SIGIO */
5055 {*r = Mono_Posix_Signum_SIGIOT; return 0;}
5056 #endif /* ndef SIGIOT */
5059 {*r = Mono_Posix_Signum_SIGKILL; return 0;}
5060 #endif /* ndef SIGKILL */
5063 {*r = Mono_Posix_Signum_SIGPIPE; return 0;}
5064 #endif /* ndef SIGPIPE */
5067 {*r = Mono_Posix_Signum_SIGPOLL; return 0;}
5068 #endif /* ndef SIGPOLL */
5071 {*r = Mono_Posix_Signum_SIGPROF; return 0;}
5072 #endif /* ndef SIGPROF */
5075 {*r = Mono_Posix_Signum_SIGPWR; return 0;}
5076 #endif /* ndef SIGPWR */
5079 {*r = Mono_Posix_Signum_SIGQUIT; return 0;}
5080 #endif /* ndef SIGQUIT */
5083 {*r = Mono_Posix_Signum_SIGSEGV; return 0;}
5084 #endif /* ndef SIGSEGV */
5087 {*r = Mono_Posix_Signum_SIGSTKFLT; return 0;}
5088 #endif /* ndef SIGSTKFLT */
5091 {*r = Mono_Posix_Signum_SIGSTOP; return 0;}
5092 #endif /* ndef SIGSTOP */
5095 {*r = Mono_Posix_Signum_SIGSYS; return 0;}
5096 #endif /* ndef SIGSYS */
5099 {*r = Mono_Posix_Signum_SIGTERM; return 0;}
5100 #endif /* ndef SIGTERM */
5103 {*r = Mono_Posix_Signum_SIGTRAP; return 0;}
5104 #endif /* ndef SIGTRAP */
5107 {*r = Mono_Posix_Signum_SIGTSTP; return 0;}
5108 #endif /* ndef SIGTSTP */
5111 {*r = Mono_Posix_Signum_SIGTTIN; return 0;}
5112 #endif /* ndef SIGTTIN */
5115 {*r = Mono_Posix_Signum_SIGTTOU; return 0;}
5116 #endif /* ndef SIGTTOU */
5119 {*r = Mono_Posix_Signum_SIGUNUSED; return 0;}
5120 #endif /* ndef SIGUNUSED */
5123 {*r = Mono_Posix_Signum_SIGURG; return 0;}
5124 #endif /* ndef SIGURG */
5127 {*r = Mono_Posix_Signum_SIGUSR1; return 0;}
5128 #endif /* ndef SIGUSR1 */
5131 {*r = Mono_Posix_Signum_SIGUSR2; return 0;}
5132 #endif /* ndef SIGUSR2 */
5135 {*r = Mono_Posix_Signum_SIGVTALRM; return 0;}
5136 #endif /* ndef SIGVTALRM */
5139 {*r = Mono_Posix_Signum_SIGWINCH; return 0;}
5140 #endif /* ndef SIGWINCH */
5143 {*r = Mono_Posix_Signum_SIGXCPU; return 0;}
5144 #endif /* ndef SIGXCPU */
5147 {*r = Mono_Posix_Signum_SIGXFSZ; return 0;}
5148 #endif /* ndef SIGXFSZ */
5149 errno = EINVAL; return -1;
5152 int Mono_Posix_FromSysconfName (int x, int *r)
5155 if (x == Mono_Posix_SysconfName__SC_2_CHAR_TERM)
5156 #ifdef _SC_2_CHAR_TERM
5157 {*r = _SC_2_CHAR_TERM; return 0;}
5158 #else /* def _SC_2_CHAR_TERM */
5159 {errno = EINVAL; return -1;}
5160 #endif /* ndef _SC_2_CHAR_TERM */
5161 if (x == Mono_Posix_SysconfName__SC_2_C_BIND)
5163 {*r = _SC_2_C_BIND; return 0;}
5164 #else /* def _SC_2_C_BIND */
5165 {errno = EINVAL; return -1;}
5166 #endif /* ndef _SC_2_C_BIND */
5167 if (x == Mono_Posix_SysconfName__SC_2_C_DEV)
5169 {*r = _SC_2_C_DEV; return 0;}
5170 #else /* def _SC_2_C_DEV */
5171 {errno = EINVAL; return -1;}
5172 #endif /* ndef _SC_2_C_DEV */
5173 if (x == Mono_Posix_SysconfName__SC_2_C_VERSION)
5174 #ifdef _SC_2_C_VERSION
5175 {*r = _SC_2_C_VERSION; return 0;}
5176 #else /* def _SC_2_C_VERSION */
5177 {errno = EINVAL; return -1;}
5178 #endif /* ndef _SC_2_C_VERSION */
5179 if (x == Mono_Posix_SysconfName__SC_2_FORT_DEV)
5180 #ifdef _SC_2_FORT_DEV
5181 {*r = _SC_2_FORT_DEV; return 0;}
5182 #else /* def _SC_2_FORT_DEV */
5183 {errno = EINVAL; return -1;}
5184 #endif /* ndef _SC_2_FORT_DEV */
5185 if (x == Mono_Posix_SysconfName__SC_2_FORT_RUN)
5186 #ifdef _SC_2_FORT_RUN
5187 {*r = _SC_2_FORT_RUN; return 0;}
5188 #else /* def _SC_2_FORT_RUN */
5189 {errno = EINVAL; return -1;}
5190 #endif /* ndef _SC_2_FORT_RUN */
5191 if (x == Mono_Posix_SysconfName__SC_2_LOCALEDEF)
5192 #ifdef _SC_2_LOCALEDEF
5193 {*r = _SC_2_LOCALEDEF; return 0;}
5194 #else /* def _SC_2_LOCALEDEF */
5195 {errno = EINVAL; return -1;}
5196 #endif /* ndef _SC_2_LOCALEDEF */
5197 if (x == Mono_Posix_SysconfName__SC_2_PBS)
5199 {*r = _SC_2_PBS; return 0;}
5200 #else /* def _SC_2_PBS */
5201 {errno = EINVAL; return -1;}
5202 #endif /* ndef _SC_2_PBS */
5203 if (x == Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING)
5204 #ifdef _SC_2_PBS_ACCOUNTING
5205 {*r = _SC_2_PBS_ACCOUNTING; return 0;}
5206 #else /* def _SC_2_PBS_ACCOUNTING */
5207 {errno = EINVAL; return -1;}
5208 #endif /* ndef _SC_2_PBS_ACCOUNTING */
5209 if (x == Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT)
5210 #ifdef _SC_2_PBS_CHECKPOINT
5211 {*r = _SC_2_PBS_CHECKPOINT; return 0;}
5212 #else /* def _SC_2_PBS_CHECKPOINT */
5213 {errno = EINVAL; return -1;}
5214 #endif /* ndef _SC_2_PBS_CHECKPOINT */
5215 if (x == Mono_Posix_SysconfName__SC_2_PBS_LOCATE)
5216 #ifdef _SC_2_PBS_LOCATE
5217 {*r = _SC_2_PBS_LOCATE; return 0;}
5218 #else /* def _SC_2_PBS_LOCATE */
5219 {errno = EINVAL; return -1;}
5220 #endif /* ndef _SC_2_PBS_LOCATE */
5221 if (x == Mono_Posix_SysconfName__SC_2_PBS_MESSAGE)
5222 #ifdef _SC_2_PBS_MESSAGE
5223 {*r = _SC_2_PBS_MESSAGE; return 0;}
5224 #else /* def _SC_2_PBS_MESSAGE */
5225 {errno = EINVAL; return -1;}
5226 #endif /* ndef _SC_2_PBS_MESSAGE */
5227 if (x == Mono_Posix_SysconfName__SC_2_PBS_TRACK)
5228 #ifdef _SC_2_PBS_TRACK
5229 {*r = _SC_2_PBS_TRACK; return 0;}
5230 #else /* def _SC_2_PBS_TRACK */
5231 {errno = EINVAL; return -1;}
5232 #endif /* ndef _SC_2_PBS_TRACK */
5233 if (x == Mono_Posix_SysconfName__SC_2_SW_DEV)
5235 {*r = _SC_2_SW_DEV; return 0;}
5236 #else /* def _SC_2_SW_DEV */
5237 {errno = EINVAL; return -1;}
5238 #endif /* ndef _SC_2_SW_DEV */
5239 if (x == Mono_Posix_SysconfName__SC_2_UPE)
5241 {*r = _SC_2_UPE; return 0;}
5242 #else /* def _SC_2_UPE */
5243 {errno = EINVAL; return -1;}
5244 #endif /* ndef _SC_2_UPE */
5245 if (x == Mono_Posix_SysconfName__SC_2_VERSION)
5246 #ifdef _SC_2_VERSION
5247 {*r = _SC_2_VERSION; return 0;}
5248 #else /* def _SC_2_VERSION */
5249 {errno = EINVAL; return -1;}
5250 #endif /* ndef _SC_2_VERSION */
5251 if (x == Mono_Posix_SysconfName__SC_ADVISORY_INFO)
5252 #ifdef _SC_ADVISORY_INFO
5253 {*r = _SC_ADVISORY_INFO; return 0;}
5254 #else /* def _SC_ADVISORY_INFO */
5255 {errno = EINVAL; return -1;}
5256 #endif /* ndef _SC_ADVISORY_INFO */
5257 if (x == Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX)
5258 #ifdef _SC_AIO_LISTIO_MAX
5259 {*r = _SC_AIO_LISTIO_MAX; return 0;}
5260 #else /* def _SC_AIO_LISTIO_MAX */
5261 {errno = EINVAL; return -1;}
5262 #endif /* ndef _SC_AIO_LISTIO_MAX */
5263 if (x == Mono_Posix_SysconfName__SC_AIO_MAX)
5265 {*r = _SC_AIO_MAX; return 0;}
5266 #else /* def _SC_AIO_MAX */
5267 {errno = EINVAL; return -1;}
5268 #endif /* ndef _SC_AIO_MAX */
5269 if (x == Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX)
5270 #ifdef _SC_AIO_PRIO_DELTA_MAX
5271 {*r = _SC_AIO_PRIO_DELTA_MAX; return 0;}
5272 #else /* def _SC_AIO_PRIO_DELTA_MAX */
5273 {errno = EINVAL; return -1;}
5274 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
5275 if (x == Mono_Posix_SysconfName__SC_ARG_MAX)
5277 {*r = _SC_ARG_MAX; return 0;}
5278 #else /* def _SC_ARG_MAX */
5279 {errno = EINVAL; return -1;}
5280 #endif /* ndef _SC_ARG_MAX */
5281 if (x == Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO)
5282 #ifdef _SC_ASYNCHRONOUS_IO
5283 {*r = _SC_ASYNCHRONOUS_IO; return 0;}
5284 #else /* def _SC_ASYNCHRONOUS_IO */
5285 {errno = EINVAL; return -1;}
5286 #endif /* ndef _SC_ASYNCHRONOUS_IO */
5287 if (x == Mono_Posix_SysconfName__SC_ATEXIT_MAX)
5288 #ifdef _SC_ATEXIT_MAX
5289 {*r = _SC_ATEXIT_MAX; return 0;}
5290 #else /* def _SC_ATEXIT_MAX */
5291 {errno = EINVAL; return -1;}
5292 #endif /* ndef _SC_ATEXIT_MAX */
5293 if (x == Mono_Posix_SysconfName__SC_AVPHYS_PAGES)
5294 #ifdef _SC_AVPHYS_PAGES
5295 {*r = _SC_AVPHYS_PAGES; return 0;}
5296 #else /* def _SC_AVPHYS_PAGES */
5297 {errno = EINVAL; return -1;}
5298 #endif /* ndef _SC_AVPHYS_PAGES */
5299 if (x == Mono_Posix_SysconfName__SC_BARRIERS)
5301 {*r = _SC_BARRIERS; return 0;}
5302 #else /* def _SC_BARRIERS */
5303 {errno = EINVAL; return -1;}
5304 #endif /* ndef _SC_BARRIERS */
5305 if (x == Mono_Posix_SysconfName__SC_BASE)
5307 {*r = _SC_BASE; return 0;}
5308 #else /* def _SC_BASE */
5309 {errno = EINVAL; return -1;}
5310 #endif /* ndef _SC_BASE */
5311 if (x == Mono_Posix_SysconfName__SC_BC_BASE_MAX)
5312 #ifdef _SC_BC_BASE_MAX
5313 {*r = _SC_BC_BASE_MAX; return 0;}
5314 #else /* def _SC_BC_BASE_MAX */
5315 {errno = EINVAL; return -1;}
5316 #endif /* ndef _SC_BC_BASE_MAX */
5317 if (x == Mono_Posix_SysconfName__SC_BC_DIM_MAX)
5318 #ifdef _SC_BC_DIM_MAX
5319 {*r = _SC_BC_DIM_MAX; return 0;}
5320 #else /* def _SC_BC_DIM_MAX */
5321 {errno = EINVAL; return -1;}
5322 #endif /* ndef _SC_BC_DIM_MAX */
5323 if (x == Mono_Posix_SysconfName__SC_BC_SCALE_MAX)
5324 #ifdef _SC_BC_SCALE_MAX
5325 {*r = _SC_BC_SCALE_MAX; return 0;}
5326 #else /* def _SC_BC_SCALE_MAX */
5327 {errno = EINVAL; return -1;}
5328 #endif /* ndef _SC_BC_SCALE_MAX */
5329 if (x == Mono_Posix_SysconfName__SC_BC_STRING_MAX)
5330 #ifdef _SC_BC_STRING_MAX
5331 {*r = _SC_BC_STRING_MAX; return 0;}
5332 #else /* def _SC_BC_STRING_MAX */
5333 {errno = EINVAL; return -1;}
5334 #endif /* ndef _SC_BC_STRING_MAX */
5335 if (x == Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX)
5336 #ifdef _SC_CHARCLASS_NAME_MAX
5337 {*r = _SC_CHARCLASS_NAME_MAX; return 0;}
5338 #else /* def _SC_CHARCLASS_NAME_MAX */
5339 {errno = EINVAL; return -1;}
5340 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
5341 if (x == Mono_Posix_SysconfName__SC_CHAR_BIT)
5343 {*r = _SC_CHAR_BIT; return 0;}
5344 #else /* def _SC_CHAR_BIT */
5345 {errno = EINVAL; return -1;}
5346 #endif /* ndef _SC_CHAR_BIT */
5347 if (x == Mono_Posix_SysconfName__SC_CHAR_MAX)
5349 {*r = _SC_CHAR_MAX; return 0;}
5350 #else /* def _SC_CHAR_MAX */
5351 {errno = EINVAL; return -1;}
5352 #endif /* ndef _SC_CHAR_MAX */
5353 if (x == Mono_Posix_SysconfName__SC_CHAR_MIN)
5355 {*r = _SC_CHAR_MIN; return 0;}
5356 #else /* def _SC_CHAR_MIN */
5357 {errno = EINVAL; return -1;}
5358 #endif /* ndef _SC_CHAR_MIN */
5359 if (x == Mono_Posix_SysconfName__SC_CHILD_MAX)
5360 #ifdef _SC_CHILD_MAX
5361 {*r = _SC_CHILD_MAX; return 0;}
5362 #else /* def _SC_CHILD_MAX */
5363 {errno = EINVAL; return -1;}
5364 #endif /* ndef _SC_CHILD_MAX */
5365 if (x == Mono_Posix_SysconfName__SC_CLK_TCK)
5367 {*r = _SC_CLK_TCK; return 0;}
5368 #else /* def _SC_CLK_TCK */
5369 {errno = EINVAL; return -1;}
5370 #endif /* ndef _SC_CLK_TCK */
5371 if (x == Mono_Posix_SysconfName__SC_CLOCK_SELECTION)
5372 #ifdef _SC_CLOCK_SELECTION
5373 {*r = _SC_CLOCK_SELECTION; return 0;}
5374 #else /* def _SC_CLOCK_SELECTION */
5375 {errno = EINVAL; return -1;}
5376 #endif /* ndef _SC_CLOCK_SELECTION */
5377 if (x == Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX)
5378 #ifdef _SC_COLL_WEIGHTS_MAX
5379 {*r = _SC_COLL_WEIGHTS_MAX; return 0;}
5380 #else /* def _SC_COLL_WEIGHTS_MAX */
5381 {errno = EINVAL; return -1;}
5382 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
5383 if (x == Mono_Posix_SysconfName__SC_CPUTIME)
5385 {*r = _SC_CPUTIME; return 0;}
5386 #else /* def _SC_CPUTIME */
5387 {errno = EINVAL; return -1;}
5388 #endif /* ndef _SC_CPUTIME */
5389 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT)
5390 #ifdef _SC_C_LANG_SUPPORT
5391 {*r = _SC_C_LANG_SUPPORT; return 0;}
5392 #else /* def _SC_C_LANG_SUPPORT */
5393 {errno = EINVAL; return -1;}
5394 #endif /* ndef _SC_C_LANG_SUPPORT */
5395 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R)
5396 #ifdef _SC_C_LANG_SUPPORT_R
5397 {*r = _SC_C_LANG_SUPPORT_R; return 0;}
5398 #else /* def _SC_C_LANG_SUPPORT_R */
5399 {errno = EINVAL; return -1;}
5400 #endif /* ndef _SC_C_LANG_SUPPORT_R */
5401 if (x == Mono_Posix_SysconfName__SC_DELAYTIMER_MAX)
5402 #ifdef _SC_DELAYTIMER_MAX
5403 {*r = _SC_DELAYTIMER_MAX; return 0;}
5404 #else /* def _SC_DELAYTIMER_MAX */
5405 {errno = EINVAL; return -1;}
5406 #endif /* ndef _SC_DELAYTIMER_MAX */
5407 if (x == Mono_Posix_SysconfName__SC_DEVICE_IO)
5408 #ifdef _SC_DEVICE_IO
5409 {*r = _SC_DEVICE_IO; return 0;}
5410 #else /* def _SC_DEVICE_IO */
5411 {errno = EINVAL; return -1;}
5412 #endif /* ndef _SC_DEVICE_IO */
5413 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC)
5414 #ifdef _SC_DEVICE_SPECIFIC
5415 {*r = _SC_DEVICE_SPECIFIC; return 0;}
5416 #else /* def _SC_DEVICE_SPECIFIC */
5417 {errno = EINVAL; return -1;}
5418 #endif /* ndef _SC_DEVICE_SPECIFIC */
5419 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R)
5420 #ifdef _SC_DEVICE_SPECIFIC_R
5421 {*r = _SC_DEVICE_SPECIFIC_R; return 0;}
5422 #else /* def _SC_DEVICE_SPECIFIC_R */
5423 {errno = EINVAL; return -1;}
5424 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
5425 if (x == Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX)
5426 #ifdef _SC_EQUIV_CLASS_MAX
5427 {*r = _SC_EQUIV_CLASS_MAX; return 0;}
5428 #else /* def _SC_EQUIV_CLASS_MAX */
5429 {errno = EINVAL; return -1;}
5430 #endif /* ndef _SC_EQUIV_CLASS_MAX */
5431 if (x == Mono_Posix_SysconfName__SC_EXPR_NEST_MAX)
5432 #ifdef _SC_EXPR_NEST_MAX
5433 {*r = _SC_EXPR_NEST_MAX; return 0;}
5434 #else /* def _SC_EXPR_NEST_MAX */
5435 {errno = EINVAL; return -1;}
5436 #endif /* ndef _SC_EXPR_NEST_MAX */
5437 if (x == Mono_Posix_SysconfName__SC_FD_MGMT)
5439 {*r = _SC_FD_MGMT; return 0;}
5440 #else /* def _SC_FD_MGMT */
5441 {errno = EINVAL; return -1;}
5442 #endif /* ndef _SC_FD_MGMT */
5443 if (x == Mono_Posix_SysconfName__SC_FIFO)
5445 {*r = _SC_FIFO; return 0;}
5446 #else /* def _SC_FIFO */
5447 {errno = EINVAL; return -1;}
5448 #endif /* ndef _SC_FIFO */
5449 if (x == Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES)
5450 #ifdef _SC_FILE_ATTRIBUTES
5451 {*r = _SC_FILE_ATTRIBUTES; return 0;}
5452 #else /* def _SC_FILE_ATTRIBUTES */
5453 {errno = EINVAL; return -1;}
5454 #endif /* ndef _SC_FILE_ATTRIBUTES */
5455 if (x == Mono_Posix_SysconfName__SC_FILE_LOCKING)
5456 #ifdef _SC_FILE_LOCKING
5457 {*r = _SC_FILE_LOCKING; return 0;}
5458 #else /* def _SC_FILE_LOCKING */
5459 {errno = EINVAL; return -1;}
5460 #endif /* ndef _SC_FILE_LOCKING */
5461 if (x == Mono_Posix_SysconfName__SC_FILE_SYSTEM)
5462 #ifdef _SC_FILE_SYSTEM
5463 {*r = _SC_FILE_SYSTEM; return 0;}
5464 #else /* def _SC_FILE_SYSTEM */
5465 {errno = EINVAL; return -1;}
5466 #endif /* ndef _SC_FILE_SYSTEM */
5467 if (x == Mono_Posix_SysconfName__SC_FSYNC)
5469 {*r = _SC_FSYNC; return 0;}
5470 #else /* def _SC_FSYNC */
5471 {errno = EINVAL; return -1;}
5472 #endif /* ndef _SC_FSYNC */
5473 if (x == Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX)
5474 #ifdef _SC_GETGR_R_SIZE_MAX
5475 {*r = _SC_GETGR_R_SIZE_MAX; return 0;}
5476 #else /* def _SC_GETGR_R_SIZE_MAX */
5477 {errno = EINVAL; return -1;}
5478 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
5479 if (x == Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX)
5480 #ifdef _SC_GETPW_R_SIZE_MAX
5481 {*r = _SC_GETPW_R_SIZE_MAX; return 0;}
5482 #else /* def _SC_GETPW_R_SIZE_MAX */
5483 {errno = EINVAL; return -1;}
5484 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
5485 if (x == Mono_Posix_SysconfName__SC_HOST_NAME_MAX)
5486 #ifdef _SC_HOST_NAME_MAX
5487 {*r = _SC_HOST_NAME_MAX; return 0;}
5488 #else /* def _SC_HOST_NAME_MAX */
5489 {errno = EINVAL; return -1;}
5490 #endif /* ndef _SC_HOST_NAME_MAX */
5491 if (x == Mono_Posix_SysconfName__SC_INT_MAX)
5493 {*r = _SC_INT_MAX; return 0;}
5494 #else /* def _SC_INT_MAX */
5495 {errno = EINVAL; return -1;}
5496 #endif /* ndef _SC_INT_MAX */
5497 if (x == Mono_Posix_SysconfName__SC_INT_MIN)
5499 {*r = _SC_INT_MIN; return 0;}
5500 #else /* def _SC_INT_MIN */
5501 {errno = EINVAL; return -1;}
5502 #endif /* ndef _SC_INT_MIN */
5503 if (x == Mono_Posix_SysconfName__SC_IOV_MAX)
5505 {*r = _SC_IOV_MAX; return 0;}
5506 #else /* def _SC_IOV_MAX */
5507 {errno = EINVAL; return -1;}
5508 #endif /* ndef _SC_IOV_MAX */
5509 if (x == Mono_Posix_SysconfName__SC_JOB_CONTROL)
5510 #ifdef _SC_JOB_CONTROL
5511 {*r = _SC_JOB_CONTROL; return 0;}
5512 #else /* def _SC_JOB_CONTROL */
5513 {errno = EINVAL; return -1;}
5514 #endif /* ndef _SC_JOB_CONTROL */
5515 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC)
5516 #ifdef _SC_LEVEL1_DCACHE_ASSOC
5517 {*r = _SC_LEVEL1_DCACHE_ASSOC; return 0;}
5518 #else /* def _SC_LEVEL1_DCACHE_ASSOC */
5519 {errno = EINVAL; return -1;}
5520 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
5521 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE)
5522 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
5523 {*r = _SC_LEVEL1_DCACHE_LINESIZE; return 0;}
5524 #else /* def _SC_LEVEL1_DCACHE_LINESIZE */
5525 {errno = EINVAL; return -1;}
5526 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
5527 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE)
5528 #ifdef _SC_LEVEL1_DCACHE_SIZE
5529 {*r = _SC_LEVEL1_DCACHE_SIZE; return 0;}
5530 #else /* def _SC_LEVEL1_DCACHE_SIZE */
5531 {errno = EINVAL; return -1;}
5532 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
5533 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC)
5534 #ifdef _SC_LEVEL1_ICACHE_ASSOC
5535 {*r = _SC_LEVEL1_ICACHE_ASSOC; return 0;}
5536 #else /* def _SC_LEVEL1_ICACHE_ASSOC */
5537 {errno = EINVAL; return -1;}
5538 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
5539 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE)
5540 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
5541 {*r = _SC_LEVEL1_ICACHE_LINESIZE; return 0;}
5542 #else /* def _SC_LEVEL1_ICACHE_LINESIZE */
5543 {errno = EINVAL; return -1;}
5544 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
5545 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE)
5546 #ifdef _SC_LEVEL1_ICACHE_SIZE
5547 {*r = _SC_LEVEL1_ICACHE_SIZE; return 0;}
5548 #else /* def _SC_LEVEL1_ICACHE_SIZE */
5549 {errno = EINVAL; return -1;}
5550 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
5551 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC)
5552 #ifdef _SC_LEVEL2_CACHE_ASSOC
5553 {*r = _SC_LEVEL2_CACHE_ASSOC; return 0;}
5554 #else /* def _SC_LEVEL2_CACHE_ASSOC */
5555 {errno = EINVAL; return -1;}
5556 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
5557 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE)
5558 #ifdef _SC_LEVEL2_CACHE_LINESIZE
5559 {*r = _SC_LEVEL2_CACHE_LINESIZE; return 0;}
5560 #else /* def _SC_LEVEL2_CACHE_LINESIZE */
5561 {errno = EINVAL; return -1;}
5562 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
5563 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE)
5564 #ifdef _SC_LEVEL2_CACHE_SIZE
5565 {*r = _SC_LEVEL2_CACHE_SIZE; return 0;}
5566 #else /* def _SC_LEVEL2_CACHE_SIZE */
5567 {errno = EINVAL; return -1;}
5568 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
5569 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC)
5570 #ifdef _SC_LEVEL3_CACHE_ASSOC
5571 {*r = _SC_LEVEL3_CACHE_ASSOC; return 0;}
5572 #else /* def _SC_LEVEL3_CACHE_ASSOC */
5573 {errno = EINVAL; return -1;}
5574 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
5575 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE)
5576 #ifdef _SC_LEVEL3_CACHE_LINESIZE
5577 {*r = _SC_LEVEL3_CACHE_LINESIZE; return 0;}
5578 #else /* def _SC_LEVEL3_CACHE_LINESIZE */
5579 {errno = EINVAL; return -1;}
5580 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
5581 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE)
5582 #ifdef _SC_LEVEL3_CACHE_SIZE
5583 {*r = _SC_LEVEL3_CACHE_SIZE; return 0;}
5584 #else /* def _SC_LEVEL3_CACHE_SIZE */
5585 {errno = EINVAL; return -1;}
5586 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
5587 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC)
5588 #ifdef _SC_LEVEL4_CACHE_ASSOC
5589 {*r = _SC_LEVEL4_CACHE_ASSOC; return 0;}
5590 #else /* def _SC_LEVEL4_CACHE_ASSOC */
5591 {errno = EINVAL; return -1;}
5592 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
5593 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE)
5594 #ifdef _SC_LEVEL4_CACHE_LINESIZE
5595 {*r = _SC_LEVEL4_CACHE_LINESIZE; return 0;}
5596 #else /* def _SC_LEVEL4_CACHE_LINESIZE */
5597 {errno = EINVAL; return -1;}
5598 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
5599 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE)
5600 #ifdef _SC_LEVEL4_CACHE_SIZE
5601 {*r = _SC_LEVEL4_CACHE_SIZE; return 0;}
5602 #else /* def _SC_LEVEL4_CACHE_SIZE */
5603 {errno = EINVAL; return -1;}
5604 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
5605 if (x == Mono_Posix_SysconfName__SC_LINE_MAX)
5607 {*r = _SC_LINE_MAX; return 0;}
5608 #else /* def _SC_LINE_MAX */
5609 {errno = EINVAL; return -1;}
5610 #endif /* ndef _SC_LINE_MAX */
5611 if (x == Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX)
5612 #ifdef _SC_LOGIN_NAME_MAX
5613 {*r = _SC_LOGIN_NAME_MAX; return 0;}
5614 #else /* def _SC_LOGIN_NAME_MAX */
5615 {errno = EINVAL; return -1;}
5616 #endif /* ndef _SC_LOGIN_NAME_MAX */
5617 if (x == Mono_Posix_SysconfName__SC_LONG_BIT)
5619 {*r = _SC_LONG_BIT; return 0;}
5620 #else /* def _SC_LONG_BIT */
5621 {errno = EINVAL; return -1;}
5622 #endif /* ndef _SC_LONG_BIT */
5623 if (x == Mono_Posix_SysconfName__SC_MAPPED_FILES)
5624 #ifdef _SC_MAPPED_FILES
5625 {*r = _SC_MAPPED_FILES; return 0;}
5626 #else /* def _SC_MAPPED_FILES */
5627 {errno = EINVAL; return -1;}
5628 #endif /* ndef _SC_MAPPED_FILES */
5629 if (x == Mono_Posix_SysconfName__SC_MB_LEN_MAX)
5630 #ifdef _SC_MB_LEN_MAX
5631 {*r = _SC_MB_LEN_MAX; return 0;}
5632 #else /* def _SC_MB_LEN_MAX */
5633 {errno = EINVAL; return -1;}
5634 #endif /* ndef _SC_MB_LEN_MAX */
5635 if (x == Mono_Posix_SysconfName__SC_MEMLOCK)
5637 {*r = _SC_MEMLOCK; return 0;}
5638 #else /* def _SC_MEMLOCK */
5639 {errno = EINVAL; return -1;}
5640 #endif /* ndef _SC_MEMLOCK */
5641 if (x == Mono_Posix_SysconfName__SC_MEMLOCK_RANGE)
5642 #ifdef _SC_MEMLOCK_RANGE
5643 {*r = _SC_MEMLOCK_RANGE; return 0;}
5644 #else /* def _SC_MEMLOCK_RANGE */
5645 {errno = EINVAL; return -1;}
5646 #endif /* ndef _SC_MEMLOCK_RANGE */
5647 if (x == Mono_Posix_SysconfName__SC_MEMORY_PROTECTION)
5648 #ifdef _SC_MEMORY_PROTECTION
5649 {*r = _SC_MEMORY_PROTECTION; return 0;}
5650 #else /* def _SC_MEMORY_PROTECTION */
5651 {errno = EINVAL; return -1;}
5652 #endif /* ndef _SC_MEMORY_PROTECTION */
5653 if (x == Mono_Posix_SysconfName__SC_MESSAGE_PASSING)
5654 #ifdef _SC_MESSAGE_PASSING
5655 {*r = _SC_MESSAGE_PASSING; return 0;}
5656 #else /* def _SC_MESSAGE_PASSING */
5657 {errno = EINVAL; return -1;}
5658 #endif /* ndef _SC_MESSAGE_PASSING */
5659 if (x == Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK)
5660 #ifdef _SC_MONOTONIC_CLOCK
5661 {*r = _SC_MONOTONIC_CLOCK; return 0;}
5662 #else /* def _SC_MONOTONIC_CLOCK */
5663 {errno = EINVAL; return -1;}
5664 #endif /* ndef _SC_MONOTONIC_CLOCK */
5665 if (x == Mono_Posix_SysconfName__SC_MQ_OPEN_MAX)
5666 #ifdef _SC_MQ_OPEN_MAX
5667 {*r = _SC_MQ_OPEN_MAX; return 0;}
5668 #else /* def _SC_MQ_OPEN_MAX */
5669 {errno = EINVAL; return -1;}
5670 #endif /* ndef _SC_MQ_OPEN_MAX */
5671 if (x == Mono_Posix_SysconfName__SC_MQ_PRIO_MAX)
5672 #ifdef _SC_MQ_PRIO_MAX
5673 {*r = _SC_MQ_PRIO_MAX; return 0;}
5674 #else /* def _SC_MQ_PRIO_MAX */
5675 {errno = EINVAL; return -1;}
5676 #endif /* ndef _SC_MQ_PRIO_MAX */
5677 if (x == Mono_Posix_SysconfName__SC_MULTI_PROCESS)
5678 #ifdef _SC_MULTI_PROCESS
5679 {*r = _SC_MULTI_PROCESS; return 0;}
5680 #else /* def _SC_MULTI_PROCESS */
5681 {errno = EINVAL; return -1;}
5682 #endif /* ndef _SC_MULTI_PROCESS */
5683 if (x == Mono_Posix_SysconfName__SC_NETWORKING)
5684 #ifdef _SC_NETWORKING
5685 {*r = _SC_NETWORKING; return 0;}
5686 #else /* def _SC_NETWORKING */
5687 {errno = EINVAL; return -1;}
5688 #endif /* ndef _SC_NETWORKING */
5689 if (x == Mono_Posix_SysconfName__SC_NGROUPS_MAX)
5690 #ifdef _SC_NGROUPS_MAX
5691 {*r = _SC_NGROUPS_MAX; return 0;}
5692 #else /* def _SC_NGROUPS_MAX */
5693 {errno = EINVAL; return -1;}
5694 #endif /* ndef _SC_NGROUPS_MAX */
5695 if (x == Mono_Posix_SysconfName__SC_NL_ARGMAX)
5696 #ifdef _SC_NL_ARGMAX
5697 {*r = _SC_NL_ARGMAX; return 0;}
5698 #else /* def _SC_NL_ARGMAX */
5699 {errno = EINVAL; return -1;}
5700 #endif /* ndef _SC_NL_ARGMAX */
5701 if (x == Mono_Posix_SysconfName__SC_NL_LANGMAX)
5702 #ifdef _SC_NL_LANGMAX
5703 {*r = _SC_NL_LANGMAX; return 0;}
5704 #else /* def _SC_NL_LANGMAX */
5705 {errno = EINVAL; return -1;}
5706 #endif /* ndef _SC_NL_LANGMAX */
5707 if (x == Mono_Posix_SysconfName__SC_NL_MSGMAX)
5708 #ifdef _SC_NL_MSGMAX
5709 {*r = _SC_NL_MSGMAX; return 0;}
5710 #else /* def _SC_NL_MSGMAX */
5711 {errno = EINVAL; return -1;}
5712 #endif /* ndef _SC_NL_MSGMAX */
5713 if (x == Mono_Posix_SysconfName__SC_NL_NMAX)
5715 {*r = _SC_NL_NMAX; return 0;}
5716 #else /* def _SC_NL_NMAX */
5717 {errno = EINVAL; return -1;}
5718 #endif /* ndef _SC_NL_NMAX */
5719 if (x == Mono_Posix_SysconfName__SC_NL_SETMAX)
5720 #ifdef _SC_NL_SETMAX
5721 {*r = _SC_NL_SETMAX; return 0;}
5722 #else /* def _SC_NL_SETMAX */
5723 {errno = EINVAL; return -1;}
5724 #endif /* ndef _SC_NL_SETMAX */
5725 if (x == Mono_Posix_SysconfName__SC_NL_TEXTMAX)
5726 #ifdef _SC_NL_TEXTMAX
5727 {*r = _SC_NL_TEXTMAX; return 0;}
5728 #else /* def _SC_NL_TEXTMAX */
5729 {errno = EINVAL; return -1;}
5730 #endif /* ndef _SC_NL_TEXTMAX */
5731 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_CONF)
5732 #ifdef _SC_NPROCESSORS_CONF
5733 {*r = _SC_NPROCESSORS_CONF; return 0;}
5734 #else /* def _SC_NPROCESSORS_CONF */
5735 {errno = EINVAL; return -1;}
5736 #endif /* ndef _SC_NPROCESSORS_CONF */
5737 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN)
5738 #ifdef _SC_NPROCESSORS_ONLN
5739 {*r = _SC_NPROCESSORS_ONLN; return 0;}
5740 #else /* def _SC_NPROCESSORS_ONLN */
5741 {errno = EINVAL; return -1;}
5742 #endif /* ndef _SC_NPROCESSORS_ONLN */
5743 if (x == Mono_Posix_SysconfName__SC_NZERO)
5745 {*r = _SC_NZERO; return 0;}
5746 #else /* def _SC_NZERO */
5747 {errno = EINVAL; return -1;}
5748 #endif /* ndef _SC_NZERO */
5749 if (x == Mono_Posix_SysconfName__SC_OPEN_MAX)
5751 {*r = _SC_OPEN_MAX; return 0;}
5752 #else /* def _SC_OPEN_MAX */
5753 {errno = EINVAL; return -1;}
5754 #endif /* ndef _SC_OPEN_MAX */
5755 if (x == Mono_Posix_SysconfName__SC_PAGESIZE)
5757 {*r = _SC_PAGESIZE; return 0;}
5758 #else /* def _SC_PAGESIZE */
5759 {errno = EINVAL; return -1;}
5760 #endif /* ndef _SC_PAGESIZE */
5761 if (x == Mono_Posix_SysconfName__SC_PASS_MAX)
5763 {*r = _SC_PASS_MAX; return 0;}
5764 #else /* def _SC_PASS_MAX */
5765 {errno = EINVAL; return -1;}
5766 #endif /* ndef _SC_PASS_MAX */
5767 if (x == Mono_Posix_SysconfName__SC_PHYS_PAGES)
5768 #ifdef _SC_PHYS_PAGES
5769 {*r = _SC_PHYS_PAGES; return 0;}
5770 #else /* def _SC_PHYS_PAGES */
5771 {errno = EINVAL; return -1;}
5772 #endif /* ndef _SC_PHYS_PAGES */
5773 if (x == Mono_Posix_SysconfName__SC_PII)
5775 {*r = _SC_PII; return 0;}
5776 #else /* def _SC_PII */
5777 {errno = EINVAL; return -1;}
5778 #endif /* ndef _SC_PII */
5779 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET)
5780 #ifdef _SC_PII_INTERNET
5781 {*r = _SC_PII_INTERNET; return 0;}
5782 #else /* def _SC_PII_INTERNET */
5783 {errno = EINVAL; return -1;}
5784 #endif /* ndef _SC_PII_INTERNET */
5785 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM)
5786 #ifdef _SC_PII_INTERNET_DGRAM
5787 {*r = _SC_PII_INTERNET_DGRAM; return 0;}
5788 #else /* def _SC_PII_INTERNET_DGRAM */
5789 {errno = EINVAL; return -1;}
5790 #endif /* ndef _SC_PII_INTERNET_DGRAM */
5791 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM)
5792 #ifdef _SC_PII_INTERNET_STREAM
5793 {*r = _SC_PII_INTERNET_STREAM; return 0;}
5794 #else /* def _SC_PII_INTERNET_STREAM */
5795 {errno = EINVAL; return -1;}
5796 #endif /* ndef _SC_PII_INTERNET_STREAM */
5797 if (x == Mono_Posix_SysconfName__SC_PII_OSI)
5799 {*r = _SC_PII_OSI; return 0;}
5800 #else /* def _SC_PII_OSI */
5801 {errno = EINVAL; return -1;}
5802 #endif /* ndef _SC_PII_OSI */
5803 if (x == Mono_Posix_SysconfName__SC_PII_OSI_CLTS)
5804 #ifdef _SC_PII_OSI_CLTS
5805 {*r = _SC_PII_OSI_CLTS; return 0;}
5806 #else /* def _SC_PII_OSI_CLTS */
5807 {errno = EINVAL; return -1;}
5808 #endif /* ndef _SC_PII_OSI_CLTS */
5809 if (x == Mono_Posix_SysconfName__SC_PII_OSI_COTS)
5810 #ifdef _SC_PII_OSI_COTS
5811 {*r = _SC_PII_OSI_COTS; return 0;}
5812 #else /* def _SC_PII_OSI_COTS */
5813 {errno = EINVAL; return -1;}
5814 #endif /* ndef _SC_PII_OSI_COTS */
5815 if (x == Mono_Posix_SysconfName__SC_PII_OSI_M)
5816 #ifdef _SC_PII_OSI_M
5817 {*r = _SC_PII_OSI_M; return 0;}
5818 #else /* def _SC_PII_OSI_M */
5819 {errno = EINVAL; return -1;}
5820 #endif /* ndef _SC_PII_OSI_M */
5821 if (x == Mono_Posix_SysconfName__SC_PII_SOCKET)
5822 #ifdef _SC_PII_SOCKET
5823 {*r = _SC_PII_SOCKET; return 0;}
5824 #else /* def _SC_PII_SOCKET */
5825 {errno = EINVAL; return -1;}
5826 #endif /* ndef _SC_PII_SOCKET */
5827 if (x == Mono_Posix_SysconfName__SC_PII_XTI)
5829 {*r = _SC_PII_XTI; return 0;}
5830 #else /* def _SC_PII_XTI */
5831 {errno = EINVAL; return -1;}
5832 #endif /* ndef _SC_PII_XTI */
5833 if (x == Mono_Posix_SysconfName__SC_PIPE)
5835 {*r = _SC_PIPE; return 0;}
5836 #else /* def _SC_PIPE */
5837 {errno = EINVAL; return -1;}
5838 #endif /* ndef _SC_PIPE */
5839 if (x == Mono_Posix_SysconfName__SC_POLL)
5841 {*r = _SC_POLL; return 0;}
5842 #else /* def _SC_POLL */
5843 {errno = EINVAL; return -1;}
5844 #endif /* ndef _SC_POLL */
5845 if (x == Mono_Posix_SysconfName__SC_PRIORITIZED_IO)
5846 #ifdef _SC_PRIORITIZED_IO
5847 {*r = _SC_PRIORITIZED_IO; return 0;}
5848 #else /* def _SC_PRIORITIZED_IO */
5849 {errno = EINVAL; return -1;}
5850 #endif /* ndef _SC_PRIORITIZED_IO */
5851 if (x == Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING)
5852 #ifdef _SC_PRIORITY_SCHEDULING
5853 {*r = _SC_PRIORITY_SCHEDULING; return 0;}
5854 #else /* def _SC_PRIORITY_SCHEDULING */
5855 {errno = EINVAL; return -1;}
5856 #endif /* ndef _SC_PRIORITY_SCHEDULING */
5857 if (x == Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS)
5858 #ifdef _SC_READER_WRITER_LOCKS
5859 {*r = _SC_READER_WRITER_LOCKS; return 0;}
5860 #else /* def _SC_READER_WRITER_LOCKS */
5861 {errno = EINVAL; return -1;}
5862 #endif /* ndef _SC_READER_WRITER_LOCKS */
5863 if (x == Mono_Posix_SysconfName__SC_REALTIME_SIGNALS)
5864 #ifdef _SC_REALTIME_SIGNALS
5865 {*r = _SC_REALTIME_SIGNALS; return 0;}
5866 #else /* def _SC_REALTIME_SIGNALS */
5867 {errno = EINVAL; return -1;}
5868 #endif /* ndef _SC_REALTIME_SIGNALS */
5869 if (x == Mono_Posix_SysconfName__SC_REGEXP)
5871 {*r = _SC_REGEXP; return 0;}
5872 #else /* def _SC_REGEXP */
5873 {errno = EINVAL; return -1;}
5874 #endif /* ndef _SC_REGEXP */
5875 if (x == Mono_Posix_SysconfName__SC_REGEX_VERSION)
5876 #ifdef _SC_REGEX_VERSION
5877 {*r = _SC_REGEX_VERSION; return 0;}
5878 #else /* def _SC_REGEX_VERSION */
5879 {errno = EINVAL; return -1;}
5880 #endif /* ndef _SC_REGEX_VERSION */
5881 if (x == Mono_Posix_SysconfName__SC_RE_DUP_MAX)
5882 #ifdef _SC_RE_DUP_MAX
5883 {*r = _SC_RE_DUP_MAX; return 0;}
5884 #else /* def _SC_RE_DUP_MAX */
5885 {errno = EINVAL; return -1;}
5886 #endif /* ndef _SC_RE_DUP_MAX */
5887 if (x == Mono_Posix_SysconfName__SC_RTSIG_MAX)
5888 #ifdef _SC_RTSIG_MAX
5889 {*r = _SC_RTSIG_MAX; return 0;}
5890 #else /* def _SC_RTSIG_MAX */
5891 {errno = EINVAL; return -1;}
5892 #endif /* ndef _SC_RTSIG_MAX */
5893 if (x == Mono_Posix_SysconfName__SC_SAVED_IDS)
5894 #ifdef _SC_SAVED_IDS
5895 {*r = _SC_SAVED_IDS; return 0;}
5896 #else /* def _SC_SAVED_IDS */
5897 {errno = EINVAL; return -1;}
5898 #endif /* ndef _SC_SAVED_IDS */
5899 if (x == Mono_Posix_SysconfName__SC_SCHAR_MAX)
5900 #ifdef _SC_SCHAR_MAX
5901 {*r = _SC_SCHAR_MAX; return 0;}
5902 #else /* def _SC_SCHAR_MAX */
5903 {errno = EINVAL; return -1;}
5904 #endif /* ndef _SC_SCHAR_MAX */
5905 if (x == Mono_Posix_SysconfName__SC_SCHAR_MIN)
5906 #ifdef _SC_SCHAR_MIN
5907 {*r = _SC_SCHAR_MIN; return 0;}
5908 #else /* def _SC_SCHAR_MIN */
5909 {errno = EINVAL; return -1;}
5910 #endif /* ndef _SC_SCHAR_MIN */
5911 if (x == Mono_Posix_SysconfName__SC_SELECT)
5913 {*r = _SC_SELECT; return 0;}
5914 #else /* def _SC_SELECT */
5915 {errno = EINVAL; return -1;}
5916 #endif /* ndef _SC_SELECT */
5917 if (x == Mono_Posix_SysconfName__SC_SEMAPHORES)
5918 #ifdef _SC_SEMAPHORES
5919 {*r = _SC_SEMAPHORES; return 0;}
5920 #else /* def _SC_SEMAPHORES */
5921 {errno = EINVAL; return -1;}
5922 #endif /* ndef _SC_SEMAPHORES */
5923 if (x == Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX)
5924 #ifdef _SC_SEM_NSEMS_MAX
5925 {*r = _SC_SEM_NSEMS_MAX; return 0;}
5926 #else /* def _SC_SEM_NSEMS_MAX */
5927 {errno = EINVAL; return -1;}
5928 #endif /* ndef _SC_SEM_NSEMS_MAX */
5929 if (x == Mono_Posix_SysconfName__SC_SEM_VALUE_MAX)
5930 #ifdef _SC_SEM_VALUE_MAX
5931 {*r = _SC_SEM_VALUE_MAX; return 0;}
5932 #else /* def _SC_SEM_VALUE_MAX */
5933 {errno = EINVAL; return -1;}
5934 #endif /* ndef _SC_SEM_VALUE_MAX */
5935 if (x == Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS)
5936 #ifdef _SC_SHARED_MEMORY_OBJECTS
5937 {*r = _SC_SHARED_MEMORY_OBJECTS; return 0;}
5938 #else /* def _SC_SHARED_MEMORY_OBJECTS */
5939 {errno = EINVAL; return -1;}
5940 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
5941 if (x == Mono_Posix_SysconfName__SC_SHELL)
5943 {*r = _SC_SHELL; return 0;}
5944 #else /* def _SC_SHELL */
5945 {errno = EINVAL; return -1;}
5946 #endif /* ndef _SC_SHELL */
5947 if (x == Mono_Posix_SysconfName__SC_SHRT_MAX)
5949 {*r = _SC_SHRT_MAX; return 0;}
5950 #else /* def _SC_SHRT_MAX */
5951 {errno = EINVAL; return -1;}
5952 #endif /* ndef _SC_SHRT_MAX */
5953 if (x == Mono_Posix_SysconfName__SC_SHRT_MIN)
5955 {*r = _SC_SHRT_MIN; return 0;}
5956 #else /* def _SC_SHRT_MIN */
5957 {errno = EINVAL; return -1;}
5958 #endif /* ndef _SC_SHRT_MIN */
5959 if (x == Mono_Posix_SysconfName__SC_SIGNALS)
5961 {*r = _SC_SIGNALS; return 0;}
5962 #else /* def _SC_SIGNALS */
5963 {errno = EINVAL; return -1;}
5964 #endif /* ndef _SC_SIGNALS */
5965 if (x == Mono_Posix_SysconfName__SC_SIGQUEUE_MAX)
5966 #ifdef _SC_SIGQUEUE_MAX
5967 {*r = _SC_SIGQUEUE_MAX; return 0;}
5968 #else /* def _SC_SIGQUEUE_MAX */
5969 {errno = EINVAL; return -1;}
5970 #endif /* ndef _SC_SIGQUEUE_MAX */
5971 if (x == Mono_Posix_SysconfName__SC_SINGLE_PROCESS)
5972 #ifdef _SC_SINGLE_PROCESS
5973 {*r = _SC_SINGLE_PROCESS; return 0;}
5974 #else /* def _SC_SINGLE_PROCESS */
5975 {errno = EINVAL; return -1;}
5976 #endif /* ndef _SC_SINGLE_PROCESS */
5977 if (x == Mono_Posix_SysconfName__SC_SPAWN)
5979 {*r = _SC_SPAWN; return 0;}
5980 #else /* def _SC_SPAWN */
5981 {errno = EINVAL; return -1;}
5982 #endif /* ndef _SC_SPAWN */
5983 if (x == Mono_Posix_SysconfName__SC_SPIN_LOCKS)
5984 #ifdef _SC_SPIN_LOCKS
5985 {*r = _SC_SPIN_LOCKS; return 0;}
5986 #else /* def _SC_SPIN_LOCKS */
5987 {errno = EINVAL; return -1;}
5988 #endif /* ndef _SC_SPIN_LOCKS */
5989 if (x == Mono_Posix_SysconfName__SC_SPORADIC_SERVER)
5990 #ifdef _SC_SPORADIC_SERVER
5991 {*r = _SC_SPORADIC_SERVER; return 0;}
5992 #else /* def _SC_SPORADIC_SERVER */
5993 {errno = EINVAL; return -1;}
5994 #endif /* ndef _SC_SPORADIC_SERVER */
5995 if (x == Mono_Posix_SysconfName__SC_SSIZE_MAX)
5996 #ifdef _SC_SSIZE_MAX
5997 {*r = _SC_SSIZE_MAX; return 0;}
5998 #else /* def _SC_SSIZE_MAX */
5999 {errno = EINVAL; return -1;}
6000 #endif /* ndef _SC_SSIZE_MAX */
6001 if (x == Mono_Posix_SysconfName__SC_STREAMS)
6003 {*r = _SC_STREAMS; return 0;}
6004 #else /* def _SC_STREAMS */
6005 {errno = EINVAL; return -1;}
6006 #endif /* ndef _SC_STREAMS */
6007 if (x == Mono_Posix_SysconfName__SC_STREAM_MAX)
6008 #ifdef _SC_STREAM_MAX
6009 {*r = _SC_STREAM_MAX; return 0;}
6010 #else /* def _SC_STREAM_MAX */
6011 {errno = EINVAL; return -1;}
6012 #endif /* ndef _SC_STREAM_MAX */
6013 if (x == Mono_Posix_SysconfName__SC_SYMLOOP_MAX)
6014 #ifdef _SC_SYMLOOP_MAX
6015 {*r = _SC_SYMLOOP_MAX; return 0;}
6016 #else /* def _SC_SYMLOOP_MAX */
6017 {errno = EINVAL; return -1;}
6018 #endif /* ndef _SC_SYMLOOP_MAX */
6019 if (x == Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO)
6020 #ifdef _SC_SYNCHRONIZED_IO
6021 {*r = _SC_SYNCHRONIZED_IO; return 0;}
6022 #else /* def _SC_SYNCHRONIZED_IO */
6023 {errno = EINVAL; return -1;}
6024 #endif /* ndef _SC_SYNCHRONIZED_IO */
6025 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE)
6026 #ifdef _SC_SYSTEM_DATABASE
6027 {*r = _SC_SYSTEM_DATABASE; return 0;}
6028 #else /* def _SC_SYSTEM_DATABASE */
6029 {errno = EINVAL; return -1;}
6030 #endif /* ndef _SC_SYSTEM_DATABASE */
6031 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R)
6032 #ifdef _SC_SYSTEM_DATABASE_R
6033 {*r = _SC_SYSTEM_DATABASE_R; return 0;}
6034 #else /* def _SC_SYSTEM_DATABASE_R */
6035 {errno = EINVAL; return -1;}
6036 #endif /* ndef _SC_SYSTEM_DATABASE_R */
6037 if (x == Mono_Posix_SysconfName__SC_THREADS)
6039 {*r = _SC_THREADS; return 0;}
6040 #else /* def _SC_THREADS */
6041 {errno = EINVAL; return -1;}
6042 #endif /* ndef _SC_THREADS */
6043 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR)
6044 #ifdef _SC_THREAD_ATTR_STACKADDR
6045 {*r = _SC_THREAD_ATTR_STACKADDR; return 0;}
6046 #else /* def _SC_THREAD_ATTR_STACKADDR */
6047 {errno = EINVAL; return -1;}
6048 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
6049 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE)
6050 #ifdef _SC_THREAD_ATTR_STACKSIZE
6051 {*r = _SC_THREAD_ATTR_STACKSIZE; return 0;}
6052 #else /* def _SC_THREAD_ATTR_STACKSIZE */
6053 {errno = EINVAL; return -1;}
6054 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
6055 if (x == Mono_Posix_SysconfName__SC_THREAD_CPUTIME)
6056 #ifdef _SC_THREAD_CPUTIME
6057 {*r = _SC_THREAD_CPUTIME; return 0;}
6058 #else /* def _SC_THREAD_CPUTIME */
6059 {errno = EINVAL; return -1;}
6060 #endif /* ndef _SC_THREAD_CPUTIME */
6061 if (x == Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS)
6062 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
6063 {*r = _SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
6064 #else /* def _SC_THREAD_DESTRUCTOR_ITERATIONS */
6065 {errno = EINVAL; return -1;}
6066 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
6067 if (x == Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX)
6068 #ifdef _SC_THREAD_KEYS_MAX
6069 {*r = _SC_THREAD_KEYS_MAX; return 0;}
6070 #else /* def _SC_THREAD_KEYS_MAX */
6071 {errno = EINVAL; return -1;}
6072 #endif /* ndef _SC_THREAD_KEYS_MAX */
6073 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING)
6074 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
6075 {*r = _SC_THREAD_PRIORITY_SCHEDULING; return 0;}
6076 #else /* def _SC_THREAD_PRIORITY_SCHEDULING */
6077 {errno = EINVAL; return -1;}
6078 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
6079 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT)
6080 #ifdef _SC_THREAD_PRIO_INHERIT
6081 {*r = _SC_THREAD_PRIO_INHERIT; return 0;}
6082 #else /* def _SC_THREAD_PRIO_INHERIT */
6083 {errno = EINVAL; return -1;}
6084 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
6085 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT)
6086 #ifdef _SC_THREAD_PRIO_PROTECT
6087 {*r = _SC_THREAD_PRIO_PROTECT; return 0;}
6088 #else /* def _SC_THREAD_PRIO_PROTECT */
6089 {errno = EINVAL; return -1;}
6090 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
6091 if (x == Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED)
6092 #ifdef _SC_THREAD_PROCESS_SHARED
6093 {*r = _SC_THREAD_PROCESS_SHARED; return 0;}
6094 #else /* def _SC_THREAD_PROCESS_SHARED */
6095 {errno = EINVAL; return -1;}
6096 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
6097 if (x == Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS)
6098 #ifdef _SC_THREAD_SAFE_FUNCTIONS
6099 {*r = _SC_THREAD_SAFE_FUNCTIONS; return 0;}
6100 #else /* def _SC_THREAD_SAFE_FUNCTIONS */
6101 {errno = EINVAL; return -1;}
6102 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
6103 if (x == Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER)
6104 #ifdef _SC_THREAD_SPORADIC_SERVER
6105 {*r = _SC_THREAD_SPORADIC_SERVER; return 0;}
6106 #else /* def _SC_THREAD_SPORADIC_SERVER */
6107 {errno = EINVAL; return -1;}
6108 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
6109 if (x == Mono_Posix_SysconfName__SC_THREAD_STACK_MIN)
6110 #ifdef _SC_THREAD_STACK_MIN
6111 {*r = _SC_THREAD_STACK_MIN; return 0;}
6112 #else /* def _SC_THREAD_STACK_MIN */
6113 {errno = EINVAL; return -1;}
6114 #endif /* ndef _SC_THREAD_STACK_MIN */
6115 if (x == Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX)
6116 #ifdef _SC_THREAD_THREADS_MAX
6117 {*r = _SC_THREAD_THREADS_MAX; return 0;}
6118 #else /* def _SC_THREAD_THREADS_MAX */
6119 {errno = EINVAL; return -1;}
6120 #endif /* ndef _SC_THREAD_THREADS_MAX */
6121 if (x == Mono_Posix_SysconfName__SC_TIMEOUTS)
6123 {*r = _SC_TIMEOUTS; return 0;}
6124 #else /* def _SC_TIMEOUTS */
6125 {errno = EINVAL; return -1;}
6126 #endif /* ndef _SC_TIMEOUTS */
6127 if (x == Mono_Posix_SysconfName__SC_TIMERS)
6129 {*r = _SC_TIMERS; return 0;}
6130 #else /* def _SC_TIMERS */
6131 {errno = EINVAL; return -1;}
6132 #endif /* ndef _SC_TIMERS */
6133 if (x == Mono_Posix_SysconfName__SC_TIMER_MAX)
6134 #ifdef _SC_TIMER_MAX
6135 {*r = _SC_TIMER_MAX; return 0;}
6136 #else /* def _SC_TIMER_MAX */
6137 {errno = EINVAL; return -1;}
6138 #endif /* ndef _SC_TIMER_MAX */
6139 if (x == Mono_Posix_SysconfName__SC_TRACE)
6141 {*r = _SC_TRACE; return 0;}
6142 #else /* def _SC_TRACE */
6143 {errno = EINVAL; return -1;}
6144 #endif /* ndef _SC_TRACE */
6145 if (x == Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER)
6146 #ifdef _SC_TRACE_EVENT_FILTER
6147 {*r = _SC_TRACE_EVENT_FILTER; return 0;}
6148 #else /* def _SC_TRACE_EVENT_FILTER */
6149 {errno = EINVAL; return -1;}
6150 #endif /* ndef _SC_TRACE_EVENT_FILTER */
6151 if (x == Mono_Posix_SysconfName__SC_TRACE_INHERIT)
6152 #ifdef _SC_TRACE_INHERIT
6153 {*r = _SC_TRACE_INHERIT; return 0;}
6154 #else /* def _SC_TRACE_INHERIT */
6155 {errno = EINVAL; return -1;}
6156 #endif /* ndef _SC_TRACE_INHERIT */
6157 if (x == Mono_Posix_SysconfName__SC_TRACE_LOG)
6158 #ifdef _SC_TRACE_LOG
6159 {*r = _SC_TRACE_LOG; return 0;}
6160 #else /* def _SC_TRACE_LOG */
6161 {errno = EINVAL; return -1;}
6162 #endif /* ndef _SC_TRACE_LOG */
6163 if (x == Mono_Posix_SysconfName__SC_TTY_NAME_MAX)
6164 #ifdef _SC_TTY_NAME_MAX
6165 {*r = _SC_TTY_NAME_MAX; return 0;}
6166 #else /* def _SC_TTY_NAME_MAX */
6167 {errno = EINVAL; return -1;}
6168 #endif /* ndef _SC_TTY_NAME_MAX */
6169 if (x == Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS)
6170 #ifdef _SC_TYPED_MEMORY_OBJECTS
6171 {*r = _SC_TYPED_MEMORY_OBJECTS; return 0;}
6172 #else /* def _SC_TYPED_MEMORY_OBJECTS */
6173 {errno = EINVAL; return -1;}
6174 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
6175 if (x == Mono_Posix_SysconfName__SC_TZNAME_MAX)
6176 #ifdef _SC_TZNAME_MAX
6177 {*r = _SC_TZNAME_MAX; return 0;}
6178 #else /* def _SC_TZNAME_MAX */
6179 {errno = EINVAL; return -1;}
6180 #endif /* ndef _SC_TZNAME_MAX */
6181 if (x == Mono_Posix_SysconfName__SC_T_IOV_MAX)
6182 #ifdef _SC_T_IOV_MAX
6183 {*r = _SC_T_IOV_MAX; return 0;}
6184 #else /* def _SC_T_IOV_MAX */
6185 {errno = EINVAL; return -1;}
6186 #endif /* ndef _SC_T_IOV_MAX */
6187 if (x == Mono_Posix_SysconfName__SC_UCHAR_MAX)
6188 #ifdef _SC_UCHAR_MAX
6189 {*r = _SC_UCHAR_MAX; return 0;}
6190 #else /* def _SC_UCHAR_MAX */
6191 {errno = EINVAL; return -1;}
6192 #endif /* ndef _SC_UCHAR_MAX */
6193 if (x == Mono_Posix_SysconfName__SC_UINT_MAX)
6195 {*r = _SC_UINT_MAX; return 0;}
6196 #else /* def _SC_UINT_MAX */
6197 {errno = EINVAL; return -1;}
6198 #endif /* ndef _SC_UINT_MAX */
6199 if (x == Mono_Posix_SysconfName__SC_UIO_MAXIOV)
6200 #ifdef _SC_UIO_MAXIOV
6201 {*r = _SC_UIO_MAXIOV; return 0;}
6202 #else /* def _SC_UIO_MAXIOV */
6203 {errno = EINVAL; return -1;}
6204 #endif /* ndef _SC_UIO_MAXIOV */
6205 if (x == Mono_Posix_SysconfName__SC_ULONG_MAX)
6206 #ifdef _SC_ULONG_MAX
6207 {*r = _SC_ULONG_MAX; return 0;}
6208 #else /* def _SC_ULONG_MAX */
6209 {errno = EINVAL; return -1;}
6210 #endif /* ndef _SC_ULONG_MAX */
6211 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS)
6212 #ifdef _SC_USER_GROUPS
6213 {*r = _SC_USER_GROUPS; return 0;}
6214 #else /* def _SC_USER_GROUPS */
6215 {errno = EINVAL; return -1;}
6216 #endif /* ndef _SC_USER_GROUPS */
6217 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS_R)
6218 #ifdef _SC_USER_GROUPS_R
6219 {*r = _SC_USER_GROUPS_R; return 0;}
6220 #else /* def _SC_USER_GROUPS_R */
6221 {errno = EINVAL; return -1;}
6222 #endif /* ndef _SC_USER_GROUPS_R */
6223 if (x == Mono_Posix_SysconfName__SC_USHRT_MAX)
6224 #ifdef _SC_USHRT_MAX
6225 {*r = _SC_USHRT_MAX; return 0;}
6226 #else /* def _SC_USHRT_MAX */
6227 {errno = EINVAL; return -1;}
6228 #endif /* ndef _SC_USHRT_MAX */
6229 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFF32)
6230 #ifdef _SC_V6_ILP32_OFF32
6231 {*r = _SC_V6_ILP32_OFF32; return 0;}
6232 #else /* def _SC_V6_ILP32_OFF32 */
6233 {errno = EINVAL; return -1;}
6234 #endif /* ndef _SC_V6_ILP32_OFF32 */
6235 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG)
6236 #ifdef _SC_V6_ILP32_OFFBIG
6237 {*r = _SC_V6_ILP32_OFFBIG; return 0;}
6238 #else /* def _SC_V6_ILP32_OFFBIG */
6239 {errno = EINVAL; return -1;}
6240 #endif /* ndef _SC_V6_ILP32_OFFBIG */
6241 if (x == Mono_Posix_SysconfName__SC_V6_LP64_OFF64)
6242 #ifdef _SC_V6_LP64_OFF64
6243 {*r = _SC_V6_LP64_OFF64; return 0;}
6244 #else /* def _SC_V6_LP64_OFF64 */
6245 {errno = EINVAL; return -1;}
6246 #endif /* ndef _SC_V6_LP64_OFF64 */
6247 if (x == Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG)
6248 #ifdef _SC_V6_LPBIG_OFFBIG
6249 {*r = _SC_V6_LPBIG_OFFBIG; return 0;}
6250 #else /* def _SC_V6_LPBIG_OFFBIG */
6251 {errno = EINVAL; return -1;}
6252 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
6253 if (x == Mono_Posix_SysconfName__SC_VERSION)
6255 {*r = _SC_VERSION; return 0;}
6256 #else /* def _SC_VERSION */
6257 {errno = EINVAL; return -1;}
6258 #endif /* ndef _SC_VERSION */
6259 if (x == Mono_Posix_SysconfName__SC_WORD_BIT)
6261 {*r = _SC_WORD_BIT; return 0;}
6262 #else /* def _SC_WORD_BIT */
6263 {errno = EINVAL; return -1;}
6264 #endif /* ndef _SC_WORD_BIT */
6265 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32)
6266 #ifdef _SC_XBS5_ILP32_OFF32
6267 {*r = _SC_XBS5_ILP32_OFF32; return 0;}
6268 #else /* def _SC_XBS5_ILP32_OFF32 */
6269 {errno = EINVAL; return -1;}
6270 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
6271 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG)
6272 #ifdef _SC_XBS5_ILP32_OFFBIG
6273 {*r = _SC_XBS5_ILP32_OFFBIG; return 0;}
6274 #else /* def _SC_XBS5_ILP32_OFFBIG */
6275 {errno = EINVAL; return -1;}
6276 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
6277 if (x == Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64)
6278 #ifdef _SC_XBS5_LP64_OFF64
6279 {*r = _SC_XBS5_LP64_OFF64; return 0;}
6280 #else /* def _SC_XBS5_LP64_OFF64 */
6281 {errno = EINVAL; return -1;}
6282 #endif /* ndef _SC_XBS5_LP64_OFF64 */
6283 if (x == Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG)
6284 #ifdef _SC_XBS5_LPBIG_OFFBIG
6285 {*r = _SC_XBS5_LPBIG_OFFBIG; return 0;}
6286 #else /* def _SC_XBS5_LPBIG_OFFBIG */
6287 {errno = EINVAL; return -1;}
6288 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
6289 if (x == Mono_Posix_SysconfName__SC_XOPEN_CRYPT)
6290 #ifdef _SC_XOPEN_CRYPT
6291 {*r = _SC_XOPEN_CRYPT; return 0;}
6292 #else /* def _SC_XOPEN_CRYPT */
6293 {errno = EINVAL; return -1;}
6294 #endif /* ndef _SC_XOPEN_CRYPT */
6295 if (x == Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N)
6296 #ifdef _SC_XOPEN_ENH_I18N
6297 {*r = _SC_XOPEN_ENH_I18N; return 0;}
6298 #else /* def _SC_XOPEN_ENH_I18N */
6299 {errno = EINVAL; return -1;}
6300 #endif /* ndef _SC_XOPEN_ENH_I18N */
6301 if (x == Mono_Posix_SysconfName__SC_XOPEN_LEGACY)
6302 #ifdef _SC_XOPEN_LEGACY
6303 {*r = _SC_XOPEN_LEGACY; return 0;}
6304 #else /* def _SC_XOPEN_LEGACY */
6305 {errno = EINVAL; return -1;}
6306 #endif /* ndef _SC_XOPEN_LEGACY */
6307 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME)
6308 #ifdef _SC_XOPEN_REALTIME
6309 {*r = _SC_XOPEN_REALTIME; return 0;}
6310 #else /* def _SC_XOPEN_REALTIME */
6311 {errno = EINVAL; return -1;}
6312 #endif /* ndef _SC_XOPEN_REALTIME */
6313 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS)
6314 #ifdef _SC_XOPEN_REALTIME_THREADS
6315 {*r = _SC_XOPEN_REALTIME_THREADS; return 0;}
6316 #else /* def _SC_XOPEN_REALTIME_THREADS */
6317 {errno = EINVAL; return -1;}
6318 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
6319 if (x == Mono_Posix_SysconfName__SC_XOPEN_SHM)
6320 #ifdef _SC_XOPEN_SHM
6321 {*r = _SC_XOPEN_SHM; return 0;}
6322 #else /* def _SC_XOPEN_SHM */
6323 {errno = EINVAL; return -1;}
6324 #endif /* ndef _SC_XOPEN_SHM */
6325 if (x == Mono_Posix_SysconfName__SC_XOPEN_UNIX)
6326 #ifdef _SC_XOPEN_UNIX
6327 {*r = _SC_XOPEN_UNIX; return 0;}
6328 #else /* def _SC_XOPEN_UNIX */
6329 {errno = EINVAL; return -1;}
6330 #endif /* ndef _SC_XOPEN_UNIX */
6331 if (x == Mono_Posix_SysconfName__SC_XOPEN_VERSION)
6332 #ifdef _SC_XOPEN_VERSION
6333 {*r = _SC_XOPEN_VERSION; return 0;}
6334 #else /* def _SC_XOPEN_VERSION */
6335 {errno = EINVAL; return -1;}
6336 #endif /* ndef _SC_XOPEN_VERSION */
6337 if (x == Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION)
6338 #ifdef _SC_XOPEN_XCU_VERSION
6339 {*r = _SC_XOPEN_XCU_VERSION; return 0;}
6340 #else /* def _SC_XOPEN_XCU_VERSION */
6341 {errno = EINVAL; return -1;}
6342 #endif /* ndef _SC_XOPEN_XCU_VERSION */
6343 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG2)
6344 #ifdef _SC_XOPEN_XPG2
6345 {*r = _SC_XOPEN_XPG2; return 0;}
6346 #else /* def _SC_XOPEN_XPG2 */
6347 {errno = EINVAL; return -1;}
6348 #endif /* ndef _SC_XOPEN_XPG2 */
6349 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG3)
6350 #ifdef _SC_XOPEN_XPG3
6351 {*r = _SC_XOPEN_XPG3; return 0;}
6352 #else /* def _SC_XOPEN_XPG3 */
6353 {errno = EINVAL; return -1;}
6354 #endif /* ndef _SC_XOPEN_XPG3 */
6355 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG4)
6356 #ifdef _SC_XOPEN_XPG4
6357 {*r = _SC_XOPEN_XPG4; return 0;}
6358 #else /* def _SC_XOPEN_XPG4 */
6359 {errno = EINVAL; return -1;}
6360 #endif /* ndef _SC_XOPEN_XPG4 */
6363 errno = EINVAL; return -1;
6366 int Mono_Posix_ToSysconfName (int x, int *r)
6371 #ifdef _SC_2_CHAR_TERM
6372 if (x == _SC_2_CHAR_TERM)
6373 {*r = Mono_Posix_SysconfName__SC_2_CHAR_TERM; return 0;}
6374 #endif /* ndef _SC_2_CHAR_TERM */
6376 if (x == _SC_2_C_BIND)
6377 {*r = Mono_Posix_SysconfName__SC_2_C_BIND; return 0;}
6378 #endif /* ndef _SC_2_C_BIND */
6380 if (x == _SC_2_C_DEV)
6381 {*r = Mono_Posix_SysconfName__SC_2_C_DEV; return 0;}
6382 #endif /* ndef _SC_2_C_DEV */
6383 #ifdef _SC_2_C_VERSION
6384 if (x == _SC_2_C_VERSION)
6385 {*r = Mono_Posix_SysconfName__SC_2_C_VERSION; return 0;}
6386 #endif /* ndef _SC_2_C_VERSION */
6387 #ifdef _SC_2_FORT_DEV
6388 if (x == _SC_2_FORT_DEV)
6389 {*r = Mono_Posix_SysconfName__SC_2_FORT_DEV; return 0;}
6390 #endif /* ndef _SC_2_FORT_DEV */
6391 #ifdef _SC_2_FORT_RUN
6392 if (x == _SC_2_FORT_RUN)
6393 {*r = Mono_Posix_SysconfName__SC_2_FORT_RUN; return 0;}
6394 #endif /* ndef _SC_2_FORT_RUN */
6395 #ifdef _SC_2_LOCALEDEF
6396 if (x == _SC_2_LOCALEDEF)
6397 {*r = Mono_Posix_SysconfName__SC_2_LOCALEDEF; return 0;}
6398 #endif /* ndef _SC_2_LOCALEDEF */
6401 {*r = Mono_Posix_SysconfName__SC_2_PBS; return 0;}
6402 #endif /* ndef _SC_2_PBS */
6403 #ifdef _SC_2_PBS_ACCOUNTING
6404 if (x == _SC_2_PBS_ACCOUNTING)
6405 {*r = Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING; return 0;}
6406 #endif /* ndef _SC_2_PBS_ACCOUNTING */
6407 #ifdef _SC_2_PBS_CHECKPOINT
6408 if (x == _SC_2_PBS_CHECKPOINT)
6409 {*r = Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT; return 0;}
6410 #endif /* ndef _SC_2_PBS_CHECKPOINT */
6411 #ifdef _SC_2_PBS_LOCATE
6412 if (x == _SC_2_PBS_LOCATE)
6413 {*r = Mono_Posix_SysconfName__SC_2_PBS_LOCATE; return 0;}
6414 #endif /* ndef _SC_2_PBS_LOCATE */
6415 #ifdef _SC_2_PBS_MESSAGE
6416 if (x == _SC_2_PBS_MESSAGE)
6417 {*r = Mono_Posix_SysconfName__SC_2_PBS_MESSAGE; return 0;}
6418 #endif /* ndef _SC_2_PBS_MESSAGE */
6419 #ifdef _SC_2_PBS_TRACK
6420 if (x == _SC_2_PBS_TRACK)
6421 {*r = Mono_Posix_SysconfName__SC_2_PBS_TRACK; return 0;}
6422 #endif /* ndef _SC_2_PBS_TRACK */
6424 if (x == _SC_2_SW_DEV)
6425 {*r = Mono_Posix_SysconfName__SC_2_SW_DEV; return 0;}
6426 #endif /* ndef _SC_2_SW_DEV */
6429 {*r = Mono_Posix_SysconfName__SC_2_UPE; return 0;}
6430 #endif /* ndef _SC_2_UPE */
6431 #ifdef _SC_2_VERSION
6432 if (x == _SC_2_VERSION)
6433 {*r = Mono_Posix_SysconfName__SC_2_VERSION; return 0;}
6434 #endif /* ndef _SC_2_VERSION */
6435 #ifdef _SC_ADVISORY_INFO
6436 if (x == _SC_ADVISORY_INFO)
6437 {*r = Mono_Posix_SysconfName__SC_ADVISORY_INFO; return 0;}
6438 #endif /* ndef _SC_ADVISORY_INFO */
6439 #ifdef _SC_AIO_LISTIO_MAX
6440 if (x == _SC_AIO_LISTIO_MAX)
6441 {*r = Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX; return 0;}
6442 #endif /* ndef _SC_AIO_LISTIO_MAX */
6444 if (x == _SC_AIO_MAX)
6445 {*r = Mono_Posix_SysconfName__SC_AIO_MAX; return 0;}
6446 #endif /* ndef _SC_AIO_MAX */
6447 #ifdef _SC_AIO_PRIO_DELTA_MAX
6448 if (x == _SC_AIO_PRIO_DELTA_MAX)
6449 {*r = Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX; return 0;}
6450 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
6452 if (x == _SC_ARG_MAX)
6453 {*r = Mono_Posix_SysconfName__SC_ARG_MAX; return 0;}
6454 #endif /* ndef _SC_ARG_MAX */
6455 #ifdef _SC_ASYNCHRONOUS_IO
6456 if (x == _SC_ASYNCHRONOUS_IO)
6457 {*r = Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO; return 0;}
6458 #endif /* ndef _SC_ASYNCHRONOUS_IO */
6459 #ifdef _SC_ATEXIT_MAX
6460 if (x == _SC_ATEXIT_MAX)
6461 {*r = Mono_Posix_SysconfName__SC_ATEXIT_MAX; return 0;}
6462 #endif /* ndef _SC_ATEXIT_MAX */
6463 #ifdef _SC_AVPHYS_PAGES
6464 if (x == _SC_AVPHYS_PAGES)
6465 {*r = Mono_Posix_SysconfName__SC_AVPHYS_PAGES; return 0;}
6466 #endif /* ndef _SC_AVPHYS_PAGES */
6468 if (x == _SC_BARRIERS)
6469 {*r = Mono_Posix_SysconfName__SC_BARRIERS; return 0;}
6470 #endif /* ndef _SC_BARRIERS */
6473 {*r = Mono_Posix_SysconfName__SC_BASE; return 0;}
6474 #endif /* ndef _SC_BASE */
6475 #ifdef _SC_BC_BASE_MAX
6476 if (x == _SC_BC_BASE_MAX)
6477 {*r = Mono_Posix_SysconfName__SC_BC_BASE_MAX; return 0;}
6478 #endif /* ndef _SC_BC_BASE_MAX */
6479 #ifdef _SC_BC_DIM_MAX
6480 if (x == _SC_BC_DIM_MAX)
6481 {*r = Mono_Posix_SysconfName__SC_BC_DIM_MAX; return 0;}
6482 #endif /* ndef _SC_BC_DIM_MAX */
6483 #ifdef _SC_BC_SCALE_MAX
6484 if (x == _SC_BC_SCALE_MAX)
6485 {*r = Mono_Posix_SysconfName__SC_BC_SCALE_MAX; return 0;}
6486 #endif /* ndef _SC_BC_SCALE_MAX */
6487 #ifdef _SC_BC_STRING_MAX
6488 if (x == _SC_BC_STRING_MAX)
6489 {*r = Mono_Posix_SysconfName__SC_BC_STRING_MAX; return 0;}
6490 #endif /* ndef _SC_BC_STRING_MAX */
6491 #ifdef _SC_CHARCLASS_NAME_MAX
6492 if (x == _SC_CHARCLASS_NAME_MAX)
6493 {*r = Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX; return 0;}
6494 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
6496 if (x == _SC_CHAR_BIT)
6497 {*r = Mono_Posix_SysconfName__SC_CHAR_BIT; return 0;}
6498 #endif /* ndef _SC_CHAR_BIT */
6500 if (x == _SC_CHAR_MAX)
6501 {*r = Mono_Posix_SysconfName__SC_CHAR_MAX; return 0;}
6502 #endif /* ndef _SC_CHAR_MAX */
6504 if (x == _SC_CHAR_MIN)
6505 {*r = Mono_Posix_SysconfName__SC_CHAR_MIN; return 0;}
6506 #endif /* ndef _SC_CHAR_MIN */
6507 #ifdef _SC_CHILD_MAX
6508 if (x == _SC_CHILD_MAX)
6509 {*r = Mono_Posix_SysconfName__SC_CHILD_MAX; return 0;}
6510 #endif /* ndef _SC_CHILD_MAX */
6512 if (x == _SC_CLK_TCK)
6513 {*r = Mono_Posix_SysconfName__SC_CLK_TCK; return 0;}
6514 #endif /* ndef _SC_CLK_TCK */
6515 #ifdef _SC_CLOCK_SELECTION
6516 if (x == _SC_CLOCK_SELECTION)
6517 {*r = Mono_Posix_SysconfName__SC_CLOCK_SELECTION; return 0;}
6518 #endif /* ndef _SC_CLOCK_SELECTION */
6519 #ifdef _SC_COLL_WEIGHTS_MAX
6520 if (x == _SC_COLL_WEIGHTS_MAX)
6521 {*r = Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX; return 0;}
6522 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
6524 if (x == _SC_CPUTIME)
6525 {*r = Mono_Posix_SysconfName__SC_CPUTIME; return 0;}
6526 #endif /* ndef _SC_CPUTIME */
6527 #ifdef _SC_C_LANG_SUPPORT
6528 if (x == _SC_C_LANG_SUPPORT)
6529 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT; return 0;}
6530 #endif /* ndef _SC_C_LANG_SUPPORT */
6531 #ifdef _SC_C_LANG_SUPPORT_R
6532 if (x == _SC_C_LANG_SUPPORT_R)
6533 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R; return 0;}
6534 #endif /* ndef _SC_C_LANG_SUPPORT_R */
6535 #ifdef _SC_DELAYTIMER_MAX
6536 if (x == _SC_DELAYTIMER_MAX)
6537 {*r = Mono_Posix_SysconfName__SC_DELAYTIMER_MAX; return 0;}
6538 #endif /* ndef _SC_DELAYTIMER_MAX */
6539 #ifdef _SC_DEVICE_IO
6540 if (x == _SC_DEVICE_IO)
6541 {*r = Mono_Posix_SysconfName__SC_DEVICE_IO; return 0;}
6542 #endif /* ndef _SC_DEVICE_IO */
6543 #ifdef _SC_DEVICE_SPECIFIC
6544 if (x == _SC_DEVICE_SPECIFIC)
6545 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC; return 0;}
6546 #endif /* ndef _SC_DEVICE_SPECIFIC */
6547 #ifdef _SC_DEVICE_SPECIFIC_R
6548 if (x == _SC_DEVICE_SPECIFIC_R)
6549 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R; return 0;}
6550 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
6551 #ifdef _SC_EQUIV_CLASS_MAX
6552 if (x == _SC_EQUIV_CLASS_MAX)
6553 {*r = Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX; return 0;}
6554 #endif /* ndef _SC_EQUIV_CLASS_MAX */
6555 #ifdef _SC_EXPR_NEST_MAX
6556 if (x == _SC_EXPR_NEST_MAX)
6557 {*r = Mono_Posix_SysconfName__SC_EXPR_NEST_MAX; return 0;}
6558 #endif /* ndef _SC_EXPR_NEST_MAX */
6560 if (x == _SC_FD_MGMT)
6561 {*r = Mono_Posix_SysconfName__SC_FD_MGMT; return 0;}
6562 #endif /* ndef _SC_FD_MGMT */
6565 {*r = Mono_Posix_SysconfName__SC_FIFO; return 0;}
6566 #endif /* ndef _SC_FIFO */
6567 #ifdef _SC_FILE_ATTRIBUTES
6568 if (x == _SC_FILE_ATTRIBUTES)
6569 {*r = Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES; return 0;}
6570 #endif /* ndef _SC_FILE_ATTRIBUTES */
6571 #ifdef _SC_FILE_LOCKING
6572 if (x == _SC_FILE_LOCKING)
6573 {*r = Mono_Posix_SysconfName__SC_FILE_LOCKING; return 0;}
6574 #endif /* ndef _SC_FILE_LOCKING */
6575 #ifdef _SC_FILE_SYSTEM
6576 if (x == _SC_FILE_SYSTEM)
6577 {*r = Mono_Posix_SysconfName__SC_FILE_SYSTEM; return 0;}
6578 #endif /* ndef _SC_FILE_SYSTEM */
6581 {*r = Mono_Posix_SysconfName__SC_FSYNC; return 0;}
6582 #endif /* ndef _SC_FSYNC */
6583 #ifdef _SC_GETGR_R_SIZE_MAX
6584 if (x == _SC_GETGR_R_SIZE_MAX)
6585 {*r = Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX; return 0;}
6586 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
6587 #ifdef _SC_GETPW_R_SIZE_MAX
6588 if (x == _SC_GETPW_R_SIZE_MAX)
6589 {*r = Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX; return 0;}
6590 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
6591 #ifdef _SC_HOST_NAME_MAX
6592 if (x == _SC_HOST_NAME_MAX)
6593 {*r = Mono_Posix_SysconfName__SC_HOST_NAME_MAX; return 0;}
6594 #endif /* ndef _SC_HOST_NAME_MAX */
6596 if (x == _SC_INT_MAX)
6597 {*r = Mono_Posix_SysconfName__SC_INT_MAX; return 0;}
6598 #endif /* ndef _SC_INT_MAX */
6600 if (x == _SC_INT_MIN)
6601 {*r = Mono_Posix_SysconfName__SC_INT_MIN; return 0;}
6602 #endif /* ndef _SC_INT_MIN */
6604 if (x == _SC_IOV_MAX)
6605 {*r = Mono_Posix_SysconfName__SC_IOV_MAX; return 0;}
6606 #endif /* ndef _SC_IOV_MAX */
6607 #ifdef _SC_JOB_CONTROL
6608 if (x == _SC_JOB_CONTROL)
6609 {*r = Mono_Posix_SysconfName__SC_JOB_CONTROL; return 0;}
6610 #endif /* ndef _SC_JOB_CONTROL */
6611 #ifdef _SC_LEVEL1_DCACHE_ASSOC
6612 if (x == _SC_LEVEL1_DCACHE_ASSOC)
6613 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC; return 0;}
6614 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
6615 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
6616 if (x == _SC_LEVEL1_DCACHE_LINESIZE)
6617 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE; return 0;}
6618 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
6619 #ifdef _SC_LEVEL1_DCACHE_SIZE
6620 if (x == _SC_LEVEL1_DCACHE_SIZE)
6621 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE; return 0;}
6622 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
6623 #ifdef _SC_LEVEL1_ICACHE_ASSOC
6624 if (x == _SC_LEVEL1_ICACHE_ASSOC)
6625 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC; return 0;}
6626 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
6627 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
6628 if (x == _SC_LEVEL1_ICACHE_LINESIZE)
6629 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE; return 0;}
6630 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
6631 #ifdef _SC_LEVEL1_ICACHE_SIZE
6632 if (x == _SC_LEVEL1_ICACHE_SIZE)
6633 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE; return 0;}
6634 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
6635 #ifdef _SC_LEVEL2_CACHE_ASSOC
6636 if (x == _SC_LEVEL2_CACHE_ASSOC)
6637 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC; return 0;}
6638 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
6639 #ifdef _SC_LEVEL2_CACHE_LINESIZE
6640 if (x == _SC_LEVEL2_CACHE_LINESIZE)
6641 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE; return 0;}
6642 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
6643 #ifdef _SC_LEVEL2_CACHE_SIZE
6644 if (x == _SC_LEVEL2_CACHE_SIZE)
6645 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE; return 0;}
6646 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
6647 #ifdef _SC_LEVEL3_CACHE_ASSOC
6648 if (x == _SC_LEVEL3_CACHE_ASSOC)
6649 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC; return 0;}
6650 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
6651 #ifdef _SC_LEVEL3_CACHE_LINESIZE
6652 if (x == _SC_LEVEL3_CACHE_LINESIZE)
6653 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE; return 0;}
6654 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
6655 #ifdef _SC_LEVEL3_CACHE_SIZE
6656 if (x == _SC_LEVEL3_CACHE_SIZE)
6657 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE; return 0;}
6658 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
6659 #ifdef _SC_LEVEL4_CACHE_ASSOC
6660 if (x == _SC_LEVEL4_CACHE_ASSOC)
6661 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC; return 0;}
6662 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
6663 #ifdef _SC_LEVEL4_CACHE_LINESIZE
6664 if (x == _SC_LEVEL4_CACHE_LINESIZE)
6665 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE; return 0;}
6666 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
6667 #ifdef _SC_LEVEL4_CACHE_SIZE
6668 if (x == _SC_LEVEL4_CACHE_SIZE)
6669 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE; return 0;}
6670 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
6672 if (x == _SC_LINE_MAX)
6673 {*r = Mono_Posix_SysconfName__SC_LINE_MAX; return 0;}
6674 #endif /* ndef _SC_LINE_MAX */
6675 #ifdef _SC_LOGIN_NAME_MAX
6676 if (x == _SC_LOGIN_NAME_MAX)
6677 {*r = Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX; return 0;}
6678 #endif /* ndef _SC_LOGIN_NAME_MAX */
6680 if (x == _SC_LONG_BIT)
6681 {*r = Mono_Posix_SysconfName__SC_LONG_BIT; return 0;}
6682 #endif /* ndef _SC_LONG_BIT */
6683 #ifdef _SC_MAPPED_FILES
6684 if (x == _SC_MAPPED_FILES)
6685 {*r = Mono_Posix_SysconfName__SC_MAPPED_FILES; return 0;}
6686 #endif /* ndef _SC_MAPPED_FILES */
6687 #ifdef _SC_MB_LEN_MAX
6688 if (x == _SC_MB_LEN_MAX)
6689 {*r = Mono_Posix_SysconfName__SC_MB_LEN_MAX; return 0;}
6690 #endif /* ndef _SC_MB_LEN_MAX */
6692 if (x == _SC_MEMLOCK)
6693 {*r = Mono_Posix_SysconfName__SC_MEMLOCK; return 0;}
6694 #endif /* ndef _SC_MEMLOCK */
6695 #ifdef _SC_MEMLOCK_RANGE
6696 if (x == _SC_MEMLOCK_RANGE)
6697 {*r = Mono_Posix_SysconfName__SC_MEMLOCK_RANGE; return 0;}
6698 #endif /* ndef _SC_MEMLOCK_RANGE */
6699 #ifdef _SC_MEMORY_PROTECTION
6700 if (x == _SC_MEMORY_PROTECTION)
6701 {*r = Mono_Posix_SysconfName__SC_MEMORY_PROTECTION; return 0;}
6702 #endif /* ndef _SC_MEMORY_PROTECTION */
6703 #ifdef _SC_MESSAGE_PASSING
6704 if (x == _SC_MESSAGE_PASSING)
6705 {*r = Mono_Posix_SysconfName__SC_MESSAGE_PASSING; return 0;}
6706 #endif /* ndef _SC_MESSAGE_PASSING */
6707 #ifdef _SC_MONOTONIC_CLOCK
6708 if (x == _SC_MONOTONIC_CLOCK)
6709 {*r = Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK; return 0;}
6710 #endif /* ndef _SC_MONOTONIC_CLOCK */
6711 #ifdef _SC_MQ_OPEN_MAX
6712 if (x == _SC_MQ_OPEN_MAX)
6713 {*r = Mono_Posix_SysconfName__SC_MQ_OPEN_MAX; return 0;}
6714 #endif /* ndef _SC_MQ_OPEN_MAX */
6715 #ifdef _SC_MQ_PRIO_MAX
6716 if (x == _SC_MQ_PRIO_MAX)
6717 {*r = Mono_Posix_SysconfName__SC_MQ_PRIO_MAX; return 0;}
6718 #endif /* ndef _SC_MQ_PRIO_MAX */
6719 #ifdef _SC_MULTI_PROCESS
6720 if (x == _SC_MULTI_PROCESS)
6721 {*r = Mono_Posix_SysconfName__SC_MULTI_PROCESS; return 0;}
6722 #endif /* ndef _SC_MULTI_PROCESS */
6723 #ifdef _SC_NETWORKING
6724 if (x == _SC_NETWORKING)
6725 {*r = Mono_Posix_SysconfName__SC_NETWORKING; return 0;}
6726 #endif /* ndef _SC_NETWORKING */
6727 #ifdef _SC_NGROUPS_MAX
6728 if (x == _SC_NGROUPS_MAX)
6729 {*r = Mono_Posix_SysconfName__SC_NGROUPS_MAX; return 0;}
6730 #endif /* ndef _SC_NGROUPS_MAX */
6731 #ifdef _SC_NL_ARGMAX
6732 if (x == _SC_NL_ARGMAX)
6733 {*r = Mono_Posix_SysconfName__SC_NL_ARGMAX; return 0;}
6734 #endif /* ndef _SC_NL_ARGMAX */
6735 #ifdef _SC_NL_LANGMAX
6736 if (x == _SC_NL_LANGMAX)
6737 {*r = Mono_Posix_SysconfName__SC_NL_LANGMAX; return 0;}
6738 #endif /* ndef _SC_NL_LANGMAX */
6739 #ifdef _SC_NL_MSGMAX
6740 if (x == _SC_NL_MSGMAX)
6741 {*r = Mono_Posix_SysconfName__SC_NL_MSGMAX; return 0;}
6742 #endif /* ndef _SC_NL_MSGMAX */
6744 if (x == _SC_NL_NMAX)
6745 {*r = Mono_Posix_SysconfName__SC_NL_NMAX; return 0;}
6746 #endif /* ndef _SC_NL_NMAX */
6747 #ifdef _SC_NL_SETMAX
6748 if (x == _SC_NL_SETMAX)
6749 {*r = Mono_Posix_SysconfName__SC_NL_SETMAX; return 0;}
6750 #endif /* ndef _SC_NL_SETMAX */
6751 #ifdef _SC_NL_TEXTMAX
6752 if (x == _SC_NL_TEXTMAX)
6753 {*r = Mono_Posix_SysconfName__SC_NL_TEXTMAX; return 0;}
6754 #endif /* ndef _SC_NL_TEXTMAX */
6755 #ifdef _SC_NPROCESSORS_CONF
6756 if (x == _SC_NPROCESSORS_CONF)
6757 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_CONF; return 0;}
6758 #endif /* ndef _SC_NPROCESSORS_CONF */
6759 #ifdef _SC_NPROCESSORS_ONLN
6760 if (x == _SC_NPROCESSORS_ONLN)
6761 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN; return 0;}
6762 #endif /* ndef _SC_NPROCESSORS_ONLN */
6765 {*r = Mono_Posix_SysconfName__SC_NZERO; return 0;}
6766 #endif /* ndef _SC_NZERO */
6768 if (x == _SC_OPEN_MAX)
6769 {*r = Mono_Posix_SysconfName__SC_OPEN_MAX; return 0;}
6770 #endif /* ndef _SC_OPEN_MAX */
6772 if (x == _SC_PAGESIZE)
6773 {*r = Mono_Posix_SysconfName__SC_PAGESIZE; return 0;}
6774 #endif /* ndef _SC_PAGESIZE */
6776 if (x == _SC_PASS_MAX)
6777 {*r = Mono_Posix_SysconfName__SC_PASS_MAX; return 0;}
6778 #endif /* ndef _SC_PASS_MAX */
6779 #ifdef _SC_PHYS_PAGES
6780 if (x == _SC_PHYS_PAGES)
6781 {*r = Mono_Posix_SysconfName__SC_PHYS_PAGES; return 0;}
6782 #endif /* ndef _SC_PHYS_PAGES */
6785 {*r = Mono_Posix_SysconfName__SC_PII; return 0;}
6786 #endif /* ndef _SC_PII */
6787 #ifdef _SC_PII_INTERNET
6788 if (x == _SC_PII_INTERNET)
6789 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET; return 0;}
6790 #endif /* ndef _SC_PII_INTERNET */
6791 #ifdef _SC_PII_INTERNET_DGRAM
6792 if (x == _SC_PII_INTERNET_DGRAM)
6793 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM; return 0;}
6794 #endif /* ndef _SC_PII_INTERNET_DGRAM */
6795 #ifdef _SC_PII_INTERNET_STREAM
6796 if (x == _SC_PII_INTERNET_STREAM)
6797 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM; return 0;}
6798 #endif /* ndef _SC_PII_INTERNET_STREAM */
6800 if (x == _SC_PII_OSI)
6801 {*r = Mono_Posix_SysconfName__SC_PII_OSI; return 0;}
6802 #endif /* ndef _SC_PII_OSI */
6803 #ifdef _SC_PII_OSI_CLTS
6804 if (x == _SC_PII_OSI_CLTS)
6805 {*r = Mono_Posix_SysconfName__SC_PII_OSI_CLTS; return 0;}
6806 #endif /* ndef _SC_PII_OSI_CLTS */
6807 #ifdef _SC_PII_OSI_COTS
6808 if (x == _SC_PII_OSI_COTS)
6809 {*r = Mono_Posix_SysconfName__SC_PII_OSI_COTS; return 0;}
6810 #endif /* ndef _SC_PII_OSI_COTS */
6811 #ifdef _SC_PII_OSI_M
6812 if (x == _SC_PII_OSI_M)
6813 {*r = Mono_Posix_SysconfName__SC_PII_OSI_M; return 0;}
6814 #endif /* ndef _SC_PII_OSI_M */
6815 #ifdef _SC_PII_SOCKET
6816 if (x == _SC_PII_SOCKET)
6817 {*r = Mono_Posix_SysconfName__SC_PII_SOCKET; return 0;}
6818 #endif /* ndef _SC_PII_SOCKET */
6820 if (x == _SC_PII_XTI)
6821 {*r = Mono_Posix_SysconfName__SC_PII_XTI; return 0;}
6822 #endif /* ndef _SC_PII_XTI */
6825 {*r = Mono_Posix_SysconfName__SC_PIPE; return 0;}
6826 #endif /* ndef _SC_PIPE */
6829 {*r = Mono_Posix_SysconfName__SC_POLL; return 0;}
6830 #endif /* ndef _SC_POLL */
6831 #ifdef _SC_PRIORITIZED_IO
6832 if (x == _SC_PRIORITIZED_IO)
6833 {*r = Mono_Posix_SysconfName__SC_PRIORITIZED_IO; return 0;}
6834 #endif /* ndef _SC_PRIORITIZED_IO */
6835 #ifdef _SC_PRIORITY_SCHEDULING
6836 if (x == _SC_PRIORITY_SCHEDULING)
6837 {*r = Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING; return 0;}
6838 #endif /* ndef _SC_PRIORITY_SCHEDULING */
6839 #ifdef _SC_READER_WRITER_LOCKS
6840 if (x == _SC_READER_WRITER_LOCKS)
6841 {*r = Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS; return 0;}
6842 #endif /* ndef _SC_READER_WRITER_LOCKS */
6843 #ifdef _SC_REALTIME_SIGNALS
6844 if (x == _SC_REALTIME_SIGNALS)
6845 {*r = Mono_Posix_SysconfName__SC_REALTIME_SIGNALS; return 0;}
6846 #endif /* ndef _SC_REALTIME_SIGNALS */
6848 if (x == _SC_REGEXP)
6849 {*r = Mono_Posix_SysconfName__SC_REGEXP; return 0;}
6850 #endif /* ndef _SC_REGEXP */
6851 #ifdef _SC_REGEX_VERSION
6852 if (x == _SC_REGEX_VERSION)
6853 {*r = Mono_Posix_SysconfName__SC_REGEX_VERSION; return 0;}
6854 #endif /* ndef _SC_REGEX_VERSION */
6855 #ifdef _SC_RE_DUP_MAX
6856 if (x == _SC_RE_DUP_MAX)
6857 {*r = Mono_Posix_SysconfName__SC_RE_DUP_MAX; return 0;}
6858 #endif /* ndef _SC_RE_DUP_MAX */
6859 #ifdef _SC_RTSIG_MAX
6860 if (x == _SC_RTSIG_MAX)
6861 {*r = Mono_Posix_SysconfName__SC_RTSIG_MAX; return 0;}
6862 #endif /* ndef _SC_RTSIG_MAX */
6863 #ifdef _SC_SAVED_IDS
6864 if (x == _SC_SAVED_IDS)
6865 {*r = Mono_Posix_SysconfName__SC_SAVED_IDS; return 0;}
6866 #endif /* ndef _SC_SAVED_IDS */
6867 #ifdef _SC_SCHAR_MAX
6868 if (x == _SC_SCHAR_MAX)
6869 {*r = Mono_Posix_SysconfName__SC_SCHAR_MAX; return 0;}
6870 #endif /* ndef _SC_SCHAR_MAX */
6871 #ifdef _SC_SCHAR_MIN
6872 if (x == _SC_SCHAR_MIN)
6873 {*r = Mono_Posix_SysconfName__SC_SCHAR_MIN; return 0;}
6874 #endif /* ndef _SC_SCHAR_MIN */
6876 if (x == _SC_SELECT)
6877 {*r = Mono_Posix_SysconfName__SC_SELECT; return 0;}
6878 #endif /* ndef _SC_SELECT */
6879 #ifdef _SC_SEMAPHORES
6880 if (x == _SC_SEMAPHORES)
6881 {*r = Mono_Posix_SysconfName__SC_SEMAPHORES; return 0;}
6882 #endif /* ndef _SC_SEMAPHORES */
6883 #ifdef _SC_SEM_NSEMS_MAX
6884 if (x == _SC_SEM_NSEMS_MAX)
6885 {*r = Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX; return 0;}
6886 #endif /* ndef _SC_SEM_NSEMS_MAX */
6887 #ifdef _SC_SEM_VALUE_MAX
6888 if (x == _SC_SEM_VALUE_MAX)
6889 {*r = Mono_Posix_SysconfName__SC_SEM_VALUE_MAX; return 0;}
6890 #endif /* ndef _SC_SEM_VALUE_MAX */
6891 #ifdef _SC_SHARED_MEMORY_OBJECTS
6892 if (x == _SC_SHARED_MEMORY_OBJECTS)
6893 {*r = Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS; return 0;}
6894 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
6897 {*r = Mono_Posix_SysconfName__SC_SHELL; return 0;}
6898 #endif /* ndef _SC_SHELL */
6900 if (x == _SC_SHRT_MAX)
6901 {*r = Mono_Posix_SysconfName__SC_SHRT_MAX; return 0;}
6902 #endif /* ndef _SC_SHRT_MAX */
6904 if (x == _SC_SHRT_MIN)
6905 {*r = Mono_Posix_SysconfName__SC_SHRT_MIN; return 0;}
6906 #endif /* ndef _SC_SHRT_MIN */
6908 if (x == _SC_SIGNALS)
6909 {*r = Mono_Posix_SysconfName__SC_SIGNALS; return 0;}
6910 #endif /* ndef _SC_SIGNALS */
6911 #ifdef _SC_SIGQUEUE_MAX
6912 if (x == _SC_SIGQUEUE_MAX)
6913 {*r = Mono_Posix_SysconfName__SC_SIGQUEUE_MAX; return 0;}
6914 #endif /* ndef _SC_SIGQUEUE_MAX */
6915 #ifdef _SC_SINGLE_PROCESS
6916 if (x == _SC_SINGLE_PROCESS)
6917 {*r = Mono_Posix_SysconfName__SC_SINGLE_PROCESS; return 0;}
6918 #endif /* ndef _SC_SINGLE_PROCESS */
6921 {*r = Mono_Posix_SysconfName__SC_SPAWN; return 0;}
6922 #endif /* ndef _SC_SPAWN */
6923 #ifdef _SC_SPIN_LOCKS
6924 if (x == _SC_SPIN_LOCKS)
6925 {*r = Mono_Posix_SysconfName__SC_SPIN_LOCKS; return 0;}
6926 #endif /* ndef _SC_SPIN_LOCKS */
6927 #ifdef _SC_SPORADIC_SERVER
6928 if (x == _SC_SPORADIC_SERVER)
6929 {*r = Mono_Posix_SysconfName__SC_SPORADIC_SERVER; return 0;}
6930 #endif /* ndef _SC_SPORADIC_SERVER */
6931 #ifdef _SC_SSIZE_MAX
6932 if (x == _SC_SSIZE_MAX)
6933 {*r = Mono_Posix_SysconfName__SC_SSIZE_MAX; return 0;}
6934 #endif /* ndef _SC_SSIZE_MAX */
6936 if (x == _SC_STREAMS)
6937 {*r = Mono_Posix_SysconfName__SC_STREAMS; return 0;}
6938 #endif /* ndef _SC_STREAMS */
6939 #ifdef _SC_STREAM_MAX
6940 if (x == _SC_STREAM_MAX)
6941 {*r = Mono_Posix_SysconfName__SC_STREAM_MAX; return 0;}
6942 #endif /* ndef _SC_STREAM_MAX */
6943 #ifdef _SC_SYMLOOP_MAX
6944 if (x == _SC_SYMLOOP_MAX)
6945 {*r = Mono_Posix_SysconfName__SC_SYMLOOP_MAX; return 0;}
6946 #endif /* ndef _SC_SYMLOOP_MAX */
6947 #ifdef _SC_SYNCHRONIZED_IO
6948 if (x == _SC_SYNCHRONIZED_IO)
6949 {*r = Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO; return 0;}
6950 #endif /* ndef _SC_SYNCHRONIZED_IO */
6951 #ifdef _SC_SYSTEM_DATABASE
6952 if (x == _SC_SYSTEM_DATABASE)
6953 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE; return 0;}
6954 #endif /* ndef _SC_SYSTEM_DATABASE */
6955 #ifdef _SC_SYSTEM_DATABASE_R
6956 if (x == _SC_SYSTEM_DATABASE_R)
6957 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R; return 0;}
6958 #endif /* ndef _SC_SYSTEM_DATABASE_R */
6960 if (x == _SC_THREADS)
6961 {*r = Mono_Posix_SysconfName__SC_THREADS; return 0;}
6962 #endif /* ndef _SC_THREADS */
6963 #ifdef _SC_THREAD_ATTR_STACKADDR
6964 if (x == _SC_THREAD_ATTR_STACKADDR)
6965 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR; return 0;}
6966 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
6967 #ifdef _SC_THREAD_ATTR_STACKSIZE
6968 if (x == _SC_THREAD_ATTR_STACKSIZE)
6969 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE; return 0;}
6970 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
6971 #ifdef _SC_THREAD_CPUTIME
6972 if (x == _SC_THREAD_CPUTIME)
6973 {*r = Mono_Posix_SysconfName__SC_THREAD_CPUTIME; return 0;}
6974 #endif /* ndef _SC_THREAD_CPUTIME */
6975 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
6976 if (x == _SC_THREAD_DESTRUCTOR_ITERATIONS)
6977 {*r = Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
6978 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
6979 #ifdef _SC_THREAD_KEYS_MAX
6980 if (x == _SC_THREAD_KEYS_MAX)
6981 {*r = Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX; return 0;}
6982 #endif /* ndef _SC_THREAD_KEYS_MAX */
6983 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
6984 if (x == _SC_THREAD_PRIORITY_SCHEDULING)
6985 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING; return 0;}
6986 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
6987 #ifdef _SC_THREAD_PRIO_INHERIT
6988 if (x == _SC_THREAD_PRIO_INHERIT)
6989 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT; return 0;}
6990 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
6991 #ifdef _SC_THREAD_PRIO_PROTECT
6992 if (x == _SC_THREAD_PRIO_PROTECT)
6993 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT; return 0;}
6994 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
6995 #ifdef _SC_THREAD_PROCESS_SHARED
6996 if (x == _SC_THREAD_PROCESS_SHARED)
6997 {*r = Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED; return 0;}
6998 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
6999 #ifdef _SC_THREAD_SAFE_FUNCTIONS
7000 if (x == _SC_THREAD_SAFE_FUNCTIONS)
7001 {*r = Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS; return 0;}
7002 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
7003 #ifdef _SC_THREAD_SPORADIC_SERVER
7004 if (x == _SC_THREAD_SPORADIC_SERVER)
7005 {*r = Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER; return 0;}
7006 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
7007 #ifdef _SC_THREAD_STACK_MIN
7008 if (x == _SC_THREAD_STACK_MIN)
7009 {*r = Mono_Posix_SysconfName__SC_THREAD_STACK_MIN; return 0;}
7010 #endif /* ndef _SC_THREAD_STACK_MIN */
7011 #ifdef _SC_THREAD_THREADS_MAX
7012 if (x == _SC_THREAD_THREADS_MAX)
7013 {*r = Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX; return 0;}
7014 #endif /* ndef _SC_THREAD_THREADS_MAX */
7016 if (x == _SC_TIMEOUTS)
7017 {*r = Mono_Posix_SysconfName__SC_TIMEOUTS; return 0;}
7018 #endif /* ndef _SC_TIMEOUTS */
7020 if (x == _SC_TIMERS)
7021 {*r = Mono_Posix_SysconfName__SC_TIMERS; return 0;}
7022 #endif /* ndef _SC_TIMERS */
7023 #ifdef _SC_TIMER_MAX
7024 if (x == _SC_TIMER_MAX)
7025 {*r = Mono_Posix_SysconfName__SC_TIMER_MAX; return 0;}
7026 #endif /* ndef _SC_TIMER_MAX */
7029 {*r = Mono_Posix_SysconfName__SC_TRACE; return 0;}
7030 #endif /* ndef _SC_TRACE */
7031 #ifdef _SC_TRACE_EVENT_FILTER
7032 if (x == _SC_TRACE_EVENT_FILTER)
7033 {*r = Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER; return 0;}
7034 #endif /* ndef _SC_TRACE_EVENT_FILTER */
7035 #ifdef _SC_TRACE_INHERIT
7036 if (x == _SC_TRACE_INHERIT)
7037 {*r = Mono_Posix_SysconfName__SC_TRACE_INHERIT; return 0;}
7038 #endif /* ndef _SC_TRACE_INHERIT */
7039 #ifdef _SC_TRACE_LOG
7040 if (x == _SC_TRACE_LOG)
7041 {*r = Mono_Posix_SysconfName__SC_TRACE_LOG; return 0;}
7042 #endif /* ndef _SC_TRACE_LOG */
7043 #ifdef _SC_TTY_NAME_MAX
7044 if (x == _SC_TTY_NAME_MAX)
7045 {*r = Mono_Posix_SysconfName__SC_TTY_NAME_MAX; return 0;}
7046 #endif /* ndef _SC_TTY_NAME_MAX */
7047 #ifdef _SC_TYPED_MEMORY_OBJECTS
7048 if (x == _SC_TYPED_MEMORY_OBJECTS)
7049 {*r = Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS; return 0;}
7050 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
7051 #ifdef _SC_TZNAME_MAX
7052 if (x == _SC_TZNAME_MAX)
7053 {*r = Mono_Posix_SysconfName__SC_TZNAME_MAX; return 0;}
7054 #endif /* ndef _SC_TZNAME_MAX */
7055 #ifdef _SC_T_IOV_MAX
7056 if (x == _SC_T_IOV_MAX)
7057 {*r = Mono_Posix_SysconfName__SC_T_IOV_MAX; return 0;}
7058 #endif /* ndef _SC_T_IOV_MAX */
7059 #ifdef _SC_UCHAR_MAX
7060 if (x == _SC_UCHAR_MAX)
7061 {*r = Mono_Posix_SysconfName__SC_UCHAR_MAX; return 0;}
7062 #endif /* ndef _SC_UCHAR_MAX */
7064 if (x == _SC_UINT_MAX)
7065 {*r = Mono_Posix_SysconfName__SC_UINT_MAX; return 0;}
7066 #endif /* ndef _SC_UINT_MAX */
7067 #ifdef _SC_UIO_MAXIOV
7068 if (x == _SC_UIO_MAXIOV)
7069 {*r = Mono_Posix_SysconfName__SC_UIO_MAXIOV; return 0;}
7070 #endif /* ndef _SC_UIO_MAXIOV */
7071 #ifdef _SC_ULONG_MAX
7072 if (x == _SC_ULONG_MAX)
7073 {*r = Mono_Posix_SysconfName__SC_ULONG_MAX; return 0;}
7074 #endif /* ndef _SC_ULONG_MAX */
7075 #ifdef _SC_USER_GROUPS
7076 if (x == _SC_USER_GROUPS)
7077 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS; return 0;}
7078 #endif /* ndef _SC_USER_GROUPS */
7079 #ifdef _SC_USER_GROUPS_R
7080 if (x == _SC_USER_GROUPS_R)
7081 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS_R; return 0;}
7082 #endif /* ndef _SC_USER_GROUPS_R */
7083 #ifdef _SC_USHRT_MAX
7084 if (x == _SC_USHRT_MAX)
7085 {*r = Mono_Posix_SysconfName__SC_USHRT_MAX; return 0;}
7086 #endif /* ndef _SC_USHRT_MAX */
7087 #ifdef _SC_V6_ILP32_OFF32
7088 if (x == _SC_V6_ILP32_OFF32)
7089 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFF32; return 0;}
7090 #endif /* ndef _SC_V6_ILP32_OFF32 */
7091 #ifdef _SC_V6_ILP32_OFFBIG
7092 if (x == _SC_V6_ILP32_OFFBIG)
7093 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG; return 0;}
7094 #endif /* ndef _SC_V6_ILP32_OFFBIG */
7095 #ifdef _SC_V6_LP64_OFF64
7096 if (x == _SC_V6_LP64_OFF64)
7097 {*r = Mono_Posix_SysconfName__SC_V6_LP64_OFF64; return 0;}
7098 #endif /* ndef _SC_V6_LP64_OFF64 */
7099 #ifdef _SC_V6_LPBIG_OFFBIG
7100 if (x == _SC_V6_LPBIG_OFFBIG)
7101 {*r = Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG; return 0;}
7102 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
7104 if (x == _SC_VERSION)
7105 {*r = Mono_Posix_SysconfName__SC_VERSION; return 0;}
7106 #endif /* ndef _SC_VERSION */
7108 if (x == _SC_WORD_BIT)
7109 {*r = Mono_Posix_SysconfName__SC_WORD_BIT; return 0;}
7110 #endif /* ndef _SC_WORD_BIT */
7111 #ifdef _SC_XBS5_ILP32_OFF32
7112 if (x == _SC_XBS5_ILP32_OFF32)
7113 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32; return 0;}
7114 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
7115 #ifdef _SC_XBS5_ILP32_OFFBIG
7116 if (x == _SC_XBS5_ILP32_OFFBIG)
7117 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG; return 0;}
7118 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
7119 #ifdef _SC_XBS5_LP64_OFF64
7120 if (x == _SC_XBS5_LP64_OFF64)
7121 {*r = Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64; return 0;}
7122 #endif /* ndef _SC_XBS5_LP64_OFF64 */
7123 #ifdef _SC_XBS5_LPBIG_OFFBIG
7124 if (x == _SC_XBS5_LPBIG_OFFBIG)
7125 {*r = Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG; return 0;}
7126 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
7127 #ifdef _SC_XOPEN_CRYPT
7128 if (x == _SC_XOPEN_CRYPT)
7129 {*r = Mono_Posix_SysconfName__SC_XOPEN_CRYPT; return 0;}
7130 #endif /* ndef _SC_XOPEN_CRYPT */
7131 #ifdef _SC_XOPEN_ENH_I18N
7132 if (x == _SC_XOPEN_ENH_I18N)
7133 {*r = Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N; return 0;}
7134 #endif /* ndef _SC_XOPEN_ENH_I18N */
7135 #ifdef _SC_XOPEN_LEGACY
7136 if (x == _SC_XOPEN_LEGACY)
7137 {*r = Mono_Posix_SysconfName__SC_XOPEN_LEGACY; return 0;}
7138 #endif /* ndef _SC_XOPEN_LEGACY */
7139 #ifdef _SC_XOPEN_REALTIME
7140 if (x == _SC_XOPEN_REALTIME)
7141 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME; return 0;}
7142 #endif /* ndef _SC_XOPEN_REALTIME */
7143 #ifdef _SC_XOPEN_REALTIME_THREADS
7144 if (x == _SC_XOPEN_REALTIME_THREADS)
7145 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS; return 0;}
7146 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
7147 #ifdef _SC_XOPEN_SHM
7148 if (x == _SC_XOPEN_SHM)
7149 {*r = Mono_Posix_SysconfName__SC_XOPEN_SHM; return 0;}
7150 #endif /* ndef _SC_XOPEN_SHM */
7151 #ifdef _SC_XOPEN_UNIX
7152 if (x == _SC_XOPEN_UNIX)
7153 {*r = Mono_Posix_SysconfName__SC_XOPEN_UNIX; return 0;}
7154 #endif /* ndef _SC_XOPEN_UNIX */
7155 #ifdef _SC_XOPEN_VERSION
7156 if (x == _SC_XOPEN_VERSION)
7157 {*r = Mono_Posix_SysconfName__SC_XOPEN_VERSION; return 0;}
7158 #endif /* ndef _SC_XOPEN_VERSION */
7159 #ifdef _SC_XOPEN_XCU_VERSION
7160 if (x == _SC_XOPEN_XCU_VERSION)
7161 {*r = Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION; return 0;}
7162 #endif /* ndef _SC_XOPEN_XCU_VERSION */
7163 #ifdef _SC_XOPEN_XPG2
7164 if (x == _SC_XOPEN_XPG2)
7165 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG2; return 0;}
7166 #endif /* ndef _SC_XOPEN_XPG2 */
7167 #ifdef _SC_XOPEN_XPG3
7168 if (x == _SC_XOPEN_XPG3)
7169 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG3; return 0;}
7170 #endif /* ndef _SC_XOPEN_XPG3 */
7171 #ifdef _SC_XOPEN_XPG4
7172 if (x == _SC_XOPEN_XPG4)
7173 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG4; return 0;}
7174 #endif /* ndef _SC_XOPEN_XPG4 */
7175 errno = EINVAL; return -1;
7178 int Mono_Posix_FromSyslogFacility (int x, int *r)
7181 if (x == Mono_Posix_SyslogFacility_LOG_AUTH)
7183 {*r = LOG_AUTH; return 0;}
7184 #else /* def LOG_AUTH */
7185 {errno = EINVAL; return -1;}
7186 #endif /* ndef LOG_AUTH */
7187 if (x == Mono_Posix_SyslogFacility_LOG_AUTHPRIV)
7189 {*r = LOG_AUTHPRIV; return 0;}
7190 #else /* def LOG_AUTHPRIV */
7191 {errno = EINVAL; return -1;}
7192 #endif /* ndef LOG_AUTHPRIV */
7193 if (x == Mono_Posix_SyslogFacility_LOG_CRON)
7195 {*r = LOG_CRON; return 0;}
7196 #else /* def LOG_CRON */
7197 {errno = EINVAL; return -1;}
7198 #endif /* ndef LOG_CRON */
7199 if (x == Mono_Posix_SyslogFacility_LOG_DAEMON)
7201 {*r = LOG_DAEMON; return 0;}
7202 #else /* def LOG_DAEMON */
7203 {errno = EINVAL; return -1;}
7204 #endif /* ndef LOG_DAEMON */
7205 if (x == Mono_Posix_SyslogFacility_LOG_FTP)
7207 {*r = LOG_FTP; return 0;}
7208 #else /* def LOG_FTP */
7209 {errno = EINVAL; return -1;}
7210 #endif /* ndef LOG_FTP */
7211 if (x == Mono_Posix_SyslogFacility_LOG_KERN)
7213 {*r = LOG_KERN; return 0;}
7214 #else /* def LOG_KERN */
7215 {errno = EINVAL; return -1;}
7216 #endif /* ndef LOG_KERN */
7217 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL0)
7219 {*r = LOG_LOCAL0; return 0;}
7220 #else /* def LOG_LOCAL0 */
7221 {errno = EINVAL; return -1;}
7222 #endif /* ndef LOG_LOCAL0 */
7223 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL1)
7225 {*r = LOG_LOCAL1; return 0;}
7226 #else /* def LOG_LOCAL1 */
7227 {errno = EINVAL; return -1;}
7228 #endif /* ndef LOG_LOCAL1 */
7229 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL2)
7231 {*r = LOG_LOCAL2; return 0;}
7232 #else /* def LOG_LOCAL2 */
7233 {errno = EINVAL; return -1;}
7234 #endif /* ndef LOG_LOCAL2 */
7235 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL3)
7237 {*r = LOG_LOCAL3; return 0;}
7238 #else /* def LOG_LOCAL3 */
7239 {errno = EINVAL; return -1;}
7240 #endif /* ndef LOG_LOCAL3 */
7241 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL4)
7243 {*r = LOG_LOCAL4; return 0;}
7244 #else /* def LOG_LOCAL4 */
7245 {errno = EINVAL; return -1;}
7246 #endif /* ndef LOG_LOCAL4 */
7247 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL5)
7249 {*r = LOG_LOCAL5; return 0;}
7250 #else /* def LOG_LOCAL5 */
7251 {errno = EINVAL; return -1;}
7252 #endif /* ndef LOG_LOCAL5 */
7253 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL6)
7255 {*r = LOG_LOCAL6; return 0;}
7256 #else /* def LOG_LOCAL6 */
7257 {errno = EINVAL; return -1;}
7258 #endif /* ndef LOG_LOCAL6 */
7259 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL7)
7261 {*r = LOG_LOCAL7; return 0;}
7262 #else /* def LOG_LOCAL7 */
7263 {errno = EINVAL; return -1;}
7264 #endif /* ndef LOG_LOCAL7 */
7265 if (x == Mono_Posix_SyslogFacility_LOG_LPR)
7267 {*r = LOG_LPR; return 0;}
7268 #else /* def LOG_LPR */
7269 {errno = EINVAL; return -1;}
7270 #endif /* ndef LOG_LPR */
7271 if (x == Mono_Posix_SyslogFacility_LOG_MAIL)
7273 {*r = LOG_MAIL; return 0;}
7274 #else /* def LOG_MAIL */
7275 {errno = EINVAL; return -1;}
7276 #endif /* ndef LOG_MAIL */
7277 if (x == Mono_Posix_SyslogFacility_LOG_NEWS)
7279 {*r = LOG_NEWS; return 0;}
7280 #else /* def LOG_NEWS */
7281 {errno = EINVAL; return -1;}
7282 #endif /* ndef LOG_NEWS */
7283 if (x == Mono_Posix_SyslogFacility_LOG_SYSLOG)
7285 {*r = LOG_SYSLOG; return 0;}
7286 #else /* def LOG_SYSLOG */
7287 {errno = EINVAL; return -1;}
7288 #endif /* ndef LOG_SYSLOG */
7289 if (x == Mono_Posix_SyslogFacility_LOG_USER)
7291 {*r = LOG_USER; return 0;}
7292 #else /* def LOG_USER */
7293 {errno = EINVAL; return -1;}
7294 #endif /* ndef LOG_USER */
7295 if (x == Mono_Posix_SyslogFacility_LOG_UUCP)
7297 {*r = LOG_UUCP; return 0;}
7298 #else /* def LOG_UUCP */
7299 {errno = EINVAL; return -1;}
7300 #endif /* ndef LOG_UUCP */
7303 errno = EINVAL; return -1;
7306 int Mono_Posix_ToSyslogFacility (int x, int *r)
7313 {*r = Mono_Posix_SyslogFacility_LOG_AUTH; return 0;}
7314 #endif /* ndef LOG_AUTH */
7316 if (x == LOG_AUTHPRIV)
7317 {*r = Mono_Posix_SyslogFacility_LOG_AUTHPRIV; return 0;}
7318 #endif /* ndef LOG_AUTHPRIV */
7321 {*r = Mono_Posix_SyslogFacility_LOG_CRON; return 0;}
7322 #endif /* ndef LOG_CRON */
7324 if (x == LOG_DAEMON)
7325 {*r = Mono_Posix_SyslogFacility_LOG_DAEMON; return 0;}
7326 #endif /* ndef LOG_DAEMON */
7329 {*r = Mono_Posix_SyslogFacility_LOG_FTP; return 0;}
7330 #endif /* ndef LOG_FTP */
7333 {*r = Mono_Posix_SyslogFacility_LOG_KERN; return 0;}
7334 #endif /* ndef LOG_KERN */
7336 if (x == LOG_LOCAL0)
7337 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL0; return 0;}
7338 #endif /* ndef LOG_LOCAL0 */
7340 if (x == LOG_LOCAL1)
7341 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL1; return 0;}
7342 #endif /* ndef LOG_LOCAL1 */
7344 if (x == LOG_LOCAL2)
7345 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL2; return 0;}
7346 #endif /* ndef LOG_LOCAL2 */
7348 if (x == LOG_LOCAL3)
7349 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL3; return 0;}
7350 #endif /* ndef LOG_LOCAL3 */
7352 if (x == LOG_LOCAL4)
7353 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL4; return 0;}
7354 #endif /* ndef LOG_LOCAL4 */
7356 if (x == LOG_LOCAL5)
7357 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL5; return 0;}
7358 #endif /* ndef LOG_LOCAL5 */
7360 if (x == LOG_LOCAL6)
7361 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL6; return 0;}
7362 #endif /* ndef LOG_LOCAL6 */
7364 if (x == LOG_LOCAL7)
7365 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL7; return 0;}
7366 #endif /* ndef LOG_LOCAL7 */
7369 {*r = Mono_Posix_SyslogFacility_LOG_LPR; return 0;}
7370 #endif /* ndef LOG_LPR */
7373 {*r = Mono_Posix_SyslogFacility_LOG_MAIL; return 0;}
7374 #endif /* ndef LOG_MAIL */
7377 {*r = Mono_Posix_SyslogFacility_LOG_NEWS; return 0;}
7378 #endif /* ndef LOG_NEWS */
7380 if (x == LOG_SYSLOG)
7381 {*r = Mono_Posix_SyslogFacility_LOG_SYSLOG; return 0;}
7382 #endif /* ndef LOG_SYSLOG */
7385 {*r = Mono_Posix_SyslogFacility_LOG_USER; return 0;}
7386 #endif /* ndef LOG_USER */
7389 {*r = Mono_Posix_SyslogFacility_LOG_UUCP; return 0;}
7390 #endif /* ndef LOG_UUCP */
7391 errno = EINVAL; return -1;
7394 int Mono_Posix_FromSyslogLevel (int x, int *r)
7397 if (x == Mono_Posix_SyslogLevel_LOG_ALERT)
7399 {*r = LOG_ALERT; return 0;}
7400 #else /* def LOG_ALERT */
7401 {errno = EINVAL; return -1;}
7402 #endif /* ndef LOG_ALERT */
7403 if (x == Mono_Posix_SyslogLevel_LOG_CRIT)
7405 {*r = LOG_CRIT; return 0;}
7406 #else /* def LOG_CRIT */
7407 {errno = EINVAL; return -1;}
7408 #endif /* ndef LOG_CRIT */
7409 if (x == Mono_Posix_SyslogLevel_LOG_DEBUG)
7411 {*r = LOG_DEBUG; return 0;}
7412 #else /* def LOG_DEBUG */
7413 {errno = EINVAL; return -1;}
7414 #endif /* ndef LOG_DEBUG */
7415 if (x == Mono_Posix_SyslogLevel_LOG_EMERG)
7417 {*r = LOG_EMERG; return 0;}
7418 #else /* def LOG_EMERG */
7419 {errno = EINVAL; return -1;}
7420 #endif /* ndef LOG_EMERG */
7421 if (x == Mono_Posix_SyslogLevel_LOG_ERR)
7423 {*r = LOG_ERR; return 0;}
7424 #else /* def LOG_ERR */
7425 {errno = EINVAL; return -1;}
7426 #endif /* ndef LOG_ERR */
7427 if (x == Mono_Posix_SyslogLevel_LOG_INFO)
7429 {*r = LOG_INFO; return 0;}
7430 #else /* def LOG_INFO */
7431 {errno = EINVAL; return -1;}
7432 #endif /* ndef LOG_INFO */
7433 if (x == Mono_Posix_SyslogLevel_LOG_NOTICE)
7435 {*r = LOG_NOTICE; return 0;}
7436 #else /* def LOG_NOTICE */
7437 {errno = EINVAL; return -1;}
7438 #endif /* ndef LOG_NOTICE */
7439 if (x == Mono_Posix_SyslogLevel_LOG_WARNING)
7441 {*r = LOG_WARNING; return 0;}
7442 #else /* def LOG_WARNING */
7443 {errno = EINVAL; return -1;}
7444 #endif /* ndef LOG_WARNING */
7447 errno = EINVAL; return -1;
7450 int Mono_Posix_ToSyslogLevel (int x, int *r)
7457 {*r = Mono_Posix_SyslogLevel_LOG_ALERT; return 0;}
7458 #endif /* ndef LOG_ALERT */
7461 {*r = Mono_Posix_SyslogLevel_LOG_CRIT; return 0;}
7462 #endif /* ndef LOG_CRIT */
7465 {*r = Mono_Posix_SyslogLevel_LOG_DEBUG; return 0;}
7466 #endif /* ndef LOG_DEBUG */
7469 {*r = Mono_Posix_SyslogLevel_LOG_EMERG; return 0;}
7470 #endif /* ndef LOG_EMERG */
7473 {*r = Mono_Posix_SyslogLevel_LOG_ERR; return 0;}
7474 #endif /* ndef LOG_ERR */
7477 {*r = Mono_Posix_SyslogLevel_LOG_INFO; return 0;}
7478 #endif /* ndef LOG_INFO */
7480 if (x == LOG_NOTICE)
7481 {*r = Mono_Posix_SyslogLevel_LOG_NOTICE; return 0;}
7482 #endif /* ndef LOG_NOTICE */
7484 if (x == LOG_WARNING)
7485 {*r = Mono_Posix_SyslogLevel_LOG_WARNING; return 0;}
7486 #endif /* ndef LOG_WARNING */
7487 errno = EINVAL; return -1;
7490 int Mono_Posix_FromSyslogOptions (int x, int *r)
7493 if ((x & Mono_Posix_SyslogOptions_LOG_CONS) == Mono_Posix_SyslogOptions_LOG_CONS)
7496 #else /* def LOG_CONS */
7497 {errno = EINVAL; return -1;}
7498 #endif /* ndef LOG_CONS */
7499 if ((x & Mono_Posix_SyslogOptions_LOG_NDELAY) == Mono_Posix_SyslogOptions_LOG_NDELAY)
7502 #else /* def LOG_NDELAY */
7503 {errno = EINVAL; return -1;}
7504 #endif /* ndef LOG_NDELAY */
7505 if ((x & Mono_Posix_SyslogOptions_LOG_NOWAIT) == Mono_Posix_SyslogOptions_LOG_NOWAIT)
7508 #else /* def LOG_NOWAIT */
7509 {errno = EINVAL; return -1;}
7510 #endif /* ndef LOG_NOWAIT */
7511 if ((x & Mono_Posix_SyslogOptions_LOG_ODELAY) == Mono_Posix_SyslogOptions_LOG_ODELAY)
7514 #else /* def LOG_ODELAY */
7515 {errno = EINVAL; return -1;}
7516 #endif /* ndef LOG_ODELAY */
7517 if ((x & Mono_Posix_SyslogOptions_LOG_PERROR) == Mono_Posix_SyslogOptions_LOG_PERROR)
7520 #else /* def LOG_PERROR */
7521 {errno = EINVAL; return -1;}
7522 #endif /* ndef LOG_PERROR */
7523 if ((x & Mono_Posix_SyslogOptions_LOG_PID) == Mono_Posix_SyslogOptions_LOG_PID)
7526 #else /* def LOG_PID */
7527 {errno = EINVAL; return -1;}
7528 #endif /* ndef LOG_PID */
7534 int Mono_Posix_ToSyslogOptions (int x, int *r)
7540 if ((x & LOG_CONS) == LOG_CONS)
7541 *r |= Mono_Posix_SyslogOptions_LOG_CONS;
7542 #endif /* ndef LOG_CONS */
7544 if ((x & LOG_NDELAY) == LOG_NDELAY)
7545 *r |= Mono_Posix_SyslogOptions_LOG_NDELAY;
7546 #endif /* ndef LOG_NDELAY */
7548 if ((x & LOG_NOWAIT) == LOG_NOWAIT)
7549 *r |= Mono_Posix_SyslogOptions_LOG_NOWAIT;
7550 #endif /* ndef LOG_NOWAIT */
7552 if ((x & LOG_ODELAY) == LOG_ODELAY)
7553 *r |= Mono_Posix_SyslogOptions_LOG_ODELAY;
7554 #endif /* ndef LOG_ODELAY */
7556 if ((x & LOG_PERROR) == LOG_PERROR)
7557 *r |= Mono_Posix_SyslogOptions_LOG_PERROR;
7558 #endif /* ndef LOG_PERROR */
7560 if ((x & LOG_PID) == LOG_PID)
7561 *r |= Mono_Posix_SyslogOptions_LOG_PID;
7562 #endif /* ndef LOG_PID */
7566 #ifdef HAVE_STRUCT_TIMESPEC
7568 Mono_Posix_FromTimespec (struct Mono_Posix_Timespec *from, struct timespec *to)
7570 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
7571 _cnm_return_val_if_overflow (gint64, from->tv_nsec, -1);
7573 memset (to, 0, sizeof(*to));
7575 to->tv_sec = from->tv_sec;
7576 to->tv_nsec = from->tv_nsec;
7580 #endif /* ndef HAVE_STRUCT_TIMESPEC */
7583 #ifdef HAVE_STRUCT_TIMESPEC
7585 Mono_Posix_ToTimespec (struct timespec *from, struct Mono_Posix_Timespec *to)
7587 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
7588 _cnm_return_val_if_overflow (gint64, from->tv_nsec, -1);
7590 memset (to, 0, sizeof(*to));
7592 to->tv_sec = from->tv_sec;
7593 to->tv_nsec = from->tv_nsec;
7597 #endif /* ndef HAVE_STRUCT_TIMESPEC */
7600 #ifdef HAVE_STRUCT_TIMEVAL
7602 Mono_Posix_FromTimeval (struct Mono_Posix_Timeval *from, struct timeval *to)
7604 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
7605 _cnm_return_val_if_overflow (suseconds_t, from->tv_usec, -1);
7607 memset (to, 0, sizeof(*to));
7609 to->tv_sec = from->tv_sec;
7610 to->tv_usec = from->tv_usec;
7614 #endif /* ndef HAVE_STRUCT_TIMEVAL */
7617 #ifdef HAVE_STRUCT_TIMEVAL
7619 Mono_Posix_ToTimeval (struct timeval *from, struct Mono_Posix_Timeval *to)
7621 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
7622 _cnm_return_val_if_overflow (gint64, from->tv_usec, -1);
7624 memset (to, 0, sizeof(*to));
7626 to->tv_sec = from->tv_sec;
7627 to->tv_usec = from->tv_usec;
7631 #endif /* ndef HAVE_STRUCT_TIMEVAL */
7634 #ifdef HAVE_STRUCT_TIMEZONE
7636 Mono_Posix_FromTimezone (struct Mono_Posix_Timezone *from, struct timezone *to)
7638 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
7639 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
7641 memset (to, 0, sizeof(*to));
7643 to->tz_minuteswest = from->tz_minuteswest;
7644 to->tz_dsttime = from->tz_dsttime;
7648 #endif /* ndef HAVE_STRUCT_TIMEZONE */
7651 #ifdef HAVE_STRUCT_TIMEZONE
7653 Mono_Posix_ToTimezone (struct timezone *from, struct Mono_Posix_Timezone *to)
7655 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
7656 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
7658 memset (to, 0, sizeof(*to));
7660 to->tz_minuteswest = from->tz_minuteswest;
7661 to->tz_dsttime = from->tz_dsttime;
7665 #endif /* ndef HAVE_STRUCT_TIMEZONE */
7668 int Mono_Posix_FromUnixAddressFamily (int x, int *r)
7671 if (x == Mono_Posix_UnixAddressFamily_AF_ALG)
7673 {*r = AF_ALG; return 0;}
7674 #else /* def AF_ALG */
7675 {errno = EINVAL; return -1;}
7676 #endif /* ndef AF_ALG */
7677 if (x == Mono_Posix_UnixAddressFamily_AF_APPLETALK)
7679 {*r = AF_APPLETALK; return 0;}
7680 #else /* def AF_APPLETALK */
7681 {errno = EINVAL; return -1;}
7682 #endif /* ndef AF_APPLETALK */
7683 if (x == Mono_Posix_UnixAddressFamily_AF_ASH)
7685 {*r = AF_ASH; return 0;}
7686 #else /* def AF_ASH */
7687 {errno = EINVAL; return -1;}
7688 #endif /* ndef AF_ASH */
7689 if (x == Mono_Posix_UnixAddressFamily_AF_ATMPVC)
7691 {*r = AF_ATMPVC; return 0;}
7692 #else /* def AF_ATMPVC */
7693 {errno = EINVAL; return -1;}
7694 #endif /* ndef AF_ATMPVC */
7695 if (x == Mono_Posix_UnixAddressFamily_AF_ATMSVC)
7697 {*r = AF_ATMSVC; return 0;}
7698 #else /* def AF_ATMSVC */
7699 {errno = EINVAL; return -1;}
7700 #endif /* ndef AF_ATMSVC */
7701 if (x == Mono_Posix_UnixAddressFamily_AF_AX25)
7703 {*r = AF_AX25; return 0;}
7704 #else /* def AF_AX25 */
7705 {errno = EINVAL; return -1;}
7706 #endif /* ndef AF_AX25 */
7707 if (x == Mono_Posix_UnixAddressFamily_AF_BLUETOOTH)
7709 {*r = AF_BLUETOOTH; return 0;}
7710 #else /* def AF_BLUETOOTH */
7711 {errno = EINVAL; return -1;}
7712 #endif /* ndef AF_BLUETOOTH */
7713 if (x == Mono_Posix_UnixAddressFamily_AF_BRIDGE)
7715 {*r = AF_BRIDGE; return 0;}
7716 #else /* def AF_BRIDGE */
7717 {errno = EINVAL; return -1;}
7718 #endif /* ndef AF_BRIDGE */
7719 if (x == Mono_Posix_UnixAddressFamily_AF_CAIF)
7721 {*r = AF_CAIF; return 0;}
7722 #else /* def AF_CAIF */
7723 {errno = EINVAL; return -1;}
7724 #endif /* ndef AF_CAIF */
7725 if (x == Mono_Posix_UnixAddressFamily_AF_CAN)
7727 {*r = AF_CAN; return 0;}
7728 #else /* def AF_CAN */
7729 {errno = EINVAL; return -1;}
7730 #endif /* ndef AF_CAN */
7731 if (x == Mono_Posix_UnixAddressFamily_AF_DECnet)
7733 {*r = AF_DECnet; return 0;}
7734 #else /* def AF_DECnet */
7735 {errno = EINVAL; return -1;}
7736 #endif /* ndef AF_DECnet */
7737 if (x == Mono_Posix_UnixAddressFamily_AF_ECONET)
7739 {*r = AF_ECONET; return 0;}
7740 #else /* def AF_ECONET */
7741 {errno = EINVAL; return -1;}
7742 #endif /* ndef AF_ECONET */
7743 if (x == Mono_Posix_UnixAddressFamily_AF_IEEE802154)
7744 #ifdef AF_IEEE802154
7745 {*r = AF_IEEE802154; return 0;}
7746 #else /* def AF_IEEE802154 */
7747 {errno = EINVAL; return -1;}
7748 #endif /* ndef AF_IEEE802154 */
7749 if (x == Mono_Posix_UnixAddressFamily_AF_INET)
7751 {*r = AF_INET; return 0;}
7752 #else /* def AF_INET */
7753 {errno = EINVAL; return -1;}
7754 #endif /* ndef AF_INET */
7755 if (x == Mono_Posix_UnixAddressFamily_AF_INET6)
7757 {*r = AF_INET6; return 0;}
7758 #else /* def AF_INET6 */
7759 {errno = EINVAL; return -1;}
7760 #endif /* ndef AF_INET6 */
7761 if (x == Mono_Posix_UnixAddressFamily_AF_IPX)
7763 {*r = AF_IPX; return 0;}
7764 #else /* def AF_IPX */
7765 {errno = EINVAL; return -1;}
7766 #endif /* ndef AF_IPX */
7767 if (x == Mono_Posix_UnixAddressFamily_AF_IRDA)
7769 {*r = AF_IRDA; return 0;}
7770 #else /* def AF_IRDA */
7771 {errno = EINVAL; return -1;}
7772 #endif /* ndef AF_IRDA */
7773 if (x == Mono_Posix_UnixAddressFamily_AF_ISDN)
7775 {*r = AF_ISDN; return 0;}
7776 #else /* def AF_ISDN */
7777 {errno = EINVAL; return -1;}
7778 #endif /* ndef AF_ISDN */
7779 if (x == Mono_Posix_UnixAddressFamily_AF_IUCV)
7781 {*r = AF_IUCV; return 0;}
7782 #else /* def AF_IUCV */
7783 {errno = EINVAL; return -1;}
7784 #endif /* ndef AF_IUCV */
7785 if (x == Mono_Posix_UnixAddressFamily_AF_KEY)
7787 {*r = AF_KEY; return 0;}
7788 #else /* def AF_KEY */
7789 {errno = EINVAL; return -1;}
7790 #endif /* ndef AF_KEY */
7791 if (x == Mono_Posix_UnixAddressFamily_AF_LLC)
7793 {*r = AF_LLC; return 0;}
7794 #else /* def AF_LLC */
7795 {errno = EINVAL; return -1;}
7796 #endif /* ndef AF_LLC */
7797 if (x == Mono_Posix_UnixAddressFamily_AF_NETBEUI)
7799 {*r = AF_NETBEUI; return 0;}
7800 #else /* def AF_NETBEUI */
7801 {errno = EINVAL; return -1;}
7802 #endif /* ndef AF_NETBEUI */
7803 if (x == Mono_Posix_UnixAddressFamily_AF_NETLINK)
7805 {*r = AF_NETLINK; return 0;}
7806 #else /* def AF_NETLINK */
7807 {errno = EINVAL; return -1;}
7808 #endif /* ndef AF_NETLINK */
7809 if (x == Mono_Posix_UnixAddressFamily_AF_NETROM)
7811 {*r = AF_NETROM; return 0;}
7812 #else /* def AF_NETROM */
7813 {errno = EINVAL; return -1;}
7814 #endif /* ndef AF_NETROM */
7815 if (x == Mono_Posix_UnixAddressFamily_AF_NFC)
7817 {*r = AF_NFC; return 0;}
7818 #else /* def AF_NFC */
7819 {errno = EINVAL; return -1;}
7820 #endif /* ndef AF_NFC */
7821 if (x == Mono_Posix_UnixAddressFamily_AF_PACKET)
7823 {*r = AF_PACKET; return 0;}
7824 #else /* def AF_PACKET */
7825 {errno = EINVAL; return -1;}
7826 #endif /* ndef AF_PACKET */
7827 if (x == Mono_Posix_UnixAddressFamily_AF_PHONET)
7829 {*r = AF_PHONET; return 0;}
7830 #else /* def AF_PHONET */
7831 {errno = EINVAL; return -1;}
7832 #endif /* ndef AF_PHONET */
7833 if (x == Mono_Posix_UnixAddressFamily_AF_PPPOX)
7835 {*r = AF_PPPOX; return 0;}
7836 #else /* def AF_PPPOX */
7837 {errno = EINVAL; return -1;}
7838 #endif /* ndef AF_PPPOX */
7839 if (x == Mono_Posix_UnixAddressFamily_AF_RDS)
7841 {*r = AF_RDS; return 0;}
7842 #else /* def AF_RDS */
7843 {errno = EINVAL; return -1;}
7844 #endif /* ndef AF_RDS */
7845 if (x == Mono_Posix_UnixAddressFamily_AF_ROSE)
7847 {*r = AF_ROSE; return 0;}
7848 #else /* def AF_ROSE */
7849 {errno = EINVAL; return -1;}
7850 #endif /* ndef AF_ROSE */
7851 if (x == Mono_Posix_UnixAddressFamily_AF_RXRPC)
7853 {*r = AF_RXRPC; return 0;}
7854 #else /* def AF_RXRPC */
7855 {errno = EINVAL; return -1;}
7856 #endif /* ndef AF_RXRPC */
7857 if (x == Mono_Posix_UnixAddressFamily_AF_SECURITY)
7859 {*r = AF_SECURITY; return 0;}
7860 #else /* def AF_SECURITY */
7861 {errno = EINVAL; return -1;}
7862 #endif /* ndef AF_SECURITY */
7863 if (x == Mono_Posix_UnixAddressFamily_AF_SNA)
7865 {*r = AF_SNA; return 0;}
7866 #else /* def AF_SNA */
7867 {errno = EINVAL; return -1;}
7868 #endif /* ndef AF_SNA */
7869 if (x == Mono_Posix_UnixAddressFamily_AF_TIPC)
7871 {*r = AF_TIPC; return 0;}
7872 #else /* def AF_TIPC */
7873 {errno = EINVAL; return -1;}
7874 #endif /* ndef AF_TIPC */
7875 if (x == Mono_Posix_UnixAddressFamily_AF_UNIX)
7877 {*r = AF_UNIX; return 0;}
7878 #else /* def AF_UNIX */
7879 {errno = EINVAL; return -1;}
7880 #endif /* ndef AF_UNIX */
7881 if (x == Mono_Posix_UnixAddressFamily_AF_UNSPEC)
7883 {*r = AF_UNSPEC; return 0;}
7884 #else /* def AF_UNSPEC */
7885 {errno = EINVAL; return -1;}
7886 #endif /* ndef AF_UNSPEC */
7887 if (x == Mono_Posix_UnixAddressFamily_AF_VSOCK)
7889 {*r = AF_VSOCK; return 0;}
7890 #else /* def AF_VSOCK */
7891 {errno = EINVAL; return -1;}
7892 #endif /* ndef AF_VSOCK */
7893 if (x == Mono_Posix_UnixAddressFamily_AF_WANPIPE)
7895 {*r = AF_WANPIPE; return 0;}
7896 #else /* def AF_WANPIPE */
7897 {errno = EINVAL; return -1;}
7898 #endif /* ndef AF_WANPIPE */
7899 if (x == Mono_Posix_UnixAddressFamily_AF_X25)
7901 {*r = AF_X25; return 0;}
7902 #else /* def AF_X25 */
7903 {errno = EINVAL; return -1;}
7904 #endif /* ndef AF_X25 */
7907 errno = EINVAL; return -1;
7910 int Mono_Posix_ToUnixAddressFamily (int x, int *r)
7917 {*r = Mono_Posix_UnixAddressFamily_AF_ALG; return 0;}
7918 #endif /* ndef AF_ALG */
7920 if (x == AF_APPLETALK)
7921 {*r = Mono_Posix_UnixAddressFamily_AF_APPLETALK; return 0;}
7922 #endif /* ndef AF_APPLETALK */
7925 {*r = Mono_Posix_UnixAddressFamily_AF_ASH; return 0;}
7926 #endif /* ndef AF_ASH */
7929 {*r = Mono_Posix_UnixAddressFamily_AF_ATMPVC; return 0;}
7930 #endif /* ndef AF_ATMPVC */
7933 {*r = Mono_Posix_UnixAddressFamily_AF_ATMSVC; return 0;}
7934 #endif /* ndef AF_ATMSVC */
7937 {*r = Mono_Posix_UnixAddressFamily_AF_AX25; return 0;}
7938 #endif /* ndef AF_AX25 */
7940 if (x == AF_BLUETOOTH)
7941 {*r = Mono_Posix_UnixAddressFamily_AF_BLUETOOTH; return 0;}
7942 #endif /* ndef AF_BLUETOOTH */
7945 {*r = Mono_Posix_UnixAddressFamily_AF_BRIDGE; return 0;}
7946 #endif /* ndef AF_BRIDGE */
7949 {*r = Mono_Posix_UnixAddressFamily_AF_CAIF; return 0;}
7950 #endif /* ndef AF_CAIF */
7953 {*r = Mono_Posix_UnixAddressFamily_AF_CAN; return 0;}
7954 #endif /* ndef AF_CAN */
7957 {*r = Mono_Posix_UnixAddressFamily_AF_DECnet; return 0;}
7958 #endif /* ndef AF_DECnet */
7961 {*r = Mono_Posix_UnixAddressFamily_AF_ECONET; return 0;}
7962 #endif /* ndef AF_ECONET */
7963 #ifdef AF_IEEE802154
7964 if (x == AF_IEEE802154)
7965 {*r = Mono_Posix_UnixAddressFamily_AF_IEEE802154; return 0;}
7966 #endif /* ndef AF_IEEE802154 */
7969 {*r = Mono_Posix_UnixAddressFamily_AF_INET; return 0;}
7970 #endif /* ndef AF_INET */
7973 {*r = Mono_Posix_UnixAddressFamily_AF_INET6; return 0;}
7974 #endif /* ndef AF_INET6 */
7977 {*r = Mono_Posix_UnixAddressFamily_AF_IPX; return 0;}
7978 #endif /* ndef AF_IPX */
7981 {*r = Mono_Posix_UnixAddressFamily_AF_IRDA; return 0;}
7982 #endif /* ndef AF_IRDA */
7985 {*r = Mono_Posix_UnixAddressFamily_AF_ISDN; return 0;}
7986 #endif /* ndef AF_ISDN */
7989 {*r = Mono_Posix_UnixAddressFamily_AF_IUCV; return 0;}
7990 #endif /* ndef AF_IUCV */
7993 {*r = Mono_Posix_UnixAddressFamily_AF_KEY; return 0;}
7994 #endif /* ndef AF_KEY */
7997 {*r = Mono_Posix_UnixAddressFamily_AF_LLC; return 0;}
7998 #endif /* ndef AF_LLC */
8000 if (x == AF_NETBEUI)
8001 {*r = Mono_Posix_UnixAddressFamily_AF_NETBEUI; return 0;}
8002 #endif /* ndef AF_NETBEUI */
8004 if (x == AF_NETLINK)
8005 {*r = Mono_Posix_UnixAddressFamily_AF_NETLINK; return 0;}
8006 #endif /* ndef AF_NETLINK */
8009 {*r = Mono_Posix_UnixAddressFamily_AF_NETROM; return 0;}
8010 #endif /* ndef AF_NETROM */
8013 {*r = Mono_Posix_UnixAddressFamily_AF_NFC; return 0;}
8014 #endif /* ndef AF_NFC */
8017 {*r = Mono_Posix_UnixAddressFamily_AF_PACKET; return 0;}
8018 #endif /* ndef AF_PACKET */
8021 {*r = Mono_Posix_UnixAddressFamily_AF_PHONET; return 0;}
8022 #endif /* ndef AF_PHONET */
8025 {*r = Mono_Posix_UnixAddressFamily_AF_PPPOX; return 0;}
8026 #endif /* ndef AF_PPPOX */
8029 {*r = Mono_Posix_UnixAddressFamily_AF_RDS; return 0;}
8030 #endif /* ndef AF_RDS */
8033 {*r = Mono_Posix_UnixAddressFamily_AF_ROSE; return 0;}
8034 #endif /* ndef AF_ROSE */
8037 {*r = Mono_Posix_UnixAddressFamily_AF_RXRPC; return 0;}
8038 #endif /* ndef AF_RXRPC */
8040 if (x == AF_SECURITY)
8041 {*r = Mono_Posix_UnixAddressFamily_AF_SECURITY; return 0;}
8042 #endif /* ndef AF_SECURITY */
8045 {*r = Mono_Posix_UnixAddressFamily_AF_SNA; return 0;}
8046 #endif /* ndef AF_SNA */
8049 {*r = Mono_Posix_UnixAddressFamily_AF_TIPC; return 0;}
8050 #endif /* ndef AF_TIPC */
8053 {*r = Mono_Posix_UnixAddressFamily_AF_UNIX; return 0;}
8054 #endif /* ndef AF_UNIX */
8057 {*r = Mono_Posix_UnixAddressFamily_AF_UNSPEC; return 0;}
8058 #endif /* ndef AF_UNSPEC */
8061 {*r = Mono_Posix_UnixAddressFamily_AF_VSOCK; return 0;}
8062 #endif /* ndef AF_VSOCK */
8064 if (x == AF_WANPIPE)
8065 {*r = Mono_Posix_UnixAddressFamily_AF_WANPIPE; return 0;}
8066 #endif /* ndef AF_WANPIPE */
8069 {*r = Mono_Posix_UnixAddressFamily_AF_X25; return 0;}
8070 #endif /* ndef AF_X25 */
8071 errno = EINVAL; return -1;
8074 int Mono_Posix_FromUnixSocketFlags (int x, int *r)
8077 if ((x & Mono_Posix_UnixSocketFlags_SOCK_CLOEXEC) == Mono_Posix_UnixSocketFlags_SOCK_CLOEXEC)
8080 #else /* def SOCK_CLOEXEC */
8081 {errno = EINVAL; return -1;}
8082 #endif /* ndef SOCK_CLOEXEC */
8083 if ((x & Mono_Posix_UnixSocketFlags_SOCK_NONBLOCK) == Mono_Posix_UnixSocketFlags_SOCK_NONBLOCK)
8084 #ifdef SOCK_NONBLOCK
8085 *r |= SOCK_NONBLOCK;
8086 #else /* def SOCK_NONBLOCK */
8087 {errno = EINVAL; return -1;}
8088 #endif /* ndef SOCK_NONBLOCK */
8094 int Mono_Posix_ToUnixSocketFlags (int x, int *r)
8100 if ((x & SOCK_CLOEXEC) == SOCK_CLOEXEC)
8101 *r |= Mono_Posix_UnixSocketFlags_SOCK_CLOEXEC;
8102 #endif /* ndef SOCK_CLOEXEC */
8103 #ifdef SOCK_NONBLOCK
8104 if ((x & SOCK_NONBLOCK) == SOCK_NONBLOCK)
8105 *r |= Mono_Posix_UnixSocketFlags_SOCK_NONBLOCK;
8106 #endif /* ndef SOCK_NONBLOCK */
8110 int Mono_Posix_FromUnixSocketOptionName (int x, int *r)
8113 if (x == Mono_Posix_UnixSocketOptionName_SO_ACCEPTCONN)
8114 #ifdef SO_ACCEPTCONN
8115 {*r = SO_ACCEPTCONN; return 0;}
8116 #else /* def SO_ACCEPTCONN */
8117 {errno = EINVAL; return -1;}
8118 #endif /* ndef SO_ACCEPTCONN */
8119 if (x == Mono_Posix_UnixSocketOptionName_SO_ATTACH_FILTER)
8120 #ifdef SO_ATTACH_FILTER
8121 {*r = SO_ATTACH_FILTER; return 0;}
8122 #else /* def SO_ATTACH_FILTER */
8123 {errno = EINVAL; return -1;}
8124 #endif /* ndef SO_ATTACH_FILTER */
8125 if (x == Mono_Posix_UnixSocketOptionName_SO_BINDTODEVICE)
8126 #ifdef SO_BINDTODEVICE
8127 {*r = SO_BINDTODEVICE; return 0;}
8128 #else /* def SO_BINDTODEVICE */
8129 {errno = EINVAL; return -1;}
8130 #endif /* ndef SO_BINDTODEVICE */
8131 if (x == Mono_Posix_UnixSocketOptionName_SO_BROADCAST)
8133 {*r = SO_BROADCAST; return 0;}
8134 #else /* def SO_BROADCAST */
8135 {errno = EINVAL; return -1;}
8136 #endif /* ndef SO_BROADCAST */
8137 if (x == Mono_Posix_UnixSocketOptionName_SO_BSDCOMPAT)
8139 {*r = SO_BSDCOMPAT; return 0;}
8140 #else /* def SO_BSDCOMPAT */
8141 {errno = EINVAL; return -1;}
8142 #endif /* ndef SO_BSDCOMPAT */
8143 if (x == Mono_Posix_UnixSocketOptionName_SO_BUSY_POLL)
8145 {*r = SO_BUSY_POLL; return 0;}
8146 #else /* def SO_BUSY_POLL */
8147 {errno = EINVAL; return -1;}
8148 #endif /* ndef SO_BUSY_POLL */
8149 if (x == Mono_Posix_UnixSocketOptionName_SO_DEBUG)
8151 {*r = SO_DEBUG; return 0;}
8152 #else /* def SO_DEBUG */
8153 {errno = EINVAL; return -1;}
8154 #endif /* ndef SO_DEBUG */
8155 if (x == Mono_Posix_UnixSocketOptionName_SO_DETACH_FILTER)
8156 #ifdef SO_DETACH_FILTER
8157 {*r = SO_DETACH_FILTER; return 0;}
8158 #else /* def SO_DETACH_FILTER */
8159 {errno = EINVAL; return -1;}
8160 #endif /* ndef SO_DETACH_FILTER */
8161 if (x == Mono_Posix_UnixSocketOptionName_SO_DOMAIN)
8163 {*r = SO_DOMAIN; return 0;}
8164 #else /* def SO_DOMAIN */
8165 {errno = EINVAL; return -1;}
8166 #endif /* ndef SO_DOMAIN */
8167 if (x == Mono_Posix_UnixSocketOptionName_SO_DONTROUTE)
8169 {*r = SO_DONTROUTE; return 0;}
8170 #else /* def SO_DONTROUTE */
8171 {errno = EINVAL; return -1;}
8172 #endif /* ndef SO_DONTROUTE */
8173 if (x == Mono_Posix_UnixSocketOptionName_SO_ERROR)
8175 {*r = SO_ERROR; return 0;}
8176 #else /* def SO_ERROR */
8177 {errno = EINVAL; return -1;}
8178 #endif /* ndef SO_ERROR */
8179 if (x == Mono_Posix_UnixSocketOptionName_SO_KEEPALIVE)
8181 {*r = SO_KEEPALIVE; return 0;}
8182 #else /* def SO_KEEPALIVE */
8183 {errno = EINVAL; return -1;}
8184 #endif /* ndef SO_KEEPALIVE */
8185 if (x == Mono_Posix_UnixSocketOptionName_SO_LINGER)
8187 {*r = SO_LINGER; return 0;}
8188 #else /* def SO_LINGER */
8189 {errno = EINVAL; return -1;}
8190 #endif /* ndef SO_LINGER */
8191 if (x == Mono_Posix_UnixSocketOptionName_SO_LOCK_FILTER)
8192 #ifdef SO_LOCK_FILTER
8193 {*r = SO_LOCK_FILTER; return 0;}
8194 #else /* def SO_LOCK_FILTER */
8195 {errno = EINVAL; return -1;}
8196 #endif /* ndef SO_LOCK_FILTER */
8197 if (x == Mono_Posix_UnixSocketOptionName_SO_MARK)
8199 {*r = SO_MARK; return 0;}
8200 #else /* def SO_MARK */
8201 {errno = EINVAL; return -1;}
8202 #endif /* ndef SO_MARK */
8203 if (x == Mono_Posix_UnixSocketOptionName_SO_MAX_PACING_RATE)
8204 #ifdef SO_MAX_PACING_RATE
8205 {*r = SO_MAX_PACING_RATE; return 0;}
8206 #else /* def SO_MAX_PACING_RATE */
8207 {errno = EINVAL; return -1;}
8208 #endif /* ndef SO_MAX_PACING_RATE */
8209 if (x == Mono_Posix_UnixSocketOptionName_SO_NOFCS)
8211 {*r = SO_NOFCS; return 0;}
8212 #else /* def SO_NOFCS */
8213 {errno = EINVAL; return -1;}
8214 #endif /* ndef SO_NOFCS */
8215 if (x == Mono_Posix_UnixSocketOptionName_SO_NO_CHECK)
8217 {*r = SO_NO_CHECK; return 0;}
8218 #else /* def SO_NO_CHECK */
8219 {errno = EINVAL; return -1;}
8220 #endif /* ndef SO_NO_CHECK */
8221 if (x == Mono_Posix_UnixSocketOptionName_SO_OOBINLINE)
8223 {*r = SO_OOBINLINE; return 0;}
8224 #else /* def SO_OOBINLINE */
8225 {errno = EINVAL; return -1;}
8226 #endif /* ndef SO_OOBINLINE */
8227 if (x == Mono_Posix_UnixSocketOptionName_SO_PASSCRED)
8229 {*r = SO_PASSCRED; return 0;}
8230 #else /* def SO_PASSCRED */
8231 {errno = EINVAL; return -1;}
8232 #endif /* ndef SO_PASSCRED */
8233 if (x == Mono_Posix_UnixSocketOptionName_SO_PASSSEC)
8235 {*r = SO_PASSSEC; return 0;}
8236 #else /* def SO_PASSSEC */
8237 {errno = EINVAL; return -1;}
8238 #endif /* ndef SO_PASSSEC */
8239 if (x == Mono_Posix_UnixSocketOptionName_SO_PEEK_OFF)
8241 {*r = SO_PEEK_OFF; return 0;}
8242 #else /* def SO_PEEK_OFF */
8243 {errno = EINVAL; return -1;}
8244 #endif /* ndef SO_PEEK_OFF */
8245 if (x == Mono_Posix_UnixSocketOptionName_SO_PEERCRED)
8247 {*r = SO_PEERCRED; return 0;}
8248 #else /* def SO_PEERCRED */
8249 {errno = EINVAL; return -1;}
8250 #endif /* ndef SO_PEERCRED */
8251 if (x == Mono_Posix_UnixSocketOptionName_SO_PEERNAME)
8253 {*r = SO_PEERNAME; return 0;}
8254 #else /* def SO_PEERNAME */
8255 {errno = EINVAL; return -1;}
8256 #endif /* ndef SO_PEERNAME */
8257 if (x == Mono_Posix_UnixSocketOptionName_SO_PEERSEC)
8259 {*r = SO_PEERSEC; return 0;}
8260 #else /* def SO_PEERSEC */
8261 {errno = EINVAL; return -1;}
8262 #endif /* ndef SO_PEERSEC */
8263 if (x == Mono_Posix_UnixSocketOptionName_SO_PRIORITY)
8265 {*r = SO_PRIORITY; return 0;}
8266 #else /* def SO_PRIORITY */
8267 {errno = EINVAL; return -1;}
8268 #endif /* ndef SO_PRIORITY */
8269 if (x == Mono_Posix_UnixSocketOptionName_SO_PROTOCOL)
8271 {*r = SO_PROTOCOL; return 0;}
8272 #else /* def SO_PROTOCOL */
8273 {errno = EINVAL; return -1;}
8274 #endif /* ndef SO_PROTOCOL */
8275 if (x == Mono_Posix_UnixSocketOptionName_SO_RCVBUF)
8277 {*r = SO_RCVBUF; return 0;}
8278 #else /* def SO_RCVBUF */
8279 {errno = EINVAL; return -1;}
8280 #endif /* ndef SO_RCVBUF */
8281 if (x == Mono_Posix_UnixSocketOptionName_SO_RCVBUFFORCE)
8282 #ifdef SO_RCVBUFFORCE
8283 {*r = SO_RCVBUFFORCE; return 0;}
8284 #else /* def SO_RCVBUFFORCE */
8285 {errno = EINVAL; return -1;}
8286 #endif /* ndef SO_RCVBUFFORCE */
8287 if (x == Mono_Posix_UnixSocketOptionName_SO_RCVLOWAT)
8289 {*r = SO_RCVLOWAT; return 0;}
8290 #else /* def SO_RCVLOWAT */
8291 {errno = EINVAL; return -1;}
8292 #endif /* ndef SO_RCVLOWAT */
8293 if (x == Mono_Posix_UnixSocketOptionName_SO_RCVTIMEO)
8295 {*r = SO_RCVTIMEO; return 0;}
8296 #else /* def SO_RCVTIMEO */
8297 {errno = EINVAL; return -1;}
8298 #endif /* ndef SO_RCVTIMEO */
8299 if (x == Mono_Posix_UnixSocketOptionName_SO_REUSEADDR)
8301 {*r = SO_REUSEADDR; return 0;}
8302 #else /* def SO_REUSEADDR */
8303 {errno = EINVAL; return -1;}
8304 #endif /* ndef SO_REUSEADDR */
8305 if (x == Mono_Posix_UnixSocketOptionName_SO_REUSEPORT)
8307 {*r = SO_REUSEPORT; return 0;}
8308 #else /* def SO_REUSEPORT */
8309 {errno = EINVAL; return -1;}
8310 #endif /* ndef SO_REUSEPORT */
8311 if (x == Mono_Posix_UnixSocketOptionName_SO_RXQ_OVFL)
8313 {*r = SO_RXQ_OVFL; return 0;}
8314 #else /* def SO_RXQ_OVFL */
8315 {errno = EINVAL; return -1;}
8316 #endif /* ndef SO_RXQ_OVFL */
8317 if (x == Mono_Posix_UnixSocketOptionName_SO_SECURITY_AUTHENTICATION)
8318 #ifdef SO_SECURITY_AUTHENTICATION
8319 {*r = SO_SECURITY_AUTHENTICATION; return 0;}
8320 #else /* def SO_SECURITY_AUTHENTICATION */
8321 {errno = EINVAL; return -1;}
8322 #endif /* ndef SO_SECURITY_AUTHENTICATION */
8323 if (x == Mono_Posix_UnixSocketOptionName_SO_SECURITY_ENCRYPTION_NETWORK)
8324 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
8325 {*r = SO_SECURITY_ENCRYPTION_NETWORK; return 0;}
8326 #else /* def SO_SECURITY_ENCRYPTION_NETWORK */
8327 {errno = EINVAL; return -1;}
8328 #endif /* ndef SO_SECURITY_ENCRYPTION_NETWORK */
8329 if (x == Mono_Posix_UnixSocketOptionName_SO_SECURITY_ENCRYPTION_TRANSPORT)
8330 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
8331 {*r = SO_SECURITY_ENCRYPTION_TRANSPORT; return 0;}
8332 #else /* def SO_SECURITY_ENCRYPTION_TRANSPORT */
8333 {errno = EINVAL; return -1;}
8334 #endif /* ndef SO_SECURITY_ENCRYPTION_TRANSPORT */
8335 if (x == Mono_Posix_UnixSocketOptionName_SO_SELECT_ERR_QUEUE)
8336 #ifdef SO_SELECT_ERR_QUEUE
8337 {*r = SO_SELECT_ERR_QUEUE; return 0;}
8338 #else /* def SO_SELECT_ERR_QUEUE */
8339 {errno = EINVAL; return -1;}
8340 #endif /* ndef SO_SELECT_ERR_QUEUE */
8341 if (x == Mono_Posix_UnixSocketOptionName_SO_SNDBUF)
8343 {*r = SO_SNDBUF; return 0;}
8344 #else /* def SO_SNDBUF */
8345 {errno = EINVAL; return -1;}
8346 #endif /* ndef SO_SNDBUF */
8347 if (x == Mono_Posix_UnixSocketOptionName_SO_SNDBUFFORCE)
8348 #ifdef SO_SNDBUFFORCE
8349 {*r = SO_SNDBUFFORCE; return 0;}
8350 #else /* def SO_SNDBUFFORCE */
8351 {errno = EINVAL; return -1;}
8352 #endif /* ndef SO_SNDBUFFORCE */
8353 if (x == Mono_Posix_UnixSocketOptionName_SO_SNDLOWAT)
8355 {*r = SO_SNDLOWAT; return 0;}
8356 #else /* def SO_SNDLOWAT */
8357 {errno = EINVAL; return -1;}
8358 #endif /* ndef SO_SNDLOWAT */
8359 if (x == Mono_Posix_UnixSocketOptionName_SO_SNDTIMEO)
8361 {*r = SO_SNDTIMEO; return 0;}
8362 #else /* def SO_SNDTIMEO */
8363 {errno = EINVAL; return -1;}
8364 #endif /* ndef SO_SNDTIMEO */
8365 if (x == Mono_Posix_UnixSocketOptionName_SO_TIMESTAMP)
8367 {*r = SO_TIMESTAMP; return 0;}
8368 #else /* def SO_TIMESTAMP */
8369 {errno = EINVAL; return -1;}
8370 #endif /* ndef SO_TIMESTAMP */
8371 if (x == Mono_Posix_UnixSocketOptionName_SO_TIMESTAMPING)
8372 #ifdef SO_TIMESTAMPING
8373 {*r = SO_TIMESTAMPING; return 0;}
8374 #else /* def SO_TIMESTAMPING */
8375 {errno = EINVAL; return -1;}
8376 #endif /* ndef SO_TIMESTAMPING */
8377 if (x == Mono_Posix_UnixSocketOptionName_SO_TIMESTAMPNS)
8378 #ifdef SO_TIMESTAMPNS
8379 {*r = SO_TIMESTAMPNS; return 0;}
8380 #else /* def SO_TIMESTAMPNS */
8381 {errno = EINVAL; return -1;}
8382 #endif /* ndef SO_TIMESTAMPNS */
8383 if (x == Mono_Posix_UnixSocketOptionName_SO_TYPE)
8385 {*r = SO_TYPE; return 0;}
8386 #else /* def SO_TYPE */
8387 {errno = EINVAL; return -1;}
8388 #endif /* ndef SO_TYPE */
8389 if (x == Mono_Posix_UnixSocketOptionName_SO_WIFI_STATUS)
8390 #ifdef SO_WIFI_STATUS
8391 {*r = SO_WIFI_STATUS; return 0;}
8392 #else /* def SO_WIFI_STATUS */
8393 {errno = EINVAL; return -1;}
8394 #endif /* ndef SO_WIFI_STATUS */
8397 errno = EINVAL; return -1;
8400 int Mono_Posix_ToUnixSocketOptionName (int x, int *r)
8405 #ifdef SO_ACCEPTCONN
8406 if (x == SO_ACCEPTCONN)
8407 {*r = Mono_Posix_UnixSocketOptionName_SO_ACCEPTCONN; return 0;}
8408 #endif /* ndef SO_ACCEPTCONN */
8409 #ifdef SO_ATTACH_FILTER
8410 if (x == SO_ATTACH_FILTER)
8411 {*r = Mono_Posix_UnixSocketOptionName_SO_ATTACH_FILTER; return 0;}
8412 #endif /* ndef SO_ATTACH_FILTER */
8413 #ifdef SO_BINDTODEVICE
8414 if (x == SO_BINDTODEVICE)
8415 {*r = Mono_Posix_UnixSocketOptionName_SO_BINDTODEVICE; return 0;}
8416 #endif /* ndef SO_BINDTODEVICE */
8418 if (x == SO_BROADCAST)
8419 {*r = Mono_Posix_UnixSocketOptionName_SO_BROADCAST; return 0;}
8420 #endif /* ndef SO_BROADCAST */
8422 if (x == SO_BSDCOMPAT)
8423 {*r = Mono_Posix_UnixSocketOptionName_SO_BSDCOMPAT; return 0;}
8424 #endif /* ndef SO_BSDCOMPAT */
8426 if (x == SO_BUSY_POLL)
8427 {*r = Mono_Posix_UnixSocketOptionName_SO_BUSY_POLL; return 0;}
8428 #endif /* ndef SO_BUSY_POLL */
8431 {*r = Mono_Posix_UnixSocketOptionName_SO_DEBUG; return 0;}
8432 #endif /* ndef SO_DEBUG */
8433 #ifdef SO_DETACH_FILTER
8434 if (x == SO_DETACH_FILTER)
8435 {*r = Mono_Posix_UnixSocketOptionName_SO_DETACH_FILTER; return 0;}
8436 #endif /* ndef SO_DETACH_FILTER */
8439 {*r = Mono_Posix_UnixSocketOptionName_SO_DOMAIN; return 0;}
8440 #endif /* ndef SO_DOMAIN */
8442 if (x == SO_DONTROUTE)
8443 {*r = Mono_Posix_UnixSocketOptionName_SO_DONTROUTE; return 0;}
8444 #endif /* ndef SO_DONTROUTE */
8447 {*r = Mono_Posix_UnixSocketOptionName_SO_ERROR; return 0;}
8448 #endif /* ndef SO_ERROR */
8450 if (x == SO_KEEPALIVE)
8451 {*r = Mono_Posix_UnixSocketOptionName_SO_KEEPALIVE; return 0;}
8452 #endif /* ndef SO_KEEPALIVE */
8455 {*r = Mono_Posix_UnixSocketOptionName_SO_LINGER; return 0;}
8456 #endif /* ndef SO_LINGER */
8457 #ifdef SO_LOCK_FILTER
8458 if (x == SO_LOCK_FILTER)
8459 {*r = Mono_Posix_UnixSocketOptionName_SO_LOCK_FILTER; return 0;}
8460 #endif /* ndef SO_LOCK_FILTER */
8463 {*r = Mono_Posix_UnixSocketOptionName_SO_MARK; return 0;}
8464 #endif /* ndef SO_MARK */
8465 #ifdef SO_MAX_PACING_RATE
8466 if (x == SO_MAX_PACING_RATE)
8467 {*r = Mono_Posix_UnixSocketOptionName_SO_MAX_PACING_RATE; return 0;}
8468 #endif /* ndef SO_MAX_PACING_RATE */
8471 {*r = Mono_Posix_UnixSocketOptionName_SO_NOFCS; return 0;}
8472 #endif /* ndef SO_NOFCS */
8474 if (x == SO_NO_CHECK)
8475 {*r = Mono_Posix_UnixSocketOptionName_SO_NO_CHECK; return 0;}
8476 #endif /* ndef SO_NO_CHECK */
8478 if (x == SO_OOBINLINE)
8479 {*r = Mono_Posix_UnixSocketOptionName_SO_OOBINLINE; return 0;}
8480 #endif /* ndef SO_OOBINLINE */
8482 if (x == SO_PASSCRED)
8483 {*r = Mono_Posix_UnixSocketOptionName_SO_PASSCRED; return 0;}
8484 #endif /* ndef SO_PASSCRED */
8486 if (x == SO_PASSSEC)
8487 {*r = Mono_Posix_UnixSocketOptionName_SO_PASSSEC; return 0;}
8488 #endif /* ndef SO_PASSSEC */
8490 if (x == SO_PEEK_OFF)
8491 {*r = Mono_Posix_UnixSocketOptionName_SO_PEEK_OFF; return 0;}
8492 #endif /* ndef SO_PEEK_OFF */
8494 if (x == SO_PEERCRED)
8495 {*r = Mono_Posix_UnixSocketOptionName_SO_PEERCRED; return 0;}
8496 #endif /* ndef SO_PEERCRED */
8498 if (x == SO_PEERNAME)
8499 {*r = Mono_Posix_UnixSocketOptionName_SO_PEERNAME; return 0;}
8500 #endif /* ndef SO_PEERNAME */
8502 if (x == SO_PEERSEC)
8503 {*r = Mono_Posix_UnixSocketOptionName_SO_PEERSEC; return 0;}
8504 #endif /* ndef SO_PEERSEC */
8506 if (x == SO_PRIORITY)
8507 {*r = Mono_Posix_UnixSocketOptionName_SO_PRIORITY; return 0;}
8508 #endif /* ndef SO_PRIORITY */
8510 if (x == SO_PROTOCOL)
8511 {*r = Mono_Posix_UnixSocketOptionName_SO_PROTOCOL; return 0;}
8512 #endif /* ndef SO_PROTOCOL */
8515 {*r = Mono_Posix_UnixSocketOptionName_SO_RCVBUF; return 0;}
8516 #endif /* ndef SO_RCVBUF */
8517 #ifdef SO_RCVBUFFORCE
8518 if (x == SO_RCVBUFFORCE)
8519 {*r = Mono_Posix_UnixSocketOptionName_SO_RCVBUFFORCE; return 0;}
8520 #endif /* ndef SO_RCVBUFFORCE */
8522 if (x == SO_RCVLOWAT)
8523 {*r = Mono_Posix_UnixSocketOptionName_SO_RCVLOWAT; return 0;}
8524 #endif /* ndef SO_RCVLOWAT */
8526 if (x == SO_RCVTIMEO)
8527 {*r = Mono_Posix_UnixSocketOptionName_SO_RCVTIMEO; return 0;}
8528 #endif /* ndef SO_RCVTIMEO */
8530 if (x == SO_REUSEADDR)
8531 {*r = Mono_Posix_UnixSocketOptionName_SO_REUSEADDR; return 0;}
8532 #endif /* ndef SO_REUSEADDR */
8534 if (x == SO_REUSEPORT)
8535 {*r = Mono_Posix_UnixSocketOptionName_SO_REUSEPORT; return 0;}
8536 #endif /* ndef SO_REUSEPORT */
8538 if (x == SO_RXQ_OVFL)
8539 {*r = Mono_Posix_UnixSocketOptionName_SO_RXQ_OVFL; return 0;}
8540 #endif /* ndef SO_RXQ_OVFL */
8541 #ifdef SO_SECURITY_AUTHENTICATION
8542 if (x == SO_SECURITY_AUTHENTICATION)
8543 {*r = Mono_Posix_UnixSocketOptionName_SO_SECURITY_AUTHENTICATION; return 0;}
8544 #endif /* ndef SO_SECURITY_AUTHENTICATION */
8545 #ifdef SO_SECURITY_ENCRYPTION_NETWORK
8546 if (x == SO_SECURITY_ENCRYPTION_NETWORK)
8547 {*r = Mono_Posix_UnixSocketOptionName_SO_SECURITY_ENCRYPTION_NETWORK; return 0;}
8548 #endif /* ndef SO_SECURITY_ENCRYPTION_NETWORK */
8549 #ifdef SO_SECURITY_ENCRYPTION_TRANSPORT
8550 if (x == SO_SECURITY_ENCRYPTION_TRANSPORT)
8551 {*r = Mono_Posix_UnixSocketOptionName_SO_SECURITY_ENCRYPTION_TRANSPORT; return 0;}
8552 #endif /* ndef SO_SECURITY_ENCRYPTION_TRANSPORT */
8553 #ifdef SO_SELECT_ERR_QUEUE
8554 if (x == SO_SELECT_ERR_QUEUE)
8555 {*r = Mono_Posix_UnixSocketOptionName_SO_SELECT_ERR_QUEUE; return 0;}
8556 #endif /* ndef SO_SELECT_ERR_QUEUE */
8559 {*r = Mono_Posix_UnixSocketOptionName_SO_SNDBUF; return 0;}
8560 #endif /* ndef SO_SNDBUF */
8561 #ifdef SO_SNDBUFFORCE
8562 if (x == SO_SNDBUFFORCE)
8563 {*r = Mono_Posix_UnixSocketOptionName_SO_SNDBUFFORCE; return 0;}
8564 #endif /* ndef SO_SNDBUFFORCE */
8566 if (x == SO_SNDLOWAT)
8567 {*r = Mono_Posix_UnixSocketOptionName_SO_SNDLOWAT; return 0;}
8568 #endif /* ndef SO_SNDLOWAT */
8570 if (x == SO_SNDTIMEO)
8571 {*r = Mono_Posix_UnixSocketOptionName_SO_SNDTIMEO; return 0;}
8572 #endif /* ndef SO_SNDTIMEO */
8574 if (x == SO_TIMESTAMP)
8575 {*r = Mono_Posix_UnixSocketOptionName_SO_TIMESTAMP; return 0;}
8576 #endif /* ndef SO_TIMESTAMP */
8577 #ifdef SO_TIMESTAMPING
8578 if (x == SO_TIMESTAMPING)
8579 {*r = Mono_Posix_UnixSocketOptionName_SO_TIMESTAMPING; return 0;}
8580 #endif /* ndef SO_TIMESTAMPING */
8581 #ifdef SO_TIMESTAMPNS
8582 if (x == SO_TIMESTAMPNS)
8583 {*r = Mono_Posix_UnixSocketOptionName_SO_TIMESTAMPNS; return 0;}
8584 #endif /* ndef SO_TIMESTAMPNS */
8587 {*r = Mono_Posix_UnixSocketOptionName_SO_TYPE; return 0;}
8588 #endif /* ndef SO_TYPE */
8589 #ifdef SO_WIFI_STATUS
8590 if (x == SO_WIFI_STATUS)
8591 {*r = Mono_Posix_UnixSocketOptionName_SO_WIFI_STATUS; return 0;}
8592 #endif /* ndef SO_WIFI_STATUS */
8593 errno = EINVAL; return -1;
8596 int Mono_Posix_FromUnixSocketProtocol (int x, int *r)
8599 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_AH)
8601 {*r = IPPROTO_AH; return 0;}
8602 #else /* def IPPROTO_AH */
8603 {errno = EINVAL; return -1;}
8604 #endif /* ndef IPPROTO_AH */
8605 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_BEETPH)
8606 #ifdef IPPROTO_BEETPH
8607 {*r = IPPROTO_BEETPH; return 0;}
8608 #else /* def IPPROTO_BEETPH */
8609 {errno = EINVAL; return -1;}
8610 #endif /* ndef IPPROTO_BEETPH */
8611 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_COMP)
8613 {*r = IPPROTO_COMP; return 0;}
8614 #else /* def IPPROTO_COMP */
8615 {errno = EINVAL; return -1;}
8616 #endif /* ndef IPPROTO_COMP */
8617 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_DCCP)
8619 {*r = IPPROTO_DCCP; return 0;}
8620 #else /* def IPPROTO_DCCP */
8621 {errno = EINVAL; return -1;}
8622 #endif /* ndef IPPROTO_DCCP */
8623 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_EGP)
8625 {*r = IPPROTO_EGP; return 0;}
8626 #else /* def IPPROTO_EGP */
8627 {errno = EINVAL; return -1;}
8628 #endif /* ndef IPPROTO_EGP */
8629 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_ENCAP)
8630 #ifdef IPPROTO_ENCAP
8631 {*r = IPPROTO_ENCAP; return 0;}
8632 #else /* def IPPROTO_ENCAP */
8633 {errno = EINVAL; return -1;}
8634 #endif /* ndef IPPROTO_ENCAP */
8635 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_ESP)
8637 {*r = IPPROTO_ESP; return 0;}
8638 #else /* def IPPROTO_ESP */
8639 {errno = EINVAL; return -1;}
8640 #endif /* ndef IPPROTO_ESP */
8641 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_GRE)
8643 {*r = IPPROTO_GRE; return 0;}
8644 #else /* def IPPROTO_GRE */
8645 {errno = EINVAL; return -1;}
8646 #endif /* ndef IPPROTO_GRE */
8647 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_ICMP)
8649 {*r = IPPROTO_ICMP; return 0;}
8650 #else /* def IPPROTO_ICMP */
8651 {errno = EINVAL; return -1;}
8652 #endif /* ndef IPPROTO_ICMP */
8653 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_IDP)
8655 {*r = IPPROTO_IDP; return 0;}
8656 #else /* def IPPROTO_IDP */
8657 {errno = EINVAL; return -1;}
8658 #endif /* ndef IPPROTO_IDP */
8659 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_IGMP)
8661 {*r = IPPROTO_IGMP; return 0;}
8662 #else /* def IPPROTO_IGMP */
8663 {errno = EINVAL; return -1;}
8664 #endif /* ndef IPPROTO_IGMP */
8665 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_IP)
8667 {*r = IPPROTO_IP; return 0;}
8668 #else /* def IPPROTO_IP */
8669 {errno = EINVAL; return -1;}
8670 #endif /* ndef IPPROTO_IP */
8671 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_IPIP)
8673 {*r = IPPROTO_IPIP; return 0;}
8674 #else /* def IPPROTO_IPIP */
8675 {errno = EINVAL; return -1;}
8676 #endif /* ndef IPPROTO_IPIP */
8677 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_IPV6)
8679 {*r = IPPROTO_IPV6; return 0;}
8680 #else /* def IPPROTO_IPV6 */
8681 {errno = EINVAL; return -1;}
8682 #endif /* ndef IPPROTO_IPV6 */
8683 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_MTP)
8685 {*r = IPPROTO_MTP; return 0;}
8686 #else /* def IPPROTO_MTP */
8687 {errno = EINVAL; return -1;}
8688 #endif /* ndef IPPROTO_MTP */
8689 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_PIM)
8691 {*r = IPPROTO_PIM; return 0;}
8692 #else /* def IPPROTO_PIM */
8693 {errno = EINVAL; return -1;}
8694 #endif /* ndef IPPROTO_PIM */
8695 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_PUP)
8697 {*r = IPPROTO_PUP; return 0;}
8698 #else /* def IPPROTO_PUP */
8699 {errno = EINVAL; return -1;}
8700 #endif /* ndef IPPROTO_PUP */
8701 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_RAW)
8703 {*r = IPPROTO_RAW; return 0;}
8704 #else /* def IPPROTO_RAW */
8705 {errno = EINVAL; return -1;}
8706 #endif /* ndef IPPROTO_RAW */
8707 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_RSVP)
8709 {*r = IPPROTO_RSVP; return 0;}
8710 #else /* def IPPROTO_RSVP */
8711 {errno = EINVAL; return -1;}
8712 #endif /* ndef IPPROTO_RSVP */
8713 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_SCTP)
8715 {*r = IPPROTO_SCTP; return 0;}
8716 #else /* def IPPROTO_SCTP */
8717 {errno = EINVAL; return -1;}
8718 #endif /* ndef IPPROTO_SCTP */
8719 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_TCP)
8721 {*r = IPPROTO_TCP; return 0;}
8722 #else /* def IPPROTO_TCP */
8723 {errno = EINVAL; return -1;}
8724 #endif /* ndef IPPROTO_TCP */
8725 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_TP)
8727 {*r = IPPROTO_TP; return 0;}
8728 #else /* def IPPROTO_TP */
8729 {errno = EINVAL; return -1;}
8730 #endif /* ndef IPPROTO_TP */
8731 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_UDP)
8733 {*r = IPPROTO_UDP; return 0;}
8734 #else /* def IPPROTO_UDP */
8735 {errno = EINVAL; return -1;}
8736 #endif /* ndef IPPROTO_UDP */
8737 if (x == Mono_Posix_UnixSocketProtocol_IPPROTO_UDPLITE)
8738 #ifdef IPPROTO_UDPLITE
8739 {*r = IPPROTO_UDPLITE; return 0;}
8740 #else /* def IPPROTO_UDPLITE */
8741 {errno = EINVAL; return -1;}
8742 #endif /* ndef IPPROTO_UDPLITE */
8743 if (x == Mono_Posix_UnixSocketProtocol_SOL_SOCKET)
8745 {*r = SOL_SOCKET; return 0;}
8746 #else /* def SOL_SOCKET */
8747 {errno = EINVAL; return -1;}
8748 #endif /* ndef SOL_SOCKET */
8751 errno = EINVAL; return -1;
8754 int Mono_Posix_ToUnixSocketProtocol (int x, int *r)
8760 if (x == IPPROTO_AH)
8761 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_AH; return 0;}
8762 #endif /* ndef IPPROTO_AH */
8763 #ifdef IPPROTO_BEETPH
8764 if (x == IPPROTO_BEETPH)
8765 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_BEETPH; return 0;}
8766 #endif /* ndef IPPROTO_BEETPH */
8768 if (x == IPPROTO_COMP)
8769 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_COMP; return 0;}
8770 #endif /* ndef IPPROTO_COMP */
8772 if (x == IPPROTO_DCCP)
8773 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_DCCP; return 0;}
8774 #endif /* ndef IPPROTO_DCCP */
8776 if (x == IPPROTO_EGP)
8777 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_EGP; return 0;}
8778 #endif /* ndef IPPROTO_EGP */
8779 #ifdef IPPROTO_ENCAP
8780 if (x == IPPROTO_ENCAP)
8781 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_ENCAP; return 0;}
8782 #endif /* ndef IPPROTO_ENCAP */
8784 if (x == IPPROTO_ESP)
8785 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_ESP; return 0;}
8786 #endif /* ndef IPPROTO_ESP */
8788 if (x == IPPROTO_GRE)
8789 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_GRE; return 0;}
8790 #endif /* ndef IPPROTO_GRE */
8792 if (x == IPPROTO_ICMP)
8793 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_ICMP; return 0;}
8794 #endif /* ndef IPPROTO_ICMP */
8796 if (x == IPPROTO_IDP)
8797 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_IDP; return 0;}
8798 #endif /* ndef IPPROTO_IDP */
8800 if (x == IPPROTO_IGMP)
8801 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_IGMP; return 0;}
8802 #endif /* ndef IPPROTO_IGMP */
8804 if (x == IPPROTO_IP)
8805 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_IP; return 0;}
8806 #endif /* ndef IPPROTO_IP */
8808 if (x == IPPROTO_IPIP)
8809 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_IPIP; return 0;}
8810 #endif /* ndef IPPROTO_IPIP */
8812 if (x == IPPROTO_IPV6)
8813 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_IPV6; return 0;}
8814 #endif /* ndef IPPROTO_IPV6 */
8816 if (x == IPPROTO_MTP)
8817 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_MTP; return 0;}
8818 #endif /* ndef IPPROTO_MTP */
8820 if (x == IPPROTO_PIM)
8821 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_PIM; return 0;}
8822 #endif /* ndef IPPROTO_PIM */
8824 if (x == IPPROTO_PUP)
8825 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_PUP; return 0;}
8826 #endif /* ndef IPPROTO_PUP */
8828 if (x == IPPROTO_RAW)
8829 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_RAW; return 0;}
8830 #endif /* ndef IPPROTO_RAW */
8832 if (x == IPPROTO_RSVP)
8833 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_RSVP; return 0;}
8834 #endif /* ndef IPPROTO_RSVP */
8836 if (x == IPPROTO_SCTP)
8837 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_SCTP; return 0;}
8838 #endif /* ndef IPPROTO_SCTP */
8840 if (x == IPPROTO_TCP)
8841 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_TCP; return 0;}
8842 #endif /* ndef IPPROTO_TCP */
8844 if (x == IPPROTO_TP)
8845 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_TP; return 0;}
8846 #endif /* ndef IPPROTO_TP */
8848 if (x == IPPROTO_UDP)
8849 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_UDP; return 0;}
8850 #endif /* ndef IPPROTO_UDP */
8851 #ifdef IPPROTO_UDPLITE
8852 if (x == IPPROTO_UDPLITE)
8853 {*r = Mono_Posix_UnixSocketProtocol_IPPROTO_UDPLITE; return 0;}
8854 #endif /* ndef IPPROTO_UDPLITE */
8856 if (x == SOL_SOCKET)
8857 {*r = Mono_Posix_UnixSocketProtocol_SOL_SOCKET; return 0;}
8858 #endif /* ndef SOL_SOCKET */
8859 errno = EINVAL; return -1;
8862 int Mono_Posix_FromUnixSocketType (int x, int *r)
8865 if (x == Mono_Posix_UnixSocketType_SOCK_DCCP)
8867 {*r = SOCK_DCCP; return 0;}
8868 #else /* def SOCK_DCCP */
8869 {errno = EINVAL; return -1;}
8870 #endif /* ndef SOCK_DCCP */
8871 if (x == Mono_Posix_UnixSocketType_SOCK_DGRAM)
8873 {*r = SOCK_DGRAM; return 0;}
8874 #else /* def SOCK_DGRAM */
8875 {errno = EINVAL; return -1;}
8876 #endif /* ndef SOCK_DGRAM */
8877 if (x == Mono_Posix_UnixSocketType_SOCK_PACKET)
8879 {*r = SOCK_PACKET; return 0;}
8880 #else /* def SOCK_PACKET */
8881 {errno = EINVAL; return -1;}
8882 #endif /* ndef SOCK_PACKET */
8883 if (x == Mono_Posix_UnixSocketType_SOCK_RAW)
8885 {*r = SOCK_RAW; return 0;}
8886 #else /* def SOCK_RAW */
8887 {errno = EINVAL; return -1;}
8888 #endif /* ndef SOCK_RAW */
8889 if (x == Mono_Posix_UnixSocketType_SOCK_RDM)
8891 {*r = SOCK_RDM; return 0;}
8892 #else /* def SOCK_RDM */
8893 {errno = EINVAL; return -1;}
8894 #endif /* ndef SOCK_RDM */
8895 if (x == Mono_Posix_UnixSocketType_SOCK_SEQPACKET)
8896 #ifdef SOCK_SEQPACKET
8897 {*r = SOCK_SEQPACKET; return 0;}
8898 #else /* def SOCK_SEQPACKET */
8899 {errno = EINVAL; return -1;}
8900 #endif /* ndef SOCK_SEQPACKET */
8901 if (x == Mono_Posix_UnixSocketType_SOCK_STREAM)
8903 {*r = SOCK_STREAM; return 0;}
8904 #else /* def SOCK_STREAM */
8905 {errno = EINVAL; return -1;}
8906 #endif /* ndef SOCK_STREAM */
8909 errno = EINVAL; return -1;
8912 int Mono_Posix_ToUnixSocketType (int x, int *r)
8919 {*r = Mono_Posix_UnixSocketType_SOCK_DCCP; return 0;}
8920 #endif /* ndef SOCK_DCCP */
8922 if (x == SOCK_DGRAM)
8923 {*r = Mono_Posix_UnixSocketType_SOCK_DGRAM; return 0;}
8924 #endif /* ndef SOCK_DGRAM */
8926 if (x == SOCK_PACKET)
8927 {*r = Mono_Posix_UnixSocketType_SOCK_PACKET; return 0;}
8928 #endif /* ndef SOCK_PACKET */
8931 {*r = Mono_Posix_UnixSocketType_SOCK_RAW; return 0;}
8932 #endif /* ndef SOCK_RAW */
8935 {*r = Mono_Posix_UnixSocketType_SOCK_RDM; return 0;}
8936 #endif /* ndef SOCK_RDM */
8937 #ifdef SOCK_SEQPACKET
8938 if (x == SOCK_SEQPACKET)
8939 {*r = Mono_Posix_UnixSocketType_SOCK_SEQPACKET; return 0;}
8940 #endif /* ndef SOCK_SEQPACKET */
8942 if (x == SOCK_STREAM)
8943 {*r = Mono_Posix_UnixSocketType_SOCK_STREAM; return 0;}
8944 #endif /* ndef SOCK_STREAM */
8945 errno = EINVAL; return -1;
8948 #ifdef HAVE_STRUCT_UTIMBUF
8950 Mono_Posix_FromUtimbuf (struct Mono_Posix_Utimbuf *from, struct utimbuf *to)
8952 _cnm_return_val_if_overflow (time_t, from->actime, -1);
8953 _cnm_return_val_if_overflow (time_t, from->modtime, -1);
8955 memset (to, 0, sizeof(*to));
8957 to->actime = from->actime;
8958 to->modtime = from->modtime;
8962 #endif /* ndef HAVE_STRUCT_UTIMBUF */
8965 #ifdef HAVE_STRUCT_UTIMBUF
8967 Mono_Posix_ToUtimbuf (struct utimbuf *from, struct Mono_Posix_Utimbuf *to)
8969 _cnm_return_val_if_overflow (gint64, from->actime, -1);
8970 _cnm_return_val_if_overflow (gint64, from->modtime, -1);
8972 memset (to, 0, sizeof(*to));
8974 to->actime = from->actime;
8975 to->modtime = from->modtime;
8979 #endif /* ndef HAVE_STRUCT_UTIMBUF */
8982 int Mono_Posix_FromWaitOptions (int x, int *r)
8985 if ((x & Mono_Posix_WaitOptions_WNOHANG) == Mono_Posix_WaitOptions_WNOHANG)
8988 #else /* def WNOHANG */
8989 {errno = EINVAL; return -1;}
8990 #endif /* ndef WNOHANG */
8991 if ((x & Mono_Posix_WaitOptions_WUNTRACED) == Mono_Posix_WaitOptions_WUNTRACED)
8994 #else /* def WUNTRACED */
8995 {errno = EINVAL; return -1;}
8996 #endif /* ndef WUNTRACED */
9002 int Mono_Posix_ToWaitOptions (int x, int *r)
9008 if ((x & WNOHANG) == WNOHANG)
9009 *r |= Mono_Posix_WaitOptions_WNOHANG;
9010 #endif /* ndef WNOHANG */
9012 if ((x & WUNTRACED) == WUNTRACED)
9013 *r |= Mono_Posix_WaitOptions_WUNTRACED;
9014 #endif /* ndef WUNTRACED */
9018 int Mono_Posix_FromXattrFlags (int x, int *r)
9021 if ((x & Mono_Posix_XattrFlags_XATTR_AUTO) == Mono_Posix_XattrFlags_XATTR_AUTO)
9024 #else /* def XATTR_AUTO */
9025 {errno = EINVAL; return -1;}
9026 #endif /* ndef XATTR_AUTO */
9027 if ((x & Mono_Posix_XattrFlags_XATTR_CREATE) == Mono_Posix_XattrFlags_XATTR_CREATE)
9030 #else /* def XATTR_CREATE */
9031 {errno = EINVAL; return -1;}
9032 #endif /* ndef XATTR_CREATE */
9033 if ((x & Mono_Posix_XattrFlags_XATTR_REPLACE) == Mono_Posix_XattrFlags_XATTR_REPLACE)
9034 #ifdef XATTR_REPLACE
9035 *r |= XATTR_REPLACE;
9036 #else /* def XATTR_REPLACE */
9037 {errno = EINVAL; return -1;}
9038 #endif /* ndef XATTR_REPLACE */
9044 int Mono_Posix_ToXattrFlags (int x, int *r)
9050 if ((x & XATTR_AUTO) == XATTR_AUTO)
9051 *r |= Mono_Posix_XattrFlags_XATTR_AUTO;
9052 #endif /* ndef XATTR_AUTO */
9054 if ((x & XATTR_CREATE) == XATTR_CREATE)
9055 *r |= Mono_Posix_XattrFlags_XATTR_CREATE;
9056 #endif /* ndef XATTR_CREATE */
9057 #ifdef XATTR_REPLACE
9058 if ((x & XATTR_REPLACE) == XATTR_REPLACE)
9059 *r |= Mono_Posix_XattrFlags_XATTR_REPLACE;
9060 #endif /* ndef XATTR_REPLACE */