2 * This file was automatically generated by create-native-map from ../../mcs/class/lib/net_2_0/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>
31 #ifdef HAVE_SYS_POLL_H
33 #endif /* ndef HAVE_SYS_POLL_H */
34 #ifdef HAVE_SYS_WAIT_H
36 #endif /* ndef HAVE_SYS_WAIT_H */
37 #ifdef HAVE_SYS_STATVFS_H
38 #include <sys/statvfs.h>
39 #endif /* ndef HAVE_SYS_STATVFS_H */
40 #ifdef HAVE_SYS_XATTR_H
41 #include <sys/xattr.h>
42 #endif /* ndef HAVE_SYS_XATTR_H */
43 #ifdef HAVE_SYS_MMAN_H
45 #endif /* ndef HAVE_SYS_MMAN_H */
51 #endif /* ndef HAVE_POLL_H */
54 #endif /* ndef HAVE_GRP_H */
58 #endif /* ndef HAVE_SYSLOG_H */
66 #include <errno.h> /* errno, EOVERFLOW */
67 #include <glib.h> /* g* types, g_assert_not_reached() */
69 #if defined (G_MININT8)
70 #define CNM_MININT8 G_MININT8
72 #define CNM_MININT8 (-128)
75 #if defined (G_MAXINT8)
76 #define CNM_MAXINT8 G_MAXINT8
78 #define CNM_MAXINT8 (127)
81 #if defined (G_MAXUINT8)
82 #define CNM_MAXUINT8 G_MAXUINT8
84 #define CNM_MAXUINT8 (255)
87 #if defined (G_MININT16)
88 #define CNM_MININT16 G_MININT16
90 #define CNM_MININT16 (-32768)
93 #if defined (G_MAXINT16)
94 #define CNM_MAXINT16 G_MAXINT16
96 #define CNM_MAXINT16 (32767)
99 #if defined (G_MAXUINT16)
100 #define CNM_MAXUINT16 G_MAXUINT16
102 #define CNM_MAXUINT16 (65535)
105 #if defined (G_MININT32)
106 #define CNM_MININT32 G_MININT32
108 #define CNM_MININT32 (-2147483648)
111 #if defined (G_MAXINT32)
112 #define CNM_MAXINT32 G_MAXINT32
114 #define CNM_MAXINT32 (2147483647)
117 #if defined (G_MAXUINT32)
118 #define CNM_MAXUINT32 G_MAXUINT32
120 #define CNM_MAXUINT32 (4294967295U)
123 #if defined (G_MININT64)
124 #define CNM_MININT64 G_MININT64
126 #define CNM_MININT64 (-9223372036854775808LL)
129 #if defined (G_MAXINT64)
130 #define CNM_MAXINT64 G_MAXINT64
132 #define CNM_MAXINT64 (9223372036854775807LL)
135 #if defined (G_MAXUINT64)
136 #define CNM_MAXUINT64 G_MAXUINT64
138 #define CNM_MAXUINT64 (18446744073709551615ULL)
142 /* returns TRUE if @type is an unsigned type */
143 #define _cnm_integral_type_is_unsigned(type) \
144 (sizeof(type) == sizeof(gint8) \
145 ? (((type)-1) > CNM_MAXINT8) \
146 : sizeof(type) == sizeof(gint16) \
147 ? (((type)-1) > CNM_MAXINT16) \
148 : sizeof(type) == sizeof(gint32) \
149 ? (((type)-1) > CNM_MAXINT32) \
150 : sizeof(type) == sizeof(gint64) \
151 ? (((type)-1) > CNM_MAXINT64) \
152 : (g_assert_not_reached (), 0))
154 /* returns the minimum value of @type as a gint64 */
155 #define _cnm_integral_type_min(type) \
156 (_cnm_integral_type_is_unsigned (type) \
158 : sizeof(type) == sizeof(gint8) \
160 : sizeof(type) == sizeof(gint16) \
162 : sizeof(type) == sizeof(gint32) \
164 : sizeof(type) == sizeof(gint64) \
166 : (g_assert_not_reached (), 0))
168 /* returns the maximum value of @type as a guint64 */
169 #define _cnm_integral_type_max(type) \
170 (_cnm_integral_type_is_unsigned (type) \
171 ? sizeof(type) == sizeof(gint8) \
173 : sizeof(type) == sizeof(gint16) \
175 : sizeof(type) == sizeof(gint32) \
177 : sizeof(type) == sizeof(gint64) \
179 : (g_assert_not_reached (), 0) \
180 : sizeof(type) == sizeof(gint8) \
182 : sizeof(type) == sizeof(gint16) \
184 : sizeof(type) == sizeof(gint32) \
186 : sizeof(type) == sizeof(gint64) \
188 : (g_assert_not_reached (), 0))
191 #define _cnm_dump(to_t,from) \
192 printf ("# %s -> %s: uns=%i; min=%llx; max=%llx; value=%llx; lt=%i; l0=%i; gt=%i; e=%i\n", \
194 (int) _cnm_integral_type_is_unsigned (to_t), \
195 (gint64) (_cnm_integral_type_min (to_t)), \
196 (gint64) (_cnm_integral_type_max (to_t)), \
198 (((gint64) _cnm_integral_type_min (to_t)) <= (gint64) from), \
200 (((guint64) from) <= (guint64) _cnm_integral_type_max (to_t)), \
201 !((int) _cnm_integral_type_is_unsigned (to_t) \
203 ((guint64) from <= (guint64) _cnm_integral_type_max (to_t))) \
204 : ((gint64) _cnm_integral_type_min(to_t) <= (gint64) from && \
205 (guint64) from <= (guint64) _cnm_integral_type_max (to_t))) \
207 #else /* ndef _CNM_DUMP */
208 #define _cnm_dump(to_t, from) do {} while (0)
209 #endif /* def _CNM_DUMP */
212 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
213 int uns = _cnm_integral_type_is_unsigned (to_t); \
214 gint64 min = (gint64) _cnm_integral_type_min (to_t); \
215 guint64 max = (guint64) _cnm_integral_type_max (to_t); \
216 gint64 sf = (gint64) from; \
217 guint64 uf = (guint64) from; \
218 if (!(uns ? ((0 <= from) && (uf <= max)) \
219 : (min <= sf && (from < 0 || uf <= max)))) { \
220 _cnm_dump(to_t, from); \
225 #else /* !def DEBUG */
226 /* don't do any overflow checking */
227 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
229 #endif /* def DEBUG */
231 int Mono_Posix_FromAccessModes (int x, int *r)
234 if ((x & Mono_Posix_AccessModes_F_OK) == Mono_Posix_AccessModes_F_OK)
238 {errno = EINVAL; return -1;}
239 #endif /* ndef F_OK */
240 if ((x & Mono_Posix_AccessModes_R_OK) == Mono_Posix_AccessModes_R_OK)
244 {errno = EINVAL; return -1;}
245 #endif /* ndef R_OK */
246 if ((x & Mono_Posix_AccessModes_W_OK) == Mono_Posix_AccessModes_W_OK)
250 {errno = EINVAL; return -1;}
251 #endif /* ndef W_OK */
252 if ((x & Mono_Posix_AccessModes_X_OK) == Mono_Posix_AccessModes_X_OK)
256 {errno = EINVAL; return -1;}
257 #endif /* ndef X_OK */
263 int Mono_Posix_ToAccessModes (int x, int *r)
269 if ((x & F_OK) == F_OK)
270 *r |= Mono_Posix_AccessModes_F_OK;
271 #endif /* ndef F_OK */
273 if ((x & R_OK) == R_OK)
274 *r |= Mono_Posix_AccessModes_R_OK;
275 #endif /* ndef R_OK */
277 if ((x & W_OK) == W_OK)
278 *r |= Mono_Posix_AccessModes_W_OK;
279 #endif /* ndef W_OK */
281 if ((x & X_OK) == X_OK)
282 *r |= Mono_Posix_AccessModes_X_OK;
283 #endif /* ndef X_OK */
287 int Mono_Posix_FromConfstrName (int x, int *r)
290 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION)
291 #ifdef _CS_GNU_LIBC_VERSION
292 {*r = _CS_GNU_LIBC_VERSION; return 0;}
293 #else /* def _CS_GNU_LIBC_VERSION */
294 {errno = EINVAL; return -1;}
295 #endif /* ndef _CS_GNU_LIBC_VERSION */
296 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION)
297 #ifdef _CS_GNU_LIBPTHREAD_VERSION
298 {*r = _CS_GNU_LIBPTHREAD_VERSION; return 0;}
299 #else /* def _CS_GNU_LIBPTHREAD_VERSION */
300 {errno = EINVAL; return -1;}
301 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
302 if (x == Mono_Posix_ConfstrName__CS_LFS64_CFLAGS)
303 #ifdef _CS_LFS64_CFLAGS
304 {*r = _CS_LFS64_CFLAGS; return 0;}
305 #else /* def _CS_LFS64_CFLAGS */
306 {errno = EINVAL; return -1;}
307 #endif /* ndef _CS_LFS64_CFLAGS */
308 if (x == Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS)
309 #ifdef _CS_LFS64_LDFLAGS
310 {*r = _CS_LFS64_LDFLAGS; return 0;}
311 #else /* def _CS_LFS64_LDFLAGS */
312 {errno = EINVAL; return -1;}
313 #endif /* ndef _CS_LFS64_LDFLAGS */
314 if (x == Mono_Posix_ConfstrName__CS_LFS64_LIBS)
315 #ifdef _CS_LFS64_LIBS
316 {*r = _CS_LFS64_LIBS; return 0;}
317 #else /* def _CS_LFS64_LIBS */
318 {errno = EINVAL; return -1;}
319 #endif /* ndef _CS_LFS64_LIBS */
320 if (x == Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS)
321 #ifdef _CS_LFS64_LINTFLAGS
322 {*r = _CS_LFS64_LINTFLAGS; return 0;}
323 #else /* def _CS_LFS64_LINTFLAGS */
324 {errno = EINVAL; return -1;}
325 #endif /* ndef _CS_LFS64_LINTFLAGS */
326 if (x == Mono_Posix_ConfstrName__CS_LFS_CFLAGS)
327 #ifdef _CS_LFS_CFLAGS
328 {*r = _CS_LFS_CFLAGS; return 0;}
329 #else /* def _CS_LFS_CFLAGS */
330 {errno = EINVAL; return -1;}
331 #endif /* ndef _CS_LFS_CFLAGS */
332 if (x == Mono_Posix_ConfstrName__CS_LFS_LDFLAGS)
333 #ifdef _CS_LFS_LDFLAGS
334 {*r = _CS_LFS_LDFLAGS; return 0;}
335 #else /* def _CS_LFS_LDFLAGS */
336 {errno = EINVAL; return -1;}
337 #endif /* ndef _CS_LFS_LDFLAGS */
338 if (x == Mono_Posix_ConfstrName__CS_LFS_LIBS)
340 {*r = _CS_LFS_LIBS; return 0;}
341 #else /* def _CS_LFS_LIBS */
342 {errno = EINVAL; return -1;}
343 #endif /* ndef _CS_LFS_LIBS */
344 if (x == Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS)
345 #ifdef _CS_LFS_LINTFLAGS
346 {*r = _CS_LFS_LINTFLAGS; return 0;}
347 #else /* def _CS_LFS_LINTFLAGS */
348 {errno = EINVAL; return -1;}
349 #endif /* ndef _CS_LFS_LINTFLAGS */
350 if (x == Mono_Posix_ConfstrName__CS_PATH)
352 {*r = _CS_PATH; return 0;}
353 #else /* def _CS_PATH */
354 {errno = EINVAL; return -1;}
355 #endif /* ndef _CS_PATH */
356 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS)
357 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
358 {*r = _CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
359 #else /* def _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
360 {errno = EINVAL; return -1;}
361 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
362 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
363 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
364 {*r = _CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
365 #else /* def _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
366 {errno = EINVAL; return -1;}
367 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
368 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS)
369 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
370 {*r = _CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
371 #else /* def _CS_POSIX_V6_ILP32_OFF32_LIBS */
372 {errno = EINVAL; return -1;}
373 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
374 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
375 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
376 {*r = _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
377 #else /* def _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
378 {errno = EINVAL; return -1;}
379 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
380 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
381 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
382 {*r = _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
383 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
384 {errno = EINVAL; return -1;}
385 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
386 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
387 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
388 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
389 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
390 {errno = EINVAL; return -1;}
391 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
392 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS)
393 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
394 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
395 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
396 {errno = EINVAL; return -1;}
397 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
398 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
399 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
400 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
401 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
402 {errno = EINVAL; return -1;}
403 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
404 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS)
405 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
406 {*r = _CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
407 #else /* def _CS_POSIX_V6_LP64_OFF64_CFLAGS */
408 {errno = EINVAL; return -1;}
409 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
410 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS)
411 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
412 {*r = _CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
413 #else /* def _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
414 {errno = EINVAL; return -1;}
415 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
416 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS)
417 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
418 {*r = _CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
419 #else /* def _CS_POSIX_V6_LP64_OFF64_LIBS */
420 {errno = EINVAL; return -1;}
421 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
422 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
423 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
424 {*r = _CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
425 #else /* def _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
426 {errno = EINVAL; return -1;}
427 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
428 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
429 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
430 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
431 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
432 {errno = EINVAL; return -1;}
433 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
434 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
435 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
436 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
437 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
438 {errno = EINVAL; return -1;}
439 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
440 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
441 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
442 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
443 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
444 {errno = EINVAL; return -1;}
445 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
446 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
447 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
448 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
449 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
450 {errno = EINVAL; return -1;}
451 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
452 if (x == Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS)
453 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
454 {*r = _CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
455 #else /* def _CS_V6_WIDTH_RESTRICTED_ENVS */
456 {errno = EINVAL; return -1;}
457 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
458 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS)
459 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
460 {*r = _CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
461 #else /* def _CS_XBS5_ILP32_OFF32_CFLAGS */
462 {errno = EINVAL; return -1;}
463 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
464 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS)
465 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
466 {*r = _CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
467 #else /* def _CS_XBS5_ILP32_OFF32_LDFLAGS */
468 {errno = EINVAL; return -1;}
469 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
470 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS)
471 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
472 {*r = _CS_XBS5_ILP32_OFF32_LIBS; return 0;}
473 #else /* def _CS_XBS5_ILP32_OFF32_LIBS */
474 {errno = EINVAL; return -1;}
475 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
476 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS)
477 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
478 {*r = _CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
479 #else /* def _CS_XBS5_ILP32_OFF32_LINTFLAGS */
480 {errno = EINVAL; return -1;}
481 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
482 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS)
483 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
484 {*r = _CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
485 #else /* def _CS_XBS5_ILP32_OFFBIG_CFLAGS */
486 {errno = EINVAL; return -1;}
487 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
488 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS)
489 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
490 {*r = _CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
491 #else /* def _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
492 {errno = EINVAL; return -1;}
493 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
494 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS)
495 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
496 {*r = _CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
497 #else /* def _CS_XBS5_ILP32_OFFBIG_LIBS */
498 {errno = EINVAL; return -1;}
499 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
500 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
501 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
502 {*r = _CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
503 #else /* def _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
504 {errno = EINVAL; return -1;}
505 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
506 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS)
507 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
508 {*r = _CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
509 #else /* def _CS_XBS5_LP64_OFF64_CFLAGS */
510 {errno = EINVAL; return -1;}
511 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
512 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS)
513 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
514 {*r = _CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
515 #else /* def _CS_XBS5_LP64_OFF64_LDFLAGS */
516 {errno = EINVAL; return -1;}
517 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
518 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS)
519 #ifdef _CS_XBS5_LP64_OFF64_LIBS
520 {*r = _CS_XBS5_LP64_OFF64_LIBS; return 0;}
521 #else /* def _CS_XBS5_LP64_OFF64_LIBS */
522 {errno = EINVAL; return -1;}
523 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
524 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS)
525 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
526 {*r = _CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
527 #else /* def _CS_XBS5_LP64_OFF64_LINTFLAGS */
528 {errno = EINVAL; return -1;}
529 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
530 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS)
531 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
532 {*r = _CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
533 #else /* def _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
534 {errno = EINVAL; return -1;}
535 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
536 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
537 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
538 {*r = _CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
539 #else /* def _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
540 {errno = EINVAL; return -1;}
541 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
542 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS)
543 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
544 {*r = _CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
545 #else /* def _CS_XBS5_LPBIG_OFFBIG_LIBS */
546 {errno = EINVAL; return -1;}
547 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
548 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
549 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
550 {*r = _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
551 #else /* def _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
552 {errno = EINVAL; return -1;}
553 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
556 errno = EINVAL; return -1;
559 int Mono_Posix_ToConfstrName (int x, int *r)
564 #ifdef _CS_GNU_LIBC_VERSION
565 if (x == _CS_GNU_LIBC_VERSION)
566 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION; return 0;}
567 #endif /* ndef _CS_GNU_LIBC_VERSION */
568 #ifdef _CS_GNU_LIBPTHREAD_VERSION
569 if (x == _CS_GNU_LIBPTHREAD_VERSION)
570 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION; return 0;}
571 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
572 #ifdef _CS_LFS64_CFLAGS
573 if (x == _CS_LFS64_CFLAGS)
574 {*r = Mono_Posix_ConfstrName__CS_LFS64_CFLAGS; return 0;}
575 #endif /* ndef _CS_LFS64_CFLAGS */
576 #ifdef _CS_LFS64_LDFLAGS
577 if (x == _CS_LFS64_LDFLAGS)
578 {*r = Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS; return 0;}
579 #endif /* ndef _CS_LFS64_LDFLAGS */
580 #ifdef _CS_LFS64_LIBS
581 if (x == _CS_LFS64_LIBS)
582 {*r = Mono_Posix_ConfstrName__CS_LFS64_LIBS; return 0;}
583 #endif /* ndef _CS_LFS64_LIBS */
584 #ifdef _CS_LFS64_LINTFLAGS
585 if (x == _CS_LFS64_LINTFLAGS)
586 {*r = Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS; return 0;}
587 #endif /* ndef _CS_LFS64_LINTFLAGS */
588 #ifdef _CS_LFS_CFLAGS
589 if (x == _CS_LFS_CFLAGS)
590 {*r = Mono_Posix_ConfstrName__CS_LFS_CFLAGS; return 0;}
591 #endif /* ndef _CS_LFS_CFLAGS */
592 #ifdef _CS_LFS_LDFLAGS
593 if (x == _CS_LFS_LDFLAGS)
594 {*r = Mono_Posix_ConfstrName__CS_LFS_LDFLAGS; return 0;}
595 #endif /* ndef _CS_LFS_LDFLAGS */
597 if (x == _CS_LFS_LIBS)
598 {*r = Mono_Posix_ConfstrName__CS_LFS_LIBS; return 0;}
599 #endif /* ndef _CS_LFS_LIBS */
600 #ifdef _CS_LFS_LINTFLAGS
601 if (x == _CS_LFS_LINTFLAGS)
602 {*r = Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS; return 0;}
603 #endif /* ndef _CS_LFS_LINTFLAGS */
606 {*r = Mono_Posix_ConfstrName__CS_PATH; return 0;}
607 #endif /* ndef _CS_PATH */
608 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
609 if (x == _CS_POSIX_V6_ILP32_OFF32_CFLAGS)
610 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
611 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
612 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
613 if (x == _CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
614 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
615 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
616 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
617 if (x == _CS_POSIX_V6_ILP32_OFF32_LIBS)
618 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
619 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
620 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
621 if (x == _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
622 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
623 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
624 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
625 if (x == _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
626 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
627 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
628 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
629 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
630 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
631 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
632 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
633 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LIBS)
634 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
635 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
636 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
637 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
638 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
639 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
640 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
641 if (x == _CS_POSIX_V6_LP64_OFF64_CFLAGS)
642 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
643 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
644 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
645 if (x == _CS_POSIX_V6_LP64_OFF64_LDFLAGS)
646 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
647 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
648 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
649 if (x == _CS_POSIX_V6_LP64_OFF64_LIBS)
650 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
651 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
652 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
653 if (x == _CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
654 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
655 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
656 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
657 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
658 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
659 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
660 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
661 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
662 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
663 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
664 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
665 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
666 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
667 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
668 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
669 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
670 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
671 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
672 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
673 if (x == _CS_V6_WIDTH_RESTRICTED_ENVS)
674 {*r = Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
675 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
676 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
677 if (x == _CS_XBS5_ILP32_OFF32_CFLAGS)
678 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
679 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
680 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
681 if (x == _CS_XBS5_ILP32_OFF32_LDFLAGS)
682 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
683 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
684 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
685 if (x == _CS_XBS5_ILP32_OFF32_LIBS)
686 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS; return 0;}
687 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
688 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
689 if (x == _CS_XBS5_ILP32_OFF32_LINTFLAGS)
690 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
691 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
692 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
693 if (x == _CS_XBS5_ILP32_OFFBIG_CFLAGS)
694 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
695 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
696 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
697 if (x == _CS_XBS5_ILP32_OFFBIG_LDFLAGS)
698 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
699 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
700 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
701 if (x == _CS_XBS5_ILP32_OFFBIG_LIBS)
702 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
703 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
704 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
705 if (x == _CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
706 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
707 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
708 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
709 if (x == _CS_XBS5_LP64_OFF64_CFLAGS)
710 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
711 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
712 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
713 if (x == _CS_XBS5_LP64_OFF64_LDFLAGS)
714 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
715 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
716 #ifdef _CS_XBS5_LP64_OFF64_LIBS
717 if (x == _CS_XBS5_LP64_OFF64_LIBS)
718 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS; return 0;}
719 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
720 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
721 if (x == _CS_XBS5_LP64_OFF64_LINTFLAGS)
722 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
723 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
724 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
725 if (x == _CS_XBS5_LPBIG_OFFBIG_CFLAGS)
726 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
727 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
728 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
729 if (x == _CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
730 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
731 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
732 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
733 if (x == _CS_XBS5_LPBIG_OFFBIG_LIBS)
734 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
735 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
736 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
737 if (x == _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
738 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
739 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
740 errno = EINVAL; return -1;
743 int Mono_Posix_FromDirectoryNotifyFlags (int x, int *r)
746 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ACCESS) == Mono_Posix_DirectoryNotifyFlags_DN_ACCESS)
749 #else /* def DN_ACCESS */
750 {errno = EINVAL; return -1;}
751 #endif /* ndef DN_ACCESS */
752 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB) == Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB)
755 #else /* def DN_ATTRIB */
756 {errno = EINVAL; return -1;}
757 #endif /* ndef DN_ATTRIB */
758 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_CREATE) == Mono_Posix_DirectoryNotifyFlags_DN_CREATE)
761 #else /* def DN_CREATE */
762 {errno = EINVAL; return -1;}
763 #endif /* ndef DN_CREATE */
764 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_DELETE) == Mono_Posix_DirectoryNotifyFlags_DN_DELETE)
767 #else /* def DN_DELETE */
768 {errno = EINVAL; return -1;}
769 #endif /* ndef DN_DELETE */
770 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MODIFY) == Mono_Posix_DirectoryNotifyFlags_DN_MODIFY)
773 #else /* def DN_MODIFY */
774 {errno = EINVAL; return -1;}
775 #endif /* ndef DN_MODIFY */
776 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT) == Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT)
779 #else /* def DN_MULTISHOT */
780 {errno = EINVAL; return -1;}
781 #endif /* ndef DN_MULTISHOT */
782 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_RENAME) == Mono_Posix_DirectoryNotifyFlags_DN_RENAME)
785 #else /* def DN_RENAME */
786 {errno = EINVAL; return -1;}
787 #endif /* ndef DN_RENAME */
793 int Mono_Posix_ToDirectoryNotifyFlags (int x, int *r)
799 if ((x & DN_ACCESS) == DN_ACCESS)
800 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ACCESS;
801 #endif /* ndef DN_ACCESS */
803 if ((x & DN_ATTRIB) == DN_ATTRIB)
804 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB;
805 #endif /* ndef DN_ATTRIB */
807 if ((x & DN_CREATE) == DN_CREATE)
808 *r |= Mono_Posix_DirectoryNotifyFlags_DN_CREATE;
809 #endif /* ndef DN_CREATE */
811 if ((x & DN_DELETE) == DN_DELETE)
812 *r |= Mono_Posix_DirectoryNotifyFlags_DN_DELETE;
813 #endif /* ndef DN_DELETE */
815 if ((x & DN_MODIFY) == DN_MODIFY)
816 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MODIFY;
817 #endif /* ndef DN_MODIFY */
819 if ((x & DN_MULTISHOT) == DN_MULTISHOT)
820 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT;
821 #endif /* ndef DN_MULTISHOT */
823 if ((x & DN_RENAME) == DN_RENAME)
824 *r |= Mono_Posix_DirectoryNotifyFlags_DN_RENAME;
825 #endif /* ndef DN_RENAME */
829 int Mono_Posix_FromErrno (int x, int *r)
832 if (x == Mono_Posix_Errno_E2BIG)
834 {*r = E2BIG; return 0;}
835 #else /* def E2BIG */
836 {errno = EINVAL; return -1;}
837 #endif /* ndef E2BIG */
838 if (x == Mono_Posix_Errno_EACCES)
840 {*r = EACCES; return 0;}
841 #else /* def EACCES */
842 {errno = EINVAL; return -1;}
843 #endif /* ndef EACCES */
844 if (x == Mono_Posix_Errno_EADDRINUSE)
846 {*r = EADDRINUSE; return 0;}
847 #else /* def EADDRINUSE */
848 {errno = EINVAL; return -1;}
849 #endif /* ndef EADDRINUSE */
850 if (x == Mono_Posix_Errno_EADDRNOTAVAIL)
852 {*r = EADDRNOTAVAIL; return 0;}
853 #else /* def EADDRNOTAVAIL */
854 {errno = EINVAL; return -1;}
855 #endif /* ndef EADDRNOTAVAIL */
856 if (x == Mono_Posix_Errno_EADV)
858 {*r = EADV; return 0;}
860 {errno = EINVAL; return -1;}
861 #endif /* ndef EADV */
862 if (x == Mono_Posix_Errno_EAFNOSUPPORT)
864 {*r = EAFNOSUPPORT; return 0;}
865 #else /* def EAFNOSUPPORT */
866 {errno = EINVAL; return -1;}
867 #endif /* ndef EAFNOSUPPORT */
868 if (x == Mono_Posix_Errno_EAGAIN)
870 {*r = EAGAIN; return 0;}
871 #else /* def EAGAIN */
872 {errno = EINVAL; return -1;}
873 #endif /* ndef EAGAIN */
874 if (x == Mono_Posix_Errno_EALREADY)
876 {*r = EALREADY; return 0;}
877 #else /* def EALREADY */
878 {errno = EINVAL; return -1;}
879 #endif /* ndef EALREADY */
880 if (x == Mono_Posix_Errno_EBADE)
882 {*r = EBADE; return 0;}
883 #else /* def EBADE */
884 {errno = EINVAL; return -1;}
885 #endif /* ndef EBADE */
886 if (x == Mono_Posix_Errno_EBADF)
888 {*r = EBADF; return 0;}
889 #else /* def EBADF */
890 {errno = EINVAL; return -1;}
891 #endif /* ndef EBADF */
892 if (x == Mono_Posix_Errno_EBADFD)
894 {*r = EBADFD; return 0;}
895 #else /* def EBADFD */
896 {errno = EINVAL; return -1;}
897 #endif /* ndef EBADFD */
898 if (x == Mono_Posix_Errno_EBADMSG)
900 {*r = EBADMSG; return 0;}
901 #else /* def EBADMSG */
902 {errno = EINVAL; return -1;}
903 #endif /* ndef EBADMSG */
904 if (x == Mono_Posix_Errno_EBADR)
906 {*r = EBADR; return 0;}
907 #else /* def EBADR */
908 {errno = EINVAL; return -1;}
909 #endif /* ndef EBADR */
910 if (x == Mono_Posix_Errno_EBADRQC)
912 {*r = EBADRQC; return 0;}
913 #else /* def EBADRQC */
914 {errno = EINVAL; return -1;}
915 #endif /* ndef EBADRQC */
916 if (x == Mono_Posix_Errno_EBADSLT)
918 {*r = EBADSLT; return 0;}
919 #else /* def EBADSLT */
920 {errno = EINVAL; return -1;}
921 #endif /* ndef EBADSLT */
922 if (x == Mono_Posix_Errno_EBFONT)
924 {*r = EBFONT; return 0;}
925 #else /* def EBFONT */
926 {errno = EINVAL; return -1;}
927 #endif /* ndef EBFONT */
928 if (x == Mono_Posix_Errno_EBUSY)
930 {*r = EBUSY; return 0;}
931 #else /* def EBUSY */
932 {errno = EINVAL; return -1;}
933 #endif /* ndef EBUSY */
934 if (x == Mono_Posix_Errno_ECHILD)
936 {*r = ECHILD; return 0;}
937 #else /* def ECHILD */
938 {errno = EINVAL; return -1;}
939 #endif /* ndef ECHILD */
940 if (x == Mono_Posix_Errno_ECHRNG)
942 {*r = ECHRNG; return 0;}
943 #else /* def ECHRNG */
944 {errno = EINVAL; return -1;}
945 #endif /* ndef ECHRNG */
946 if (x == Mono_Posix_Errno_ECOMM)
948 {*r = ECOMM; return 0;}
949 #else /* def ECOMM */
950 {errno = EINVAL; return -1;}
951 #endif /* ndef ECOMM */
952 if (x == Mono_Posix_Errno_ECONNABORTED)
954 {*r = ECONNABORTED; return 0;}
955 #else /* def ECONNABORTED */
956 {errno = EINVAL; return -1;}
957 #endif /* ndef ECONNABORTED */
958 if (x == Mono_Posix_Errno_ECONNREFUSED)
960 {*r = ECONNREFUSED; return 0;}
961 #else /* def ECONNREFUSED */
962 {errno = EINVAL; return -1;}
963 #endif /* ndef ECONNREFUSED */
964 if (x == Mono_Posix_Errno_ECONNRESET)
966 {*r = ECONNRESET; return 0;}
967 #else /* def ECONNRESET */
968 {errno = EINVAL; return -1;}
969 #endif /* ndef ECONNRESET */
970 if (x == Mono_Posix_Errno_EDEADLK)
972 {*r = EDEADLK; return 0;}
973 #else /* def EDEADLK */
974 {errno = EINVAL; return -1;}
975 #endif /* ndef EDEADLK */
976 if (x == Mono_Posix_Errno_EDEADLOCK)
978 {*r = EDEADLOCK; return 0;}
979 #else /* def EDEADLOCK */
980 {errno = EINVAL; return -1;}
981 #endif /* ndef EDEADLOCK */
982 if (x == Mono_Posix_Errno_EDESTADDRREQ)
984 {*r = EDESTADDRREQ; return 0;}
985 #else /* def EDESTADDRREQ */
986 {errno = EINVAL; return -1;}
987 #endif /* ndef EDESTADDRREQ */
988 if (x == Mono_Posix_Errno_EDOM)
990 {*r = EDOM; return 0;}
992 {errno = EINVAL; return -1;}
993 #endif /* ndef EDOM */
994 if (x == Mono_Posix_Errno_EDOTDOT)
996 {*r = EDOTDOT; return 0;}
997 #else /* def EDOTDOT */
998 {errno = EINVAL; return -1;}
999 #endif /* ndef EDOTDOT */
1000 if (x == Mono_Posix_Errno_EDQUOT)
1002 {*r = EDQUOT; return 0;}
1003 #else /* def EDQUOT */
1004 {errno = EINVAL; return -1;}
1005 #endif /* ndef EDQUOT */
1006 if (x == Mono_Posix_Errno_EEXIST)
1008 {*r = EEXIST; return 0;}
1009 #else /* def EEXIST */
1010 {errno = EINVAL; return -1;}
1011 #endif /* ndef EEXIST */
1012 if (x == Mono_Posix_Errno_EFAULT)
1014 {*r = EFAULT; return 0;}
1015 #else /* def EFAULT */
1016 {errno = EINVAL; return -1;}
1017 #endif /* ndef EFAULT */
1018 if (x == Mono_Posix_Errno_EFBIG)
1020 {*r = EFBIG; return 0;}
1021 #else /* def EFBIG */
1022 {errno = EINVAL; return -1;}
1023 #endif /* ndef EFBIG */
1024 if (x == Mono_Posix_Errno_EHOSTDOWN)
1026 {*r = EHOSTDOWN; return 0;}
1027 #else /* def EHOSTDOWN */
1028 {errno = EINVAL; return -1;}
1029 #endif /* ndef EHOSTDOWN */
1030 if (x == Mono_Posix_Errno_EHOSTUNREACH)
1032 {*r = EHOSTUNREACH; return 0;}
1033 #else /* def EHOSTUNREACH */
1034 {errno = EINVAL; return -1;}
1035 #endif /* ndef EHOSTUNREACH */
1036 if (x == Mono_Posix_Errno_EIDRM)
1038 {*r = EIDRM; return 0;}
1039 #else /* def EIDRM */
1040 {errno = EINVAL; return -1;}
1041 #endif /* ndef EIDRM */
1042 if (x == Mono_Posix_Errno_EILSEQ)
1044 {*r = EILSEQ; return 0;}
1045 #else /* def EILSEQ */
1046 {errno = EINVAL; return -1;}
1047 #endif /* ndef EILSEQ */
1048 if (x == Mono_Posix_Errno_EINPROGRESS)
1050 {*r = EINPROGRESS; return 0;}
1051 #else /* def EINPROGRESS */
1052 {errno = EINVAL; return -1;}
1053 #endif /* ndef EINPROGRESS */
1054 if (x == Mono_Posix_Errno_EINTR)
1056 {*r = EINTR; return 0;}
1057 #else /* def EINTR */
1058 {errno = EINVAL; return -1;}
1059 #endif /* ndef EINTR */
1060 if (x == Mono_Posix_Errno_EINVAL)
1062 {*r = EINVAL; return 0;}
1063 #else /* def EINVAL */
1064 {errno = EINVAL; return -1;}
1065 #endif /* ndef EINVAL */
1066 if (x == Mono_Posix_Errno_EIO)
1068 {*r = EIO; return 0;}
1070 {errno = EINVAL; return -1;}
1071 #endif /* ndef EIO */
1072 if (x == Mono_Posix_Errno_EISCONN)
1074 {*r = EISCONN; return 0;}
1075 #else /* def EISCONN */
1076 {errno = EINVAL; return -1;}
1077 #endif /* ndef EISCONN */
1078 if (x == Mono_Posix_Errno_EISDIR)
1080 {*r = EISDIR; return 0;}
1081 #else /* def EISDIR */
1082 {errno = EINVAL; return -1;}
1083 #endif /* ndef EISDIR */
1084 if (x == Mono_Posix_Errno_EISNAM)
1086 {*r = EISNAM; return 0;}
1087 #else /* def EISNAM */
1088 {errno = EINVAL; return -1;}
1089 #endif /* ndef EISNAM */
1090 if (x == Mono_Posix_Errno_EL2HLT)
1092 {*r = EL2HLT; return 0;}
1093 #else /* def EL2HLT */
1094 {errno = EINVAL; return -1;}
1095 #endif /* ndef EL2HLT */
1096 if (x == Mono_Posix_Errno_EL2NSYNC)
1098 {*r = EL2NSYNC; return 0;}
1099 #else /* def EL2NSYNC */
1100 {errno = EINVAL; return -1;}
1101 #endif /* ndef EL2NSYNC */
1102 if (x == Mono_Posix_Errno_EL3HLT)
1104 {*r = EL3HLT; return 0;}
1105 #else /* def EL3HLT */
1106 {errno = EINVAL; return -1;}
1107 #endif /* ndef EL3HLT */
1108 if (x == Mono_Posix_Errno_EL3RST)
1110 {*r = EL3RST; return 0;}
1111 #else /* def EL3RST */
1112 {errno = EINVAL; return -1;}
1113 #endif /* ndef EL3RST */
1114 if (x == Mono_Posix_Errno_ELIBACC)
1116 {*r = ELIBACC; return 0;}
1117 #else /* def ELIBACC */
1118 {errno = EINVAL; return -1;}
1119 #endif /* ndef ELIBACC */
1120 if (x == Mono_Posix_Errno_ELIBBAD)
1122 {*r = ELIBBAD; return 0;}
1123 #else /* def ELIBBAD */
1124 {errno = EINVAL; return -1;}
1125 #endif /* ndef ELIBBAD */
1126 if (x == Mono_Posix_Errno_ELIBEXEC)
1128 {*r = ELIBEXEC; return 0;}
1129 #else /* def ELIBEXEC */
1130 {errno = EINVAL; return -1;}
1131 #endif /* ndef ELIBEXEC */
1132 if (x == Mono_Posix_Errno_ELIBMAX)
1134 {*r = ELIBMAX; return 0;}
1135 #else /* def ELIBMAX */
1136 {errno = EINVAL; return -1;}
1137 #endif /* ndef ELIBMAX */
1138 if (x == Mono_Posix_Errno_ELIBSCN)
1140 {*r = ELIBSCN; return 0;}
1141 #else /* def ELIBSCN */
1142 {errno = EINVAL; return -1;}
1143 #endif /* ndef ELIBSCN */
1144 if (x == Mono_Posix_Errno_ELNRNG)
1146 {*r = ELNRNG; return 0;}
1147 #else /* def ELNRNG */
1148 {errno = EINVAL; return -1;}
1149 #endif /* ndef ELNRNG */
1150 if (x == Mono_Posix_Errno_ELOOP)
1152 {*r = ELOOP; return 0;}
1153 #else /* def ELOOP */
1154 {errno = EINVAL; return -1;}
1155 #endif /* ndef ELOOP */
1156 if (x == Mono_Posix_Errno_EMEDIUMTYPE)
1158 {*r = EMEDIUMTYPE; return 0;}
1159 #else /* def EMEDIUMTYPE */
1160 {errno = EINVAL; return -1;}
1161 #endif /* ndef EMEDIUMTYPE */
1162 if (x == Mono_Posix_Errno_EMFILE)
1164 {*r = EMFILE; return 0;}
1165 #else /* def EMFILE */
1166 {errno = EINVAL; return -1;}
1167 #endif /* ndef EMFILE */
1168 if (x == Mono_Posix_Errno_EMLINK)
1170 {*r = EMLINK; return 0;}
1171 #else /* def EMLINK */
1172 {errno = EINVAL; return -1;}
1173 #endif /* ndef EMLINK */
1174 if (x == Mono_Posix_Errno_EMSGSIZE)
1176 {*r = EMSGSIZE; return 0;}
1177 #else /* def EMSGSIZE */
1178 {errno = EINVAL; return -1;}
1179 #endif /* ndef EMSGSIZE */
1180 if (x == Mono_Posix_Errno_EMULTIHOP)
1182 {*r = EMULTIHOP; return 0;}
1183 #else /* def EMULTIHOP */
1184 {errno = EINVAL; return -1;}
1185 #endif /* ndef EMULTIHOP */
1186 if (x == Mono_Posix_Errno_ENAMETOOLONG)
1188 {*r = ENAMETOOLONG; return 0;}
1189 #else /* def ENAMETOOLONG */
1190 {errno = EINVAL; return -1;}
1191 #endif /* ndef ENAMETOOLONG */
1192 if (x == Mono_Posix_Errno_ENAVAIL)
1194 {*r = ENAVAIL; return 0;}
1195 #else /* def ENAVAIL */
1196 {errno = EINVAL; return -1;}
1197 #endif /* ndef ENAVAIL */
1198 if (x == Mono_Posix_Errno_ENETDOWN)
1200 {*r = ENETDOWN; return 0;}
1201 #else /* def ENETDOWN */
1202 {errno = EINVAL; return -1;}
1203 #endif /* ndef ENETDOWN */
1204 if (x == Mono_Posix_Errno_ENETRESET)
1206 {*r = ENETRESET; return 0;}
1207 #else /* def ENETRESET */
1208 {errno = EINVAL; return -1;}
1209 #endif /* ndef ENETRESET */
1210 if (x == Mono_Posix_Errno_ENETUNREACH)
1212 {*r = ENETUNREACH; return 0;}
1213 #else /* def ENETUNREACH */
1214 {errno = EINVAL; return -1;}
1215 #endif /* ndef ENETUNREACH */
1216 if (x == Mono_Posix_Errno_ENFILE)
1218 {*r = ENFILE; return 0;}
1219 #else /* def ENFILE */
1220 {errno = EINVAL; return -1;}
1221 #endif /* ndef ENFILE */
1222 if (x == Mono_Posix_Errno_ENOANO)
1224 {*r = ENOANO; return 0;}
1225 #else /* def ENOANO */
1226 {errno = EINVAL; return -1;}
1227 #endif /* ndef ENOANO */
1228 if (x == Mono_Posix_Errno_ENOBUFS)
1230 {*r = ENOBUFS; return 0;}
1231 #else /* def ENOBUFS */
1232 {errno = EINVAL; return -1;}
1233 #endif /* ndef ENOBUFS */
1234 if (x == Mono_Posix_Errno_ENOCSI)
1236 {*r = ENOCSI; return 0;}
1237 #else /* def ENOCSI */
1238 {errno = EINVAL; return -1;}
1239 #endif /* ndef ENOCSI */
1240 if (x == Mono_Posix_Errno_ENODATA)
1242 {*r = ENODATA; return 0;}
1243 #else /* def ENODATA */
1244 {errno = EINVAL; return -1;}
1245 #endif /* ndef ENODATA */
1246 if (x == Mono_Posix_Errno_ENODEV)
1248 {*r = ENODEV; return 0;}
1249 #else /* def ENODEV */
1250 {errno = EINVAL; return -1;}
1251 #endif /* ndef ENODEV */
1252 if (x == Mono_Posix_Errno_ENOENT)
1254 {*r = ENOENT; return 0;}
1255 #else /* def ENOENT */
1256 {errno = EINVAL; return -1;}
1257 #endif /* ndef ENOENT */
1258 if (x == Mono_Posix_Errno_ENOEXEC)
1260 {*r = ENOEXEC; return 0;}
1261 #else /* def ENOEXEC */
1262 {errno = EINVAL; return -1;}
1263 #endif /* ndef ENOEXEC */
1264 if (x == Mono_Posix_Errno_ENOLCK)
1266 {*r = ENOLCK; return 0;}
1267 #else /* def ENOLCK */
1268 {errno = EINVAL; return -1;}
1269 #endif /* ndef ENOLCK */
1270 if (x == Mono_Posix_Errno_ENOLINK)
1272 {*r = ENOLINK; return 0;}
1273 #else /* def ENOLINK */
1274 {errno = EINVAL; return -1;}
1275 #endif /* ndef ENOLINK */
1276 if (x == Mono_Posix_Errno_ENOMEDIUM)
1278 {*r = ENOMEDIUM; return 0;}
1279 #else /* def ENOMEDIUM */
1280 {errno = EINVAL; return -1;}
1281 #endif /* ndef ENOMEDIUM */
1282 if (x == Mono_Posix_Errno_ENOMEM)
1284 {*r = ENOMEM; return 0;}
1285 #else /* def ENOMEM */
1286 {errno = EINVAL; return -1;}
1287 #endif /* ndef ENOMEM */
1288 if (x == Mono_Posix_Errno_ENOMSG)
1290 {*r = ENOMSG; return 0;}
1291 #else /* def ENOMSG */
1292 {errno = EINVAL; return -1;}
1293 #endif /* ndef ENOMSG */
1294 if (x == Mono_Posix_Errno_ENONET)
1296 {*r = ENONET; return 0;}
1297 #else /* def ENONET */
1298 {errno = EINVAL; return -1;}
1299 #endif /* ndef ENONET */
1300 if (x == Mono_Posix_Errno_ENOPKG)
1302 {*r = ENOPKG; return 0;}
1303 #else /* def ENOPKG */
1304 {errno = EINVAL; return -1;}
1305 #endif /* ndef ENOPKG */
1306 if (x == Mono_Posix_Errno_ENOPROTOOPT)
1308 {*r = ENOPROTOOPT; return 0;}
1309 #else /* def ENOPROTOOPT */
1310 {errno = EINVAL; return -1;}
1311 #endif /* ndef ENOPROTOOPT */
1312 if (x == Mono_Posix_Errno_ENOSPC)
1314 {*r = ENOSPC; return 0;}
1315 #else /* def ENOSPC */
1316 {errno = EINVAL; return -1;}
1317 #endif /* ndef ENOSPC */
1318 if (x == Mono_Posix_Errno_ENOSR)
1320 {*r = ENOSR; return 0;}
1321 #else /* def ENOSR */
1322 {errno = EINVAL; return -1;}
1323 #endif /* ndef ENOSR */
1324 if (x == Mono_Posix_Errno_ENOSTR)
1326 {*r = ENOSTR; return 0;}
1327 #else /* def ENOSTR */
1328 {errno = EINVAL; return -1;}
1329 #endif /* ndef ENOSTR */
1330 if (x == Mono_Posix_Errno_ENOSYS)
1332 {*r = ENOSYS; return 0;}
1333 #else /* def ENOSYS */
1334 {errno = EINVAL; return -1;}
1335 #endif /* ndef ENOSYS */
1336 if (x == Mono_Posix_Errno_ENOTBLK)
1338 {*r = ENOTBLK; return 0;}
1339 #else /* def ENOTBLK */
1340 {errno = EINVAL; return -1;}
1341 #endif /* ndef ENOTBLK */
1342 if (x == Mono_Posix_Errno_ENOTCONN)
1344 {*r = ENOTCONN; return 0;}
1345 #else /* def ENOTCONN */
1346 {errno = EINVAL; return -1;}
1347 #endif /* ndef ENOTCONN */
1348 if (x == Mono_Posix_Errno_ENOTDIR)
1350 {*r = ENOTDIR; return 0;}
1351 #else /* def ENOTDIR */
1352 {errno = EINVAL; return -1;}
1353 #endif /* ndef ENOTDIR */
1354 if (x == Mono_Posix_Errno_ENOTEMPTY)
1356 {*r = ENOTEMPTY; return 0;}
1357 #else /* def ENOTEMPTY */
1358 {errno = EINVAL; return -1;}
1359 #endif /* ndef ENOTEMPTY */
1360 if (x == Mono_Posix_Errno_ENOTNAM)
1362 {*r = ENOTNAM; return 0;}
1363 #else /* def ENOTNAM */
1364 {errno = EINVAL; return -1;}
1365 #endif /* ndef ENOTNAM */
1366 if (x == Mono_Posix_Errno_ENOTSOCK)
1368 {*r = ENOTSOCK; return 0;}
1369 #else /* def ENOTSOCK */
1370 {errno = EINVAL; return -1;}
1371 #endif /* ndef ENOTSOCK */
1372 if (x == Mono_Posix_Errno_ENOTTY)
1374 {*r = ENOTTY; return 0;}
1375 #else /* def ENOTTY */
1376 {errno = EINVAL; return -1;}
1377 #endif /* ndef ENOTTY */
1378 if (x == Mono_Posix_Errno_ENOTUNIQ)
1380 {*r = ENOTUNIQ; return 0;}
1381 #else /* def ENOTUNIQ */
1382 {errno = EINVAL; return -1;}
1383 #endif /* ndef ENOTUNIQ */
1384 if (x == Mono_Posix_Errno_ENXIO)
1386 {*r = ENXIO; return 0;}
1387 #else /* def ENXIO */
1388 {errno = EINVAL; return -1;}
1389 #endif /* ndef ENXIO */
1390 if (x == Mono_Posix_Errno_EOPNOTSUPP)
1392 {*r = EOPNOTSUPP; return 0;}
1393 #else /* def EOPNOTSUPP */
1394 {errno = EINVAL; return -1;}
1395 #endif /* ndef EOPNOTSUPP */
1396 if (x == Mono_Posix_Errno_EOVERFLOW)
1398 {*r = EOVERFLOW; return 0;}
1399 #else /* def EOVERFLOW */
1400 {errno = EINVAL; return -1;}
1401 #endif /* ndef EOVERFLOW */
1402 if (x == Mono_Posix_Errno_EPERM)
1404 {*r = EPERM; return 0;}
1405 #else /* def EPERM */
1406 {errno = EINVAL; return -1;}
1407 #endif /* ndef EPERM */
1408 if (x == Mono_Posix_Errno_EPFNOSUPPORT)
1410 {*r = EPFNOSUPPORT; return 0;}
1411 #else /* def EPFNOSUPPORT */
1412 {errno = EINVAL; return -1;}
1413 #endif /* ndef EPFNOSUPPORT */
1414 if (x == Mono_Posix_Errno_EPIPE)
1416 {*r = EPIPE; return 0;}
1417 #else /* def EPIPE */
1418 {errno = EINVAL; return -1;}
1419 #endif /* ndef EPIPE */
1420 if (x == Mono_Posix_Errno_EPROTO)
1422 {*r = EPROTO; return 0;}
1423 #else /* def EPROTO */
1424 {errno = EINVAL; return -1;}
1425 #endif /* ndef EPROTO */
1426 if (x == Mono_Posix_Errno_EPROTONOSUPPORT)
1427 #ifdef EPROTONOSUPPORT
1428 {*r = EPROTONOSUPPORT; return 0;}
1429 #else /* def EPROTONOSUPPORT */
1430 {errno = EINVAL; return -1;}
1431 #endif /* ndef EPROTONOSUPPORT */
1432 if (x == Mono_Posix_Errno_EPROTOTYPE)
1434 {*r = EPROTOTYPE; return 0;}
1435 #else /* def EPROTOTYPE */
1436 {errno = EINVAL; return -1;}
1437 #endif /* ndef EPROTOTYPE */
1438 if (x == Mono_Posix_Errno_ERANGE)
1440 {*r = ERANGE; return 0;}
1441 #else /* def ERANGE */
1442 {errno = EINVAL; return -1;}
1443 #endif /* ndef ERANGE */
1444 if (x == Mono_Posix_Errno_EREMCHG)
1446 {*r = EREMCHG; return 0;}
1447 #else /* def EREMCHG */
1448 {errno = EINVAL; return -1;}
1449 #endif /* ndef EREMCHG */
1450 if (x == Mono_Posix_Errno_EREMOTE)
1452 {*r = EREMOTE; return 0;}
1453 #else /* def EREMOTE */
1454 {errno = EINVAL; return -1;}
1455 #endif /* ndef EREMOTE */
1456 if (x == Mono_Posix_Errno_EREMOTEIO)
1458 {*r = EREMOTEIO; return 0;}
1459 #else /* def EREMOTEIO */
1460 {errno = EINVAL; return -1;}
1461 #endif /* ndef EREMOTEIO */
1462 if (x == Mono_Posix_Errno_ERESTART)
1464 {*r = ERESTART; return 0;}
1465 #else /* def ERESTART */
1466 {errno = EINVAL; return -1;}
1467 #endif /* ndef ERESTART */
1468 if (x == Mono_Posix_Errno_EROFS)
1470 {*r = EROFS; return 0;}
1471 #else /* def EROFS */
1472 {errno = EINVAL; return -1;}
1473 #endif /* ndef EROFS */
1474 if (x == Mono_Posix_Errno_ESHUTDOWN)
1476 {*r = ESHUTDOWN; return 0;}
1477 #else /* def ESHUTDOWN */
1478 {errno = EINVAL; return -1;}
1479 #endif /* ndef ESHUTDOWN */
1480 if (x == Mono_Posix_Errno_ESOCKTNOSUPPORT)
1481 #ifdef ESOCKTNOSUPPORT
1482 {*r = ESOCKTNOSUPPORT; return 0;}
1483 #else /* def ESOCKTNOSUPPORT */
1484 {errno = EINVAL; return -1;}
1485 #endif /* ndef ESOCKTNOSUPPORT */
1486 if (x == Mono_Posix_Errno_ESPIPE)
1488 {*r = ESPIPE; return 0;}
1489 #else /* def ESPIPE */
1490 {errno = EINVAL; return -1;}
1491 #endif /* ndef ESPIPE */
1492 if (x == Mono_Posix_Errno_ESRCH)
1494 {*r = ESRCH; return 0;}
1495 #else /* def ESRCH */
1496 {errno = EINVAL; return -1;}
1497 #endif /* ndef ESRCH */
1498 if (x == Mono_Posix_Errno_ESRMNT)
1500 {*r = ESRMNT; return 0;}
1501 #else /* def ESRMNT */
1502 {errno = EINVAL; return -1;}
1503 #endif /* ndef ESRMNT */
1504 if (x == Mono_Posix_Errno_ESTALE)
1506 {*r = ESTALE; return 0;}
1507 #else /* def ESTALE */
1508 {errno = EINVAL; return -1;}
1509 #endif /* ndef ESTALE */
1510 if (x == Mono_Posix_Errno_ESTRPIPE)
1512 {*r = ESTRPIPE; return 0;}
1513 #else /* def ESTRPIPE */
1514 {errno = EINVAL; return -1;}
1515 #endif /* ndef ESTRPIPE */
1516 if (x == Mono_Posix_Errno_ETIME)
1518 {*r = ETIME; return 0;}
1519 #else /* def ETIME */
1520 {errno = EINVAL; return -1;}
1521 #endif /* ndef ETIME */
1522 if (x == Mono_Posix_Errno_ETIMEDOUT)
1524 {*r = ETIMEDOUT; return 0;}
1525 #else /* def ETIMEDOUT */
1526 {errno = EINVAL; return -1;}
1527 #endif /* ndef ETIMEDOUT */
1528 if (x == Mono_Posix_Errno_ETOOMANYREFS)
1530 {*r = ETOOMANYREFS; return 0;}
1531 #else /* def ETOOMANYREFS */
1532 {errno = EINVAL; return -1;}
1533 #endif /* ndef ETOOMANYREFS */
1534 if (x == Mono_Posix_Errno_ETXTBSY)
1536 {*r = ETXTBSY; return 0;}
1537 #else /* def ETXTBSY */
1538 {errno = EINVAL; return -1;}
1539 #endif /* ndef ETXTBSY */
1540 if (x == Mono_Posix_Errno_EUCLEAN)
1542 {*r = EUCLEAN; return 0;}
1543 #else /* def EUCLEAN */
1544 {errno = EINVAL; return -1;}
1545 #endif /* ndef EUCLEAN */
1546 if (x == Mono_Posix_Errno_EUNATCH)
1548 {*r = EUNATCH; return 0;}
1549 #else /* def EUNATCH */
1550 {errno = EINVAL; return -1;}
1551 #endif /* ndef EUNATCH */
1552 if (x == Mono_Posix_Errno_EUSERS)
1554 {*r = EUSERS; return 0;}
1555 #else /* def EUSERS */
1556 {errno = EINVAL; return -1;}
1557 #endif /* ndef EUSERS */
1558 if (x == Mono_Posix_Errno_EWOULDBLOCK)
1560 {*r = EWOULDBLOCK; return 0;}
1561 #else /* def EWOULDBLOCK */
1562 {errno = EINVAL; return -1;}
1563 #endif /* ndef EWOULDBLOCK */
1564 if (x == Mono_Posix_Errno_EXDEV)
1566 {*r = EXDEV; return 0;}
1567 #else /* def EXDEV */
1568 {errno = EINVAL; return -1;}
1569 #endif /* ndef EXDEV */
1570 if (x == Mono_Posix_Errno_EXFULL)
1572 {*r = EXFULL; return 0;}
1573 #else /* def EXFULL */
1574 {errno = EINVAL; return -1;}
1575 #endif /* ndef EXFULL */
1578 errno = EINVAL; return -1;
1581 int Mono_Posix_ToErrno (int x, int *r)
1588 {*r = Mono_Posix_Errno_E2BIG; return 0;}
1589 #endif /* ndef E2BIG */
1592 {*r = Mono_Posix_Errno_EACCES; return 0;}
1593 #endif /* ndef EACCES */
1595 if (x == EADDRINUSE)
1596 {*r = Mono_Posix_Errno_EADDRINUSE; return 0;}
1597 #endif /* ndef EADDRINUSE */
1598 #ifdef EADDRNOTAVAIL
1599 if (x == EADDRNOTAVAIL)
1600 {*r = Mono_Posix_Errno_EADDRNOTAVAIL; return 0;}
1601 #endif /* ndef EADDRNOTAVAIL */
1604 {*r = Mono_Posix_Errno_EADV; return 0;}
1605 #endif /* ndef EADV */
1607 if (x == EAFNOSUPPORT)
1608 {*r = Mono_Posix_Errno_EAFNOSUPPORT; return 0;}
1609 #endif /* ndef EAFNOSUPPORT */
1612 {*r = Mono_Posix_Errno_EAGAIN; return 0;}
1613 #endif /* ndef EAGAIN */
1616 {*r = Mono_Posix_Errno_EALREADY; return 0;}
1617 #endif /* ndef EALREADY */
1620 {*r = Mono_Posix_Errno_EBADE; return 0;}
1621 #endif /* ndef EBADE */
1624 {*r = Mono_Posix_Errno_EBADF; return 0;}
1625 #endif /* ndef EBADF */
1628 {*r = Mono_Posix_Errno_EBADFD; return 0;}
1629 #endif /* ndef EBADFD */
1632 {*r = Mono_Posix_Errno_EBADMSG; return 0;}
1633 #endif /* ndef EBADMSG */
1636 {*r = Mono_Posix_Errno_EBADR; return 0;}
1637 #endif /* ndef EBADR */
1640 {*r = Mono_Posix_Errno_EBADRQC; return 0;}
1641 #endif /* ndef EBADRQC */
1644 {*r = Mono_Posix_Errno_EBADSLT; return 0;}
1645 #endif /* ndef EBADSLT */
1648 {*r = Mono_Posix_Errno_EBFONT; return 0;}
1649 #endif /* ndef EBFONT */
1652 {*r = Mono_Posix_Errno_EBUSY; return 0;}
1653 #endif /* ndef EBUSY */
1656 {*r = Mono_Posix_Errno_ECHILD; return 0;}
1657 #endif /* ndef ECHILD */
1660 {*r = Mono_Posix_Errno_ECHRNG; return 0;}
1661 #endif /* ndef ECHRNG */
1664 {*r = Mono_Posix_Errno_ECOMM; return 0;}
1665 #endif /* ndef ECOMM */
1667 if (x == ECONNABORTED)
1668 {*r = Mono_Posix_Errno_ECONNABORTED; return 0;}
1669 #endif /* ndef ECONNABORTED */
1671 if (x == ECONNREFUSED)
1672 {*r = Mono_Posix_Errno_ECONNREFUSED; return 0;}
1673 #endif /* ndef ECONNREFUSED */
1675 if (x == ECONNRESET)
1676 {*r = Mono_Posix_Errno_ECONNRESET; return 0;}
1677 #endif /* ndef ECONNRESET */
1680 {*r = Mono_Posix_Errno_EDEADLK; return 0;}
1681 #endif /* ndef EDEADLK */
1684 {*r = Mono_Posix_Errno_EDEADLOCK; return 0;}
1685 #endif /* ndef EDEADLOCK */
1687 if (x == EDESTADDRREQ)
1688 {*r = Mono_Posix_Errno_EDESTADDRREQ; return 0;}
1689 #endif /* ndef EDESTADDRREQ */
1692 {*r = Mono_Posix_Errno_EDOM; return 0;}
1693 #endif /* ndef EDOM */
1696 {*r = Mono_Posix_Errno_EDOTDOT; return 0;}
1697 #endif /* ndef EDOTDOT */
1700 {*r = Mono_Posix_Errno_EDQUOT; return 0;}
1701 #endif /* ndef EDQUOT */
1704 {*r = Mono_Posix_Errno_EEXIST; return 0;}
1705 #endif /* ndef EEXIST */
1708 {*r = Mono_Posix_Errno_EFAULT; return 0;}
1709 #endif /* ndef EFAULT */
1712 {*r = Mono_Posix_Errno_EFBIG; return 0;}
1713 #endif /* ndef EFBIG */
1716 {*r = Mono_Posix_Errno_EHOSTDOWN; return 0;}
1717 #endif /* ndef EHOSTDOWN */
1719 if (x == EHOSTUNREACH)
1720 {*r = Mono_Posix_Errno_EHOSTUNREACH; return 0;}
1721 #endif /* ndef EHOSTUNREACH */
1724 {*r = Mono_Posix_Errno_EIDRM; return 0;}
1725 #endif /* ndef EIDRM */
1728 {*r = Mono_Posix_Errno_EILSEQ; return 0;}
1729 #endif /* ndef EILSEQ */
1731 if (x == EINPROGRESS)
1732 {*r = Mono_Posix_Errno_EINPROGRESS; return 0;}
1733 #endif /* ndef EINPROGRESS */
1736 {*r = Mono_Posix_Errno_EINTR; return 0;}
1737 #endif /* ndef EINTR */
1740 {*r = Mono_Posix_Errno_EINVAL; return 0;}
1741 #endif /* ndef EINVAL */
1744 {*r = Mono_Posix_Errno_EIO; return 0;}
1745 #endif /* ndef EIO */
1748 {*r = Mono_Posix_Errno_EISCONN; return 0;}
1749 #endif /* ndef EISCONN */
1752 {*r = Mono_Posix_Errno_EISDIR; return 0;}
1753 #endif /* ndef EISDIR */
1756 {*r = Mono_Posix_Errno_EISNAM; return 0;}
1757 #endif /* ndef EISNAM */
1760 {*r = Mono_Posix_Errno_EL2HLT; return 0;}
1761 #endif /* ndef EL2HLT */
1764 {*r = Mono_Posix_Errno_EL2NSYNC; return 0;}
1765 #endif /* ndef EL2NSYNC */
1768 {*r = Mono_Posix_Errno_EL3HLT; return 0;}
1769 #endif /* ndef EL3HLT */
1772 {*r = Mono_Posix_Errno_EL3RST; return 0;}
1773 #endif /* ndef EL3RST */
1776 {*r = Mono_Posix_Errno_ELIBACC; return 0;}
1777 #endif /* ndef ELIBACC */
1780 {*r = Mono_Posix_Errno_ELIBBAD; return 0;}
1781 #endif /* ndef ELIBBAD */
1784 {*r = Mono_Posix_Errno_ELIBEXEC; return 0;}
1785 #endif /* ndef ELIBEXEC */
1788 {*r = Mono_Posix_Errno_ELIBMAX; return 0;}
1789 #endif /* ndef ELIBMAX */
1792 {*r = Mono_Posix_Errno_ELIBSCN; return 0;}
1793 #endif /* ndef ELIBSCN */
1796 {*r = Mono_Posix_Errno_ELNRNG; return 0;}
1797 #endif /* ndef ELNRNG */
1800 {*r = Mono_Posix_Errno_ELOOP; return 0;}
1801 #endif /* ndef ELOOP */
1803 if (x == EMEDIUMTYPE)
1804 {*r = Mono_Posix_Errno_EMEDIUMTYPE; return 0;}
1805 #endif /* ndef EMEDIUMTYPE */
1808 {*r = Mono_Posix_Errno_EMFILE; return 0;}
1809 #endif /* ndef EMFILE */
1812 {*r = Mono_Posix_Errno_EMLINK; return 0;}
1813 #endif /* ndef EMLINK */
1816 {*r = Mono_Posix_Errno_EMSGSIZE; return 0;}
1817 #endif /* ndef EMSGSIZE */
1820 {*r = Mono_Posix_Errno_EMULTIHOP; return 0;}
1821 #endif /* ndef EMULTIHOP */
1823 if (x == ENAMETOOLONG)
1824 {*r = Mono_Posix_Errno_ENAMETOOLONG; return 0;}
1825 #endif /* ndef ENAMETOOLONG */
1828 {*r = Mono_Posix_Errno_ENAVAIL; return 0;}
1829 #endif /* ndef ENAVAIL */
1832 {*r = Mono_Posix_Errno_ENETDOWN; return 0;}
1833 #endif /* ndef ENETDOWN */
1836 {*r = Mono_Posix_Errno_ENETRESET; return 0;}
1837 #endif /* ndef ENETRESET */
1839 if (x == ENETUNREACH)
1840 {*r = Mono_Posix_Errno_ENETUNREACH; return 0;}
1841 #endif /* ndef ENETUNREACH */
1844 {*r = Mono_Posix_Errno_ENFILE; return 0;}
1845 #endif /* ndef ENFILE */
1848 {*r = Mono_Posix_Errno_ENOANO; return 0;}
1849 #endif /* ndef ENOANO */
1852 {*r = Mono_Posix_Errno_ENOBUFS; return 0;}
1853 #endif /* ndef ENOBUFS */
1856 {*r = Mono_Posix_Errno_ENOCSI; return 0;}
1857 #endif /* ndef ENOCSI */
1860 {*r = Mono_Posix_Errno_ENODATA; return 0;}
1861 #endif /* ndef ENODATA */
1864 {*r = Mono_Posix_Errno_ENODEV; return 0;}
1865 #endif /* ndef ENODEV */
1868 {*r = Mono_Posix_Errno_ENOENT; return 0;}
1869 #endif /* ndef ENOENT */
1872 {*r = Mono_Posix_Errno_ENOEXEC; return 0;}
1873 #endif /* ndef ENOEXEC */
1876 {*r = Mono_Posix_Errno_ENOLCK; return 0;}
1877 #endif /* ndef ENOLCK */
1880 {*r = Mono_Posix_Errno_ENOLINK; return 0;}
1881 #endif /* ndef ENOLINK */
1884 {*r = Mono_Posix_Errno_ENOMEDIUM; return 0;}
1885 #endif /* ndef ENOMEDIUM */
1888 {*r = Mono_Posix_Errno_ENOMEM; return 0;}
1889 #endif /* ndef ENOMEM */
1892 {*r = Mono_Posix_Errno_ENOMSG; return 0;}
1893 #endif /* ndef ENOMSG */
1896 {*r = Mono_Posix_Errno_ENONET; return 0;}
1897 #endif /* ndef ENONET */
1900 {*r = Mono_Posix_Errno_ENOPKG; return 0;}
1901 #endif /* ndef ENOPKG */
1903 if (x == ENOPROTOOPT)
1904 {*r = Mono_Posix_Errno_ENOPROTOOPT; return 0;}
1905 #endif /* ndef ENOPROTOOPT */
1908 {*r = Mono_Posix_Errno_ENOSPC; return 0;}
1909 #endif /* ndef ENOSPC */
1912 {*r = Mono_Posix_Errno_ENOSR; return 0;}
1913 #endif /* ndef ENOSR */
1916 {*r = Mono_Posix_Errno_ENOSTR; return 0;}
1917 #endif /* ndef ENOSTR */
1920 {*r = Mono_Posix_Errno_ENOSYS; return 0;}
1921 #endif /* ndef ENOSYS */
1924 {*r = Mono_Posix_Errno_ENOTBLK; return 0;}
1925 #endif /* ndef ENOTBLK */
1928 {*r = Mono_Posix_Errno_ENOTCONN; return 0;}
1929 #endif /* ndef ENOTCONN */
1932 {*r = Mono_Posix_Errno_ENOTDIR; return 0;}
1933 #endif /* ndef ENOTDIR */
1936 {*r = Mono_Posix_Errno_ENOTEMPTY; return 0;}
1937 #endif /* ndef ENOTEMPTY */
1940 {*r = Mono_Posix_Errno_ENOTNAM; return 0;}
1941 #endif /* ndef ENOTNAM */
1944 {*r = Mono_Posix_Errno_ENOTSOCK; return 0;}
1945 #endif /* ndef ENOTSOCK */
1948 {*r = Mono_Posix_Errno_ENOTTY; return 0;}
1949 #endif /* ndef ENOTTY */
1952 {*r = Mono_Posix_Errno_ENOTUNIQ; return 0;}
1953 #endif /* ndef ENOTUNIQ */
1956 {*r = Mono_Posix_Errno_ENXIO; return 0;}
1957 #endif /* ndef ENXIO */
1959 if (x == EOPNOTSUPP)
1960 {*r = Mono_Posix_Errno_EOPNOTSUPP; return 0;}
1961 #endif /* ndef EOPNOTSUPP */
1964 {*r = Mono_Posix_Errno_EOVERFLOW; return 0;}
1965 #endif /* ndef EOVERFLOW */
1968 {*r = Mono_Posix_Errno_EPERM; return 0;}
1969 #endif /* ndef EPERM */
1971 if (x == EPFNOSUPPORT)
1972 {*r = Mono_Posix_Errno_EPFNOSUPPORT; return 0;}
1973 #endif /* ndef EPFNOSUPPORT */
1976 {*r = Mono_Posix_Errno_EPIPE; return 0;}
1977 #endif /* ndef EPIPE */
1980 {*r = Mono_Posix_Errno_EPROTO; return 0;}
1981 #endif /* ndef EPROTO */
1982 #ifdef EPROTONOSUPPORT
1983 if (x == EPROTONOSUPPORT)
1984 {*r = Mono_Posix_Errno_EPROTONOSUPPORT; return 0;}
1985 #endif /* ndef EPROTONOSUPPORT */
1987 if (x == EPROTOTYPE)
1988 {*r = Mono_Posix_Errno_EPROTOTYPE; return 0;}
1989 #endif /* ndef EPROTOTYPE */
1992 {*r = Mono_Posix_Errno_ERANGE; return 0;}
1993 #endif /* ndef ERANGE */
1996 {*r = Mono_Posix_Errno_EREMCHG; return 0;}
1997 #endif /* ndef EREMCHG */
2000 {*r = Mono_Posix_Errno_EREMOTE; return 0;}
2001 #endif /* ndef EREMOTE */
2004 {*r = Mono_Posix_Errno_EREMOTEIO; return 0;}
2005 #endif /* ndef EREMOTEIO */
2008 {*r = Mono_Posix_Errno_ERESTART; return 0;}
2009 #endif /* ndef ERESTART */
2012 {*r = Mono_Posix_Errno_EROFS; return 0;}
2013 #endif /* ndef EROFS */
2016 {*r = Mono_Posix_Errno_ESHUTDOWN; return 0;}
2017 #endif /* ndef ESHUTDOWN */
2018 #ifdef ESOCKTNOSUPPORT
2019 if (x == ESOCKTNOSUPPORT)
2020 {*r = Mono_Posix_Errno_ESOCKTNOSUPPORT; return 0;}
2021 #endif /* ndef ESOCKTNOSUPPORT */
2024 {*r = Mono_Posix_Errno_ESPIPE; return 0;}
2025 #endif /* ndef ESPIPE */
2028 {*r = Mono_Posix_Errno_ESRCH; return 0;}
2029 #endif /* ndef ESRCH */
2032 {*r = Mono_Posix_Errno_ESRMNT; return 0;}
2033 #endif /* ndef ESRMNT */
2036 {*r = Mono_Posix_Errno_ESTALE; return 0;}
2037 #endif /* ndef ESTALE */
2040 {*r = Mono_Posix_Errno_ESTRPIPE; return 0;}
2041 #endif /* ndef ESTRPIPE */
2044 {*r = Mono_Posix_Errno_ETIME; return 0;}
2045 #endif /* ndef ETIME */
2048 {*r = Mono_Posix_Errno_ETIMEDOUT; return 0;}
2049 #endif /* ndef ETIMEDOUT */
2051 if (x == ETOOMANYREFS)
2052 {*r = Mono_Posix_Errno_ETOOMANYREFS; return 0;}
2053 #endif /* ndef ETOOMANYREFS */
2056 {*r = Mono_Posix_Errno_ETXTBSY; return 0;}
2057 #endif /* ndef ETXTBSY */
2060 {*r = Mono_Posix_Errno_EUCLEAN; return 0;}
2061 #endif /* ndef EUCLEAN */
2064 {*r = Mono_Posix_Errno_EUNATCH; return 0;}
2065 #endif /* ndef EUNATCH */
2068 {*r = Mono_Posix_Errno_EUSERS; return 0;}
2069 #endif /* ndef EUSERS */
2071 if (x == EWOULDBLOCK)
2072 {*r = Mono_Posix_Errno_EWOULDBLOCK; return 0;}
2073 #endif /* ndef EWOULDBLOCK */
2076 {*r = Mono_Posix_Errno_EXDEV; return 0;}
2077 #endif /* ndef EXDEV */
2080 {*r = Mono_Posix_Errno_EXFULL; return 0;}
2081 #endif /* ndef EXFULL */
2082 errno = EINVAL; return -1;
2085 int Mono_Posix_FromFcntlCommand (int x, int *r)
2088 if (x == Mono_Posix_FcntlCommand_F_DUPFD)
2090 {*r = F_DUPFD; return 0;}
2091 #else /* def F_DUPFD */
2092 {errno = EINVAL; return -1;}
2093 #endif /* ndef F_DUPFD */
2094 if (x == Mono_Posix_FcntlCommand_F_GETFD)
2096 {*r = F_GETFD; return 0;}
2097 #else /* def F_GETFD */
2098 {errno = EINVAL; return -1;}
2099 #endif /* ndef F_GETFD */
2100 if (x == Mono_Posix_FcntlCommand_F_GETFL)
2102 {*r = F_GETFL; return 0;}
2103 #else /* def F_GETFL */
2104 {errno = EINVAL; return -1;}
2105 #endif /* ndef F_GETFL */
2106 if (x == Mono_Posix_FcntlCommand_F_GETLEASE)
2108 {*r = F_GETLEASE; return 0;}
2109 #else /* def F_GETLEASE */
2110 {errno = EINVAL; return -1;}
2111 #endif /* ndef F_GETLEASE */
2112 if (x == Mono_Posix_FcntlCommand_F_GETLK)
2114 {*r = F_GETLK; return 0;}
2115 #else /* def F_GETLK */
2116 {errno = EINVAL; return -1;}
2117 #endif /* ndef F_GETLK */
2118 if (x == Mono_Posix_FcntlCommand_F_GETOWN)
2120 {*r = F_GETOWN; return 0;}
2121 #else /* def F_GETOWN */
2122 {errno = EINVAL; return -1;}
2123 #endif /* ndef F_GETOWN */
2124 if (x == Mono_Posix_FcntlCommand_F_GETSIG)
2126 {*r = F_GETSIG; return 0;}
2127 #else /* def F_GETSIG */
2128 {errno = EINVAL; return -1;}
2129 #endif /* ndef F_GETSIG */
2130 if (x == Mono_Posix_FcntlCommand_F_NOTIFY)
2132 {*r = F_NOTIFY; return 0;}
2133 #else /* def F_NOTIFY */
2134 {errno = EINVAL; return -1;}
2135 #endif /* ndef F_NOTIFY */
2136 if (x == Mono_Posix_FcntlCommand_F_SETFD)
2138 {*r = F_SETFD; return 0;}
2139 #else /* def F_SETFD */
2140 {errno = EINVAL; return -1;}
2141 #endif /* ndef F_SETFD */
2142 if (x == Mono_Posix_FcntlCommand_F_SETFL)
2144 {*r = F_SETFL; return 0;}
2145 #else /* def F_SETFL */
2146 {errno = EINVAL; return -1;}
2147 #endif /* ndef F_SETFL */
2148 if (x == Mono_Posix_FcntlCommand_F_SETLEASE)
2150 {*r = F_SETLEASE; return 0;}
2151 #else /* def F_SETLEASE */
2152 {errno = EINVAL; return -1;}
2153 #endif /* ndef F_SETLEASE */
2154 if (x == Mono_Posix_FcntlCommand_F_SETLK)
2156 {*r = F_SETLK; return 0;}
2157 #else /* def F_SETLK */
2158 {errno = EINVAL; return -1;}
2159 #endif /* ndef F_SETLK */
2160 if (x == Mono_Posix_FcntlCommand_F_SETLKW)
2162 {*r = F_SETLKW; return 0;}
2163 #else /* def F_SETLKW */
2164 {errno = EINVAL; return -1;}
2165 #endif /* ndef F_SETLKW */
2166 if (x == Mono_Posix_FcntlCommand_F_SETOWN)
2168 {*r = F_SETOWN; return 0;}
2169 #else /* def F_SETOWN */
2170 {errno = EINVAL; return -1;}
2171 #endif /* ndef F_SETOWN */
2172 if (x == Mono_Posix_FcntlCommand_F_SETSIG)
2174 {*r = F_SETSIG; return 0;}
2175 #else /* def F_SETSIG */
2176 {errno = EINVAL; return -1;}
2177 #endif /* ndef F_SETSIG */
2180 errno = EINVAL; return -1;
2183 int Mono_Posix_ToFcntlCommand (int x, int *r)
2190 {*r = Mono_Posix_FcntlCommand_F_DUPFD; return 0;}
2191 #endif /* ndef F_DUPFD */
2194 {*r = Mono_Posix_FcntlCommand_F_GETFD; return 0;}
2195 #endif /* ndef F_GETFD */
2198 {*r = Mono_Posix_FcntlCommand_F_GETFL; return 0;}
2199 #endif /* ndef F_GETFL */
2201 if (x == F_GETLEASE)
2202 {*r = Mono_Posix_FcntlCommand_F_GETLEASE; return 0;}
2203 #endif /* ndef F_GETLEASE */
2206 {*r = Mono_Posix_FcntlCommand_F_GETLK; return 0;}
2207 #endif /* ndef F_GETLK */
2210 {*r = Mono_Posix_FcntlCommand_F_GETOWN; return 0;}
2211 #endif /* ndef F_GETOWN */
2214 {*r = Mono_Posix_FcntlCommand_F_GETSIG; return 0;}
2215 #endif /* ndef F_GETSIG */
2218 {*r = Mono_Posix_FcntlCommand_F_NOTIFY; return 0;}
2219 #endif /* ndef F_NOTIFY */
2222 {*r = Mono_Posix_FcntlCommand_F_SETFD; return 0;}
2223 #endif /* ndef F_SETFD */
2226 {*r = Mono_Posix_FcntlCommand_F_SETFL; return 0;}
2227 #endif /* ndef F_SETFL */
2229 if (x == F_SETLEASE)
2230 {*r = Mono_Posix_FcntlCommand_F_SETLEASE; return 0;}
2231 #endif /* ndef F_SETLEASE */
2234 {*r = Mono_Posix_FcntlCommand_F_SETLK; return 0;}
2235 #endif /* ndef F_SETLK */
2238 {*r = Mono_Posix_FcntlCommand_F_SETLKW; return 0;}
2239 #endif /* ndef F_SETLKW */
2242 {*r = Mono_Posix_FcntlCommand_F_SETOWN; return 0;}
2243 #endif /* ndef F_SETOWN */
2246 {*r = Mono_Posix_FcntlCommand_F_SETSIG; return 0;}
2247 #endif /* ndef F_SETSIG */
2248 errno = EINVAL; return -1;
2251 int Mono_Posix_FromFilePermissions (unsigned int x, unsigned int *r)
2254 if ((x & Mono_Posix_FilePermissions_ACCESSPERMS) == Mono_Posix_FilePermissions_ACCESSPERMS)
2257 #else /* def ACCESSPERMS */
2258 {/* Ignoring Mono_Posix_FilePermissions_ACCESSPERMS, as it is constructed from other values */}
2259 #endif /* ndef ACCESSPERMS */
2260 if ((x & Mono_Posix_FilePermissions_ALLPERMS) == Mono_Posix_FilePermissions_ALLPERMS)
2263 #else /* def ALLPERMS */
2264 {/* Ignoring Mono_Posix_FilePermissions_ALLPERMS, as it is constructed from other values */}
2265 #endif /* ndef ALLPERMS */
2266 if ((x & Mono_Posix_FilePermissions_DEFFILEMODE) == Mono_Posix_FilePermissions_DEFFILEMODE)
2269 #else /* def DEFFILEMODE */
2270 {/* Ignoring Mono_Posix_FilePermissions_DEFFILEMODE, as it is constructed from other values */}
2271 #endif /* ndef DEFFILEMODE */
2272 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFBLK)
2275 #else /* def S_IFBLK */
2276 {errno = EINVAL; return -1;}
2277 #endif /* ndef S_IFBLK */
2278 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFCHR)
2281 #else /* def S_IFCHR */
2282 {errno = EINVAL; return -1;}
2283 #endif /* ndef S_IFCHR */
2284 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFDIR)
2287 #else /* def S_IFDIR */
2288 {errno = EINVAL; return -1;}
2289 #endif /* ndef S_IFDIR */
2290 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFIFO)
2293 #else /* def S_IFIFO */
2294 {errno = EINVAL; return -1;}
2295 #endif /* ndef S_IFIFO */
2296 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFLNK)
2299 #else /* def S_IFLNK */
2300 {errno = EINVAL; return -1;}
2301 #endif /* ndef S_IFLNK */
2302 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFMT)
2305 #else /* def S_IFMT */
2306 {/* Ignoring Mono_Posix_FilePermissions_S_IFMT, as it is constructed from other values */}
2307 #endif /* ndef S_IFMT */
2308 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFREG)
2311 #else /* def S_IFREG */
2312 {errno = EINVAL; return -1;}
2313 #endif /* ndef S_IFREG */
2314 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFSOCK)
2317 #else /* def S_IFSOCK */
2318 {errno = EINVAL; return -1;}
2319 #endif /* ndef S_IFSOCK */
2320 if ((x & Mono_Posix_FilePermissions_S_IRGRP) == Mono_Posix_FilePermissions_S_IRGRP)
2323 #else /* def S_IRGRP */
2324 {errno = EINVAL; return -1;}
2325 #endif /* ndef S_IRGRP */
2326 if ((x & Mono_Posix_FilePermissions_S_IROTH) == Mono_Posix_FilePermissions_S_IROTH)
2329 #else /* def S_IROTH */
2330 {errno = EINVAL; return -1;}
2331 #endif /* ndef S_IROTH */
2332 if ((x & Mono_Posix_FilePermissions_S_IRUSR) == Mono_Posix_FilePermissions_S_IRUSR)
2335 #else /* def S_IRUSR */
2336 {errno = EINVAL; return -1;}
2337 #endif /* ndef S_IRUSR */
2338 if ((x & Mono_Posix_FilePermissions_S_IRWXG) == Mono_Posix_FilePermissions_S_IRWXG)
2341 #else /* def S_IRWXG */
2342 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXG, as it is constructed from other values */}
2343 #endif /* ndef S_IRWXG */
2344 if ((x & Mono_Posix_FilePermissions_S_IRWXO) == Mono_Posix_FilePermissions_S_IRWXO)
2347 #else /* def S_IRWXO */
2348 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXO, as it is constructed from other values */}
2349 #endif /* ndef S_IRWXO */
2350 if ((x & Mono_Posix_FilePermissions_S_IRWXU) == Mono_Posix_FilePermissions_S_IRWXU)
2353 #else /* def S_IRWXU */
2354 {/* Ignoring Mono_Posix_FilePermissions_S_IRWXU, as it is constructed from other values */}
2355 #endif /* ndef S_IRWXU */
2356 if ((x & Mono_Posix_FilePermissions_S_ISGID) == Mono_Posix_FilePermissions_S_ISGID)
2359 #else /* def S_ISGID */
2360 {errno = EINVAL; return -1;}
2361 #endif /* ndef S_ISGID */
2362 if ((x & Mono_Posix_FilePermissions_S_ISUID) == Mono_Posix_FilePermissions_S_ISUID)
2365 #else /* def S_ISUID */
2366 {errno = EINVAL; return -1;}
2367 #endif /* ndef S_ISUID */
2368 if ((x & Mono_Posix_FilePermissions_S_ISVTX) == Mono_Posix_FilePermissions_S_ISVTX)
2371 #else /* def S_ISVTX */
2372 {errno = EINVAL; return -1;}
2373 #endif /* ndef S_ISVTX */
2374 if ((x & Mono_Posix_FilePermissions_S_IWGRP) == Mono_Posix_FilePermissions_S_IWGRP)
2377 #else /* def S_IWGRP */
2378 {errno = EINVAL; return -1;}
2379 #endif /* ndef S_IWGRP */
2380 if ((x & Mono_Posix_FilePermissions_S_IWOTH) == Mono_Posix_FilePermissions_S_IWOTH)
2383 #else /* def S_IWOTH */
2384 {errno = EINVAL; return -1;}
2385 #endif /* ndef S_IWOTH */
2386 if ((x & Mono_Posix_FilePermissions_S_IWUSR) == Mono_Posix_FilePermissions_S_IWUSR)
2389 #else /* def S_IWUSR */
2390 {errno = EINVAL; return -1;}
2391 #endif /* ndef S_IWUSR */
2392 if ((x & Mono_Posix_FilePermissions_S_IXGRP) == Mono_Posix_FilePermissions_S_IXGRP)
2395 #else /* def S_IXGRP */
2396 {errno = EINVAL; return -1;}
2397 #endif /* ndef S_IXGRP */
2398 if ((x & Mono_Posix_FilePermissions_S_IXOTH) == Mono_Posix_FilePermissions_S_IXOTH)
2401 #else /* def S_IXOTH */
2402 {errno = EINVAL; return -1;}
2403 #endif /* ndef S_IXOTH */
2404 if ((x & Mono_Posix_FilePermissions_S_IXUSR) == Mono_Posix_FilePermissions_S_IXUSR)
2407 #else /* def S_IXUSR */
2408 {errno = EINVAL; return -1;}
2409 #endif /* ndef S_IXUSR */
2415 int Mono_Posix_ToFilePermissions (unsigned int x, unsigned int *r)
2421 if ((x & ACCESSPERMS) == ACCESSPERMS)
2422 *r |= Mono_Posix_FilePermissions_ACCESSPERMS;
2423 #endif /* ndef ACCESSPERMS */
2425 if ((x & ALLPERMS) == ALLPERMS)
2426 *r |= Mono_Posix_FilePermissions_ALLPERMS;
2427 #endif /* ndef ALLPERMS */
2429 if ((x & DEFFILEMODE) == DEFFILEMODE)
2430 *r |= Mono_Posix_FilePermissions_DEFFILEMODE;
2431 #endif /* ndef DEFFILEMODE */
2433 if ((x & S_IFMT) == S_IFBLK)
2434 *r |= Mono_Posix_FilePermissions_S_IFBLK;
2435 #endif /* ndef S_IFBLK */
2437 if ((x & S_IFMT) == S_IFCHR)
2438 *r |= Mono_Posix_FilePermissions_S_IFCHR;
2439 #endif /* ndef S_IFCHR */
2441 if ((x & S_IFMT) == S_IFDIR)
2442 *r |= Mono_Posix_FilePermissions_S_IFDIR;
2443 #endif /* ndef S_IFDIR */
2445 if ((x & S_IFMT) == S_IFIFO)
2446 *r |= Mono_Posix_FilePermissions_S_IFIFO;
2447 #endif /* ndef S_IFIFO */
2449 if ((x & S_IFMT) == S_IFLNK)
2450 *r |= Mono_Posix_FilePermissions_S_IFLNK;
2451 #endif /* ndef S_IFLNK */
2453 if ((x & S_IFMT) == S_IFMT)
2454 *r |= Mono_Posix_FilePermissions_S_IFMT;
2455 #endif /* ndef S_IFMT */
2457 if ((x & S_IFMT) == S_IFREG)
2458 *r |= Mono_Posix_FilePermissions_S_IFREG;
2459 #endif /* ndef S_IFREG */
2461 if ((x & S_IFMT) == S_IFSOCK)
2462 *r |= Mono_Posix_FilePermissions_S_IFSOCK;
2463 #endif /* ndef S_IFSOCK */
2465 if ((x & S_IRGRP) == S_IRGRP)
2466 *r |= Mono_Posix_FilePermissions_S_IRGRP;
2467 #endif /* ndef S_IRGRP */
2469 if ((x & S_IROTH) == S_IROTH)
2470 *r |= Mono_Posix_FilePermissions_S_IROTH;
2471 #endif /* ndef S_IROTH */
2473 if ((x & S_IRUSR) == S_IRUSR)
2474 *r |= Mono_Posix_FilePermissions_S_IRUSR;
2475 #endif /* ndef S_IRUSR */
2477 if ((x & S_IRWXG) == S_IRWXG)
2478 *r |= Mono_Posix_FilePermissions_S_IRWXG;
2479 #endif /* ndef S_IRWXG */
2481 if ((x & S_IRWXO) == S_IRWXO)
2482 *r |= Mono_Posix_FilePermissions_S_IRWXO;
2483 #endif /* ndef S_IRWXO */
2485 if ((x & S_IRWXU) == S_IRWXU)
2486 *r |= Mono_Posix_FilePermissions_S_IRWXU;
2487 #endif /* ndef S_IRWXU */
2489 if ((x & S_ISGID) == S_ISGID)
2490 *r |= Mono_Posix_FilePermissions_S_ISGID;
2491 #endif /* ndef S_ISGID */
2493 if ((x & S_ISUID) == S_ISUID)
2494 *r |= Mono_Posix_FilePermissions_S_ISUID;
2495 #endif /* ndef S_ISUID */
2497 if ((x & S_ISVTX) == S_ISVTX)
2498 *r |= Mono_Posix_FilePermissions_S_ISVTX;
2499 #endif /* ndef S_ISVTX */
2501 if ((x & S_IWGRP) == S_IWGRP)
2502 *r |= Mono_Posix_FilePermissions_S_IWGRP;
2503 #endif /* ndef S_IWGRP */
2505 if ((x & S_IWOTH) == S_IWOTH)
2506 *r |= Mono_Posix_FilePermissions_S_IWOTH;
2507 #endif /* ndef S_IWOTH */
2509 if ((x & S_IWUSR) == S_IWUSR)
2510 *r |= Mono_Posix_FilePermissions_S_IWUSR;
2511 #endif /* ndef S_IWUSR */
2513 if ((x & S_IXGRP) == S_IXGRP)
2514 *r |= Mono_Posix_FilePermissions_S_IXGRP;
2515 #endif /* ndef S_IXGRP */
2517 if ((x & S_IXOTH) == S_IXOTH)
2518 *r |= Mono_Posix_FilePermissions_S_IXOTH;
2519 #endif /* ndef S_IXOTH */
2521 if ((x & S_IXUSR) == S_IXUSR)
2522 *r |= Mono_Posix_FilePermissions_S_IXUSR;
2523 #endif /* ndef S_IXUSR */
2527 #ifdef HAVE_STRUCT_FLOCK
2529 Mono_Posix_FromFlock (struct Mono_Posix_Flock *from, struct flock *to)
2531 _cnm_return_val_if_overflow (off_t, from->l_start, -1);
2532 _cnm_return_val_if_overflow (off_t, from->l_len, -1);
2533 _cnm_return_val_if_overflow (pid_t, from->l_pid, -1);
2535 memset (to, 0, sizeof(*to));
2537 if (Mono_Posix_FromLockType (from->l_type, &to->l_type) != 0) {
2540 if (Mono_Posix_FromSeekFlags (from->l_whence, &to->l_whence) != 0) {
2543 to->l_start = from->l_start;
2544 to->l_len = from->l_len;
2545 to->l_pid = from->l_pid;
2549 #endif /* ndef HAVE_STRUCT_FLOCK */
2552 #ifdef HAVE_STRUCT_FLOCK
2554 Mono_Posix_ToFlock (struct flock *from, struct Mono_Posix_Flock *to)
2556 _cnm_return_val_if_overflow (gint64, from->l_start, -1);
2557 _cnm_return_val_if_overflow (gint64, from->l_len, -1);
2558 _cnm_return_val_if_overflow (int, from->l_pid, -1);
2560 memset (to, 0, sizeof(*to));
2562 if (Mono_Posix_ToLockType (from->l_type, &to->l_type) != 0) {
2565 if (Mono_Posix_ToSeekFlags (from->l_whence, &to->l_whence) != 0) {
2568 to->l_start = from->l_start;
2569 to->l_len = from->l_len;
2570 to->l_pid = from->l_pid;
2574 #endif /* ndef HAVE_STRUCT_FLOCK */
2577 int Mono_Posix_FromLockType (short x, short *r)
2580 if (x == Mono_Posix_LockType_F_RDLCK)
2582 {*r = F_RDLCK; return 0;}
2583 #else /* def F_RDLCK */
2584 {errno = EINVAL; return -1;}
2585 #endif /* ndef F_RDLCK */
2586 if (x == Mono_Posix_LockType_F_UNLCK)
2588 {*r = F_UNLCK; return 0;}
2589 #else /* def F_UNLCK */
2590 {errno = EINVAL; return -1;}
2591 #endif /* ndef F_UNLCK */
2592 if (x == Mono_Posix_LockType_F_WRLCK)
2594 {*r = F_WRLCK; return 0;}
2595 #else /* def F_WRLCK */
2596 {errno = EINVAL; return -1;}
2597 #endif /* ndef F_WRLCK */
2600 errno = EINVAL; return -1;
2603 int Mono_Posix_ToLockType (short x, short *r)
2610 {*r = Mono_Posix_LockType_F_RDLCK; return 0;}
2611 #endif /* ndef F_RDLCK */
2614 {*r = Mono_Posix_LockType_F_UNLCK; return 0;}
2615 #endif /* ndef F_UNLCK */
2618 {*r = Mono_Posix_LockType_F_WRLCK; return 0;}
2619 #endif /* ndef F_WRLCK */
2620 errno = EINVAL; return -1;
2623 int Mono_Posix_FromLockfCommand (int x, int *r)
2626 if (x == Mono_Posix_LockfCommand_F_LOCK)
2628 {*r = F_LOCK; return 0;}
2629 #else /* def F_LOCK */
2630 {errno = EINVAL; return -1;}
2631 #endif /* ndef F_LOCK */
2632 if (x == Mono_Posix_LockfCommand_F_TEST)
2634 {*r = F_TEST; return 0;}
2635 #else /* def F_TEST */
2636 {errno = EINVAL; return -1;}
2637 #endif /* ndef F_TEST */
2638 if (x == Mono_Posix_LockfCommand_F_TLOCK)
2640 {*r = F_TLOCK; return 0;}
2641 #else /* def F_TLOCK */
2642 {errno = EINVAL; return -1;}
2643 #endif /* ndef F_TLOCK */
2644 if (x == Mono_Posix_LockfCommand_F_ULOCK)
2646 {*r = F_ULOCK; return 0;}
2647 #else /* def F_ULOCK */
2648 {errno = EINVAL; return -1;}
2649 #endif /* ndef F_ULOCK */
2652 errno = EINVAL; return -1;
2655 int Mono_Posix_ToLockfCommand (int x, int *r)
2662 {*r = Mono_Posix_LockfCommand_F_LOCK; return 0;}
2663 #endif /* ndef F_LOCK */
2666 {*r = Mono_Posix_LockfCommand_F_TEST; return 0;}
2667 #endif /* ndef F_TEST */
2670 {*r = Mono_Posix_LockfCommand_F_TLOCK; return 0;}
2671 #endif /* ndef F_TLOCK */
2674 {*r = Mono_Posix_LockfCommand_F_ULOCK; return 0;}
2675 #endif /* ndef F_ULOCK */
2676 errno = EINVAL; return -1;
2679 int Mono_Posix_FromMlockallFlags (int x, int *r)
2682 if ((x & Mono_Posix_MlockallFlags_MCL_CURRENT) == Mono_Posix_MlockallFlags_MCL_CURRENT)
2685 #else /* def MCL_CURRENT */
2686 {errno = EINVAL; return -1;}
2687 #endif /* ndef MCL_CURRENT */
2688 if ((x & Mono_Posix_MlockallFlags_MCL_FUTURE) == Mono_Posix_MlockallFlags_MCL_FUTURE)
2691 #else /* def MCL_FUTURE */
2692 {errno = EINVAL; return -1;}
2693 #endif /* ndef MCL_FUTURE */
2699 int Mono_Posix_ToMlockallFlags (int x, int *r)
2705 if ((x & MCL_CURRENT) == MCL_CURRENT)
2706 *r |= Mono_Posix_MlockallFlags_MCL_CURRENT;
2707 #endif /* ndef MCL_CURRENT */
2709 if ((x & MCL_FUTURE) == MCL_FUTURE)
2710 *r |= Mono_Posix_MlockallFlags_MCL_FUTURE;
2711 #endif /* ndef MCL_FUTURE */
2715 int Mono_Posix_FromMmapFlags (int x, int *r)
2718 if ((x & Mono_Posix_MmapFlags_MAP_ANON) == Mono_Posix_MmapFlags_MAP_ANON)
2721 #else /* def MAP_ANON */
2722 {errno = EINVAL; return -1;}
2723 #endif /* ndef MAP_ANON */
2724 if ((x & Mono_Posix_MmapFlags_MAP_ANONYMOUS) == Mono_Posix_MmapFlags_MAP_ANONYMOUS)
2725 #ifdef MAP_ANONYMOUS
2726 *r |= MAP_ANONYMOUS;
2727 #else /* def MAP_ANONYMOUS */
2728 {errno = EINVAL; return -1;}
2729 #endif /* ndef MAP_ANONYMOUS */
2730 if ((x & Mono_Posix_MmapFlags_MAP_DENYWRITE) == Mono_Posix_MmapFlags_MAP_DENYWRITE)
2731 #ifdef MAP_DENYWRITE
2732 *r |= MAP_DENYWRITE;
2733 #else /* def MAP_DENYWRITE */
2734 {errno = EINVAL; return -1;}
2735 #endif /* ndef MAP_DENYWRITE */
2736 if ((x & Mono_Posix_MmapFlags_MAP_EXECUTABLE) == Mono_Posix_MmapFlags_MAP_EXECUTABLE)
2737 #ifdef MAP_EXECUTABLE
2738 *r |= MAP_EXECUTABLE;
2739 #else /* def MAP_EXECUTABLE */
2740 {errno = EINVAL; return -1;}
2741 #endif /* ndef MAP_EXECUTABLE */
2742 if ((x & Mono_Posix_MmapFlags_MAP_FILE) == Mono_Posix_MmapFlags_MAP_FILE)
2745 #else /* def MAP_FILE */
2746 {errno = EINVAL; return -1;}
2747 #endif /* ndef MAP_FILE */
2748 if ((x & Mono_Posix_MmapFlags_MAP_FIXED) == Mono_Posix_MmapFlags_MAP_FIXED)
2751 #else /* def MAP_FIXED */
2752 {errno = EINVAL; return -1;}
2753 #endif /* ndef MAP_FIXED */
2754 if ((x & Mono_Posix_MmapFlags_MAP_GROWSDOWN) == Mono_Posix_MmapFlags_MAP_GROWSDOWN)
2755 #ifdef MAP_GROWSDOWN
2756 *r |= MAP_GROWSDOWN;
2757 #else /* def MAP_GROWSDOWN */
2758 {errno = EINVAL; return -1;}
2759 #endif /* ndef MAP_GROWSDOWN */
2760 if ((x & Mono_Posix_MmapFlags_MAP_LOCKED) == Mono_Posix_MmapFlags_MAP_LOCKED)
2763 #else /* def MAP_LOCKED */
2764 {errno = EINVAL; return -1;}
2765 #endif /* ndef MAP_LOCKED */
2766 if ((x & Mono_Posix_MmapFlags_MAP_NONBLOCK) == Mono_Posix_MmapFlags_MAP_NONBLOCK)
2769 #else /* def MAP_NONBLOCK */
2770 {errno = EINVAL; return -1;}
2771 #endif /* ndef MAP_NONBLOCK */
2772 if ((x & Mono_Posix_MmapFlags_MAP_NORESERVE) == Mono_Posix_MmapFlags_MAP_NORESERVE)
2773 #ifdef MAP_NORESERVE
2774 *r |= MAP_NORESERVE;
2775 #else /* def MAP_NORESERVE */
2776 {errno = EINVAL; return -1;}
2777 #endif /* ndef MAP_NORESERVE */
2778 if ((x & Mono_Posix_MmapFlags_MAP_POPULATE) == Mono_Posix_MmapFlags_MAP_POPULATE)
2781 #else /* def MAP_POPULATE */
2782 {errno = EINVAL; return -1;}
2783 #endif /* ndef MAP_POPULATE */
2784 if ((x & Mono_Posix_MmapFlags_MAP_PRIVATE) == Mono_Posix_MmapFlags_MAP_PRIVATE)
2787 #else /* def MAP_PRIVATE */
2788 {errno = EINVAL; return -1;}
2789 #endif /* ndef MAP_PRIVATE */
2790 if ((x & Mono_Posix_MmapFlags_MAP_SHARED) == Mono_Posix_MmapFlags_MAP_SHARED)
2793 #else /* def MAP_SHARED */
2794 {errno = EINVAL; return -1;}
2795 #endif /* ndef MAP_SHARED */
2796 if ((x & Mono_Posix_MmapFlags_MAP_TYPE) == Mono_Posix_MmapFlags_MAP_TYPE)
2799 #else /* def MAP_TYPE */
2800 {errno = EINVAL; return -1;}
2801 #endif /* ndef MAP_TYPE */
2807 int Mono_Posix_ToMmapFlags (int x, int *r)
2813 if ((x & MAP_ANON) == MAP_ANON)
2814 *r |= Mono_Posix_MmapFlags_MAP_ANON;
2815 #endif /* ndef MAP_ANON */
2816 #ifdef MAP_ANONYMOUS
2817 if ((x & MAP_ANONYMOUS) == MAP_ANONYMOUS)
2818 *r |= Mono_Posix_MmapFlags_MAP_ANONYMOUS;
2819 #endif /* ndef MAP_ANONYMOUS */
2820 #ifdef MAP_DENYWRITE
2821 if ((x & MAP_DENYWRITE) == MAP_DENYWRITE)
2822 *r |= Mono_Posix_MmapFlags_MAP_DENYWRITE;
2823 #endif /* ndef MAP_DENYWRITE */
2824 #ifdef MAP_EXECUTABLE
2825 if ((x & MAP_EXECUTABLE) == MAP_EXECUTABLE)
2826 *r |= Mono_Posix_MmapFlags_MAP_EXECUTABLE;
2827 #endif /* ndef MAP_EXECUTABLE */
2829 if ((x & MAP_FILE) == MAP_FILE)
2830 *r |= Mono_Posix_MmapFlags_MAP_FILE;
2831 #endif /* ndef MAP_FILE */
2833 if ((x & MAP_FIXED) == MAP_FIXED)
2834 *r |= Mono_Posix_MmapFlags_MAP_FIXED;
2835 #endif /* ndef MAP_FIXED */
2836 #ifdef MAP_GROWSDOWN
2837 if ((x & MAP_GROWSDOWN) == MAP_GROWSDOWN)
2838 *r |= Mono_Posix_MmapFlags_MAP_GROWSDOWN;
2839 #endif /* ndef MAP_GROWSDOWN */
2841 if ((x & MAP_LOCKED) == MAP_LOCKED)
2842 *r |= Mono_Posix_MmapFlags_MAP_LOCKED;
2843 #endif /* ndef MAP_LOCKED */
2845 if ((x & MAP_NONBLOCK) == MAP_NONBLOCK)
2846 *r |= Mono_Posix_MmapFlags_MAP_NONBLOCK;
2847 #endif /* ndef MAP_NONBLOCK */
2848 #ifdef MAP_NORESERVE
2849 if ((x & MAP_NORESERVE) == MAP_NORESERVE)
2850 *r |= Mono_Posix_MmapFlags_MAP_NORESERVE;
2851 #endif /* ndef MAP_NORESERVE */
2853 if ((x & MAP_POPULATE) == MAP_POPULATE)
2854 *r |= Mono_Posix_MmapFlags_MAP_POPULATE;
2855 #endif /* ndef MAP_POPULATE */
2857 if ((x & MAP_PRIVATE) == MAP_PRIVATE)
2858 *r |= Mono_Posix_MmapFlags_MAP_PRIVATE;
2859 #endif /* ndef MAP_PRIVATE */
2861 if ((x & MAP_SHARED) == MAP_SHARED)
2862 *r |= Mono_Posix_MmapFlags_MAP_SHARED;
2863 #endif /* ndef MAP_SHARED */
2865 if ((x & MAP_TYPE) == MAP_TYPE)
2866 *r |= Mono_Posix_MmapFlags_MAP_TYPE;
2867 #endif /* ndef MAP_TYPE */
2871 int Mono_Posix_FromMmapProts (int x, int *r)
2874 if ((x & Mono_Posix_MmapProts_PROT_EXEC) == Mono_Posix_MmapProts_PROT_EXEC)
2877 #else /* def PROT_EXEC */
2878 {errno = EINVAL; return -1;}
2879 #endif /* ndef PROT_EXEC */
2880 if ((x & Mono_Posix_MmapProts_PROT_GROWSDOWN) == Mono_Posix_MmapProts_PROT_GROWSDOWN)
2881 #ifdef PROT_GROWSDOWN
2882 *r |= PROT_GROWSDOWN;
2883 #else /* def PROT_GROWSDOWN */
2884 {errno = EINVAL; return -1;}
2885 #endif /* ndef PROT_GROWSDOWN */
2886 if ((x & Mono_Posix_MmapProts_PROT_GROWSUP) == Mono_Posix_MmapProts_PROT_GROWSUP)
2889 #else /* def PROT_GROWSUP */
2890 {errno = EINVAL; return -1;}
2891 #endif /* ndef PROT_GROWSUP */
2892 if ((x & Mono_Posix_MmapProts_PROT_NONE) == Mono_Posix_MmapProts_PROT_NONE)
2895 #else /* def PROT_NONE */
2896 {errno = EINVAL; return -1;}
2897 #endif /* ndef PROT_NONE */
2898 if ((x & Mono_Posix_MmapProts_PROT_READ) == Mono_Posix_MmapProts_PROT_READ)
2901 #else /* def PROT_READ */
2902 {errno = EINVAL; return -1;}
2903 #endif /* ndef PROT_READ */
2904 if ((x & Mono_Posix_MmapProts_PROT_WRITE) == Mono_Posix_MmapProts_PROT_WRITE)
2907 #else /* def PROT_WRITE */
2908 {errno = EINVAL; return -1;}
2909 #endif /* ndef PROT_WRITE */
2915 int Mono_Posix_ToMmapProts (int x, int *r)
2921 if ((x & PROT_EXEC) == PROT_EXEC)
2922 *r |= Mono_Posix_MmapProts_PROT_EXEC;
2923 #endif /* ndef PROT_EXEC */
2924 #ifdef PROT_GROWSDOWN
2925 if ((x & PROT_GROWSDOWN) == PROT_GROWSDOWN)
2926 *r |= Mono_Posix_MmapProts_PROT_GROWSDOWN;
2927 #endif /* ndef PROT_GROWSDOWN */
2929 if ((x & PROT_GROWSUP) == PROT_GROWSUP)
2930 *r |= Mono_Posix_MmapProts_PROT_GROWSUP;
2931 #endif /* ndef PROT_GROWSUP */
2933 if ((x & PROT_NONE) == PROT_NONE)
2934 *r |= Mono_Posix_MmapProts_PROT_NONE;
2935 #endif /* ndef PROT_NONE */
2937 if ((x & PROT_READ) == PROT_READ)
2938 *r |= Mono_Posix_MmapProts_PROT_READ;
2939 #endif /* ndef PROT_READ */
2941 if ((x & PROT_WRITE) == PROT_WRITE)
2942 *r |= Mono_Posix_MmapProts_PROT_WRITE;
2943 #endif /* ndef PROT_WRITE */
2947 int Mono_Posix_FromMountFlags (guint64 x, guint64 *r)
2950 if ((x & Mono_Posix_MountFlags_ST_APPEND) == Mono_Posix_MountFlags_ST_APPEND)
2953 #else /* def ST_APPEND */
2954 {errno = EINVAL; return -1;}
2955 #endif /* ndef ST_APPEND */
2956 if ((x & Mono_Posix_MountFlags_ST_BIND) == Mono_Posix_MountFlags_ST_BIND)
2959 #else /* def ST_BIND */
2960 {errno = EINVAL; return -1;}
2961 #endif /* ndef ST_BIND */
2962 if ((x & Mono_Posix_MountFlags_ST_IMMUTABLE) == Mono_Posix_MountFlags_ST_IMMUTABLE)
2965 #else /* def ST_IMMUTABLE */
2966 {errno = EINVAL; return -1;}
2967 #endif /* ndef ST_IMMUTABLE */
2968 if ((x & Mono_Posix_MountFlags_ST_MANDLOCK) == Mono_Posix_MountFlags_ST_MANDLOCK)
2971 #else /* def ST_MANDLOCK */
2972 {errno = EINVAL; return -1;}
2973 #endif /* ndef ST_MANDLOCK */
2974 if ((x & Mono_Posix_MountFlags_ST_NOATIME) == Mono_Posix_MountFlags_ST_NOATIME)
2977 #else /* def ST_NOATIME */
2978 {errno = EINVAL; return -1;}
2979 #endif /* ndef ST_NOATIME */
2980 if ((x & Mono_Posix_MountFlags_ST_NODEV) == Mono_Posix_MountFlags_ST_NODEV)
2983 #else /* def ST_NODEV */
2984 {errno = EINVAL; return -1;}
2985 #endif /* ndef ST_NODEV */
2986 if ((x & Mono_Posix_MountFlags_ST_NODIRATIME) == Mono_Posix_MountFlags_ST_NODIRATIME)
2987 #ifdef ST_NODIRATIME
2988 *r |= ST_NODIRATIME;
2989 #else /* def ST_NODIRATIME */
2990 {errno = EINVAL; return -1;}
2991 #endif /* ndef ST_NODIRATIME */
2992 if ((x & Mono_Posix_MountFlags_ST_NOEXEC) == Mono_Posix_MountFlags_ST_NOEXEC)
2995 #else /* def ST_NOEXEC */
2996 {errno = EINVAL; return -1;}
2997 #endif /* ndef ST_NOEXEC */
2998 if ((x & Mono_Posix_MountFlags_ST_NOSUID) == Mono_Posix_MountFlags_ST_NOSUID)
3001 #else /* def ST_NOSUID */
3002 {errno = EINVAL; return -1;}
3003 #endif /* ndef ST_NOSUID */
3004 if ((x & Mono_Posix_MountFlags_ST_RDONLY) == Mono_Posix_MountFlags_ST_RDONLY)
3007 #else /* def ST_RDONLY */
3008 {errno = EINVAL; return -1;}
3009 #endif /* ndef ST_RDONLY */
3010 if ((x & Mono_Posix_MountFlags_ST_REMOUNT) == Mono_Posix_MountFlags_ST_REMOUNT)
3013 #else /* def ST_REMOUNT */
3014 {errno = EINVAL; return -1;}
3015 #endif /* ndef ST_REMOUNT */
3016 if ((x & Mono_Posix_MountFlags_ST_SYNCHRONOUS) == Mono_Posix_MountFlags_ST_SYNCHRONOUS)
3017 #ifdef ST_SYNCHRONOUS
3018 *r |= ST_SYNCHRONOUS;
3019 #else /* def ST_SYNCHRONOUS */
3020 {errno = EINVAL; return -1;}
3021 #endif /* ndef ST_SYNCHRONOUS */
3022 if ((x & Mono_Posix_MountFlags_ST_WRITE) == Mono_Posix_MountFlags_ST_WRITE)
3025 #else /* def ST_WRITE */
3026 {errno = EINVAL; return -1;}
3027 #endif /* ndef ST_WRITE */
3033 int Mono_Posix_ToMountFlags (guint64 x, guint64 *r)
3039 if ((x & ST_APPEND) == ST_APPEND)
3040 *r |= Mono_Posix_MountFlags_ST_APPEND;
3041 #endif /* ndef ST_APPEND */
3043 if ((x & ST_BIND) == ST_BIND)
3044 *r |= Mono_Posix_MountFlags_ST_BIND;
3045 #endif /* ndef ST_BIND */
3047 if ((x & ST_IMMUTABLE) == ST_IMMUTABLE)
3048 *r |= Mono_Posix_MountFlags_ST_IMMUTABLE;
3049 #endif /* ndef ST_IMMUTABLE */
3051 if ((x & ST_MANDLOCK) == ST_MANDLOCK)
3052 *r |= Mono_Posix_MountFlags_ST_MANDLOCK;
3053 #endif /* ndef ST_MANDLOCK */
3055 if ((x & ST_NOATIME) == ST_NOATIME)
3056 *r |= Mono_Posix_MountFlags_ST_NOATIME;
3057 #endif /* ndef ST_NOATIME */
3059 if ((x & ST_NODEV) == ST_NODEV)
3060 *r |= Mono_Posix_MountFlags_ST_NODEV;
3061 #endif /* ndef ST_NODEV */
3062 #ifdef ST_NODIRATIME
3063 if ((x & ST_NODIRATIME) == ST_NODIRATIME)
3064 *r |= Mono_Posix_MountFlags_ST_NODIRATIME;
3065 #endif /* ndef ST_NODIRATIME */
3067 if ((x & ST_NOEXEC) == ST_NOEXEC)
3068 *r |= Mono_Posix_MountFlags_ST_NOEXEC;
3069 #endif /* ndef ST_NOEXEC */
3071 if ((x & ST_NOSUID) == ST_NOSUID)
3072 *r |= Mono_Posix_MountFlags_ST_NOSUID;
3073 #endif /* ndef ST_NOSUID */
3075 if ((x & ST_RDONLY) == ST_RDONLY)
3076 *r |= Mono_Posix_MountFlags_ST_RDONLY;
3077 #endif /* ndef ST_RDONLY */
3079 if ((x & ST_REMOUNT) == ST_REMOUNT)
3080 *r |= Mono_Posix_MountFlags_ST_REMOUNT;
3081 #endif /* ndef ST_REMOUNT */
3082 #ifdef ST_SYNCHRONOUS
3083 if ((x & ST_SYNCHRONOUS) == ST_SYNCHRONOUS)
3084 *r |= Mono_Posix_MountFlags_ST_SYNCHRONOUS;
3085 #endif /* ndef ST_SYNCHRONOUS */
3087 if ((x & ST_WRITE) == ST_WRITE)
3088 *r |= Mono_Posix_MountFlags_ST_WRITE;
3089 #endif /* ndef ST_WRITE */
3093 int Mono_Posix_FromMremapFlags (guint64 x, guint64 *r)
3096 if ((x & Mono_Posix_MremapFlags_MREMAP_MAYMOVE) == Mono_Posix_MremapFlags_MREMAP_MAYMOVE)
3097 #ifdef MREMAP_MAYMOVE
3098 *r |= MREMAP_MAYMOVE;
3099 #else /* def MREMAP_MAYMOVE */
3100 {errno = EINVAL; return -1;}
3101 #endif /* ndef MREMAP_MAYMOVE */
3107 int Mono_Posix_ToMremapFlags (guint64 x, guint64 *r)
3112 #ifdef MREMAP_MAYMOVE
3113 if ((x & MREMAP_MAYMOVE) == MREMAP_MAYMOVE)
3114 *r |= Mono_Posix_MremapFlags_MREMAP_MAYMOVE;
3115 #endif /* ndef MREMAP_MAYMOVE */
3119 int Mono_Posix_FromMsyncFlags (int x, int *r)
3122 if ((x & Mono_Posix_MsyncFlags_MS_ASYNC) == Mono_Posix_MsyncFlags_MS_ASYNC)
3125 #else /* def MS_ASYNC */
3126 {errno = EINVAL; return -1;}
3127 #endif /* ndef MS_ASYNC */
3128 if ((x & Mono_Posix_MsyncFlags_MS_INVALIDATE) == Mono_Posix_MsyncFlags_MS_INVALIDATE)
3129 #ifdef MS_INVALIDATE
3130 *r |= MS_INVALIDATE;
3131 #else /* def MS_INVALIDATE */
3132 {errno = EINVAL; return -1;}
3133 #endif /* ndef MS_INVALIDATE */
3134 if ((x & Mono_Posix_MsyncFlags_MS_SYNC) == Mono_Posix_MsyncFlags_MS_SYNC)
3137 #else /* def MS_SYNC */
3138 {errno = EINVAL; return -1;}
3139 #endif /* ndef MS_SYNC */
3145 int Mono_Posix_ToMsyncFlags (int x, int *r)
3151 if ((x & MS_ASYNC) == MS_ASYNC)
3152 *r |= Mono_Posix_MsyncFlags_MS_ASYNC;
3153 #endif /* ndef MS_ASYNC */
3154 #ifdef MS_INVALIDATE
3155 if ((x & MS_INVALIDATE) == MS_INVALIDATE)
3156 *r |= Mono_Posix_MsyncFlags_MS_INVALIDATE;
3157 #endif /* ndef MS_INVALIDATE */
3159 if ((x & MS_SYNC) == MS_SYNC)
3160 *r |= Mono_Posix_MsyncFlags_MS_SYNC;
3161 #endif /* ndef MS_SYNC */
3165 int Mono_Posix_FromOpenFlags (int x, int *r)
3168 if ((x & Mono_Posix_OpenFlags_O_APPEND) == Mono_Posix_OpenFlags_O_APPEND)
3171 #else /* def O_APPEND */
3172 {errno = EINVAL; return -1;}
3173 #endif /* ndef O_APPEND */
3174 if ((x & Mono_Posix_OpenFlags_O_ASYNC) == Mono_Posix_OpenFlags_O_ASYNC)
3177 #else /* def O_ASYNC */
3178 {errno = EINVAL; return -1;}
3179 #endif /* ndef O_ASYNC */
3180 if ((x & Mono_Posix_OpenFlags_O_CREAT) == Mono_Posix_OpenFlags_O_CREAT)
3183 #else /* def O_CREAT */
3184 {errno = EINVAL; return -1;}
3185 #endif /* ndef O_CREAT */
3186 if ((x & Mono_Posix_OpenFlags_O_DIRECT) == Mono_Posix_OpenFlags_O_DIRECT)
3189 #else /* def O_DIRECT */
3190 {errno = EINVAL; return -1;}
3191 #endif /* ndef O_DIRECT */
3192 if ((x & Mono_Posix_OpenFlags_O_DIRECTORY) == Mono_Posix_OpenFlags_O_DIRECTORY)
3195 #else /* def O_DIRECTORY */
3196 {errno = EINVAL; return -1;}
3197 #endif /* ndef O_DIRECTORY */
3198 if ((x & Mono_Posix_OpenFlags_O_EXCL) == Mono_Posix_OpenFlags_O_EXCL)
3201 #else /* def O_EXCL */
3202 {errno = EINVAL; return -1;}
3203 #endif /* ndef O_EXCL */
3204 if ((x & Mono_Posix_OpenFlags_O_LARGEFILE) == Mono_Posix_OpenFlags_O_LARGEFILE)
3207 #else /* def O_LARGEFILE */
3208 {errno = EINVAL; return -1;}
3209 #endif /* ndef O_LARGEFILE */
3210 if ((x & Mono_Posix_OpenFlags_O_NOCTTY) == Mono_Posix_OpenFlags_O_NOCTTY)
3213 #else /* def O_NOCTTY */
3214 {errno = EINVAL; return -1;}
3215 #endif /* ndef O_NOCTTY */
3216 if ((x & Mono_Posix_OpenFlags_O_NOFOLLOW) == Mono_Posix_OpenFlags_O_NOFOLLOW)
3219 #else /* def O_NOFOLLOW */
3220 {errno = EINVAL; return -1;}
3221 #endif /* ndef O_NOFOLLOW */
3222 if ((x & Mono_Posix_OpenFlags_O_NONBLOCK) == Mono_Posix_OpenFlags_O_NONBLOCK)
3225 #else /* def O_NONBLOCK */
3226 {errno = EINVAL; return -1;}
3227 #endif /* ndef O_NONBLOCK */
3228 if ((x & Mono_Posix_OpenFlags_O_RDONLY) == Mono_Posix_OpenFlags_O_RDONLY)
3231 #else /* def O_RDONLY */
3232 {errno = EINVAL; return -1;}
3233 #endif /* ndef O_RDONLY */
3234 if ((x & Mono_Posix_OpenFlags_O_RDWR) == Mono_Posix_OpenFlags_O_RDWR)
3237 #else /* def O_RDWR */
3238 {errno = EINVAL; return -1;}
3239 #endif /* ndef O_RDWR */
3240 if ((x & Mono_Posix_OpenFlags_O_SYNC) == Mono_Posix_OpenFlags_O_SYNC)
3243 #else /* def O_SYNC */
3244 {errno = EINVAL; return -1;}
3245 #endif /* ndef O_SYNC */
3246 if ((x & Mono_Posix_OpenFlags_O_TRUNC) == Mono_Posix_OpenFlags_O_TRUNC)
3249 #else /* def O_TRUNC */
3250 {errno = EINVAL; return -1;}
3251 #endif /* ndef O_TRUNC */
3252 if ((x & Mono_Posix_OpenFlags_O_WRONLY) == Mono_Posix_OpenFlags_O_WRONLY)
3255 #else /* def O_WRONLY */
3256 {errno = EINVAL; return -1;}
3257 #endif /* ndef O_WRONLY */
3263 int Mono_Posix_ToOpenFlags (int x, int *r)
3269 if ((x & O_APPEND) == O_APPEND)
3270 *r |= Mono_Posix_OpenFlags_O_APPEND;
3271 #endif /* ndef O_APPEND */
3273 if ((x & O_ASYNC) == O_ASYNC)
3274 *r |= Mono_Posix_OpenFlags_O_ASYNC;
3275 #endif /* ndef O_ASYNC */
3277 if ((x & O_CREAT) == O_CREAT)
3278 *r |= Mono_Posix_OpenFlags_O_CREAT;
3279 #endif /* ndef O_CREAT */
3281 if ((x & O_DIRECT) == O_DIRECT)
3282 *r |= Mono_Posix_OpenFlags_O_DIRECT;
3283 #endif /* ndef O_DIRECT */
3285 if ((x & O_DIRECTORY) == O_DIRECTORY)
3286 *r |= Mono_Posix_OpenFlags_O_DIRECTORY;
3287 #endif /* ndef O_DIRECTORY */
3289 if ((x & O_EXCL) == O_EXCL)
3290 *r |= Mono_Posix_OpenFlags_O_EXCL;
3291 #endif /* ndef O_EXCL */
3293 if ((x & O_LARGEFILE) == O_LARGEFILE)
3294 *r |= Mono_Posix_OpenFlags_O_LARGEFILE;
3295 #endif /* ndef O_LARGEFILE */
3297 if ((x & O_NOCTTY) == O_NOCTTY)
3298 *r |= Mono_Posix_OpenFlags_O_NOCTTY;
3299 #endif /* ndef O_NOCTTY */
3301 if ((x & O_NOFOLLOW) == O_NOFOLLOW)
3302 *r |= Mono_Posix_OpenFlags_O_NOFOLLOW;
3303 #endif /* ndef O_NOFOLLOW */
3305 if ((x & O_NONBLOCK) == O_NONBLOCK)
3306 *r |= Mono_Posix_OpenFlags_O_NONBLOCK;
3307 #endif /* ndef O_NONBLOCK */
3309 if ((x & O_RDONLY) == O_RDONLY)
3310 *r |= Mono_Posix_OpenFlags_O_RDONLY;
3311 #endif /* ndef O_RDONLY */
3313 if ((x & O_RDWR) == O_RDWR)
3314 *r |= Mono_Posix_OpenFlags_O_RDWR;
3315 #endif /* ndef O_RDWR */
3317 if ((x & O_SYNC) == O_SYNC)
3318 *r |= Mono_Posix_OpenFlags_O_SYNC;
3319 #endif /* ndef O_SYNC */
3321 if ((x & O_TRUNC) == O_TRUNC)
3322 *r |= Mono_Posix_OpenFlags_O_TRUNC;
3323 #endif /* ndef O_TRUNC */
3325 if ((x & O_WRONLY) == O_WRONLY)
3326 *r |= Mono_Posix_OpenFlags_O_WRONLY;
3327 #endif /* ndef O_WRONLY */
3331 int Mono_Posix_FromPathconfName (int x, int *r)
3334 if (x == Mono_Posix_PathconfName__PC_2_SYMLINKS)
3335 #ifdef _PC_2_SYMLINKS
3336 {*r = _PC_2_SYMLINKS; return 0;}
3337 #else /* def _PC_2_SYMLINKS */
3338 {errno = EINVAL; return -1;}
3339 #endif /* ndef _PC_2_SYMLINKS */
3340 if (x == Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN)
3341 #ifdef _PC_ALLOC_SIZE_MIN
3342 {*r = _PC_ALLOC_SIZE_MIN; return 0;}
3343 #else /* def _PC_ALLOC_SIZE_MIN */
3344 {errno = EINVAL; return -1;}
3345 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3346 if (x == Mono_Posix_PathconfName__PC_ASYNC_IO)
3348 {*r = _PC_ASYNC_IO; return 0;}
3349 #else /* def _PC_ASYNC_IO */
3350 {errno = EINVAL; return -1;}
3351 #endif /* ndef _PC_ASYNC_IO */
3352 if (x == Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED)
3353 #ifdef _PC_CHOWN_RESTRICTED
3354 {*r = _PC_CHOWN_RESTRICTED; return 0;}
3355 #else /* def _PC_CHOWN_RESTRICTED */
3356 {errno = EINVAL; return -1;}
3357 #endif /* ndef _PC_CHOWN_RESTRICTED */
3358 if (x == Mono_Posix_PathconfName__PC_FILESIZEBITS)
3359 #ifdef _PC_FILESIZEBITS
3360 {*r = _PC_FILESIZEBITS; return 0;}
3361 #else /* def _PC_FILESIZEBITS */
3362 {errno = EINVAL; return -1;}
3363 #endif /* ndef _PC_FILESIZEBITS */
3364 if (x == Mono_Posix_PathconfName__PC_LINK_MAX)
3366 {*r = _PC_LINK_MAX; return 0;}
3367 #else /* def _PC_LINK_MAX */
3368 {errno = EINVAL; return -1;}
3369 #endif /* ndef _PC_LINK_MAX */
3370 if (x == Mono_Posix_PathconfName__PC_MAX_CANON)
3371 #ifdef _PC_MAX_CANON
3372 {*r = _PC_MAX_CANON; return 0;}
3373 #else /* def _PC_MAX_CANON */
3374 {errno = EINVAL; return -1;}
3375 #endif /* ndef _PC_MAX_CANON */
3376 if (x == Mono_Posix_PathconfName__PC_MAX_INPUT)
3377 #ifdef _PC_MAX_INPUT
3378 {*r = _PC_MAX_INPUT; return 0;}
3379 #else /* def _PC_MAX_INPUT */
3380 {errno = EINVAL; return -1;}
3381 #endif /* ndef _PC_MAX_INPUT */
3382 if (x == Mono_Posix_PathconfName__PC_NAME_MAX)
3384 {*r = _PC_NAME_MAX; return 0;}
3385 #else /* def _PC_NAME_MAX */
3386 {errno = EINVAL; return -1;}
3387 #endif /* ndef _PC_NAME_MAX */
3388 if (x == Mono_Posix_PathconfName__PC_NO_TRUNC)
3390 {*r = _PC_NO_TRUNC; return 0;}
3391 #else /* def _PC_NO_TRUNC */
3392 {errno = EINVAL; return -1;}
3393 #endif /* ndef _PC_NO_TRUNC */
3394 if (x == Mono_Posix_PathconfName__PC_PATH_MAX)
3396 {*r = _PC_PATH_MAX; return 0;}
3397 #else /* def _PC_PATH_MAX */
3398 {errno = EINVAL; return -1;}
3399 #endif /* ndef _PC_PATH_MAX */
3400 if (x == Mono_Posix_PathconfName__PC_PIPE_BUF)
3402 {*r = _PC_PIPE_BUF; return 0;}
3403 #else /* def _PC_PIPE_BUF */
3404 {errno = EINVAL; return -1;}
3405 #endif /* ndef _PC_PIPE_BUF */
3406 if (x == Mono_Posix_PathconfName__PC_PRIO_IO)
3408 {*r = _PC_PRIO_IO; return 0;}
3409 #else /* def _PC_PRIO_IO */
3410 {errno = EINVAL; return -1;}
3411 #endif /* ndef _PC_PRIO_IO */
3412 if (x == Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE)
3413 #ifdef _PC_REC_INCR_XFER_SIZE
3414 {*r = _PC_REC_INCR_XFER_SIZE; return 0;}
3415 #else /* def _PC_REC_INCR_XFER_SIZE */
3416 {errno = EINVAL; return -1;}
3417 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3418 if (x == Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE)
3419 #ifdef _PC_REC_MAX_XFER_SIZE
3420 {*r = _PC_REC_MAX_XFER_SIZE; return 0;}
3421 #else /* def _PC_REC_MAX_XFER_SIZE */
3422 {errno = EINVAL; return -1;}
3423 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3424 if (x == Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE)
3425 #ifdef _PC_REC_MIN_XFER_SIZE
3426 {*r = _PC_REC_MIN_XFER_SIZE; return 0;}
3427 #else /* def _PC_REC_MIN_XFER_SIZE */
3428 {errno = EINVAL; return -1;}
3429 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3430 if (x == Mono_Posix_PathconfName__PC_REC_XFER_ALIGN)
3431 #ifdef _PC_REC_XFER_ALIGN
3432 {*r = _PC_REC_XFER_ALIGN; return 0;}
3433 #else /* def _PC_REC_XFER_ALIGN */
3434 {errno = EINVAL; return -1;}
3435 #endif /* ndef _PC_REC_XFER_ALIGN */
3436 if (x == Mono_Posix_PathconfName__PC_SOCK_MAXBUF)
3437 #ifdef _PC_SOCK_MAXBUF
3438 {*r = _PC_SOCK_MAXBUF; return 0;}
3439 #else /* def _PC_SOCK_MAXBUF */
3440 {errno = EINVAL; return -1;}
3441 #endif /* ndef _PC_SOCK_MAXBUF */
3442 if (x == Mono_Posix_PathconfName__PC_SYMLINK_MAX)
3443 #ifdef _PC_SYMLINK_MAX
3444 {*r = _PC_SYMLINK_MAX; return 0;}
3445 #else /* def _PC_SYMLINK_MAX */
3446 {errno = EINVAL; return -1;}
3447 #endif /* ndef _PC_SYMLINK_MAX */
3448 if (x == Mono_Posix_PathconfName__PC_SYNC_IO)
3450 {*r = _PC_SYNC_IO; return 0;}
3451 #else /* def _PC_SYNC_IO */
3452 {errno = EINVAL; return -1;}
3453 #endif /* ndef _PC_SYNC_IO */
3454 if (x == Mono_Posix_PathconfName__PC_VDISABLE)
3456 {*r = _PC_VDISABLE; return 0;}
3457 #else /* def _PC_VDISABLE */
3458 {errno = EINVAL; return -1;}
3459 #endif /* ndef _PC_VDISABLE */
3462 errno = EINVAL; return -1;
3465 int Mono_Posix_ToPathconfName (int x, int *r)
3470 #ifdef _PC_2_SYMLINKS
3471 if (x == _PC_2_SYMLINKS)
3472 {*r = Mono_Posix_PathconfName__PC_2_SYMLINKS; return 0;}
3473 #endif /* ndef _PC_2_SYMLINKS */
3474 #ifdef _PC_ALLOC_SIZE_MIN
3475 if (x == _PC_ALLOC_SIZE_MIN)
3476 {*r = Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN; return 0;}
3477 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3479 if (x == _PC_ASYNC_IO)
3480 {*r = Mono_Posix_PathconfName__PC_ASYNC_IO; return 0;}
3481 #endif /* ndef _PC_ASYNC_IO */
3482 #ifdef _PC_CHOWN_RESTRICTED
3483 if (x == _PC_CHOWN_RESTRICTED)
3484 {*r = Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED; return 0;}
3485 #endif /* ndef _PC_CHOWN_RESTRICTED */
3486 #ifdef _PC_FILESIZEBITS
3487 if (x == _PC_FILESIZEBITS)
3488 {*r = Mono_Posix_PathconfName__PC_FILESIZEBITS; return 0;}
3489 #endif /* ndef _PC_FILESIZEBITS */
3491 if (x == _PC_LINK_MAX)
3492 {*r = Mono_Posix_PathconfName__PC_LINK_MAX; return 0;}
3493 #endif /* ndef _PC_LINK_MAX */
3494 #ifdef _PC_MAX_CANON
3495 if (x == _PC_MAX_CANON)
3496 {*r = Mono_Posix_PathconfName__PC_MAX_CANON; return 0;}
3497 #endif /* ndef _PC_MAX_CANON */
3498 #ifdef _PC_MAX_INPUT
3499 if (x == _PC_MAX_INPUT)
3500 {*r = Mono_Posix_PathconfName__PC_MAX_INPUT; return 0;}
3501 #endif /* ndef _PC_MAX_INPUT */
3503 if (x == _PC_NAME_MAX)
3504 {*r = Mono_Posix_PathconfName__PC_NAME_MAX; return 0;}
3505 #endif /* ndef _PC_NAME_MAX */
3507 if (x == _PC_NO_TRUNC)
3508 {*r = Mono_Posix_PathconfName__PC_NO_TRUNC; return 0;}
3509 #endif /* ndef _PC_NO_TRUNC */
3511 if (x == _PC_PATH_MAX)
3512 {*r = Mono_Posix_PathconfName__PC_PATH_MAX; return 0;}
3513 #endif /* ndef _PC_PATH_MAX */
3515 if (x == _PC_PIPE_BUF)
3516 {*r = Mono_Posix_PathconfName__PC_PIPE_BUF; return 0;}
3517 #endif /* ndef _PC_PIPE_BUF */
3519 if (x == _PC_PRIO_IO)
3520 {*r = Mono_Posix_PathconfName__PC_PRIO_IO; return 0;}
3521 #endif /* ndef _PC_PRIO_IO */
3522 #ifdef _PC_REC_INCR_XFER_SIZE
3523 if (x == _PC_REC_INCR_XFER_SIZE)
3524 {*r = Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE; return 0;}
3525 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3526 #ifdef _PC_REC_MAX_XFER_SIZE
3527 if (x == _PC_REC_MAX_XFER_SIZE)
3528 {*r = Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE; return 0;}
3529 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3530 #ifdef _PC_REC_MIN_XFER_SIZE
3531 if (x == _PC_REC_MIN_XFER_SIZE)
3532 {*r = Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE; return 0;}
3533 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3534 #ifdef _PC_REC_XFER_ALIGN
3535 if (x == _PC_REC_XFER_ALIGN)
3536 {*r = Mono_Posix_PathconfName__PC_REC_XFER_ALIGN; return 0;}
3537 #endif /* ndef _PC_REC_XFER_ALIGN */
3538 #ifdef _PC_SOCK_MAXBUF
3539 if (x == _PC_SOCK_MAXBUF)
3540 {*r = Mono_Posix_PathconfName__PC_SOCK_MAXBUF; return 0;}
3541 #endif /* ndef _PC_SOCK_MAXBUF */
3542 #ifdef _PC_SYMLINK_MAX
3543 if (x == _PC_SYMLINK_MAX)
3544 {*r = Mono_Posix_PathconfName__PC_SYMLINK_MAX; return 0;}
3545 #endif /* ndef _PC_SYMLINK_MAX */
3547 if (x == _PC_SYNC_IO)
3548 {*r = Mono_Posix_PathconfName__PC_SYNC_IO; return 0;}
3549 #endif /* ndef _PC_SYNC_IO */
3551 if (x == _PC_VDISABLE)
3552 {*r = Mono_Posix_PathconfName__PC_VDISABLE; return 0;}
3553 #endif /* ndef _PC_VDISABLE */
3554 errno = EINVAL; return -1;
3557 int Mono_Posix_FromPollEvents (short x, short *r)
3560 if ((x & Mono_Posix_PollEvents_POLLERR) == Mono_Posix_PollEvents_POLLERR)
3563 #else /* def POLLERR */
3564 {errno = EINVAL; return -1;}
3565 #endif /* ndef POLLERR */
3566 if ((x & Mono_Posix_PollEvents_POLLHUP) == Mono_Posix_PollEvents_POLLHUP)
3569 #else /* def POLLHUP */
3570 {errno = EINVAL; return -1;}
3571 #endif /* ndef POLLHUP */
3572 if ((x & Mono_Posix_PollEvents_POLLIN) == Mono_Posix_PollEvents_POLLIN)
3575 #else /* def POLLIN */
3576 {errno = EINVAL; return -1;}
3577 #endif /* ndef POLLIN */
3578 if ((x & Mono_Posix_PollEvents_POLLNVAL) == Mono_Posix_PollEvents_POLLNVAL)
3581 #else /* def POLLNVAL */
3582 {errno = EINVAL; return -1;}
3583 #endif /* ndef POLLNVAL */
3584 if ((x & Mono_Posix_PollEvents_POLLOUT) == Mono_Posix_PollEvents_POLLOUT)
3587 #else /* def POLLOUT */
3588 {errno = EINVAL; return -1;}
3589 #endif /* ndef POLLOUT */
3590 if ((x & Mono_Posix_PollEvents_POLLPRI) == Mono_Posix_PollEvents_POLLPRI)
3593 #else /* def POLLPRI */
3594 {errno = EINVAL; return -1;}
3595 #endif /* ndef POLLPRI */
3596 if ((x & Mono_Posix_PollEvents_POLLRDBAND) == Mono_Posix_PollEvents_POLLRDBAND)
3599 #else /* def POLLRDBAND */
3600 {errno = EINVAL; return -1;}
3601 #endif /* ndef POLLRDBAND */
3602 if ((x & Mono_Posix_PollEvents_POLLRDNORM) == Mono_Posix_PollEvents_POLLRDNORM)
3605 #else /* def POLLRDNORM */
3606 {errno = EINVAL; return -1;}
3607 #endif /* ndef POLLRDNORM */
3608 if ((x & Mono_Posix_PollEvents_POLLWRBAND) == Mono_Posix_PollEvents_POLLWRBAND)
3611 #else /* def POLLWRBAND */
3612 {errno = EINVAL; return -1;}
3613 #endif /* ndef POLLWRBAND */
3614 if ((x & Mono_Posix_PollEvents_POLLWRNORM) == Mono_Posix_PollEvents_POLLWRNORM)
3617 #else /* def POLLWRNORM */
3618 {errno = EINVAL; return -1;}
3619 #endif /* ndef POLLWRNORM */
3625 int Mono_Posix_ToPollEvents (short x, short *r)
3631 if ((x & POLLERR) == POLLERR)
3632 *r |= Mono_Posix_PollEvents_POLLERR;
3633 #endif /* ndef POLLERR */
3635 if ((x & POLLHUP) == POLLHUP)
3636 *r |= Mono_Posix_PollEvents_POLLHUP;
3637 #endif /* ndef POLLHUP */
3639 if ((x & POLLIN) == POLLIN)
3640 *r |= Mono_Posix_PollEvents_POLLIN;
3641 #endif /* ndef POLLIN */
3643 if ((x & POLLNVAL) == POLLNVAL)
3644 *r |= Mono_Posix_PollEvents_POLLNVAL;
3645 #endif /* ndef POLLNVAL */
3647 if ((x & POLLOUT) == POLLOUT)
3648 *r |= Mono_Posix_PollEvents_POLLOUT;
3649 #endif /* ndef POLLOUT */
3651 if ((x & POLLPRI) == POLLPRI)
3652 *r |= Mono_Posix_PollEvents_POLLPRI;
3653 #endif /* ndef POLLPRI */
3655 if ((x & POLLRDBAND) == POLLRDBAND)
3656 *r |= Mono_Posix_PollEvents_POLLRDBAND;
3657 #endif /* ndef POLLRDBAND */
3659 if ((x & POLLRDNORM) == POLLRDNORM)
3660 *r |= Mono_Posix_PollEvents_POLLRDNORM;
3661 #endif /* ndef POLLRDNORM */
3663 if ((x & POLLWRBAND) == POLLWRBAND)
3664 *r |= Mono_Posix_PollEvents_POLLWRBAND;
3665 #endif /* ndef POLLWRBAND */
3667 if ((x & POLLWRNORM) == POLLWRNORM)
3668 *r |= Mono_Posix_PollEvents_POLLWRNORM;
3669 #endif /* ndef POLLWRNORM */
3673 #ifdef HAVE_STRUCT_POLLFD
3675 Mono_Posix_FromPollfd (struct Mono_Posix_Pollfd *from, struct pollfd *to)
3677 _cnm_return_val_if_overflow (int, from->fd, -1);
3679 memset (to, 0, sizeof(*to));
3682 if (Mono_Posix_FromPollEvents (from->events, &to->events) != 0) {
3685 if (Mono_Posix_FromPollEvents (from->revents, &to->revents) != 0) {
3691 #endif /* ndef HAVE_STRUCT_POLLFD */
3694 #ifdef HAVE_STRUCT_POLLFD
3696 Mono_Posix_ToPollfd (struct pollfd *from, struct Mono_Posix_Pollfd *to)
3698 _cnm_return_val_if_overflow (int, from->fd, -1);
3700 memset (to, 0, sizeof(*to));
3703 if (Mono_Posix_ToPollEvents (from->events, &to->events) != 0) {
3706 if (Mono_Posix_ToPollEvents (from->revents, &to->revents) != 0) {
3712 #endif /* ndef HAVE_STRUCT_POLLFD */
3715 int Mono_Posix_FromPosixFadviseAdvice (int x, int *r)
3718 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED)
3719 #ifdef POSIX_FADV_DONTNEED
3720 {*r = POSIX_FADV_DONTNEED; return 0;}
3721 #else /* def POSIX_FADV_DONTNEED */
3722 {errno = EINVAL; return -1;}
3723 #endif /* ndef POSIX_FADV_DONTNEED */
3724 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE)
3725 #ifdef POSIX_FADV_NOREUSE
3726 {*r = POSIX_FADV_NOREUSE; return 0;}
3727 #else /* def POSIX_FADV_NOREUSE */
3728 {errno = EINVAL; return -1;}
3729 #endif /* ndef POSIX_FADV_NOREUSE */
3730 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL)
3731 #ifdef POSIX_FADV_NORMAL
3732 {*r = POSIX_FADV_NORMAL; return 0;}
3733 #else /* def POSIX_FADV_NORMAL */
3734 {errno = EINVAL; return -1;}
3735 #endif /* ndef POSIX_FADV_NORMAL */
3736 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM)
3737 #ifdef POSIX_FADV_RANDOM
3738 {*r = POSIX_FADV_RANDOM; return 0;}
3739 #else /* def POSIX_FADV_RANDOM */
3740 {errno = EINVAL; return -1;}
3741 #endif /* ndef POSIX_FADV_RANDOM */
3742 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL)
3743 #ifdef POSIX_FADV_SEQUENTIAL
3744 {*r = POSIX_FADV_SEQUENTIAL; return 0;}
3745 #else /* def POSIX_FADV_SEQUENTIAL */
3746 {errno = EINVAL; return -1;}
3747 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3748 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED)
3749 #ifdef POSIX_FADV_WILLNEED
3750 {*r = POSIX_FADV_WILLNEED; return 0;}
3751 #else /* def POSIX_FADV_WILLNEED */
3752 {errno = EINVAL; return -1;}
3753 #endif /* ndef POSIX_FADV_WILLNEED */
3756 errno = EINVAL; return -1;
3759 int Mono_Posix_ToPosixFadviseAdvice (int x, int *r)
3764 #ifdef POSIX_FADV_DONTNEED
3765 if (x == POSIX_FADV_DONTNEED)
3766 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED; return 0;}
3767 #endif /* ndef POSIX_FADV_DONTNEED */
3768 #ifdef POSIX_FADV_NOREUSE
3769 if (x == POSIX_FADV_NOREUSE)
3770 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE; return 0;}
3771 #endif /* ndef POSIX_FADV_NOREUSE */
3772 #ifdef POSIX_FADV_NORMAL
3773 if (x == POSIX_FADV_NORMAL)
3774 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL; return 0;}
3775 #endif /* ndef POSIX_FADV_NORMAL */
3776 #ifdef POSIX_FADV_RANDOM
3777 if (x == POSIX_FADV_RANDOM)
3778 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM; return 0;}
3779 #endif /* ndef POSIX_FADV_RANDOM */
3780 #ifdef POSIX_FADV_SEQUENTIAL
3781 if (x == POSIX_FADV_SEQUENTIAL)
3782 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL; return 0;}
3783 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3784 #ifdef POSIX_FADV_WILLNEED
3785 if (x == POSIX_FADV_WILLNEED)
3786 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED; return 0;}
3787 #endif /* ndef POSIX_FADV_WILLNEED */
3788 errno = EINVAL; return -1;
3791 int Mono_Posix_FromPosixMadviseAdvice (int x, int *r)
3794 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED)
3795 #ifdef POSIX_MADV_DONTNEED
3796 {*r = POSIX_MADV_DONTNEED; return 0;}
3797 #else /* def POSIX_MADV_DONTNEED */
3798 {errno = EINVAL; return -1;}
3799 #endif /* ndef POSIX_MADV_DONTNEED */
3800 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL)
3801 #ifdef POSIX_MADV_NORMAL
3802 {*r = POSIX_MADV_NORMAL; return 0;}
3803 #else /* def POSIX_MADV_NORMAL */
3804 {errno = EINVAL; return -1;}
3805 #endif /* ndef POSIX_MADV_NORMAL */
3806 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM)
3807 #ifdef POSIX_MADV_RANDOM
3808 {*r = POSIX_MADV_RANDOM; return 0;}
3809 #else /* def POSIX_MADV_RANDOM */
3810 {errno = EINVAL; return -1;}
3811 #endif /* ndef POSIX_MADV_RANDOM */
3812 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL)
3813 #ifdef POSIX_MADV_SEQUENTIAL
3814 {*r = POSIX_MADV_SEQUENTIAL; return 0;}
3815 #else /* def POSIX_MADV_SEQUENTIAL */
3816 {errno = EINVAL; return -1;}
3817 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3818 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED)
3819 #ifdef POSIX_MADV_WILLNEED
3820 {*r = POSIX_MADV_WILLNEED; return 0;}
3821 #else /* def POSIX_MADV_WILLNEED */
3822 {errno = EINVAL; return -1;}
3823 #endif /* ndef POSIX_MADV_WILLNEED */
3826 errno = EINVAL; return -1;
3829 int Mono_Posix_ToPosixMadviseAdvice (int x, int *r)
3834 #ifdef POSIX_MADV_DONTNEED
3835 if (x == POSIX_MADV_DONTNEED)
3836 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED; return 0;}
3837 #endif /* ndef POSIX_MADV_DONTNEED */
3838 #ifdef POSIX_MADV_NORMAL
3839 if (x == POSIX_MADV_NORMAL)
3840 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL; return 0;}
3841 #endif /* ndef POSIX_MADV_NORMAL */
3842 #ifdef POSIX_MADV_RANDOM
3843 if (x == POSIX_MADV_RANDOM)
3844 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM; return 0;}
3845 #endif /* ndef POSIX_MADV_RANDOM */
3846 #ifdef POSIX_MADV_SEQUENTIAL
3847 if (x == POSIX_MADV_SEQUENTIAL)
3848 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL; return 0;}
3849 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3850 #ifdef POSIX_MADV_WILLNEED
3851 if (x == POSIX_MADV_WILLNEED)
3852 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED; return 0;}
3853 #endif /* ndef POSIX_MADV_WILLNEED */
3854 errno = EINVAL; return -1;
3857 int Mono_Posix_FromSeekFlags (short x, short *r)
3860 if (x == Mono_Posix_SeekFlags_L_INCR)
3862 {*r = L_INCR; return 0;}
3863 #else /* def L_INCR */
3864 {errno = EINVAL; return -1;}
3865 #endif /* ndef L_INCR */
3866 if (x == Mono_Posix_SeekFlags_L_SET)
3868 {*r = L_SET; return 0;}
3869 #else /* def L_SET */
3870 {errno = EINVAL; return -1;}
3871 #endif /* ndef L_SET */
3872 if (x == Mono_Posix_SeekFlags_L_XTND)
3874 {*r = L_XTND; return 0;}
3875 #else /* def L_XTND */
3876 {errno = EINVAL; return -1;}
3877 #endif /* ndef L_XTND */
3878 if (x == Mono_Posix_SeekFlags_SEEK_CUR)
3880 {*r = SEEK_CUR; return 0;}
3881 #else /* def SEEK_CUR */
3882 {errno = EINVAL; return -1;}
3883 #endif /* ndef SEEK_CUR */
3884 if (x == Mono_Posix_SeekFlags_SEEK_END)
3886 {*r = SEEK_END; return 0;}
3887 #else /* def SEEK_END */
3888 {errno = EINVAL; return -1;}
3889 #endif /* ndef SEEK_END */
3890 if (x == Mono_Posix_SeekFlags_SEEK_SET)
3892 {*r = SEEK_SET; return 0;}
3893 #else /* def SEEK_SET */
3894 {errno = EINVAL; return -1;}
3895 #endif /* ndef SEEK_SET */
3898 errno = EINVAL; return -1;
3901 int Mono_Posix_ToSeekFlags (short x, short *r)
3908 {*r = Mono_Posix_SeekFlags_L_INCR; return 0;}
3909 #endif /* ndef L_INCR */
3912 {*r = Mono_Posix_SeekFlags_L_SET; return 0;}
3913 #endif /* ndef L_SET */
3916 {*r = Mono_Posix_SeekFlags_L_XTND; return 0;}
3917 #endif /* ndef L_XTND */
3920 {*r = Mono_Posix_SeekFlags_SEEK_CUR; return 0;}
3921 #endif /* ndef SEEK_CUR */
3924 {*r = Mono_Posix_SeekFlags_SEEK_END; return 0;}
3925 #endif /* ndef SEEK_END */
3928 {*r = Mono_Posix_SeekFlags_SEEK_SET; return 0;}
3929 #endif /* ndef SEEK_SET */
3930 errno = EINVAL; return -1;
3933 int Mono_Posix_FromSignum (int x, int *r)
3936 if (x == Mono_Posix_Signum_SIGABRT)
3938 {*r = SIGABRT; return 0;}
3939 #else /* def SIGABRT */
3940 {errno = EINVAL; return -1;}
3941 #endif /* ndef SIGABRT */
3942 if (x == Mono_Posix_Signum_SIGALRM)
3944 {*r = SIGALRM; return 0;}
3945 #else /* def SIGALRM */
3946 {errno = EINVAL; return -1;}
3947 #endif /* ndef SIGALRM */
3948 if (x == Mono_Posix_Signum_SIGBUS)
3950 {*r = SIGBUS; return 0;}
3951 #else /* def SIGBUS */
3952 {errno = EINVAL; return -1;}
3953 #endif /* ndef SIGBUS */
3954 if (x == Mono_Posix_Signum_SIGCHLD)
3956 {*r = SIGCHLD; return 0;}
3957 #else /* def SIGCHLD */
3958 {errno = EINVAL; return -1;}
3959 #endif /* ndef SIGCHLD */
3960 if (x == Mono_Posix_Signum_SIGCLD)
3962 {*r = SIGCLD; return 0;}
3963 #else /* def SIGCLD */
3964 {errno = EINVAL; return -1;}
3965 #endif /* ndef SIGCLD */
3966 if (x == Mono_Posix_Signum_SIGCONT)
3968 {*r = SIGCONT; return 0;}
3969 #else /* def SIGCONT */
3970 {errno = EINVAL; return -1;}
3971 #endif /* ndef SIGCONT */
3972 if (x == Mono_Posix_Signum_SIGFPE)
3974 {*r = SIGFPE; return 0;}
3975 #else /* def SIGFPE */
3976 {errno = EINVAL; return -1;}
3977 #endif /* ndef SIGFPE */
3978 if (x == Mono_Posix_Signum_SIGHUP)
3980 {*r = SIGHUP; return 0;}
3981 #else /* def SIGHUP */
3982 {errno = EINVAL; return -1;}
3983 #endif /* ndef SIGHUP */
3984 if (x == Mono_Posix_Signum_SIGILL)
3986 {*r = SIGILL; return 0;}
3987 #else /* def SIGILL */
3988 {errno = EINVAL; return -1;}
3989 #endif /* ndef SIGILL */
3990 if (x == Mono_Posix_Signum_SIGINT)
3992 {*r = SIGINT; return 0;}
3993 #else /* def SIGINT */
3994 {errno = EINVAL; return -1;}
3995 #endif /* ndef SIGINT */
3996 if (x == Mono_Posix_Signum_SIGIO)
3998 {*r = SIGIO; return 0;}
3999 #else /* def SIGIO */
4000 {errno = EINVAL; return -1;}
4001 #endif /* ndef SIGIO */
4002 if (x == Mono_Posix_Signum_SIGIOT)
4004 {*r = SIGIOT; return 0;}
4005 #else /* def SIGIOT */
4006 {errno = EINVAL; return -1;}
4007 #endif /* ndef SIGIOT */
4008 if (x == Mono_Posix_Signum_SIGKILL)
4010 {*r = SIGKILL; return 0;}
4011 #else /* def SIGKILL */
4012 {errno = EINVAL; return -1;}
4013 #endif /* ndef SIGKILL */
4014 if (x == Mono_Posix_Signum_SIGPIPE)
4016 {*r = SIGPIPE; return 0;}
4017 #else /* def SIGPIPE */
4018 {errno = EINVAL; return -1;}
4019 #endif /* ndef SIGPIPE */
4020 if (x == Mono_Posix_Signum_SIGPOLL)
4022 {*r = SIGPOLL; return 0;}
4023 #else /* def SIGPOLL */
4024 {errno = EINVAL; return -1;}
4025 #endif /* ndef SIGPOLL */
4026 if (x == Mono_Posix_Signum_SIGPROF)
4028 {*r = SIGPROF; return 0;}
4029 #else /* def SIGPROF */
4030 {errno = EINVAL; return -1;}
4031 #endif /* ndef SIGPROF */
4032 if (x == Mono_Posix_Signum_SIGPWR)
4034 {*r = SIGPWR; return 0;}
4035 #else /* def SIGPWR */
4036 {errno = EINVAL; return -1;}
4037 #endif /* ndef SIGPWR */
4038 if (x == Mono_Posix_Signum_SIGQUIT)
4040 {*r = SIGQUIT; return 0;}
4041 #else /* def SIGQUIT */
4042 {errno = EINVAL; return -1;}
4043 #endif /* ndef SIGQUIT */
4044 if (x == Mono_Posix_Signum_SIGSEGV)
4046 {*r = SIGSEGV; return 0;}
4047 #else /* def SIGSEGV */
4048 {errno = EINVAL; return -1;}
4049 #endif /* ndef SIGSEGV */
4050 if (x == Mono_Posix_Signum_SIGSTKFLT)
4052 {*r = SIGSTKFLT; return 0;}
4053 #else /* def SIGSTKFLT */
4054 {errno = EINVAL; return -1;}
4055 #endif /* ndef SIGSTKFLT */
4056 if (x == Mono_Posix_Signum_SIGSTOP)
4058 {*r = SIGSTOP; return 0;}
4059 #else /* def SIGSTOP */
4060 {errno = EINVAL; return -1;}
4061 #endif /* ndef SIGSTOP */
4062 if (x == Mono_Posix_Signum_SIGSYS)
4064 {*r = SIGSYS; return 0;}
4065 #else /* def SIGSYS */
4066 {errno = EINVAL; return -1;}
4067 #endif /* ndef SIGSYS */
4068 if (x == Mono_Posix_Signum_SIGTERM)
4070 {*r = SIGTERM; return 0;}
4071 #else /* def SIGTERM */
4072 {errno = EINVAL; return -1;}
4073 #endif /* ndef SIGTERM */
4074 if (x == Mono_Posix_Signum_SIGTRAP)
4076 {*r = SIGTRAP; return 0;}
4077 #else /* def SIGTRAP */
4078 {errno = EINVAL; return -1;}
4079 #endif /* ndef SIGTRAP */
4080 if (x == Mono_Posix_Signum_SIGTSTP)
4082 {*r = SIGTSTP; return 0;}
4083 #else /* def SIGTSTP */
4084 {errno = EINVAL; return -1;}
4085 #endif /* ndef SIGTSTP */
4086 if (x == Mono_Posix_Signum_SIGTTIN)
4088 {*r = SIGTTIN; return 0;}
4089 #else /* def SIGTTIN */
4090 {errno = EINVAL; return -1;}
4091 #endif /* ndef SIGTTIN */
4092 if (x == Mono_Posix_Signum_SIGTTOU)
4094 {*r = SIGTTOU; return 0;}
4095 #else /* def SIGTTOU */
4096 {errno = EINVAL; return -1;}
4097 #endif /* ndef SIGTTOU */
4098 if (x == Mono_Posix_Signum_SIGUNUSED)
4100 {*r = SIGUNUSED; return 0;}
4101 #else /* def SIGUNUSED */
4102 {errno = EINVAL; return -1;}
4103 #endif /* ndef SIGUNUSED */
4104 if (x == Mono_Posix_Signum_SIGURG)
4106 {*r = SIGURG; return 0;}
4107 #else /* def SIGURG */
4108 {errno = EINVAL; return -1;}
4109 #endif /* ndef SIGURG */
4110 if (x == Mono_Posix_Signum_SIGUSR1)
4112 {*r = SIGUSR1; return 0;}
4113 #else /* def SIGUSR1 */
4114 {errno = EINVAL; return -1;}
4115 #endif /* ndef SIGUSR1 */
4116 if (x == Mono_Posix_Signum_SIGUSR2)
4118 {*r = SIGUSR2; return 0;}
4119 #else /* def SIGUSR2 */
4120 {errno = EINVAL; return -1;}
4121 #endif /* ndef SIGUSR2 */
4122 if (x == Mono_Posix_Signum_SIGVTALRM)
4124 {*r = SIGVTALRM; return 0;}
4125 #else /* def SIGVTALRM */
4126 {errno = EINVAL; return -1;}
4127 #endif /* ndef SIGVTALRM */
4128 if (x == Mono_Posix_Signum_SIGWINCH)
4130 {*r = SIGWINCH; return 0;}
4131 #else /* def SIGWINCH */
4132 {errno = EINVAL; return -1;}
4133 #endif /* ndef SIGWINCH */
4134 if (x == Mono_Posix_Signum_SIGXCPU)
4136 {*r = SIGXCPU; return 0;}
4137 #else /* def SIGXCPU */
4138 {errno = EINVAL; return -1;}
4139 #endif /* ndef SIGXCPU */
4140 if (x == Mono_Posix_Signum_SIGXFSZ)
4142 {*r = SIGXFSZ; return 0;}
4143 #else /* def SIGXFSZ */
4144 {errno = EINVAL; return -1;}
4145 #endif /* ndef SIGXFSZ */
4148 errno = EINVAL; return -1;
4151 int Mono_Posix_ToSignum (int x, int *r)
4158 {*r = Mono_Posix_Signum_SIGABRT; return 0;}
4159 #endif /* ndef SIGABRT */
4162 {*r = Mono_Posix_Signum_SIGALRM; return 0;}
4163 #endif /* ndef SIGALRM */
4166 {*r = Mono_Posix_Signum_SIGBUS; return 0;}
4167 #endif /* ndef SIGBUS */
4170 {*r = Mono_Posix_Signum_SIGCHLD; return 0;}
4171 #endif /* ndef SIGCHLD */
4174 {*r = Mono_Posix_Signum_SIGCLD; return 0;}
4175 #endif /* ndef SIGCLD */
4178 {*r = Mono_Posix_Signum_SIGCONT; return 0;}
4179 #endif /* ndef SIGCONT */
4182 {*r = Mono_Posix_Signum_SIGFPE; return 0;}
4183 #endif /* ndef SIGFPE */
4186 {*r = Mono_Posix_Signum_SIGHUP; return 0;}
4187 #endif /* ndef SIGHUP */
4190 {*r = Mono_Posix_Signum_SIGILL; return 0;}
4191 #endif /* ndef SIGILL */
4194 {*r = Mono_Posix_Signum_SIGINT; return 0;}
4195 #endif /* ndef SIGINT */
4198 {*r = Mono_Posix_Signum_SIGIO; return 0;}
4199 #endif /* ndef SIGIO */
4202 {*r = Mono_Posix_Signum_SIGIOT; return 0;}
4203 #endif /* ndef SIGIOT */
4206 {*r = Mono_Posix_Signum_SIGKILL; return 0;}
4207 #endif /* ndef SIGKILL */
4210 {*r = Mono_Posix_Signum_SIGPIPE; return 0;}
4211 #endif /* ndef SIGPIPE */
4214 {*r = Mono_Posix_Signum_SIGPOLL; return 0;}
4215 #endif /* ndef SIGPOLL */
4218 {*r = Mono_Posix_Signum_SIGPROF; return 0;}
4219 #endif /* ndef SIGPROF */
4222 {*r = Mono_Posix_Signum_SIGPWR; return 0;}
4223 #endif /* ndef SIGPWR */
4226 {*r = Mono_Posix_Signum_SIGQUIT; return 0;}
4227 #endif /* ndef SIGQUIT */
4230 {*r = Mono_Posix_Signum_SIGSEGV; return 0;}
4231 #endif /* ndef SIGSEGV */
4234 {*r = Mono_Posix_Signum_SIGSTKFLT; return 0;}
4235 #endif /* ndef SIGSTKFLT */
4238 {*r = Mono_Posix_Signum_SIGSTOP; return 0;}
4239 #endif /* ndef SIGSTOP */
4242 {*r = Mono_Posix_Signum_SIGSYS; return 0;}
4243 #endif /* ndef SIGSYS */
4246 {*r = Mono_Posix_Signum_SIGTERM; return 0;}
4247 #endif /* ndef SIGTERM */
4250 {*r = Mono_Posix_Signum_SIGTRAP; return 0;}
4251 #endif /* ndef SIGTRAP */
4254 {*r = Mono_Posix_Signum_SIGTSTP; return 0;}
4255 #endif /* ndef SIGTSTP */
4258 {*r = Mono_Posix_Signum_SIGTTIN; return 0;}
4259 #endif /* ndef SIGTTIN */
4262 {*r = Mono_Posix_Signum_SIGTTOU; return 0;}
4263 #endif /* ndef SIGTTOU */
4266 {*r = Mono_Posix_Signum_SIGUNUSED; return 0;}
4267 #endif /* ndef SIGUNUSED */
4270 {*r = Mono_Posix_Signum_SIGURG; return 0;}
4271 #endif /* ndef SIGURG */
4274 {*r = Mono_Posix_Signum_SIGUSR1; return 0;}
4275 #endif /* ndef SIGUSR1 */
4278 {*r = Mono_Posix_Signum_SIGUSR2; return 0;}
4279 #endif /* ndef SIGUSR2 */
4282 {*r = Mono_Posix_Signum_SIGVTALRM; return 0;}
4283 #endif /* ndef SIGVTALRM */
4286 {*r = Mono_Posix_Signum_SIGWINCH; return 0;}
4287 #endif /* ndef SIGWINCH */
4290 {*r = Mono_Posix_Signum_SIGXCPU; return 0;}
4291 #endif /* ndef SIGXCPU */
4294 {*r = Mono_Posix_Signum_SIGXFSZ; return 0;}
4295 #endif /* ndef SIGXFSZ */
4296 errno = EINVAL; return -1;
4299 #ifdef HAVE_STRUCT_STAT
4301 Mono_Posix_FromStat (struct Mono_Posix_Stat *from, struct stat *to)
4303 _cnm_return_val_if_overflow (dev_t, from->st_dev, -1);
4304 _cnm_return_val_if_overflow (ino_t, from->st_ino, -1);
4305 _cnm_return_val_if_overflow (nlink_t, from->st_nlink, -1);
4306 _cnm_return_val_if_overflow (uid_t, from->st_uid, -1);
4307 _cnm_return_val_if_overflow (gid_t, from->st_gid, -1);
4308 _cnm_return_val_if_overflow (dev_t, from->st_rdev, -1);
4309 _cnm_return_val_if_overflow (off_t, from->st_size, -1);
4310 _cnm_return_val_if_overflow (blksize_t, from->st_blksize, -1);
4311 _cnm_return_val_if_overflow (blkcnt_t, from->st_blocks, -1);
4312 _cnm_return_val_if_overflow (time_t, from->st_atime_, -1);
4313 _cnm_return_val_if_overflow (time_t, from->st_mtime_, -1);
4314 _cnm_return_val_if_overflow (time_t, from->st_ctime_, -1);
4316 memset (to, 0, sizeof(*to));
4318 to->st_dev = from->st_dev;
4319 to->st_ino = from->st_ino;
4320 if (Mono_Posix_FromFilePermissions (from->st_mode, &to->st_mode) != 0) {
4323 to->st_nlink = from->st_nlink;
4324 to->st_uid = from->st_uid;
4325 to->st_gid = from->st_gid;
4326 to->st_rdev = from->st_rdev;
4327 to->st_size = from->st_size;
4328 to->st_blksize = from->st_blksize;
4329 to->st_blocks = from->st_blocks;
4330 to->st_atime = from->st_atime_;
4331 to->st_mtime = from->st_mtime_;
4332 to->st_ctime = from->st_ctime_;
4336 #endif /* ndef HAVE_STRUCT_STAT */
4339 #ifdef HAVE_STRUCT_STAT
4341 Mono_Posix_ToStat (struct stat *from, struct Mono_Posix_Stat *to)
4343 _cnm_return_val_if_overflow (guint64, from->st_dev, -1);
4344 _cnm_return_val_if_overflow (guint64, from->st_ino, -1);
4345 _cnm_return_val_if_overflow (guint64, from->st_nlink, -1);
4346 _cnm_return_val_if_overflow (unsigned int, from->st_uid, -1);
4347 _cnm_return_val_if_overflow (unsigned int, from->st_gid, -1);
4348 _cnm_return_val_if_overflow (guint64, from->st_rdev, -1);
4349 _cnm_return_val_if_overflow (gint64, from->st_size, -1);
4350 _cnm_return_val_if_overflow (gint64, from->st_blksize, -1);
4351 _cnm_return_val_if_overflow (gint64, from->st_blocks, -1);
4352 _cnm_return_val_if_overflow (gint64, from->st_atime, -1);
4353 _cnm_return_val_if_overflow (gint64, from->st_mtime, -1);
4354 _cnm_return_val_if_overflow (gint64, from->st_ctime, -1);
4356 memset (to, 0, sizeof(*to));
4358 to->st_dev = from->st_dev;
4359 to->st_ino = from->st_ino;
4360 if (Mono_Posix_ToFilePermissions (from->st_mode, &to->st_mode) != 0) {
4363 to->st_nlink = from->st_nlink;
4364 to->st_uid = from->st_uid;
4365 to->st_gid = from->st_gid;
4366 to->st_rdev = from->st_rdev;
4367 to->st_size = from->st_size;
4368 to->st_blksize = from->st_blksize;
4369 to->st_blocks = from->st_blocks;
4370 to->st_atime_ = from->st_atime;
4371 to->st_mtime_ = from->st_mtime;
4372 to->st_ctime_ = from->st_ctime;
4376 #endif /* ndef HAVE_STRUCT_STAT */
4379 int Mono_Posix_FromSysconfName (int x, int *r)
4382 if (x == Mono_Posix_SysconfName__SC_2_CHAR_TERM)
4383 #ifdef _SC_2_CHAR_TERM
4384 {*r = _SC_2_CHAR_TERM; return 0;}
4385 #else /* def _SC_2_CHAR_TERM */
4386 {errno = EINVAL; return -1;}
4387 #endif /* ndef _SC_2_CHAR_TERM */
4388 if (x == Mono_Posix_SysconfName__SC_2_C_BIND)
4390 {*r = _SC_2_C_BIND; return 0;}
4391 #else /* def _SC_2_C_BIND */
4392 {errno = EINVAL; return -1;}
4393 #endif /* ndef _SC_2_C_BIND */
4394 if (x == Mono_Posix_SysconfName__SC_2_C_DEV)
4396 {*r = _SC_2_C_DEV; return 0;}
4397 #else /* def _SC_2_C_DEV */
4398 {errno = EINVAL; return -1;}
4399 #endif /* ndef _SC_2_C_DEV */
4400 if (x == Mono_Posix_SysconfName__SC_2_C_VERSION)
4401 #ifdef _SC_2_C_VERSION
4402 {*r = _SC_2_C_VERSION; return 0;}
4403 #else /* def _SC_2_C_VERSION */
4404 {errno = EINVAL; return -1;}
4405 #endif /* ndef _SC_2_C_VERSION */
4406 if (x == Mono_Posix_SysconfName__SC_2_FORT_DEV)
4407 #ifdef _SC_2_FORT_DEV
4408 {*r = _SC_2_FORT_DEV; return 0;}
4409 #else /* def _SC_2_FORT_DEV */
4410 {errno = EINVAL; return -1;}
4411 #endif /* ndef _SC_2_FORT_DEV */
4412 if (x == Mono_Posix_SysconfName__SC_2_FORT_RUN)
4413 #ifdef _SC_2_FORT_RUN
4414 {*r = _SC_2_FORT_RUN; return 0;}
4415 #else /* def _SC_2_FORT_RUN */
4416 {errno = EINVAL; return -1;}
4417 #endif /* ndef _SC_2_FORT_RUN */
4418 if (x == Mono_Posix_SysconfName__SC_2_LOCALEDEF)
4419 #ifdef _SC_2_LOCALEDEF
4420 {*r = _SC_2_LOCALEDEF; return 0;}
4421 #else /* def _SC_2_LOCALEDEF */
4422 {errno = EINVAL; return -1;}
4423 #endif /* ndef _SC_2_LOCALEDEF */
4424 if (x == Mono_Posix_SysconfName__SC_2_PBS)
4426 {*r = _SC_2_PBS; return 0;}
4427 #else /* def _SC_2_PBS */
4428 {errno = EINVAL; return -1;}
4429 #endif /* ndef _SC_2_PBS */
4430 if (x == Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING)
4431 #ifdef _SC_2_PBS_ACCOUNTING
4432 {*r = _SC_2_PBS_ACCOUNTING; return 0;}
4433 #else /* def _SC_2_PBS_ACCOUNTING */
4434 {errno = EINVAL; return -1;}
4435 #endif /* ndef _SC_2_PBS_ACCOUNTING */
4436 if (x == Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT)
4437 #ifdef _SC_2_PBS_CHECKPOINT
4438 {*r = _SC_2_PBS_CHECKPOINT; return 0;}
4439 #else /* def _SC_2_PBS_CHECKPOINT */
4440 {errno = EINVAL; return -1;}
4441 #endif /* ndef _SC_2_PBS_CHECKPOINT */
4442 if (x == Mono_Posix_SysconfName__SC_2_PBS_LOCATE)
4443 #ifdef _SC_2_PBS_LOCATE
4444 {*r = _SC_2_PBS_LOCATE; return 0;}
4445 #else /* def _SC_2_PBS_LOCATE */
4446 {errno = EINVAL; return -1;}
4447 #endif /* ndef _SC_2_PBS_LOCATE */
4448 if (x == Mono_Posix_SysconfName__SC_2_PBS_MESSAGE)
4449 #ifdef _SC_2_PBS_MESSAGE
4450 {*r = _SC_2_PBS_MESSAGE; return 0;}
4451 #else /* def _SC_2_PBS_MESSAGE */
4452 {errno = EINVAL; return -1;}
4453 #endif /* ndef _SC_2_PBS_MESSAGE */
4454 if (x == Mono_Posix_SysconfName__SC_2_PBS_TRACK)
4455 #ifdef _SC_2_PBS_TRACK
4456 {*r = _SC_2_PBS_TRACK; return 0;}
4457 #else /* def _SC_2_PBS_TRACK */
4458 {errno = EINVAL; return -1;}
4459 #endif /* ndef _SC_2_PBS_TRACK */
4460 if (x == Mono_Posix_SysconfName__SC_2_SW_DEV)
4462 {*r = _SC_2_SW_DEV; return 0;}
4463 #else /* def _SC_2_SW_DEV */
4464 {errno = EINVAL; return -1;}
4465 #endif /* ndef _SC_2_SW_DEV */
4466 if (x == Mono_Posix_SysconfName__SC_2_UPE)
4468 {*r = _SC_2_UPE; return 0;}
4469 #else /* def _SC_2_UPE */
4470 {errno = EINVAL; return -1;}
4471 #endif /* ndef _SC_2_UPE */
4472 if (x == Mono_Posix_SysconfName__SC_2_VERSION)
4473 #ifdef _SC_2_VERSION
4474 {*r = _SC_2_VERSION; return 0;}
4475 #else /* def _SC_2_VERSION */
4476 {errno = EINVAL; return -1;}
4477 #endif /* ndef _SC_2_VERSION */
4478 if (x == Mono_Posix_SysconfName__SC_ADVISORY_INFO)
4479 #ifdef _SC_ADVISORY_INFO
4480 {*r = _SC_ADVISORY_INFO; return 0;}
4481 #else /* def _SC_ADVISORY_INFO */
4482 {errno = EINVAL; return -1;}
4483 #endif /* ndef _SC_ADVISORY_INFO */
4484 if (x == Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX)
4485 #ifdef _SC_AIO_LISTIO_MAX
4486 {*r = _SC_AIO_LISTIO_MAX; return 0;}
4487 #else /* def _SC_AIO_LISTIO_MAX */
4488 {errno = EINVAL; return -1;}
4489 #endif /* ndef _SC_AIO_LISTIO_MAX */
4490 if (x == Mono_Posix_SysconfName__SC_AIO_MAX)
4492 {*r = _SC_AIO_MAX; return 0;}
4493 #else /* def _SC_AIO_MAX */
4494 {errno = EINVAL; return -1;}
4495 #endif /* ndef _SC_AIO_MAX */
4496 if (x == Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX)
4497 #ifdef _SC_AIO_PRIO_DELTA_MAX
4498 {*r = _SC_AIO_PRIO_DELTA_MAX; return 0;}
4499 #else /* def _SC_AIO_PRIO_DELTA_MAX */
4500 {errno = EINVAL; return -1;}
4501 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
4502 if (x == Mono_Posix_SysconfName__SC_ARG_MAX)
4504 {*r = _SC_ARG_MAX; return 0;}
4505 #else /* def _SC_ARG_MAX */
4506 {errno = EINVAL; return -1;}
4507 #endif /* ndef _SC_ARG_MAX */
4508 if (x == Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO)
4509 #ifdef _SC_ASYNCHRONOUS_IO
4510 {*r = _SC_ASYNCHRONOUS_IO; return 0;}
4511 #else /* def _SC_ASYNCHRONOUS_IO */
4512 {errno = EINVAL; return -1;}
4513 #endif /* ndef _SC_ASYNCHRONOUS_IO */
4514 if (x == Mono_Posix_SysconfName__SC_ATEXIT_MAX)
4515 #ifdef _SC_ATEXIT_MAX
4516 {*r = _SC_ATEXIT_MAX; return 0;}
4517 #else /* def _SC_ATEXIT_MAX */
4518 {errno = EINVAL; return -1;}
4519 #endif /* ndef _SC_ATEXIT_MAX */
4520 if (x == Mono_Posix_SysconfName__SC_AVPHYS_PAGES)
4521 #ifdef _SC_AVPHYS_PAGES
4522 {*r = _SC_AVPHYS_PAGES; return 0;}
4523 #else /* def _SC_AVPHYS_PAGES */
4524 {errno = EINVAL; return -1;}
4525 #endif /* ndef _SC_AVPHYS_PAGES */
4526 if (x == Mono_Posix_SysconfName__SC_BARRIERS)
4528 {*r = _SC_BARRIERS; return 0;}
4529 #else /* def _SC_BARRIERS */
4530 {errno = EINVAL; return -1;}
4531 #endif /* ndef _SC_BARRIERS */
4532 if (x == Mono_Posix_SysconfName__SC_BASE)
4534 {*r = _SC_BASE; return 0;}
4535 #else /* def _SC_BASE */
4536 {errno = EINVAL; return -1;}
4537 #endif /* ndef _SC_BASE */
4538 if (x == Mono_Posix_SysconfName__SC_BC_BASE_MAX)
4539 #ifdef _SC_BC_BASE_MAX
4540 {*r = _SC_BC_BASE_MAX; return 0;}
4541 #else /* def _SC_BC_BASE_MAX */
4542 {errno = EINVAL; return -1;}
4543 #endif /* ndef _SC_BC_BASE_MAX */
4544 if (x == Mono_Posix_SysconfName__SC_BC_DIM_MAX)
4545 #ifdef _SC_BC_DIM_MAX
4546 {*r = _SC_BC_DIM_MAX; return 0;}
4547 #else /* def _SC_BC_DIM_MAX */
4548 {errno = EINVAL; return -1;}
4549 #endif /* ndef _SC_BC_DIM_MAX */
4550 if (x == Mono_Posix_SysconfName__SC_BC_SCALE_MAX)
4551 #ifdef _SC_BC_SCALE_MAX
4552 {*r = _SC_BC_SCALE_MAX; return 0;}
4553 #else /* def _SC_BC_SCALE_MAX */
4554 {errno = EINVAL; return -1;}
4555 #endif /* ndef _SC_BC_SCALE_MAX */
4556 if (x == Mono_Posix_SysconfName__SC_BC_STRING_MAX)
4557 #ifdef _SC_BC_STRING_MAX
4558 {*r = _SC_BC_STRING_MAX; return 0;}
4559 #else /* def _SC_BC_STRING_MAX */
4560 {errno = EINVAL; return -1;}
4561 #endif /* ndef _SC_BC_STRING_MAX */
4562 if (x == Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX)
4563 #ifdef _SC_CHARCLASS_NAME_MAX
4564 {*r = _SC_CHARCLASS_NAME_MAX; return 0;}
4565 #else /* def _SC_CHARCLASS_NAME_MAX */
4566 {errno = EINVAL; return -1;}
4567 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
4568 if (x == Mono_Posix_SysconfName__SC_CHAR_BIT)
4570 {*r = _SC_CHAR_BIT; return 0;}
4571 #else /* def _SC_CHAR_BIT */
4572 {errno = EINVAL; return -1;}
4573 #endif /* ndef _SC_CHAR_BIT */
4574 if (x == Mono_Posix_SysconfName__SC_CHAR_MAX)
4576 {*r = _SC_CHAR_MAX; return 0;}
4577 #else /* def _SC_CHAR_MAX */
4578 {errno = EINVAL; return -1;}
4579 #endif /* ndef _SC_CHAR_MAX */
4580 if (x == Mono_Posix_SysconfName__SC_CHAR_MIN)
4582 {*r = _SC_CHAR_MIN; return 0;}
4583 #else /* def _SC_CHAR_MIN */
4584 {errno = EINVAL; return -1;}
4585 #endif /* ndef _SC_CHAR_MIN */
4586 if (x == Mono_Posix_SysconfName__SC_CHILD_MAX)
4587 #ifdef _SC_CHILD_MAX
4588 {*r = _SC_CHILD_MAX; return 0;}
4589 #else /* def _SC_CHILD_MAX */
4590 {errno = EINVAL; return -1;}
4591 #endif /* ndef _SC_CHILD_MAX */
4592 if (x == Mono_Posix_SysconfName__SC_CLK_TCK)
4594 {*r = _SC_CLK_TCK; return 0;}
4595 #else /* def _SC_CLK_TCK */
4596 {errno = EINVAL; return -1;}
4597 #endif /* ndef _SC_CLK_TCK */
4598 if (x == Mono_Posix_SysconfName__SC_CLOCK_SELECTION)
4599 #ifdef _SC_CLOCK_SELECTION
4600 {*r = _SC_CLOCK_SELECTION; return 0;}
4601 #else /* def _SC_CLOCK_SELECTION */
4602 {errno = EINVAL; return -1;}
4603 #endif /* ndef _SC_CLOCK_SELECTION */
4604 if (x == Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX)
4605 #ifdef _SC_COLL_WEIGHTS_MAX
4606 {*r = _SC_COLL_WEIGHTS_MAX; return 0;}
4607 #else /* def _SC_COLL_WEIGHTS_MAX */
4608 {errno = EINVAL; return -1;}
4609 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
4610 if (x == Mono_Posix_SysconfName__SC_CPUTIME)
4612 {*r = _SC_CPUTIME; return 0;}
4613 #else /* def _SC_CPUTIME */
4614 {errno = EINVAL; return -1;}
4615 #endif /* ndef _SC_CPUTIME */
4616 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT)
4617 #ifdef _SC_C_LANG_SUPPORT
4618 {*r = _SC_C_LANG_SUPPORT; return 0;}
4619 #else /* def _SC_C_LANG_SUPPORT */
4620 {errno = EINVAL; return -1;}
4621 #endif /* ndef _SC_C_LANG_SUPPORT */
4622 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R)
4623 #ifdef _SC_C_LANG_SUPPORT_R
4624 {*r = _SC_C_LANG_SUPPORT_R; return 0;}
4625 #else /* def _SC_C_LANG_SUPPORT_R */
4626 {errno = EINVAL; return -1;}
4627 #endif /* ndef _SC_C_LANG_SUPPORT_R */
4628 if (x == Mono_Posix_SysconfName__SC_DELAYTIMER_MAX)
4629 #ifdef _SC_DELAYTIMER_MAX
4630 {*r = _SC_DELAYTIMER_MAX; return 0;}
4631 #else /* def _SC_DELAYTIMER_MAX */
4632 {errno = EINVAL; return -1;}
4633 #endif /* ndef _SC_DELAYTIMER_MAX */
4634 if (x == Mono_Posix_SysconfName__SC_DEVICE_IO)
4635 #ifdef _SC_DEVICE_IO
4636 {*r = _SC_DEVICE_IO; return 0;}
4637 #else /* def _SC_DEVICE_IO */
4638 {errno = EINVAL; return -1;}
4639 #endif /* ndef _SC_DEVICE_IO */
4640 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC)
4641 #ifdef _SC_DEVICE_SPECIFIC
4642 {*r = _SC_DEVICE_SPECIFIC; return 0;}
4643 #else /* def _SC_DEVICE_SPECIFIC */
4644 {errno = EINVAL; return -1;}
4645 #endif /* ndef _SC_DEVICE_SPECIFIC */
4646 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R)
4647 #ifdef _SC_DEVICE_SPECIFIC_R
4648 {*r = _SC_DEVICE_SPECIFIC_R; return 0;}
4649 #else /* def _SC_DEVICE_SPECIFIC_R */
4650 {errno = EINVAL; return -1;}
4651 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
4652 if (x == Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX)
4653 #ifdef _SC_EQUIV_CLASS_MAX
4654 {*r = _SC_EQUIV_CLASS_MAX; return 0;}
4655 #else /* def _SC_EQUIV_CLASS_MAX */
4656 {errno = EINVAL; return -1;}
4657 #endif /* ndef _SC_EQUIV_CLASS_MAX */
4658 if (x == Mono_Posix_SysconfName__SC_EXPR_NEST_MAX)
4659 #ifdef _SC_EXPR_NEST_MAX
4660 {*r = _SC_EXPR_NEST_MAX; return 0;}
4661 #else /* def _SC_EXPR_NEST_MAX */
4662 {errno = EINVAL; return -1;}
4663 #endif /* ndef _SC_EXPR_NEST_MAX */
4664 if (x == Mono_Posix_SysconfName__SC_FD_MGMT)
4666 {*r = _SC_FD_MGMT; return 0;}
4667 #else /* def _SC_FD_MGMT */
4668 {errno = EINVAL; return -1;}
4669 #endif /* ndef _SC_FD_MGMT */
4670 if (x == Mono_Posix_SysconfName__SC_FIFO)
4672 {*r = _SC_FIFO; return 0;}
4673 #else /* def _SC_FIFO */
4674 {errno = EINVAL; return -1;}
4675 #endif /* ndef _SC_FIFO */
4676 if (x == Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES)
4677 #ifdef _SC_FILE_ATTRIBUTES
4678 {*r = _SC_FILE_ATTRIBUTES; return 0;}
4679 #else /* def _SC_FILE_ATTRIBUTES */
4680 {errno = EINVAL; return -1;}
4681 #endif /* ndef _SC_FILE_ATTRIBUTES */
4682 if (x == Mono_Posix_SysconfName__SC_FILE_LOCKING)
4683 #ifdef _SC_FILE_LOCKING
4684 {*r = _SC_FILE_LOCKING; return 0;}
4685 #else /* def _SC_FILE_LOCKING */
4686 {errno = EINVAL; return -1;}
4687 #endif /* ndef _SC_FILE_LOCKING */
4688 if (x == Mono_Posix_SysconfName__SC_FILE_SYSTEM)
4689 #ifdef _SC_FILE_SYSTEM
4690 {*r = _SC_FILE_SYSTEM; return 0;}
4691 #else /* def _SC_FILE_SYSTEM */
4692 {errno = EINVAL; return -1;}
4693 #endif /* ndef _SC_FILE_SYSTEM */
4694 if (x == Mono_Posix_SysconfName__SC_FSYNC)
4696 {*r = _SC_FSYNC; return 0;}
4697 #else /* def _SC_FSYNC */
4698 {errno = EINVAL; return -1;}
4699 #endif /* ndef _SC_FSYNC */
4700 if (x == Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX)
4701 #ifdef _SC_GETGR_R_SIZE_MAX
4702 {*r = _SC_GETGR_R_SIZE_MAX; return 0;}
4703 #else /* def _SC_GETGR_R_SIZE_MAX */
4704 {errno = EINVAL; return -1;}
4705 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
4706 if (x == Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX)
4707 #ifdef _SC_GETPW_R_SIZE_MAX
4708 {*r = _SC_GETPW_R_SIZE_MAX; return 0;}
4709 #else /* def _SC_GETPW_R_SIZE_MAX */
4710 {errno = EINVAL; return -1;}
4711 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
4712 if (x == Mono_Posix_SysconfName__SC_HOST_NAME_MAX)
4713 #ifdef _SC_HOST_NAME_MAX
4714 {*r = _SC_HOST_NAME_MAX; return 0;}
4715 #else /* def _SC_HOST_NAME_MAX */
4716 {errno = EINVAL; return -1;}
4717 #endif /* ndef _SC_HOST_NAME_MAX */
4718 if (x == Mono_Posix_SysconfName__SC_INT_MAX)
4720 {*r = _SC_INT_MAX; return 0;}
4721 #else /* def _SC_INT_MAX */
4722 {errno = EINVAL; return -1;}
4723 #endif /* ndef _SC_INT_MAX */
4724 if (x == Mono_Posix_SysconfName__SC_INT_MIN)
4726 {*r = _SC_INT_MIN; return 0;}
4727 #else /* def _SC_INT_MIN */
4728 {errno = EINVAL; return -1;}
4729 #endif /* ndef _SC_INT_MIN */
4730 if (x == Mono_Posix_SysconfName__SC_IOV_MAX)
4732 {*r = _SC_IOV_MAX; return 0;}
4733 #else /* def _SC_IOV_MAX */
4734 {errno = EINVAL; return -1;}
4735 #endif /* ndef _SC_IOV_MAX */
4736 if (x == Mono_Posix_SysconfName__SC_JOB_CONTROL)
4737 #ifdef _SC_JOB_CONTROL
4738 {*r = _SC_JOB_CONTROL; return 0;}
4739 #else /* def _SC_JOB_CONTROL */
4740 {errno = EINVAL; return -1;}
4741 #endif /* ndef _SC_JOB_CONTROL */
4742 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC)
4743 #ifdef _SC_LEVEL1_DCACHE_ASSOC
4744 {*r = _SC_LEVEL1_DCACHE_ASSOC; return 0;}
4745 #else /* def _SC_LEVEL1_DCACHE_ASSOC */
4746 {errno = EINVAL; return -1;}
4747 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
4748 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE)
4749 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
4750 {*r = _SC_LEVEL1_DCACHE_LINESIZE; return 0;}
4751 #else /* def _SC_LEVEL1_DCACHE_LINESIZE */
4752 {errno = EINVAL; return -1;}
4753 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
4754 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE)
4755 #ifdef _SC_LEVEL1_DCACHE_SIZE
4756 {*r = _SC_LEVEL1_DCACHE_SIZE; return 0;}
4757 #else /* def _SC_LEVEL1_DCACHE_SIZE */
4758 {errno = EINVAL; return -1;}
4759 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
4760 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC)
4761 #ifdef _SC_LEVEL1_ICACHE_ASSOC
4762 {*r = _SC_LEVEL1_ICACHE_ASSOC; return 0;}
4763 #else /* def _SC_LEVEL1_ICACHE_ASSOC */
4764 {errno = EINVAL; return -1;}
4765 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
4766 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE)
4767 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
4768 {*r = _SC_LEVEL1_ICACHE_LINESIZE; return 0;}
4769 #else /* def _SC_LEVEL1_ICACHE_LINESIZE */
4770 {errno = EINVAL; return -1;}
4771 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
4772 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE)
4773 #ifdef _SC_LEVEL1_ICACHE_SIZE
4774 {*r = _SC_LEVEL1_ICACHE_SIZE; return 0;}
4775 #else /* def _SC_LEVEL1_ICACHE_SIZE */
4776 {errno = EINVAL; return -1;}
4777 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
4778 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC)
4779 #ifdef _SC_LEVEL2_CACHE_ASSOC
4780 {*r = _SC_LEVEL2_CACHE_ASSOC; return 0;}
4781 #else /* def _SC_LEVEL2_CACHE_ASSOC */
4782 {errno = EINVAL; return -1;}
4783 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
4784 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE)
4785 #ifdef _SC_LEVEL2_CACHE_LINESIZE
4786 {*r = _SC_LEVEL2_CACHE_LINESIZE; return 0;}
4787 #else /* def _SC_LEVEL2_CACHE_LINESIZE */
4788 {errno = EINVAL; return -1;}
4789 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
4790 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE)
4791 #ifdef _SC_LEVEL2_CACHE_SIZE
4792 {*r = _SC_LEVEL2_CACHE_SIZE; return 0;}
4793 #else /* def _SC_LEVEL2_CACHE_SIZE */
4794 {errno = EINVAL; return -1;}
4795 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
4796 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC)
4797 #ifdef _SC_LEVEL3_CACHE_ASSOC
4798 {*r = _SC_LEVEL3_CACHE_ASSOC; return 0;}
4799 #else /* def _SC_LEVEL3_CACHE_ASSOC */
4800 {errno = EINVAL; return -1;}
4801 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
4802 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE)
4803 #ifdef _SC_LEVEL3_CACHE_LINESIZE
4804 {*r = _SC_LEVEL3_CACHE_LINESIZE; return 0;}
4805 #else /* def _SC_LEVEL3_CACHE_LINESIZE */
4806 {errno = EINVAL; return -1;}
4807 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
4808 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE)
4809 #ifdef _SC_LEVEL3_CACHE_SIZE
4810 {*r = _SC_LEVEL3_CACHE_SIZE; return 0;}
4811 #else /* def _SC_LEVEL3_CACHE_SIZE */
4812 {errno = EINVAL; return -1;}
4813 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
4814 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC)
4815 #ifdef _SC_LEVEL4_CACHE_ASSOC
4816 {*r = _SC_LEVEL4_CACHE_ASSOC; return 0;}
4817 #else /* def _SC_LEVEL4_CACHE_ASSOC */
4818 {errno = EINVAL; return -1;}
4819 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
4820 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE)
4821 #ifdef _SC_LEVEL4_CACHE_LINESIZE
4822 {*r = _SC_LEVEL4_CACHE_LINESIZE; return 0;}
4823 #else /* def _SC_LEVEL4_CACHE_LINESIZE */
4824 {errno = EINVAL; return -1;}
4825 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
4826 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE)
4827 #ifdef _SC_LEVEL4_CACHE_SIZE
4828 {*r = _SC_LEVEL4_CACHE_SIZE; return 0;}
4829 #else /* def _SC_LEVEL4_CACHE_SIZE */
4830 {errno = EINVAL; return -1;}
4831 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
4832 if (x == Mono_Posix_SysconfName__SC_LINE_MAX)
4834 {*r = _SC_LINE_MAX; return 0;}
4835 #else /* def _SC_LINE_MAX */
4836 {errno = EINVAL; return -1;}
4837 #endif /* ndef _SC_LINE_MAX */
4838 if (x == Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX)
4839 #ifdef _SC_LOGIN_NAME_MAX
4840 {*r = _SC_LOGIN_NAME_MAX; return 0;}
4841 #else /* def _SC_LOGIN_NAME_MAX */
4842 {errno = EINVAL; return -1;}
4843 #endif /* ndef _SC_LOGIN_NAME_MAX */
4844 if (x == Mono_Posix_SysconfName__SC_LONG_BIT)
4846 {*r = _SC_LONG_BIT; return 0;}
4847 #else /* def _SC_LONG_BIT */
4848 {errno = EINVAL; return -1;}
4849 #endif /* ndef _SC_LONG_BIT */
4850 if (x == Mono_Posix_SysconfName__SC_MAPPED_FILES)
4851 #ifdef _SC_MAPPED_FILES
4852 {*r = _SC_MAPPED_FILES; return 0;}
4853 #else /* def _SC_MAPPED_FILES */
4854 {errno = EINVAL; return -1;}
4855 #endif /* ndef _SC_MAPPED_FILES */
4856 if (x == Mono_Posix_SysconfName__SC_MB_LEN_MAX)
4857 #ifdef _SC_MB_LEN_MAX
4858 {*r = _SC_MB_LEN_MAX; return 0;}
4859 #else /* def _SC_MB_LEN_MAX */
4860 {errno = EINVAL; return -1;}
4861 #endif /* ndef _SC_MB_LEN_MAX */
4862 if (x == Mono_Posix_SysconfName__SC_MEMLOCK)
4864 {*r = _SC_MEMLOCK; return 0;}
4865 #else /* def _SC_MEMLOCK */
4866 {errno = EINVAL; return -1;}
4867 #endif /* ndef _SC_MEMLOCK */
4868 if (x == Mono_Posix_SysconfName__SC_MEMLOCK_RANGE)
4869 #ifdef _SC_MEMLOCK_RANGE
4870 {*r = _SC_MEMLOCK_RANGE; return 0;}
4871 #else /* def _SC_MEMLOCK_RANGE */
4872 {errno = EINVAL; return -1;}
4873 #endif /* ndef _SC_MEMLOCK_RANGE */
4874 if (x == Mono_Posix_SysconfName__SC_MEMORY_PROTECTION)
4875 #ifdef _SC_MEMORY_PROTECTION
4876 {*r = _SC_MEMORY_PROTECTION; return 0;}
4877 #else /* def _SC_MEMORY_PROTECTION */
4878 {errno = EINVAL; return -1;}
4879 #endif /* ndef _SC_MEMORY_PROTECTION */
4880 if (x == Mono_Posix_SysconfName__SC_MESSAGE_PASSING)
4881 #ifdef _SC_MESSAGE_PASSING
4882 {*r = _SC_MESSAGE_PASSING; return 0;}
4883 #else /* def _SC_MESSAGE_PASSING */
4884 {errno = EINVAL; return -1;}
4885 #endif /* ndef _SC_MESSAGE_PASSING */
4886 if (x == Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK)
4887 #ifdef _SC_MONOTONIC_CLOCK
4888 {*r = _SC_MONOTONIC_CLOCK; return 0;}
4889 #else /* def _SC_MONOTONIC_CLOCK */
4890 {errno = EINVAL; return -1;}
4891 #endif /* ndef _SC_MONOTONIC_CLOCK */
4892 if (x == Mono_Posix_SysconfName__SC_MQ_OPEN_MAX)
4893 #ifdef _SC_MQ_OPEN_MAX
4894 {*r = _SC_MQ_OPEN_MAX; return 0;}
4895 #else /* def _SC_MQ_OPEN_MAX */
4896 {errno = EINVAL; return -1;}
4897 #endif /* ndef _SC_MQ_OPEN_MAX */
4898 if (x == Mono_Posix_SysconfName__SC_MQ_PRIO_MAX)
4899 #ifdef _SC_MQ_PRIO_MAX
4900 {*r = _SC_MQ_PRIO_MAX; return 0;}
4901 #else /* def _SC_MQ_PRIO_MAX */
4902 {errno = EINVAL; return -1;}
4903 #endif /* ndef _SC_MQ_PRIO_MAX */
4904 if (x == Mono_Posix_SysconfName__SC_MULTI_PROCESS)
4905 #ifdef _SC_MULTI_PROCESS
4906 {*r = _SC_MULTI_PROCESS; return 0;}
4907 #else /* def _SC_MULTI_PROCESS */
4908 {errno = EINVAL; return -1;}
4909 #endif /* ndef _SC_MULTI_PROCESS */
4910 if (x == Mono_Posix_SysconfName__SC_NETWORKING)
4911 #ifdef _SC_NETWORKING
4912 {*r = _SC_NETWORKING; return 0;}
4913 #else /* def _SC_NETWORKING */
4914 {errno = EINVAL; return -1;}
4915 #endif /* ndef _SC_NETWORKING */
4916 if (x == Mono_Posix_SysconfName__SC_NGROUPS_MAX)
4917 #ifdef _SC_NGROUPS_MAX
4918 {*r = _SC_NGROUPS_MAX; return 0;}
4919 #else /* def _SC_NGROUPS_MAX */
4920 {errno = EINVAL; return -1;}
4921 #endif /* ndef _SC_NGROUPS_MAX */
4922 if (x == Mono_Posix_SysconfName__SC_NL_ARGMAX)
4923 #ifdef _SC_NL_ARGMAX
4924 {*r = _SC_NL_ARGMAX; return 0;}
4925 #else /* def _SC_NL_ARGMAX */
4926 {errno = EINVAL; return -1;}
4927 #endif /* ndef _SC_NL_ARGMAX */
4928 if (x == Mono_Posix_SysconfName__SC_NL_LANGMAX)
4929 #ifdef _SC_NL_LANGMAX
4930 {*r = _SC_NL_LANGMAX; return 0;}
4931 #else /* def _SC_NL_LANGMAX */
4932 {errno = EINVAL; return -1;}
4933 #endif /* ndef _SC_NL_LANGMAX */
4934 if (x == Mono_Posix_SysconfName__SC_NL_MSGMAX)
4935 #ifdef _SC_NL_MSGMAX
4936 {*r = _SC_NL_MSGMAX; return 0;}
4937 #else /* def _SC_NL_MSGMAX */
4938 {errno = EINVAL; return -1;}
4939 #endif /* ndef _SC_NL_MSGMAX */
4940 if (x == Mono_Posix_SysconfName__SC_NL_NMAX)
4942 {*r = _SC_NL_NMAX; return 0;}
4943 #else /* def _SC_NL_NMAX */
4944 {errno = EINVAL; return -1;}
4945 #endif /* ndef _SC_NL_NMAX */
4946 if (x == Mono_Posix_SysconfName__SC_NL_SETMAX)
4947 #ifdef _SC_NL_SETMAX
4948 {*r = _SC_NL_SETMAX; return 0;}
4949 #else /* def _SC_NL_SETMAX */
4950 {errno = EINVAL; return -1;}
4951 #endif /* ndef _SC_NL_SETMAX */
4952 if (x == Mono_Posix_SysconfName__SC_NL_TEXTMAX)
4953 #ifdef _SC_NL_TEXTMAX
4954 {*r = _SC_NL_TEXTMAX; return 0;}
4955 #else /* def _SC_NL_TEXTMAX */
4956 {errno = EINVAL; return -1;}
4957 #endif /* ndef _SC_NL_TEXTMAX */
4958 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_CONF)
4959 #ifdef _SC_NPROCESSORS_CONF
4960 {*r = _SC_NPROCESSORS_CONF; return 0;}
4961 #else /* def _SC_NPROCESSORS_CONF */
4962 {errno = EINVAL; return -1;}
4963 #endif /* ndef _SC_NPROCESSORS_CONF */
4964 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN)
4965 #ifdef _SC_NPROCESSORS_ONLN
4966 {*r = _SC_NPROCESSORS_ONLN; return 0;}
4967 #else /* def _SC_NPROCESSORS_ONLN */
4968 {errno = EINVAL; return -1;}
4969 #endif /* ndef _SC_NPROCESSORS_ONLN */
4970 if (x == Mono_Posix_SysconfName__SC_NZERO)
4972 {*r = _SC_NZERO; return 0;}
4973 #else /* def _SC_NZERO */
4974 {errno = EINVAL; return -1;}
4975 #endif /* ndef _SC_NZERO */
4976 if (x == Mono_Posix_SysconfName__SC_OPEN_MAX)
4978 {*r = _SC_OPEN_MAX; return 0;}
4979 #else /* def _SC_OPEN_MAX */
4980 {errno = EINVAL; return -1;}
4981 #endif /* ndef _SC_OPEN_MAX */
4982 if (x == Mono_Posix_SysconfName__SC_PAGESIZE)
4984 {*r = _SC_PAGESIZE; return 0;}
4985 #else /* def _SC_PAGESIZE */
4986 {errno = EINVAL; return -1;}
4987 #endif /* ndef _SC_PAGESIZE */
4988 if (x == Mono_Posix_SysconfName__SC_PASS_MAX)
4990 {*r = _SC_PASS_MAX; return 0;}
4991 #else /* def _SC_PASS_MAX */
4992 {errno = EINVAL; return -1;}
4993 #endif /* ndef _SC_PASS_MAX */
4994 if (x == Mono_Posix_SysconfName__SC_PHYS_PAGES)
4995 #ifdef _SC_PHYS_PAGES
4996 {*r = _SC_PHYS_PAGES; return 0;}
4997 #else /* def _SC_PHYS_PAGES */
4998 {errno = EINVAL; return -1;}
4999 #endif /* ndef _SC_PHYS_PAGES */
5000 if (x == Mono_Posix_SysconfName__SC_PII)
5002 {*r = _SC_PII; return 0;}
5003 #else /* def _SC_PII */
5004 {errno = EINVAL; return -1;}
5005 #endif /* ndef _SC_PII */
5006 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET)
5007 #ifdef _SC_PII_INTERNET
5008 {*r = _SC_PII_INTERNET; return 0;}
5009 #else /* def _SC_PII_INTERNET */
5010 {errno = EINVAL; return -1;}
5011 #endif /* ndef _SC_PII_INTERNET */
5012 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM)
5013 #ifdef _SC_PII_INTERNET_DGRAM
5014 {*r = _SC_PII_INTERNET_DGRAM; return 0;}
5015 #else /* def _SC_PII_INTERNET_DGRAM */
5016 {errno = EINVAL; return -1;}
5017 #endif /* ndef _SC_PII_INTERNET_DGRAM */
5018 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM)
5019 #ifdef _SC_PII_INTERNET_STREAM
5020 {*r = _SC_PII_INTERNET_STREAM; return 0;}
5021 #else /* def _SC_PII_INTERNET_STREAM */
5022 {errno = EINVAL; return -1;}
5023 #endif /* ndef _SC_PII_INTERNET_STREAM */
5024 if (x == Mono_Posix_SysconfName__SC_PII_OSI)
5026 {*r = _SC_PII_OSI; return 0;}
5027 #else /* def _SC_PII_OSI */
5028 {errno = EINVAL; return -1;}
5029 #endif /* ndef _SC_PII_OSI */
5030 if (x == Mono_Posix_SysconfName__SC_PII_OSI_CLTS)
5031 #ifdef _SC_PII_OSI_CLTS
5032 {*r = _SC_PII_OSI_CLTS; return 0;}
5033 #else /* def _SC_PII_OSI_CLTS */
5034 {errno = EINVAL; return -1;}
5035 #endif /* ndef _SC_PII_OSI_CLTS */
5036 if (x == Mono_Posix_SysconfName__SC_PII_OSI_COTS)
5037 #ifdef _SC_PII_OSI_COTS
5038 {*r = _SC_PII_OSI_COTS; return 0;}
5039 #else /* def _SC_PII_OSI_COTS */
5040 {errno = EINVAL; return -1;}
5041 #endif /* ndef _SC_PII_OSI_COTS */
5042 if (x == Mono_Posix_SysconfName__SC_PII_OSI_M)
5043 #ifdef _SC_PII_OSI_M
5044 {*r = _SC_PII_OSI_M; return 0;}
5045 #else /* def _SC_PII_OSI_M */
5046 {errno = EINVAL; return -1;}
5047 #endif /* ndef _SC_PII_OSI_M */
5048 if (x == Mono_Posix_SysconfName__SC_PII_SOCKET)
5049 #ifdef _SC_PII_SOCKET
5050 {*r = _SC_PII_SOCKET; return 0;}
5051 #else /* def _SC_PII_SOCKET */
5052 {errno = EINVAL; return -1;}
5053 #endif /* ndef _SC_PII_SOCKET */
5054 if (x == Mono_Posix_SysconfName__SC_PII_XTI)
5056 {*r = _SC_PII_XTI; return 0;}
5057 #else /* def _SC_PII_XTI */
5058 {errno = EINVAL; return -1;}
5059 #endif /* ndef _SC_PII_XTI */
5060 if (x == Mono_Posix_SysconfName__SC_PIPE)
5062 {*r = _SC_PIPE; return 0;}
5063 #else /* def _SC_PIPE */
5064 {errno = EINVAL; return -1;}
5065 #endif /* ndef _SC_PIPE */
5066 if (x == Mono_Posix_SysconfName__SC_POLL)
5068 {*r = _SC_POLL; return 0;}
5069 #else /* def _SC_POLL */
5070 {errno = EINVAL; return -1;}
5071 #endif /* ndef _SC_POLL */
5072 if (x == Mono_Posix_SysconfName__SC_PRIORITIZED_IO)
5073 #ifdef _SC_PRIORITIZED_IO
5074 {*r = _SC_PRIORITIZED_IO; return 0;}
5075 #else /* def _SC_PRIORITIZED_IO */
5076 {errno = EINVAL; return -1;}
5077 #endif /* ndef _SC_PRIORITIZED_IO */
5078 if (x == Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING)
5079 #ifdef _SC_PRIORITY_SCHEDULING
5080 {*r = _SC_PRIORITY_SCHEDULING; return 0;}
5081 #else /* def _SC_PRIORITY_SCHEDULING */
5082 {errno = EINVAL; return -1;}
5083 #endif /* ndef _SC_PRIORITY_SCHEDULING */
5084 if (x == Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS)
5085 #ifdef _SC_READER_WRITER_LOCKS
5086 {*r = _SC_READER_WRITER_LOCKS; return 0;}
5087 #else /* def _SC_READER_WRITER_LOCKS */
5088 {errno = EINVAL; return -1;}
5089 #endif /* ndef _SC_READER_WRITER_LOCKS */
5090 if (x == Mono_Posix_SysconfName__SC_REALTIME_SIGNALS)
5091 #ifdef _SC_REALTIME_SIGNALS
5092 {*r = _SC_REALTIME_SIGNALS; return 0;}
5093 #else /* def _SC_REALTIME_SIGNALS */
5094 {errno = EINVAL; return -1;}
5095 #endif /* ndef _SC_REALTIME_SIGNALS */
5096 if (x == Mono_Posix_SysconfName__SC_REGEXP)
5098 {*r = _SC_REGEXP; return 0;}
5099 #else /* def _SC_REGEXP */
5100 {errno = EINVAL; return -1;}
5101 #endif /* ndef _SC_REGEXP */
5102 if (x == Mono_Posix_SysconfName__SC_REGEX_VERSION)
5103 #ifdef _SC_REGEX_VERSION
5104 {*r = _SC_REGEX_VERSION; return 0;}
5105 #else /* def _SC_REGEX_VERSION */
5106 {errno = EINVAL; return -1;}
5107 #endif /* ndef _SC_REGEX_VERSION */
5108 if (x == Mono_Posix_SysconfName__SC_RE_DUP_MAX)
5109 #ifdef _SC_RE_DUP_MAX
5110 {*r = _SC_RE_DUP_MAX; return 0;}
5111 #else /* def _SC_RE_DUP_MAX */
5112 {errno = EINVAL; return -1;}
5113 #endif /* ndef _SC_RE_DUP_MAX */
5114 if (x == Mono_Posix_SysconfName__SC_RTSIG_MAX)
5115 #ifdef _SC_RTSIG_MAX
5116 {*r = _SC_RTSIG_MAX; return 0;}
5117 #else /* def _SC_RTSIG_MAX */
5118 {errno = EINVAL; return -1;}
5119 #endif /* ndef _SC_RTSIG_MAX */
5120 if (x == Mono_Posix_SysconfName__SC_SAVED_IDS)
5121 #ifdef _SC_SAVED_IDS
5122 {*r = _SC_SAVED_IDS; return 0;}
5123 #else /* def _SC_SAVED_IDS */
5124 {errno = EINVAL; return -1;}
5125 #endif /* ndef _SC_SAVED_IDS */
5126 if (x == Mono_Posix_SysconfName__SC_SCHAR_MAX)
5127 #ifdef _SC_SCHAR_MAX
5128 {*r = _SC_SCHAR_MAX; return 0;}
5129 #else /* def _SC_SCHAR_MAX */
5130 {errno = EINVAL; return -1;}
5131 #endif /* ndef _SC_SCHAR_MAX */
5132 if (x == Mono_Posix_SysconfName__SC_SCHAR_MIN)
5133 #ifdef _SC_SCHAR_MIN
5134 {*r = _SC_SCHAR_MIN; return 0;}
5135 #else /* def _SC_SCHAR_MIN */
5136 {errno = EINVAL; return -1;}
5137 #endif /* ndef _SC_SCHAR_MIN */
5138 if (x == Mono_Posix_SysconfName__SC_SELECT)
5140 {*r = _SC_SELECT; return 0;}
5141 #else /* def _SC_SELECT */
5142 {errno = EINVAL; return -1;}
5143 #endif /* ndef _SC_SELECT */
5144 if (x == Mono_Posix_SysconfName__SC_SEMAPHORES)
5145 #ifdef _SC_SEMAPHORES
5146 {*r = _SC_SEMAPHORES; return 0;}
5147 #else /* def _SC_SEMAPHORES */
5148 {errno = EINVAL; return -1;}
5149 #endif /* ndef _SC_SEMAPHORES */
5150 if (x == Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX)
5151 #ifdef _SC_SEM_NSEMS_MAX
5152 {*r = _SC_SEM_NSEMS_MAX; return 0;}
5153 #else /* def _SC_SEM_NSEMS_MAX */
5154 {errno = EINVAL; return -1;}
5155 #endif /* ndef _SC_SEM_NSEMS_MAX */
5156 if (x == Mono_Posix_SysconfName__SC_SEM_VALUE_MAX)
5157 #ifdef _SC_SEM_VALUE_MAX
5158 {*r = _SC_SEM_VALUE_MAX; return 0;}
5159 #else /* def _SC_SEM_VALUE_MAX */
5160 {errno = EINVAL; return -1;}
5161 #endif /* ndef _SC_SEM_VALUE_MAX */
5162 if (x == Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS)
5163 #ifdef _SC_SHARED_MEMORY_OBJECTS
5164 {*r = _SC_SHARED_MEMORY_OBJECTS; return 0;}
5165 #else /* def _SC_SHARED_MEMORY_OBJECTS */
5166 {errno = EINVAL; return -1;}
5167 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
5168 if (x == Mono_Posix_SysconfName__SC_SHELL)
5170 {*r = _SC_SHELL; return 0;}
5171 #else /* def _SC_SHELL */
5172 {errno = EINVAL; return -1;}
5173 #endif /* ndef _SC_SHELL */
5174 if (x == Mono_Posix_SysconfName__SC_SHRT_MAX)
5176 {*r = _SC_SHRT_MAX; return 0;}
5177 #else /* def _SC_SHRT_MAX */
5178 {errno = EINVAL; return -1;}
5179 #endif /* ndef _SC_SHRT_MAX */
5180 if (x == Mono_Posix_SysconfName__SC_SHRT_MIN)
5182 {*r = _SC_SHRT_MIN; return 0;}
5183 #else /* def _SC_SHRT_MIN */
5184 {errno = EINVAL; return -1;}
5185 #endif /* ndef _SC_SHRT_MIN */
5186 if (x == Mono_Posix_SysconfName__SC_SIGNALS)
5188 {*r = _SC_SIGNALS; return 0;}
5189 #else /* def _SC_SIGNALS */
5190 {errno = EINVAL; return -1;}
5191 #endif /* ndef _SC_SIGNALS */
5192 if (x == Mono_Posix_SysconfName__SC_SIGQUEUE_MAX)
5193 #ifdef _SC_SIGQUEUE_MAX
5194 {*r = _SC_SIGQUEUE_MAX; return 0;}
5195 #else /* def _SC_SIGQUEUE_MAX */
5196 {errno = EINVAL; return -1;}
5197 #endif /* ndef _SC_SIGQUEUE_MAX */
5198 if (x == Mono_Posix_SysconfName__SC_SINGLE_PROCESS)
5199 #ifdef _SC_SINGLE_PROCESS
5200 {*r = _SC_SINGLE_PROCESS; return 0;}
5201 #else /* def _SC_SINGLE_PROCESS */
5202 {errno = EINVAL; return -1;}
5203 #endif /* ndef _SC_SINGLE_PROCESS */
5204 if (x == Mono_Posix_SysconfName__SC_SPAWN)
5206 {*r = _SC_SPAWN; return 0;}
5207 #else /* def _SC_SPAWN */
5208 {errno = EINVAL; return -1;}
5209 #endif /* ndef _SC_SPAWN */
5210 if (x == Mono_Posix_SysconfName__SC_SPIN_LOCKS)
5211 #ifdef _SC_SPIN_LOCKS
5212 {*r = _SC_SPIN_LOCKS; return 0;}
5213 #else /* def _SC_SPIN_LOCKS */
5214 {errno = EINVAL; return -1;}
5215 #endif /* ndef _SC_SPIN_LOCKS */
5216 if (x == Mono_Posix_SysconfName__SC_SPORADIC_SERVER)
5217 #ifdef _SC_SPORADIC_SERVER
5218 {*r = _SC_SPORADIC_SERVER; return 0;}
5219 #else /* def _SC_SPORADIC_SERVER */
5220 {errno = EINVAL; return -1;}
5221 #endif /* ndef _SC_SPORADIC_SERVER */
5222 if (x == Mono_Posix_SysconfName__SC_SSIZE_MAX)
5223 #ifdef _SC_SSIZE_MAX
5224 {*r = _SC_SSIZE_MAX; return 0;}
5225 #else /* def _SC_SSIZE_MAX */
5226 {errno = EINVAL; return -1;}
5227 #endif /* ndef _SC_SSIZE_MAX */
5228 if (x == Mono_Posix_SysconfName__SC_STREAMS)
5230 {*r = _SC_STREAMS; return 0;}
5231 #else /* def _SC_STREAMS */
5232 {errno = EINVAL; return -1;}
5233 #endif /* ndef _SC_STREAMS */
5234 if (x == Mono_Posix_SysconfName__SC_STREAM_MAX)
5235 #ifdef _SC_STREAM_MAX
5236 {*r = _SC_STREAM_MAX; return 0;}
5237 #else /* def _SC_STREAM_MAX */
5238 {errno = EINVAL; return -1;}
5239 #endif /* ndef _SC_STREAM_MAX */
5240 if (x == Mono_Posix_SysconfName__SC_SYMLOOP_MAX)
5241 #ifdef _SC_SYMLOOP_MAX
5242 {*r = _SC_SYMLOOP_MAX; return 0;}
5243 #else /* def _SC_SYMLOOP_MAX */
5244 {errno = EINVAL; return -1;}
5245 #endif /* ndef _SC_SYMLOOP_MAX */
5246 if (x == Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO)
5247 #ifdef _SC_SYNCHRONIZED_IO
5248 {*r = _SC_SYNCHRONIZED_IO; return 0;}
5249 #else /* def _SC_SYNCHRONIZED_IO */
5250 {errno = EINVAL; return -1;}
5251 #endif /* ndef _SC_SYNCHRONIZED_IO */
5252 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE)
5253 #ifdef _SC_SYSTEM_DATABASE
5254 {*r = _SC_SYSTEM_DATABASE; return 0;}
5255 #else /* def _SC_SYSTEM_DATABASE */
5256 {errno = EINVAL; return -1;}
5257 #endif /* ndef _SC_SYSTEM_DATABASE */
5258 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R)
5259 #ifdef _SC_SYSTEM_DATABASE_R
5260 {*r = _SC_SYSTEM_DATABASE_R; return 0;}
5261 #else /* def _SC_SYSTEM_DATABASE_R */
5262 {errno = EINVAL; return -1;}
5263 #endif /* ndef _SC_SYSTEM_DATABASE_R */
5264 if (x == Mono_Posix_SysconfName__SC_THREADS)
5266 {*r = _SC_THREADS; return 0;}
5267 #else /* def _SC_THREADS */
5268 {errno = EINVAL; return -1;}
5269 #endif /* ndef _SC_THREADS */
5270 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR)
5271 #ifdef _SC_THREAD_ATTR_STACKADDR
5272 {*r = _SC_THREAD_ATTR_STACKADDR; return 0;}
5273 #else /* def _SC_THREAD_ATTR_STACKADDR */
5274 {errno = EINVAL; return -1;}
5275 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
5276 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE)
5277 #ifdef _SC_THREAD_ATTR_STACKSIZE
5278 {*r = _SC_THREAD_ATTR_STACKSIZE; return 0;}
5279 #else /* def _SC_THREAD_ATTR_STACKSIZE */
5280 {errno = EINVAL; return -1;}
5281 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
5282 if (x == Mono_Posix_SysconfName__SC_THREAD_CPUTIME)
5283 #ifdef _SC_THREAD_CPUTIME
5284 {*r = _SC_THREAD_CPUTIME; return 0;}
5285 #else /* def _SC_THREAD_CPUTIME */
5286 {errno = EINVAL; return -1;}
5287 #endif /* ndef _SC_THREAD_CPUTIME */
5288 if (x == Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS)
5289 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
5290 {*r = _SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
5291 #else /* def _SC_THREAD_DESTRUCTOR_ITERATIONS */
5292 {errno = EINVAL; return -1;}
5293 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
5294 if (x == Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX)
5295 #ifdef _SC_THREAD_KEYS_MAX
5296 {*r = _SC_THREAD_KEYS_MAX; return 0;}
5297 #else /* def _SC_THREAD_KEYS_MAX */
5298 {errno = EINVAL; return -1;}
5299 #endif /* ndef _SC_THREAD_KEYS_MAX */
5300 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING)
5301 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
5302 {*r = _SC_THREAD_PRIORITY_SCHEDULING; return 0;}
5303 #else /* def _SC_THREAD_PRIORITY_SCHEDULING */
5304 {errno = EINVAL; return -1;}
5305 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
5306 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT)
5307 #ifdef _SC_THREAD_PRIO_INHERIT
5308 {*r = _SC_THREAD_PRIO_INHERIT; return 0;}
5309 #else /* def _SC_THREAD_PRIO_INHERIT */
5310 {errno = EINVAL; return -1;}
5311 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
5312 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT)
5313 #ifdef _SC_THREAD_PRIO_PROTECT
5314 {*r = _SC_THREAD_PRIO_PROTECT; return 0;}
5315 #else /* def _SC_THREAD_PRIO_PROTECT */
5316 {errno = EINVAL; return -1;}
5317 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
5318 if (x == Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED)
5319 #ifdef _SC_THREAD_PROCESS_SHARED
5320 {*r = _SC_THREAD_PROCESS_SHARED; return 0;}
5321 #else /* def _SC_THREAD_PROCESS_SHARED */
5322 {errno = EINVAL; return -1;}
5323 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
5324 if (x == Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS)
5325 #ifdef _SC_THREAD_SAFE_FUNCTIONS
5326 {*r = _SC_THREAD_SAFE_FUNCTIONS; return 0;}
5327 #else /* def _SC_THREAD_SAFE_FUNCTIONS */
5328 {errno = EINVAL; return -1;}
5329 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
5330 if (x == Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER)
5331 #ifdef _SC_THREAD_SPORADIC_SERVER
5332 {*r = _SC_THREAD_SPORADIC_SERVER; return 0;}
5333 #else /* def _SC_THREAD_SPORADIC_SERVER */
5334 {errno = EINVAL; return -1;}
5335 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
5336 if (x == Mono_Posix_SysconfName__SC_THREAD_STACK_MIN)
5337 #ifdef _SC_THREAD_STACK_MIN
5338 {*r = _SC_THREAD_STACK_MIN; return 0;}
5339 #else /* def _SC_THREAD_STACK_MIN */
5340 {errno = EINVAL; return -1;}
5341 #endif /* ndef _SC_THREAD_STACK_MIN */
5342 if (x == Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX)
5343 #ifdef _SC_THREAD_THREADS_MAX
5344 {*r = _SC_THREAD_THREADS_MAX; return 0;}
5345 #else /* def _SC_THREAD_THREADS_MAX */
5346 {errno = EINVAL; return -1;}
5347 #endif /* ndef _SC_THREAD_THREADS_MAX */
5348 if (x == Mono_Posix_SysconfName__SC_TIMEOUTS)
5350 {*r = _SC_TIMEOUTS; return 0;}
5351 #else /* def _SC_TIMEOUTS */
5352 {errno = EINVAL; return -1;}
5353 #endif /* ndef _SC_TIMEOUTS */
5354 if (x == Mono_Posix_SysconfName__SC_TIMERS)
5356 {*r = _SC_TIMERS; return 0;}
5357 #else /* def _SC_TIMERS */
5358 {errno = EINVAL; return -1;}
5359 #endif /* ndef _SC_TIMERS */
5360 if (x == Mono_Posix_SysconfName__SC_TIMER_MAX)
5361 #ifdef _SC_TIMER_MAX
5362 {*r = _SC_TIMER_MAX; return 0;}
5363 #else /* def _SC_TIMER_MAX */
5364 {errno = EINVAL; return -1;}
5365 #endif /* ndef _SC_TIMER_MAX */
5366 if (x == Mono_Posix_SysconfName__SC_TRACE)
5368 {*r = _SC_TRACE; return 0;}
5369 #else /* def _SC_TRACE */
5370 {errno = EINVAL; return -1;}
5371 #endif /* ndef _SC_TRACE */
5372 if (x == Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER)
5373 #ifdef _SC_TRACE_EVENT_FILTER
5374 {*r = _SC_TRACE_EVENT_FILTER; return 0;}
5375 #else /* def _SC_TRACE_EVENT_FILTER */
5376 {errno = EINVAL; return -1;}
5377 #endif /* ndef _SC_TRACE_EVENT_FILTER */
5378 if (x == Mono_Posix_SysconfName__SC_TRACE_INHERIT)
5379 #ifdef _SC_TRACE_INHERIT
5380 {*r = _SC_TRACE_INHERIT; return 0;}
5381 #else /* def _SC_TRACE_INHERIT */
5382 {errno = EINVAL; return -1;}
5383 #endif /* ndef _SC_TRACE_INHERIT */
5384 if (x == Mono_Posix_SysconfName__SC_TRACE_LOG)
5385 #ifdef _SC_TRACE_LOG
5386 {*r = _SC_TRACE_LOG; return 0;}
5387 #else /* def _SC_TRACE_LOG */
5388 {errno = EINVAL; return -1;}
5389 #endif /* ndef _SC_TRACE_LOG */
5390 if (x == Mono_Posix_SysconfName__SC_TTY_NAME_MAX)
5391 #ifdef _SC_TTY_NAME_MAX
5392 {*r = _SC_TTY_NAME_MAX; return 0;}
5393 #else /* def _SC_TTY_NAME_MAX */
5394 {errno = EINVAL; return -1;}
5395 #endif /* ndef _SC_TTY_NAME_MAX */
5396 if (x == Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS)
5397 #ifdef _SC_TYPED_MEMORY_OBJECTS
5398 {*r = _SC_TYPED_MEMORY_OBJECTS; return 0;}
5399 #else /* def _SC_TYPED_MEMORY_OBJECTS */
5400 {errno = EINVAL; return -1;}
5401 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
5402 if (x == Mono_Posix_SysconfName__SC_TZNAME_MAX)
5403 #ifdef _SC_TZNAME_MAX
5404 {*r = _SC_TZNAME_MAX; return 0;}
5405 #else /* def _SC_TZNAME_MAX */
5406 {errno = EINVAL; return -1;}
5407 #endif /* ndef _SC_TZNAME_MAX */
5408 if (x == Mono_Posix_SysconfName__SC_T_IOV_MAX)
5409 #ifdef _SC_T_IOV_MAX
5410 {*r = _SC_T_IOV_MAX; return 0;}
5411 #else /* def _SC_T_IOV_MAX */
5412 {errno = EINVAL; return -1;}
5413 #endif /* ndef _SC_T_IOV_MAX */
5414 if (x == Mono_Posix_SysconfName__SC_UCHAR_MAX)
5415 #ifdef _SC_UCHAR_MAX
5416 {*r = _SC_UCHAR_MAX; return 0;}
5417 #else /* def _SC_UCHAR_MAX */
5418 {errno = EINVAL; return -1;}
5419 #endif /* ndef _SC_UCHAR_MAX */
5420 if (x == Mono_Posix_SysconfName__SC_UINT_MAX)
5422 {*r = _SC_UINT_MAX; return 0;}
5423 #else /* def _SC_UINT_MAX */
5424 {errno = EINVAL; return -1;}
5425 #endif /* ndef _SC_UINT_MAX */
5426 if (x == Mono_Posix_SysconfName__SC_UIO_MAXIOV)
5427 #ifdef _SC_UIO_MAXIOV
5428 {*r = _SC_UIO_MAXIOV; return 0;}
5429 #else /* def _SC_UIO_MAXIOV */
5430 {errno = EINVAL; return -1;}
5431 #endif /* ndef _SC_UIO_MAXIOV */
5432 if (x == Mono_Posix_SysconfName__SC_ULONG_MAX)
5433 #ifdef _SC_ULONG_MAX
5434 {*r = _SC_ULONG_MAX; return 0;}
5435 #else /* def _SC_ULONG_MAX */
5436 {errno = EINVAL; return -1;}
5437 #endif /* ndef _SC_ULONG_MAX */
5438 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS)
5439 #ifdef _SC_USER_GROUPS
5440 {*r = _SC_USER_GROUPS; return 0;}
5441 #else /* def _SC_USER_GROUPS */
5442 {errno = EINVAL; return -1;}
5443 #endif /* ndef _SC_USER_GROUPS */
5444 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS_R)
5445 #ifdef _SC_USER_GROUPS_R
5446 {*r = _SC_USER_GROUPS_R; return 0;}
5447 #else /* def _SC_USER_GROUPS_R */
5448 {errno = EINVAL; return -1;}
5449 #endif /* ndef _SC_USER_GROUPS_R */
5450 if (x == Mono_Posix_SysconfName__SC_USHRT_MAX)
5451 #ifdef _SC_USHRT_MAX
5452 {*r = _SC_USHRT_MAX; return 0;}
5453 #else /* def _SC_USHRT_MAX */
5454 {errno = EINVAL; return -1;}
5455 #endif /* ndef _SC_USHRT_MAX */
5456 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFF32)
5457 #ifdef _SC_V6_ILP32_OFF32
5458 {*r = _SC_V6_ILP32_OFF32; return 0;}
5459 #else /* def _SC_V6_ILP32_OFF32 */
5460 {errno = EINVAL; return -1;}
5461 #endif /* ndef _SC_V6_ILP32_OFF32 */
5462 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG)
5463 #ifdef _SC_V6_ILP32_OFFBIG
5464 {*r = _SC_V6_ILP32_OFFBIG; return 0;}
5465 #else /* def _SC_V6_ILP32_OFFBIG */
5466 {errno = EINVAL; return -1;}
5467 #endif /* ndef _SC_V6_ILP32_OFFBIG */
5468 if (x == Mono_Posix_SysconfName__SC_V6_LP64_OFF64)
5469 #ifdef _SC_V6_LP64_OFF64
5470 {*r = _SC_V6_LP64_OFF64; return 0;}
5471 #else /* def _SC_V6_LP64_OFF64 */
5472 {errno = EINVAL; return -1;}
5473 #endif /* ndef _SC_V6_LP64_OFF64 */
5474 if (x == Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG)
5475 #ifdef _SC_V6_LPBIG_OFFBIG
5476 {*r = _SC_V6_LPBIG_OFFBIG; return 0;}
5477 #else /* def _SC_V6_LPBIG_OFFBIG */
5478 {errno = EINVAL; return -1;}
5479 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
5480 if (x == Mono_Posix_SysconfName__SC_VERSION)
5482 {*r = _SC_VERSION; return 0;}
5483 #else /* def _SC_VERSION */
5484 {errno = EINVAL; return -1;}
5485 #endif /* ndef _SC_VERSION */
5486 if (x == Mono_Posix_SysconfName__SC_WORD_BIT)
5488 {*r = _SC_WORD_BIT; return 0;}
5489 #else /* def _SC_WORD_BIT */
5490 {errno = EINVAL; return -1;}
5491 #endif /* ndef _SC_WORD_BIT */
5492 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32)
5493 #ifdef _SC_XBS5_ILP32_OFF32
5494 {*r = _SC_XBS5_ILP32_OFF32; return 0;}
5495 #else /* def _SC_XBS5_ILP32_OFF32 */
5496 {errno = EINVAL; return -1;}
5497 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
5498 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG)
5499 #ifdef _SC_XBS5_ILP32_OFFBIG
5500 {*r = _SC_XBS5_ILP32_OFFBIG; return 0;}
5501 #else /* def _SC_XBS5_ILP32_OFFBIG */
5502 {errno = EINVAL; return -1;}
5503 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
5504 if (x == Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64)
5505 #ifdef _SC_XBS5_LP64_OFF64
5506 {*r = _SC_XBS5_LP64_OFF64; return 0;}
5507 #else /* def _SC_XBS5_LP64_OFF64 */
5508 {errno = EINVAL; return -1;}
5509 #endif /* ndef _SC_XBS5_LP64_OFF64 */
5510 if (x == Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG)
5511 #ifdef _SC_XBS5_LPBIG_OFFBIG
5512 {*r = _SC_XBS5_LPBIG_OFFBIG; return 0;}
5513 #else /* def _SC_XBS5_LPBIG_OFFBIG */
5514 {errno = EINVAL; return -1;}
5515 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
5516 if (x == Mono_Posix_SysconfName__SC_XOPEN_CRYPT)
5517 #ifdef _SC_XOPEN_CRYPT
5518 {*r = _SC_XOPEN_CRYPT; return 0;}
5519 #else /* def _SC_XOPEN_CRYPT */
5520 {errno = EINVAL; return -1;}
5521 #endif /* ndef _SC_XOPEN_CRYPT */
5522 if (x == Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N)
5523 #ifdef _SC_XOPEN_ENH_I18N
5524 {*r = _SC_XOPEN_ENH_I18N; return 0;}
5525 #else /* def _SC_XOPEN_ENH_I18N */
5526 {errno = EINVAL; return -1;}
5527 #endif /* ndef _SC_XOPEN_ENH_I18N */
5528 if (x == Mono_Posix_SysconfName__SC_XOPEN_LEGACY)
5529 #ifdef _SC_XOPEN_LEGACY
5530 {*r = _SC_XOPEN_LEGACY; return 0;}
5531 #else /* def _SC_XOPEN_LEGACY */
5532 {errno = EINVAL; return -1;}
5533 #endif /* ndef _SC_XOPEN_LEGACY */
5534 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME)
5535 #ifdef _SC_XOPEN_REALTIME
5536 {*r = _SC_XOPEN_REALTIME; return 0;}
5537 #else /* def _SC_XOPEN_REALTIME */
5538 {errno = EINVAL; return -1;}
5539 #endif /* ndef _SC_XOPEN_REALTIME */
5540 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS)
5541 #ifdef _SC_XOPEN_REALTIME_THREADS
5542 {*r = _SC_XOPEN_REALTIME_THREADS; return 0;}
5543 #else /* def _SC_XOPEN_REALTIME_THREADS */
5544 {errno = EINVAL; return -1;}
5545 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
5546 if (x == Mono_Posix_SysconfName__SC_XOPEN_SHM)
5547 #ifdef _SC_XOPEN_SHM
5548 {*r = _SC_XOPEN_SHM; return 0;}
5549 #else /* def _SC_XOPEN_SHM */
5550 {errno = EINVAL; return -1;}
5551 #endif /* ndef _SC_XOPEN_SHM */
5552 if (x == Mono_Posix_SysconfName__SC_XOPEN_UNIX)
5553 #ifdef _SC_XOPEN_UNIX
5554 {*r = _SC_XOPEN_UNIX; return 0;}
5555 #else /* def _SC_XOPEN_UNIX */
5556 {errno = EINVAL; return -1;}
5557 #endif /* ndef _SC_XOPEN_UNIX */
5558 if (x == Mono_Posix_SysconfName__SC_XOPEN_VERSION)
5559 #ifdef _SC_XOPEN_VERSION
5560 {*r = _SC_XOPEN_VERSION; return 0;}
5561 #else /* def _SC_XOPEN_VERSION */
5562 {errno = EINVAL; return -1;}
5563 #endif /* ndef _SC_XOPEN_VERSION */
5564 if (x == Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION)
5565 #ifdef _SC_XOPEN_XCU_VERSION
5566 {*r = _SC_XOPEN_XCU_VERSION; return 0;}
5567 #else /* def _SC_XOPEN_XCU_VERSION */
5568 {errno = EINVAL; return -1;}
5569 #endif /* ndef _SC_XOPEN_XCU_VERSION */
5570 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG2)
5571 #ifdef _SC_XOPEN_XPG2
5572 {*r = _SC_XOPEN_XPG2; return 0;}
5573 #else /* def _SC_XOPEN_XPG2 */
5574 {errno = EINVAL; return -1;}
5575 #endif /* ndef _SC_XOPEN_XPG2 */
5576 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG3)
5577 #ifdef _SC_XOPEN_XPG3
5578 {*r = _SC_XOPEN_XPG3; return 0;}
5579 #else /* def _SC_XOPEN_XPG3 */
5580 {errno = EINVAL; return -1;}
5581 #endif /* ndef _SC_XOPEN_XPG3 */
5582 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG4)
5583 #ifdef _SC_XOPEN_XPG4
5584 {*r = _SC_XOPEN_XPG4; return 0;}
5585 #else /* def _SC_XOPEN_XPG4 */
5586 {errno = EINVAL; return -1;}
5587 #endif /* ndef _SC_XOPEN_XPG4 */
5590 errno = EINVAL; return -1;
5593 int Mono_Posix_ToSysconfName (int x, int *r)
5598 #ifdef _SC_2_CHAR_TERM
5599 if (x == _SC_2_CHAR_TERM)
5600 {*r = Mono_Posix_SysconfName__SC_2_CHAR_TERM; return 0;}
5601 #endif /* ndef _SC_2_CHAR_TERM */
5603 if (x == _SC_2_C_BIND)
5604 {*r = Mono_Posix_SysconfName__SC_2_C_BIND; return 0;}
5605 #endif /* ndef _SC_2_C_BIND */
5607 if (x == _SC_2_C_DEV)
5608 {*r = Mono_Posix_SysconfName__SC_2_C_DEV; return 0;}
5609 #endif /* ndef _SC_2_C_DEV */
5610 #ifdef _SC_2_C_VERSION
5611 if (x == _SC_2_C_VERSION)
5612 {*r = Mono_Posix_SysconfName__SC_2_C_VERSION; return 0;}
5613 #endif /* ndef _SC_2_C_VERSION */
5614 #ifdef _SC_2_FORT_DEV
5615 if (x == _SC_2_FORT_DEV)
5616 {*r = Mono_Posix_SysconfName__SC_2_FORT_DEV; return 0;}
5617 #endif /* ndef _SC_2_FORT_DEV */
5618 #ifdef _SC_2_FORT_RUN
5619 if (x == _SC_2_FORT_RUN)
5620 {*r = Mono_Posix_SysconfName__SC_2_FORT_RUN; return 0;}
5621 #endif /* ndef _SC_2_FORT_RUN */
5622 #ifdef _SC_2_LOCALEDEF
5623 if (x == _SC_2_LOCALEDEF)
5624 {*r = Mono_Posix_SysconfName__SC_2_LOCALEDEF; return 0;}
5625 #endif /* ndef _SC_2_LOCALEDEF */
5628 {*r = Mono_Posix_SysconfName__SC_2_PBS; return 0;}
5629 #endif /* ndef _SC_2_PBS */
5630 #ifdef _SC_2_PBS_ACCOUNTING
5631 if (x == _SC_2_PBS_ACCOUNTING)
5632 {*r = Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING; return 0;}
5633 #endif /* ndef _SC_2_PBS_ACCOUNTING */
5634 #ifdef _SC_2_PBS_CHECKPOINT
5635 if (x == _SC_2_PBS_CHECKPOINT)
5636 {*r = Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT; return 0;}
5637 #endif /* ndef _SC_2_PBS_CHECKPOINT */
5638 #ifdef _SC_2_PBS_LOCATE
5639 if (x == _SC_2_PBS_LOCATE)
5640 {*r = Mono_Posix_SysconfName__SC_2_PBS_LOCATE; return 0;}
5641 #endif /* ndef _SC_2_PBS_LOCATE */
5642 #ifdef _SC_2_PBS_MESSAGE
5643 if (x == _SC_2_PBS_MESSAGE)
5644 {*r = Mono_Posix_SysconfName__SC_2_PBS_MESSAGE; return 0;}
5645 #endif /* ndef _SC_2_PBS_MESSAGE */
5646 #ifdef _SC_2_PBS_TRACK
5647 if (x == _SC_2_PBS_TRACK)
5648 {*r = Mono_Posix_SysconfName__SC_2_PBS_TRACK; return 0;}
5649 #endif /* ndef _SC_2_PBS_TRACK */
5651 if (x == _SC_2_SW_DEV)
5652 {*r = Mono_Posix_SysconfName__SC_2_SW_DEV; return 0;}
5653 #endif /* ndef _SC_2_SW_DEV */
5656 {*r = Mono_Posix_SysconfName__SC_2_UPE; return 0;}
5657 #endif /* ndef _SC_2_UPE */
5658 #ifdef _SC_2_VERSION
5659 if (x == _SC_2_VERSION)
5660 {*r = Mono_Posix_SysconfName__SC_2_VERSION; return 0;}
5661 #endif /* ndef _SC_2_VERSION */
5662 #ifdef _SC_ADVISORY_INFO
5663 if (x == _SC_ADVISORY_INFO)
5664 {*r = Mono_Posix_SysconfName__SC_ADVISORY_INFO; return 0;}
5665 #endif /* ndef _SC_ADVISORY_INFO */
5666 #ifdef _SC_AIO_LISTIO_MAX
5667 if (x == _SC_AIO_LISTIO_MAX)
5668 {*r = Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX; return 0;}
5669 #endif /* ndef _SC_AIO_LISTIO_MAX */
5671 if (x == _SC_AIO_MAX)
5672 {*r = Mono_Posix_SysconfName__SC_AIO_MAX; return 0;}
5673 #endif /* ndef _SC_AIO_MAX */
5674 #ifdef _SC_AIO_PRIO_DELTA_MAX
5675 if (x == _SC_AIO_PRIO_DELTA_MAX)
5676 {*r = Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX; return 0;}
5677 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
5679 if (x == _SC_ARG_MAX)
5680 {*r = Mono_Posix_SysconfName__SC_ARG_MAX; return 0;}
5681 #endif /* ndef _SC_ARG_MAX */
5682 #ifdef _SC_ASYNCHRONOUS_IO
5683 if (x == _SC_ASYNCHRONOUS_IO)
5684 {*r = Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO; return 0;}
5685 #endif /* ndef _SC_ASYNCHRONOUS_IO */
5686 #ifdef _SC_ATEXIT_MAX
5687 if (x == _SC_ATEXIT_MAX)
5688 {*r = Mono_Posix_SysconfName__SC_ATEXIT_MAX; return 0;}
5689 #endif /* ndef _SC_ATEXIT_MAX */
5690 #ifdef _SC_AVPHYS_PAGES
5691 if (x == _SC_AVPHYS_PAGES)
5692 {*r = Mono_Posix_SysconfName__SC_AVPHYS_PAGES; return 0;}
5693 #endif /* ndef _SC_AVPHYS_PAGES */
5695 if (x == _SC_BARRIERS)
5696 {*r = Mono_Posix_SysconfName__SC_BARRIERS; return 0;}
5697 #endif /* ndef _SC_BARRIERS */
5700 {*r = Mono_Posix_SysconfName__SC_BASE; return 0;}
5701 #endif /* ndef _SC_BASE */
5702 #ifdef _SC_BC_BASE_MAX
5703 if (x == _SC_BC_BASE_MAX)
5704 {*r = Mono_Posix_SysconfName__SC_BC_BASE_MAX; return 0;}
5705 #endif /* ndef _SC_BC_BASE_MAX */
5706 #ifdef _SC_BC_DIM_MAX
5707 if (x == _SC_BC_DIM_MAX)
5708 {*r = Mono_Posix_SysconfName__SC_BC_DIM_MAX; return 0;}
5709 #endif /* ndef _SC_BC_DIM_MAX */
5710 #ifdef _SC_BC_SCALE_MAX
5711 if (x == _SC_BC_SCALE_MAX)
5712 {*r = Mono_Posix_SysconfName__SC_BC_SCALE_MAX; return 0;}
5713 #endif /* ndef _SC_BC_SCALE_MAX */
5714 #ifdef _SC_BC_STRING_MAX
5715 if (x == _SC_BC_STRING_MAX)
5716 {*r = Mono_Posix_SysconfName__SC_BC_STRING_MAX; return 0;}
5717 #endif /* ndef _SC_BC_STRING_MAX */
5718 #ifdef _SC_CHARCLASS_NAME_MAX
5719 if (x == _SC_CHARCLASS_NAME_MAX)
5720 {*r = Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX; return 0;}
5721 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
5723 if (x == _SC_CHAR_BIT)
5724 {*r = Mono_Posix_SysconfName__SC_CHAR_BIT; return 0;}
5725 #endif /* ndef _SC_CHAR_BIT */
5727 if (x == _SC_CHAR_MAX)
5728 {*r = Mono_Posix_SysconfName__SC_CHAR_MAX; return 0;}
5729 #endif /* ndef _SC_CHAR_MAX */
5731 if (x == _SC_CHAR_MIN)
5732 {*r = Mono_Posix_SysconfName__SC_CHAR_MIN; return 0;}
5733 #endif /* ndef _SC_CHAR_MIN */
5734 #ifdef _SC_CHILD_MAX
5735 if (x == _SC_CHILD_MAX)
5736 {*r = Mono_Posix_SysconfName__SC_CHILD_MAX; return 0;}
5737 #endif /* ndef _SC_CHILD_MAX */
5739 if (x == _SC_CLK_TCK)
5740 {*r = Mono_Posix_SysconfName__SC_CLK_TCK; return 0;}
5741 #endif /* ndef _SC_CLK_TCK */
5742 #ifdef _SC_CLOCK_SELECTION
5743 if (x == _SC_CLOCK_SELECTION)
5744 {*r = Mono_Posix_SysconfName__SC_CLOCK_SELECTION; return 0;}
5745 #endif /* ndef _SC_CLOCK_SELECTION */
5746 #ifdef _SC_COLL_WEIGHTS_MAX
5747 if (x == _SC_COLL_WEIGHTS_MAX)
5748 {*r = Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX; return 0;}
5749 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
5751 if (x == _SC_CPUTIME)
5752 {*r = Mono_Posix_SysconfName__SC_CPUTIME; return 0;}
5753 #endif /* ndef _SC_CPUTIME */
5754 #ifdef _SC_C_LANG_SUPPORT
5755 if (x == _SC_C_LANG_SUPPORT)
5756 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT; return 0;}
5757 #endif /* ndef _SC_C_LANG_SUPPORT */
5758 #ifdef _SC_C_LANG_SUPPORT_R
5759 if (x == _SC_C_LANG_SUPPORT_R)
5760 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R; return 0;}
5761 #endif /* ndef _SC_C_LANG_SUPPORT_R */
5762 #ifdef _SC_DELAYTIMER_MAX
5763 if (x == _SC_DELAYTIMER_MAX)
5764 {*r = Mono_Posix_SysconfName__SC_DELAYTIMER_MAX; return 0;}
5765 #endif /* ndef _SC_DELAYTIMER_MAX */
5766 #ifdef _SC_DEVICE_IO
5767 if (x == _SC_DEVICE_IO)
5768 {*r = Mono_Posix_SysconfName__SC_DEVICE_IO; return 0;}
5769 #endif /* ndef _SC_DEVICE_IO */
5770 #ifdef _SC_DEVICE_SPECIFIC
5771 if (x == _SC_DEVICE_SPECIFIC)
5772 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC; return 0;}
5773 #endif /* ndef _SC_DEVICE_SPECIFIC */
5774 #ifdef _SC_DEVICE_SPECIFIC_R
5775 if (x == _SC_DEVICE_SPECIFIC_R)
5776 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R; return 0;}
5777 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
5778 #ifdef _SC_EQUIV_CLASS_MAX
5779 if (x == _SC_EQUIV_CLASS_MAX)
5780 {*r = Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX; return 0;}
5781 #endif /* ndef _SC_EQUIV_CLASS_MAX */
5782 #ifdef _SC_EXPR_NEST_MAX
5783 if (x == _SC_EXPR_NEST_MAX)
5784 {*r = Mono_Posix_SysconfName__SC_EXPR_NEST_MAX; return 0;}
5785 #endif /* ndef _SC_EXPR_NEST_MAX */
5787 if (x == _SC_FD_MGMT)
5788 {*r = Mono_Posix_SysconfName__SC_FD_MGMT; return 0;}
5789 #endif /* ndef _SC_FD_MGMT */
5792 {*r = Mono_Posix_SysconfName__SC_FIFO; return 0;}
5793 #endif /* ndef _SC_FIFO */
5794 #ifdef _SC_FILE_ATTRIBUTES
5795 if (x == _SC_FILE_ATTRIBUTES)
5796 {*r = Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES; return 0;}
5797 #endif /* ndef _SC_FILE_ATTRIBUTES */
5798 #ifdef _SC_FILE_LOCKING
5799 if (x == _SC_FILE_LOCKING)
5800 {*r = Mono_Posix_SysconfName__SC_FILE_LOCKING; return 0;}
5801 #endif /* ndef _SC_FILE_LOCKING */
5802 #ifdef _SC_FILE_SYSTEM
5803 if (x == _SC_FILE_SYSTEM)
5804 {*r = Mono_Posix_SysconfName__SC_FILE_SYSTEM; return 0;}
5805 #endif /* ndef _SC_FILE_SYSTEM */
5808 {*r = Mono_Posix_SysconfName__SC_FSYNC; return 0;}
5809 #endif /* ndef _SC_FSYNC */
5810 #ifdef _SC_GETGR_R_SIZE_MAX
5811 if (x == _SC_GETGR_R_SIZE_MAX)
5812 {*r = Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX; return 0;}
5813 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
5814 #ifdef _SC_GETPW_R_SIZE_MAX
5815 if (x == _SC_GETPW_R_SIZE_MAX)
5816 {*r = Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX; return 0;}
5817 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
5818 #ifdef _SC_HOST_NAME_MAX
5819 if (x == _SC_HOST_NAME_MAX)
5820 {*r = Mono_Posix_SysconfName__SC_HOST_NAME_MAX; return 0;}
5821 #endif /* ndef _SC_HOST_NAME_MAX */
5823 if (x == _SC_INT_MAX)
5824 {*r = Mono_Posix_SysconfName__SC_INT_MAX; return 0;}
5825 #endif /* ndef _SC_INT_MAX */
5827 if (x == _SC_INT_MIN)
5828 {*r = Mono_Posix_SysconfName__SC_INT_MIN; return 0;}
5829 #endif /* ndef _SC_INT_MIN */
5831 if (x == _SC_IOV_MAX)
5832 {*r = Mono_Posix_SysconfName__SC_IOV_MAX; return 0;}
5833 #endif /* ndef _SC_IOV_MAX */
5834 #ifdef _SC_JOB_CONTROL
5835 if (x == _SC_JOB_CONTROL)
5836 {*r = Mono_Posix_SysconfName__SC_JOB_CONTROL; return 0;}
5837 #endif /* ndef _SC_JOB_CONTROL */
5838 #ifdef _SC_LEVEL1_DCACHE_ASSOC
5839 if (x == _SC_LEVEL1_DCACHE_ASSOC)
5840 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC; return 0;}
5841 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
5842 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
5843 if (x == _SC_LEVEL1_DCACHE_LINESIZE)
5844 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE; return 0;}
5845 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
5846 #ifdef _SC_LEVEL1_DCACHE_SIZE
5847 if (x == _SC_LEVEL1_DCACHE_SIZE)
5848 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE; return 0;}
5849 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
5850 #ifdef _SC_LEVEL1_ICACHE_ASSOC
5851 if (x == _SC_LEVEL1_ICACHE_ASSOC)
5852 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC; return 0;}
5853 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
5854 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
5855 if (x == _SC_LEVEL1_ICACHE_LINESIZE)
5856 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE; return 0;}
5857 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
5858 #ifdef _SC_LEVEL1_ICACHE_SIZE
5859 if (x == _SC_LEVEL1_ICACHE_SIZE)
5860 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE; return 0;}
5861 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
5862 #ifdef _SC_LEVEL2_CACHE_ASSOC
5863 if (x == _SC_LEVEL2_CACHE_ASSOC)
5864 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC; return 0;}
5865 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
5866 #ifdef _SC_LEVEL2_CACHE_LINESIZE
5867 if (x == _SC_LEVEL2_CACHE_LINESIZE)
5868 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE; return 0;}
5869 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
5870 #ifdef _SC_LEVEL2_CACHE_SIZE
5871 if (x == _SC_LEVEL2_CACHE_SIZE)
5872 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE; return 0;}
5873 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
5874 #ifdef _SC_LEVEL3_CACHE_ASSOC
5875 if (x == _SC_LEVEL3_CACHE_ASSOC)
5876 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC; return 0;}
5877 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
5878 #ifdef _SC_LEVEL3_CACHE_LINESIZE
5879 if (x == _SC_LEVEL3_CACHE_LINESIZE)
5880 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE; return 0;}
5881 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
5882 #ifdef _SC_LEVEL3_CACHE_SIZE
5883 if (x == _SC_LEVEL3_CACHE_SIZE)
5884 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE; return 0;}
5885 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
5886 #ifdef _SC_LEVEL4_CACHE_ASSOC
5887 if (x == _SC_LEVEL4_CACHE_ASSOC)
5888 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC; return 0;}
5889 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
5890 #ifdef _SC_LEVEL4_CACHE_LINESIZE
5891 if (x == _SC_LEVEL4_CACHE_LINESIZE)
5892 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE; return 0;}
5893 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
5894 #ifdef _SC_LEVEL4_CACHE_SIZE
5895 if (x == _SC_LEVEL4_CACHE_SIZE)
5896 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE; return 0;}
5897 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
5899 if (x == _SC_LINE_MAX)
5900 {*r = Mono_Posix_SysconfName__SC_LINE_MAX; return 0;}
5901 #endif /* ndef _SC_LINE_MAX */
5902 #ifdef _SC_LOGIN_NAME_MAX
5903 if (x == _SC_LOGIN_NAME_MAX)
5904 {*r = Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX; return 0;}
5905 #endif /* ndef _SC_LOGIN_NAME_MAX */
5907 if (x == _SC_LONG_BIT)
5908 {*r = Mono_Posix_SysconfName__SC_LONG_BIT; return 0;}
5909 #endif /* ndef _SC_LONG_BIT */
5910 #ifdef _SC_MAPPED_FILES
5911 if (x == _SC_MAPPED_FILES)
5912 {*r = Mono_Posix_SysconfName__SC_MAPPED_FILES; return 0;}
5913 #endif /* ndef _SC_MAPPED_FILES */
5914 #ifdef _SC_MB_LEN_MAX
5915 if (x == _SC_MB_LEN_MAX)
5916 {*r = Mono_Posix_SysconfName__SC_MB_LEN_MAX; return 0;}
5917 #endif /* ndef _SC_MB_LEN_MAX */
5919 if (x == _SC_MEMLOCK)
5920 {*r = Mono_Posix_SysconfName__SC_MEMLOCK; return 0;}
5921 #endif /* ndef _SC_MEMLOCK */
5922 #ifdef _SC_MEMLOCK_RANGE
5923 if (x == _SC_MEMLOCK_RANGE)
5924 {*r = Mono_Posix_SysconfName__SC_MEMLOCK_RANGE; return 0;}
5925 #endif /* ndef _SC_MEMLOCK_RANGE */
5926 #ifdef _SC_MEMORY_PROTECTION
5927 if (x == _SC_MEMORY_PROTECTION)
5928 {*r = Mono_Posix_SysconfName__SC_MEMORY_PROTECTION; return 0;}
5929 #endif /* ndef _SC_MEMORY_PROTECTION */
5930 #ifdef _SC_MESSAGE_PASSING
5931 if (x == _SC_MESSAGE_PASSING)
5932 {*r = Mono_Posix_SysconfName__SC_MESSAGE_PASSING; return 0;}
5933 #endif /* ndef _SC_MESSAGE_PASSING */
5934 #ifdef _SC_MONOTONIC_CLOCK
5935 if (x == _SC_MONOTONIC_CLOCK)
5936 {*r = Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK; return 0;}
5937 #endif /* ndef _SC_MONOTONIC_CLOCK */
5938 #ifdef _SC_MQ_OPEN_MAX
5939 if (x == _SC_MQ_OPEN_MAX)
5940 {*r = Mono_Posix_SysconfName__SC_MQ_OPEN_MAX; return 0;}
5941 #endif /* ndef _SC_MQ_OPEN_MAX */
5942 #ifdef _SC_MQ_PRIO_MAX
5943 if (x == _SC_MQ_PRIO_MAX)
5944 {*r = Mono_Posix_SysconfName__SC_MQ_PRIO_MAX; return 0;}
5945 #endif /* ndef _SC_MQ_PRIO_MAX */
5946 #ifdef _SC_MULTI_PROCESS
5947 if (x == _SC_MULTI_PROCESS)
5948 {*r = Mono_Posix_SysconfName__SC_MULTI_PROCESS; return 0;}
5949 #endif /* ndef _SC_MULTI_PROCESS */
5950 #ifdef _SC_NETWORKING
5951 if (x == _SC_NETWORKING)
5952 {*r = Mono_Posix_SysconfName__SC_NETWORKING; return 0;}
5953 #endif /* ndef _SC_NETWORKING */
5954 #ifdef _SC_NGROUPS_MAX
5955 if (x == _SC_NGROUPS_MAX)
5956 {*r = Mono_Posix_SysconfName__SC_NGROUPS_MAX; return 0;}
5957 #endif /* ndef _SC_NGROUPS_MAX */
5958 #ifdef _SC_NL_ARGMAX
5959 if (x == _SC_NL_ARGMAX)
5960 {*r = Mono_Posix_SysconfName__SC_NL_ARGMAX; return 0;}
5961 #endif /* ndef _SC_NL_ARGMAX */
5962 #ifdef _SC_NL_LANGMAX
5963 if (x == _SC_NL_LANGMAX)
5964 {*r = Mono_Posix_SysconfName__SC_NL_LANGMAX; return 0;}
5965 #endif /* ndef _SC_NL_LANGMAX */
5966 #ifdef _SC_NL_MSGMAX
5967 if (x == _SC_NL_MSGMAX)
5968 {*r = Mono_Posix_SysconfName__SC_NL_MSGMAX; return 0;}
5969 #endif /* ndef _SC_NL_MSGMAX */
5971 if (x == _SC_NL_NMAX)
5972 {*r = Mono_Posix_SysconfName__SC_NL_NMAX; return 0;}
5973 #endif /* ndef _SC_NL_NMAX */
5974 #ifdef _SC_NL_SETMAX
5975 if (x == _SC_NL_SETMAX)
5976 {*r = Mono_Posix_SysconfName__SC_NL_SETMAX; return 0;}
5977 #endif /* ndef _SC_NL_SETMAX */
5978 #ifdef _SC_NL_TEXTMAX
5979 if (x == _SC_NL_TEXTMAX)
5980 {*r = Mono_Posix_SysconfName__SC_NL_TEXTMAX; return 0;}
5981 #endif /* ndef _SC_NL_TEXTMAX */
5982 #ifdef _SC_NPROCESSORS_CONF
5983 if (x == _SC_NPROCESSORS_CONF)
5984 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_CONF; return 0;}
5985 #endif /* ndef _SC_NPROCESSORS_CONF */
5986 #ifdef _SC_NPROCESSORS_ONLN
5987 if (x == _SC_NPROCESSORS_ONLN)
5988 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN; return 0;}
5989 #endif /* ndef _SC_NPROCESSORS_ONLN */
5992 {*r = Mono_Posix_SysconfName__SC_NZERO; return 0;}
5993 #endif /* ndef _SC_NZERO */
5995 if (x == _SC_OPEN_MAX)
5996 {*r = Mono_Posix_SysconfName__SC_OPEN_MAX; return 0;}
5997 #endif /* ndef _SC_OPEN_MAX */
5999 if (x == _SC_PAGESIZE)
6000 {*r = Mono_Posix_SysconfName__SC_PAGESIZE; return 0;}
6001 #endif /* ndef _SC_PAGESIZE */
6003 if (x == _SC_PASS_MAX)
6004 {*r = Mono_Posix_SysconfName__SC_PASS_MAX; return 0;}
6005 #endif /* ndef _SC_PASS_MAX */
6006 #ifdef _SC_PHYS_PAGES
6007 if (x == _SC_PHYS_PAGES)
6008 {*r = Mono_Posix_SysconfName__SC_PHYS_PAGES; return 0;}
6009 #endif /* ndef _SC_PHYS_PAGES */
6012 {*r = Mono_Posix_SysconfName__SC_PII; return 0;}
6013 #endif /* ndef _SC_PII */
6014 #ifdef _SC_PII_INTERNET
6015 if (x == _SC_PII_INTERNET)
6016 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET; return 0;}
6017 #endif /* ndef _SC_PII_INTERNET */
6018 #ifdef _SC_PII_INTERNET_DGRAM
6019 if (x == _SC_PII_INTERNET_DGRAM)
6020 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM; return 0;}
6021 #endif /* ndef _SC_PII_INTERNET_DGRAM */
6022 #ifdef _SC_PII_INTERNET_STREAM
6023 if (x == _SC_PII_INTERNET_STREAM)
6024 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM; return 0;}
6025 #endif /* ndef _SC_PII_INTERNET_STREAM */
6027 if (x == _SC_PII_OSI)
6028 {*r = Mono_Posix_SysconfName__SC_PII_OSI; return 0;}
6029 #endif /* ndef _SC_PII_OSI */
6030 #ifdef _SC_PII_OSI_CLTS
6031 if (x == _SC_PII_OSI_CLTS)
6032 {*r = Mono_Posix_SysconfName__SC_PII_OSI_CLTS; return 0;}
6033 #endif /* ndef _SC_PII_OSI_CLTS */
6034 #ifdef _SC_PII_OSI_COTS
6035 if (x == _SC_PII_OSI_COTS)
6036 {*r = Mono_Posix_SysconfName__SC_PII_OSI_COTS; return 0;}
6037 #endif /* ndef _SC_PII_OSI_COTS */
6038 #ifdef _SC_PII_OSI_M
6039 if (x == _SC_PII_OSI_M)
6040 {*r = Mono_Posix_SysconfName__SC_PII_OSI_M; return 0;}
6041 #endif /* ndef _SC_PII_OSI_M */
6042 #ifdef _SC_PII_SOCKET
6043 if (x == _SC_PII_SOCKET)
6044 {*r = Mono_Posix_SysconfName__SC_PII_SOCKET; return 0;}
6045 #endif /* ndef _SC_PII_SOCKET */
6047 if (x == _SC_PII_XTI)
6048 {*r = Mono_Posix_SysconfName__SC_PII_XTI; return 0;}
6049 #endif /* ndef _SC_PII_XTI */
6052 {*r = Mono_Posix_SysconfName__SC_PIPE; return 0;}
6053 #endif /* ndef _SC_PIPE */
6056 {*r = Mono_Posix_SysconfName__SC_POLL; return 0;}
6057 #endif /* ndef _SC_POLL */
6058 #ifdef _SC_PRIORITIZED_IO
6059 if (x == _SC_PRIORITIZED_IO)
6060 {*r = Mono_Posix_SysconfName__SC_PRIORITIZED_IO; return 0;}
6061 #endif /* ndef _SC_PRIORITIZED_IO */
6062 #ifdef _SC_PRIORITY_SCHEDULING
6063 if (x == _SC_PRIORITY_SCHEDULING)
6064 {*r = Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING; return 0;}
6065 #endif /* ndef _SC_PRIORITY_SCHEDULING */
6066 #ifdef _SC_READER_WRITER_LOCKS
6067 if (x == _SC_READER_WRITER_LOCKS)
6068 {*r = Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS; return 0;}
6069 #endif /* ndef _SC_READER_WRITER_LOCKS */
6070 #ifdef _SC_REALTIME_SIGNALS
6071 if (x == _SC_REALTIME_SIGNALS)
6072 {*r = Mono_Posix_SysconfName__SC_REALTIME_SIGNALS; return 0;}
6073 #endif /* ndef _SC_REALTIME_SIGNALS */
6075 if (x == _SC_REGEXP)
6076 {*r = Mono_Posix_SysconfName__SC_REGEXP; return 0;}
6077 #endif /* ndef _SC_REGEXP */
6078 #ifdef _SC_REGEX_VERSION
6079 if (x == _SC_REGEX_VERSION)
6080 {*r = Mono_Posix_SysconfName__SC_REGEX_VERSION; return 0;}
6081 #endif /* ndef _SC_REGEX_VERSION */
6082 #ifdef _SC_RE_DUP_MAX
6083 if (x == _SC_RE_DUP_MAX)
6084 {*r = Mono_Posix_SysconfName__SC_RE_DUP_MAX; return 0;}
6085 #endif /* ndef _SC_RE_DUP_MAX */
6086 #ifdef _SC_RTSIG_MAX
6087 if (x == _SC_RTSIG_MAX)
6088 {*r = Mono_Posix_SysconfName__SC_RTSIG_MAX; return 0;}
6089 #endif /* ndef _SC_RTSIG_MAX */
6090 #ifdef _SC_SAVED_IDS
6091 if (x == _SC_SAVED_IDS)
6092 {*r = Mono_Posix_SysconfName__SC_SAVED_IDS; return 0;}
6093 #endif /* ndef _SC_SAVED_IDS */
6094 #ifdef _SC_SCHAR_MAX
6095 if (x == _SC_SCHAR_MAX)
6096 {*r = Mono_Posix_SysconfName__SC_SCHAR_MAX; return 0;}
6097 #endif /* ndef _SC_SCHAR_MAX */
6098 #ifdef _SC_SCHAR_MIN
6099 if (x == _SC_SCHAR_MIN)
6100 {*r = Mono_Posix_SysconfName__SC_SCHAR_MIN; return 0;}
6101 #endif /* ndef _SC_SCHAR_MIN */
6103 if (x == _SC_SELECT)
6104 {*r = Mono_Posix_SysconfName__SC_SELECT; return 0;}
6105 #endif /* ndef _SC_SELECT */
6106 #ifdef _SC_SEMAPHORES
6107 if (x == _SC_SEMAPHORES)
6108 {*r = Mono_Posix_SysconfName__SC_SEMAPHORES; return 0;}
6109 #endif /* ndef _SC_SEMAPHORES */
6110 #ifdef _SC_SEM_NSEMS_MAX
6111 if (x == _SC_SEM_NSEMS_MAX)
6112 {*r = Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX; return 0;}
6113 #endif /* ndef _SC_SEM_NSEMS_MAX */
6114 #ifdef _SC_SEM_VALUE_MAX
6115 if (x == _SC_SEM_VALUE_MAX)
6116 {*r = Mono_Posix_SysconfName__SC_SEM_VALUE_MAX; return 0;}
6117 #endif /* ndef _SC_SEM_VALUE_MAX */
6118 #ifdef _SC_SHARED_MEMORY_OBJECTS
6119 if (x == _SC_SHARED_MEMORY_OBJECTS)
6120 {*r = Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS; return 0;}
6121 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
6124 {*r = Mono_Posix_SysconfName__SC_SHELL; return 0;}
6125 #endif /* ndef _SC_SHELL */
6127 if (x == _SC_SHRT_MAX)
6128 {*r = Mono_Posix_SysconfName__SC_SHRT_MAX; return 0;}
6129 #endif /* ndef _SC_SHRT_MAX */
6131 if (x == _SC_SHRT_MIN)
6132 {*r = Mono_Posix_SysconfName__SC_SHRT_MIN; return 0;}
6133 #endif /* ndef _SC_SHRT_MIN */
6135 if (x == _SC_SIGNALS)
6136 {*r = Mono_Posix_SysconfName__SC_SIGNALS; return 0;}
6137 #endif /* ndef _SC_SIGNALS */
6138 #ifdef _SC_SIGQUEUE_MAX
6139 if (x == _SC_SIGQUEUE_MAX)
6140 {*r = Mono_Posix_SysconfName__SC_SIGQUEUE_MAX; return 0;}
6141 #endif /* ndef _SC_SIGQUEUE_MAX */
6142 #ifdef _SC_SINGLE_PROCESS
6143 if (x == _SC_SINGLE_PROCESS)
6144 {*r = Mono_Posix_SysconfName__SC_SINGLE_PROCESS; return 0;}
6145 #endif /* ndef _SC_SINGLE_PROCESS */
6148 {*r = Mono_Posix_SysconfName__SC_SPAWN; return 0;}
6149 #endif /* ndef _SC_SPAWN */
6150 #ifdef _SC_SPIN_LOCKS
6151 if (x == _SC_SPIN_LOCKS)
6152 {*r = Mono_Posix_SysconfName__SC_SPIN_LOCKS; return 0;}
6153 #endif /* ndef _SC_SPIN_LOCKS */
6154 #ifdef _SC_SPORADIC_SERVER
6155 if (x == _SC_SPORADIC_SERVER)
6156 {*r = Mono_Posix_SysconfName__SC_SPORADIC_SERVER; return 0;}
6157 #endif /* ndef _SC_SPORADIC_SERVER */
6158 #ifdef _SC_SSIZE_MAX
6159 if (x == _SC_SSIZE_MAX)
6160 {*r = Mono_Posix_SysconfName__SC_SSIZE_MAX; return 0;}
6161 #endif /* ndef _SC_SSIZE_MAX */
6163 if (x == _SC_STREAMS)
6164 {*r = Mono_Posix_SysconfName__SC_STREAMS; return 0;}
6165 #endif /* ndef _SC_STREAMS */
6166 #ifdef _SC_STREAM_MAX
6167 if (x == _SC_STREAM_MAX)
6168 {*r = Mono_Posix_SysconfName__SC_STREAM_MAX; return 0;}
6169 #endif /* ndef _SC_STREAM_MAX */
6170 #ifdef _SC_SYMLOOP_MAX
6171 if (x == _SC_SYMLOOP_MAX)
6172 {*r = Mono_Posix_SysconfName__SC_SYMLOOP_MAX; return 0;}
6173 #endif /* ndef _SC_SYMLOOP_MAX */
6174 #ifdef _SC_SYNCHRONIZED_IO
6175 if (x == _SC_SYNCHRONIZED_IO)
6176 {*r = Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO; return 0;}
6177 #endif /* ndef _SC_SYNCHRONIZED_IO */
6178 #ifdef _SC_SYSTEM_DATABASE
6179 if (x == _SC_SYSTEM_DATABASE)
6180 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE; return 0;}
6181 #endif /* ndef _SC_SYSTEM_DATABASE */
6182 #ifdef _SC_SYSTEM_DATABASE_R
6183 if (x == _SC_SYSTEM_DATABASE_R)
6184 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R; return 0;}
6185 #endif /* ndef _SC_SYSTEM_DATABASE_R */
6187 if (x == _SC_THREADS)
6188 {*r = Mono_Posix_SysconfName__SC_THREADS; return 0;}
6189 #endif /* ndef _SC_THREADS */
6190 #ifdef _SC_THREAD_ATTR_STACKADDR
6191 if (x == _SC_THREAD_ATTR_STACKADDR)
6192 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR; return 0;}
6193 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
6194 #ifdef _SC_THREAD_ATTR_STACKSIZE
6195 if (x == _SC_THREAD_ATTR_STACKSIZE)
6196 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE; return 0;}
6197 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
6198 #ifdef _SC_THREAD_CPUTIME
6199 if (x == _SC_THREAD_CPUTIME)
6200 {*r = Mono_Posix_SysconfName__SC_THREAD_CPUTIME; return 0;}
6201 #endif /* ndef _SC_THREAD_CPUTIME */
6202 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
6203 if (x == _SC_THREAD_DESTRUCTOR_ITERATIONS)
6204 {*r = Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
6205 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
6206 #ifdef _SC_THREAD_KEYS_MAX
6207 if (x == _SC_THREAD_KEYS_MAX)
6208 {*r = Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX; return 0;}
6209 #endif /* ndef _SC_THREAD_KEYS_MAX */
6210 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
6211 if (x == _SC_THREAD_PRIORITY_SCHEDULING)
6212 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING; return 0;}
6213 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
6214 #ifdef _SC_THREAD_PRIO_INHERIT
6215 if (x == _SC_THREAD_PRIO_INHERIT)
6216 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT; return 0;}
6217 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
6218 #ifdef _SC_THREAD_PRIO_PROTECT
6219 if (x == _SC_THREAD_PRIO_PROTECT)
6220 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT; return 0;}
6221 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
6222 #ifdef _SC_THREAD_PROCESS_SHARED
6223 if (x == _SC_THREAD_PROCESS_SHARED)
6224 {*r = Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED; return 0;}
6225 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
6226 #ifdef _SC_THREAD_SAFE_FUNCTIONS
6227 if (x == _SC_THREAD_SAFE_FUNCTIONS)
6228 {*r = Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS; return 0;}
6229 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
6230 #ifdef _SC_THREAD_SPORADIC_SERVER
6231 if (x == _SC_THREAD_SPORADIC_SERVER)
6232 {*r = Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER; return 0;}
6233 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
6234 #ifdef _SC_THREAD_STACK_MIN
6235 if (x == _SC_THREAD_STACK_MIN)
6236 {*r = Mono_Posix_SysconfName__SC_THREAD_STACK_MIN; return 0;}
6237 #endif /* ndef _SC_THREAD_STACK_MIN */
6238 #ifdef _SC_THREAD_THREADS_MAX
6239 if (x == _SC_THREAD_THREADS_MAX)
6240 {*r = Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX; return 0;}
6241 #endif /* ndef _SC_THREAD_THREADS_MAX */
6243 if (x == _SC_TIMEOUTS)
6244 {*r = Mono_Posix_SysconfName__SC_TIMEOUTS; return 0;}
6245 #endif /* ndef _SC_TIMEOUTS */
6247 if (x == _SC_TIMERS)
6248 {*r = Mono_Posix_SysconfName__SC_TIMERS; return 0;}
6249 #endif /* ndef _SC_TIMERS */
6250 #ifdef _SC_TIMER_MAX
6251 if (x == _SC_TIMER_MAX)
6252 {*r = Mono_Posix_SysconfName__SC_TIMER_MAX; return 0;}
6253 #endif /* ndef _SC_TIMER_MAX */
6256 {*r = Mono_Posix_SysconfName__SC_TRACE; return 0;}
6257 #endif /* ndef _SC_TRACE */
6258 #ifdef _SC_TRACE_EVENT_FILTER
6259 if (x == _SC_TRACE_EVENT_FILTER)
6260 {*r = Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER; return 0;}
6261 #endif /* ndef _SC_TRACE_EVENT_FILTER */
6262 #ifdef _SC_TRACE_INHERIT
6263 if (x == _SC_TRACE_INHERIT)
6264 {*r = Mono_Posix_SysconfName__SC_TRACE_INHERIT; return 0;}
6265 #endif /* ndef _SC_TRACE_INHERIT */
6266 #ifdef _SC_TRACE_LOG
6267 if (x == _SC_TRACE_LOG)
6268 {*r = Mono_Posix_SysconfName__SC_TRACE_LOG; return 0;}
6269 #endif /* ndef _SC_TRACE_LOG */
6270 #ifdef _SC_TTY_NAME_MAX
6271 if (x == _SC_TTY_NAME_MAX)
6272 {*r = Mono_Posix_SysconfName__SC_TTY_NAME_MAX; return 0;}
6273 #endif /* ndef _SC_TTY_NAME_MAX */
6274 #ifdef _SC_TYPED_MEMORY_OBJECTS
6275 if (x == _SC_TYPED_MEMORY_OBJECTS)
6276 {*r = Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS; return 0;}
6277 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
6278 #ifdef _SC_TZNAME_MAX
6279 if (x == _SC_TZNAME_MAX)
6280 {*r = Mono_Posix_SysconfName__SC_TZNAME_MAX; return 0;}
6281 #endif /* ndef _SC_TZNAME_MAX */
6282 #ifdef _SC_T_IOV_MAX
6283 if (x == _SC_T_IOV_MAX)
6284 {*r = Mono_Posix_SysconfName__SC_T_IOV_MAX; return 0;}
6285 #endif /* ndef _SC_T_IOV_MAX */
6286 #ifdef _SC_UCHAR_MAX
6287 if (x == _SC_UCHAR_MAX)
6288 {*r = Mono_Posix_SysconfName__SC_UCHAR_MAX; return 0;}
6289 #endif /* ndef _SC_UCHAR_MAX */
6291 if (x == _SC_UINT_MAX)
6292 {*r = Mono_Posix_SysconfName__SC_UINT_MAX; return 0;}
6293 #endif /* ndef _SC_UINT_MAX */
6294 #ifdef _SC_UIO_MAXIOV
6295 if (x == _SC_UIO_MAXIOV)
6296 {*r = Mono_Posix_SysconfName__SC_UIO_MAXIOV; return 0;}
6297 #endif /* ndef _SC_UIO_MAXIOV */
6298 #ifdef _SC_ULONG_MAX
6299 if (x == _SC_ULONG_MAX)
6300 {*r = Mono_Posix_SysconfName__SC_ULONG_MAX; return 0;}
6301 #endif /* ndef _SC_ULONG_MAX */
6302 #ifdef _SC_USER_GROUPS
6303 if (x == _SC_USER_GROUPS)
6304 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS; return 0;}
6305 #endif /* ndef _SC_USER_GROUPS */
6306 #ifdef _SC_USER_GROUPS_R
6307 if (x == _SC_USER_GROUPS_R)
6308 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS_R; return 0;}
6309 #endif /* ndef _SC_USER_GROUPS_R */
6310 #ifdef _SC_USHRT_MAX
6311 if (x == _SC_USHRT_MAX)
6312 {*r = Mono_Posix_SysconfName__SC_USHRT_MAX; return 0;}
6313 #endif /* ndef _SC_USHRT_MAX */
6314 #ifdef _SC_V6_ILP32_OFF32
6315 if (x == _SC_V6_ILP32_OFF32)
6316 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFF32; return 0;}
6317 #endif /* ndef _SC_V6_ILP32_OFF32 */
6318 #ifdef _SC_V6_ILP32_OFFBIG
6319 if (x == _SC_V6_ILP32_OFFBIG)
6320 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG; return 0;}
6321 #endif /* ndef _SC_V6_ILP32_OFFBIG */
6322 #ifdef _SC_V6_LP64_OFF64
6323 if (x == _SC_V6_LP64_OFF64)
6324 {*r = Mono_Posix_SysconfName__SC_V6_LP64_OFF64; return 0;}
6325 #endif /* ndef _SC_V6_LP64_OFF64 */
6326 #ifdef _SC_V6_LPBIG_OFFBIG
6327 if (x == _SC_V6_LPBIG_OFFBIG)
6328 {*r = Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG; return 0;}
6329 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
6331 if (x == _SC_VERSION)
6332 {*r = Mono_Posix_SysconfName__SC_VERSION; return 0;}
6333 #endif /* ndef _SC_VERSION */
6335 if (x == _SC_WORD_BIT)
6336 {*r = Mono_Posix_SysconfName__SC_WORD_BIT; return 0;}
6337 #endif /* ndef _SC_WORD_BIT */
6338 #ifdef _SC_XBS5_ILP32_OFF32
6339 if (x == _SC_XBS5_ILP32_OFF32)
6340 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32; return 0;}
6341 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
6342 #ifdef _SC_XBS5_ILP32_OFFBIG
6343 if (x == _SC_XBS5_ILP32_OFFBIG)
6344 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG; return 0;}
6345 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
6346 #ifdef _SC_XBS5_LP64_OFF64
6347 if (x == _SC_XBS5_LP64_OFF64)
6348 {*r = Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64; return 0;}
6349 #endif /* ndef _SC_XBS5_LP64_OFF64 */
6350 #ifdef _SC_XBS5_LPBIG_OFFBIG
6351 if (x == _SC_XBS5_LPBIG_OFFBIG)
6352 {*r = Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG; return 0;}
6353 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
6354 #ifdef _SC_XOPEN_CRYPT
6355 if (x == _SC_XOPEN_CRYPT)
6356 {*r = Mono_Posix_SysconfName__SC_XOPEN_CRYPT; return 0;}
6357 #endif /* ndef _SC_XOPEN_CRYPT */
6358 #ifdef _SC_XOPEN_ENH_I18N
6359 if (x == _SC_XOPEN_ENH_I18N)
6360 {*r = Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N; return 0;}
6361 #endif /* ndef _SC_XOPEN_ENH_I18N */
6362 #ifdef _SC_XOPEN_LEGACY
6363 if (x == _SC_XOPEN_LEGACY)
6364 {*r = Mono_Posix_SysconfName__SC_XOPEN_LEGACY; return 0;}
6365 #endif /* ndef _SC_XOPEN_LEGACY */
6366 #ifdef _SC_XOPEN_REALTIME
6367 if (x == _SC_XOPEN_REALTIME)
6368 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME; return 0;}
6369 #endif /* ndef _SC_XOPEN_REALTIME */
6370 #ifdef _SC_XOPEN_REALTIME_THREADS
6371 if (x == _SC_XOPEN_REALTIME_THREADS)
6372 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS; return 0;}
6373 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
6374 #ifdef _SC_XOPEN_SHM
6375 if (x == _SC_XOPEN_SHM)
6376 {*r = Mono_Posix_SysconfName__SC_XOPEN_SHM; return 0;}
6377 #endif /* ndef _SC_XOPEN_SHM */
6378 #ifdef _SC_XOPEN_UNIX
6379 if (x == _SC_XOPEN_UNIX)
6380 {*r = Mono_Posix_SysconfName__SC_XOPEN_UNIX; return 0;}
6381 #endif /* ndef _SC_XOPEN_UNIX */
6382 #ifdef _SC_XOPEN_VERSION
6383 if (x == _SC_XOPEN_VERSION)
6384 {*r = Mono_Posix_SysconfName__SC_XOPEN_VERSION; return 0;}
6385 #endif /* ndef _SC_XOPEN_VERSION */
6386 #ifdef _SC_XOPEN_XCU_VERSION
6387 if (x == _SC_XOPEN_XCU_VERSION)
6388 {*r = Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION; return 0;}
6389 #endif /* ndef _SC_XOPEN_XCU_VERSION */
6390 #ifdef _SC_XOPEN_XPG2
6391 if (x == _SC_XOPEN_XPG2)
6392 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG2; return 0;}
6393 #endif /* ndef _SC_XOPEN_XPG2 */
6394 #ifdef _SC_XOPEN_XPG3
6395 if (x == _SC_XOPEN_XPG3)
6396 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG3; return 0;}
6397 #endif /* ndef _SC_XOPEN_XPG3 */
6398 #ifdef _SC_XOPEN_XPG4
6399 if (x == _SC_XOPEN_XPG4)
6400 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG4; return 0;}
6401 #endif /* ndef _SC_XOPEN_XPG4 */
6402 errno = EINVAL; return -1;
6405 int Mono_Posix_FromSyslogFacility (int x, int *r)
6408 if (x == Mono_Posix_SyslogFacility_LOG_AUTH)
6410 {*r = LOG_AUTH; return 0;}
6411 #else /* def LOG_AUTH */
6412 {errno = EINVAL; return -1;}
6413 #endif /* ndef LOG_AUTH */
6414 if (x == Mono_Posix_SyslogFacility_LOG_AUTHPRIV)
6416 {*r = LOG_AUTHPRIV; return 0;}
6417 #else /* def LOG_AUTHPRIV */
6418 {errno = EINVAL; return -1;}
6419 #endif /* ndef LOG_AUTHPRIV */
6420 if (x == Mono_Posix_SyslogFacility_LOG_CRON)
6422 {*r = LOG_CRON; return 0;}
6423 #else /* def LOG_CRON */
6424 {errno = EINVAL; return -1;}
6425 #endif /* ndef LOG_CRON */
6426 if (x == Mono_Posix_SyslogFacility_LOG_DAEMON)
6428 {*r = LOG_DAEMON; return 0;}
6429 #else /* def LOG_DAEMON */
6430 {errno = EINVAL; return -1;}
6431 #endif /* ndef LOG_DAEMON */
6432 if (x == Mono_Posix_SyslogFacility_LOG_FTP)
6434 {*r = LOG_FTP; return 0;}
6435 #else /* def LOG_FTP */
6436 {errno = EINVAL; return -1;}
6437 #endif /* ndef LOG_FTP */
6438 if (x == Mono_Posix_SyslogFacility_LOG_KERN)
6440 {*r = LOG_KERN; return 0;}
6441 #else /* def LOG_KERN */
6442 {errno = EINVAL; return -1;}
6443 #endif /* ndef LOG_KERN */
6444 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL0)
6446 {*r = LOG_LOCAL0; return 0;}
6447 #else /* def LOG_LOCAL0 */
6448 {errno = EINVAL; return -1;}
6449 #endif /* ndef LOG_LOCAL0 */
6450 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL1)
6452 {*r = LOG_LOCAL1; return 0;}
6453 #else /* def LOG_LOCAL1 */
6454 {errno = EINVAL; return -1;}
6455 #endif /* ndef LOG_LOCAL1 */
6456 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL2)
6458 {*r = LOG_LOCAL2; return 0;}
6459 #else /* def LOG_LOCAL2 */
6460 {errno = EINVAL; return -1;}
6461 #endif /* ndef LOG_LOCAL2 */
6462 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL3)
6464 {*r = LOG_LOCAL3; return 0;}
6465 #else /* def LOG_LOCAL3 */
6466 {errno = EINVAL; return -1;}
6467 #endif /* ndef LOG_LOCAL3 */
6468 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL4)
6470 {*r = LOG_LOCAL4; return 0;}
6471 #else /* def LOG_LOCAL4 */
6472 {errno = EINVAL; return -1;}
6473 #endif /* ndef LOG_LOCAL4 */
6474 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL5)
6476 {*r = LOG_LOCAL5; return 0;}
6477 #else /* def LOG_LOCAL5 */
6478 {errno = EINVAL; return -1;}
6479 #endif /* ndef LOG_LOCAL5 */
6480 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL6)
6482 {*r = LOG_LOCAL6; return 0;}
6483 #else /* def LOG_LOCAL6 */
6484 {errno = EINVAL; return -1;}
6485 #endif /* ndef LOG_LOCAL6 */
6486 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL7)
6488 {*r = LOG_LOCAL7; return 0;}
6489 #else /* def LOG_LOCAL7 */
6490 {errno = EINVAL; return -1;}
6491 #endif /* ndef LOG_LOCAL7 */
6492 if (x == Mono_Posix_SyslogFacility_LOG_LPR)
6494 {*r = LOG_LPR; return 0;}
6495 #else /* def LOG_LPR */
6496 {errno = EINVAL; return -1;}
6497 #endif /* ndef LOG_LPR */
6498 if (x == Mono_Posix_SyslogFacility_LOG_MAIL)
6500 {*r = LOG_MAIL; return 0;}
6501 #else /* def LOG_MAIL */
6502 {errno = EINVAL; return -1;}
6503 #endif /* ndef LOG_MAIL */
6504 if (x == Mono_Posix_SyslogFacility_LOG_NEWS)
6506 {*r = LOG_NEWS; return 0;}
6507 #else /* def LOG_NEWS */
6508 {errno = EINVAL; return -1;}
6509 #endif /* ndef LOG_NEWS */
6510 if (x == Mono_Posix_SyslogFacility_LOG_SYSLOG)
6512 {*r = LOG_SYSLOG; return 0;}
6513 #else /* def LOG_SYSLOG */
6514 {errno = EINVAL; return -1;}
6515 #endif /* ndef LOG_SYSLOG */
6516 if (x == Mono_Posix_SyslogFacility_LOG_USER)
6518 {*r = LOG_USER; return 0;}
6519 #else /* def LOG_USER */
6520 {errno = EINVAL; return -1;}
6521 #endif /* ndef LOG_USER */
6522 if (x == Mono_Posix_SyslogFacility_LOG_UUCP)
6524 {*r = LOG_UUCP; return 0;}
6525 #else /* def LOG_UUCP */
6526 {errno = EINVAL; return -1;}
6527 #endif /* ndef LOG_UUCP */
6530 errno = EINVAL; return -1;
6533 int Mono_Posix_ToSyslogFacility (int x, int *r)
6540 {*r = Mono_Posix_SyslogFacility_LOG_AUTH; return 0;}
6541 #endif /* ndef LOG_AUTH */
6543 if (x == LOG_AUTHPRIV)
6544 {*r = Mono_Posix_SyslogFacility_LOG_AUTHPRIV; return 0;}
6545 #endif /* ndef LOG_AUTHPRIV */
6548 {*r = Mono_Posix_SyslogFacility_LOG_CRON; return 0;}
6549 #endif /* ndef LOG_CRON */
6551 if (x == LOG_DAEMON)
6552 {*r = Mono_Posix_SyslogFacility_LOG_DAEMON; return 0;}
6553 #endif /* ndef LOG_DAEMON */
6556 {*r = Mono_Posix_SyslogFacility_LOG_FTP; return 0;}
6557 #endif /* ndef LOG_FTP */
6560 {*r = Mono_Posix_SyslogFacility_LOG_KERN; return 0;}
6561 #endif /* ndef LOG_KERN */
6563 if (x == LOG_LOCAL0)
6564 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL0; return 0;}
6565 #endif /* ndef LOG_LOCAL0 */
6567 if (x == LOG_LOCAL1)
6568 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL1; return 0;}
6569 #endif /* ndef LOG_LOCAL1 */
6571 if (x == LOG_LOCAL2)
6572 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL2; return 0;}
6573 #endif /* ndef LOG_LOCAL2 */
6575 if (x == LOG_LOCAL3)
6576 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL3; return 0;}
6577 #endif /* ndef LOG_LOCAL3 */
6579 if (x == LOG_LOCAL4)
6580 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL4; return 0;}
6581 #endif /* ndef LOG_LOCAL4 */
6583 if (x == LOG_LOCAL5)
6584 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL5; return 0;}
6585 #endif /* ndef LOG_LOCAL5 */
6587 if (x == LOG_LOCAL6)
6588 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL6; return 0;}
6589 #endif /* ndef LOG_LOCAL6 */
6591 if (x == LOG_LOCAL7)
6592 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL7; return 0;}
6593 #endif /* ndef LOG_LOCAL7 */
6596 {*r = Mono_Posix_SyslogFacility_LOG_LPR; return 0;}
6597 #endif /* ndef LOG_LPR */
6600 {*r = Mono_Posix_SyslogFacility_LOG_MAIL; return 0;}
6601 #endif /* ndef LOG_MAIL */
6604 {*r = Mono_Posix_SyslogFacility_LOG_NEWS; return 0;}
6605 #endif /* ndef LOG_NEWS */
6607 if (x == LOG_SYSLOG)
6608 {*r = Mono_Posix_SyslogFacility_LOG_SYSLOG; return 0;}
6609 #endif /* ndef LOG_SYSLOG */
6612 {*r = Mono_Posix_SyslogFacility_LOG_USER; return 0;}
6613 #endif /* ndef LOG_USER */
6616 {*r = Mono_Posix_SyslogFacility_LOG_UUCP; return 0;}
6617 #endif /* ndef LOG_UUCP */
6618 errno = EINVAL; return -1;
6621 int Mono_Posix_FromSyslogLevel (int x, int *r)
6624 if (x == Mono_Posix_SyslogLevel_LOG_ALERT)
6626 {*r = LOG_ALERT; return 0;}
6627 #else /* def LOG_ALERT */
6628 {errno = EINVAL; return -1;}
6629 #endif /* ndef LOG_ALERT */
6630 if (x == Mono_Posix_SyslogLevel_LOG_CRIT)
6632 {*r = LOG_CRIT; return 0;}
6633 #else /* def LOG_CRIT */
6634 {errno = EINVAL; return -1;}
6635 #endif /* ndef LOG_CRIT */
6636 if (x == Mono_Posix_SyslogLevel_LOG_DEBUG)
6638 {*r = LOG_DEBUG; return 0;}
6639 #else /* def LOG_DEBUG */
6640 {errno = EINVAL; return -1;}
6641 #endif /* ndef LOG_DEBUG */
6642 if (x == Mono_Posix_SyslogLevel_LOG_EMERG)
6644 {*r = LOG_EMERG; return 0;}
6645 #else /* def LOG_EMERG */
6646 {errno = EINVAL; return -1;}
6647 #endif /* ndef LOG_EMERG */
6648 if (x == Mono_Posix_SyslogLevel_LOG_ERR)
6650 {*r = LOG_ERR; return 0;}
6651 #else /* def LOG_ERR */
6652 {errno = EINVAL; return -1;}
6653 #endif /* ndef LOG_ERR */
6654 if (x == Mono_Posix_SyslogLevel_LOG_INFO)
6656 {*r = LOG_INFO; return 0;}
6657 #else /* def LOG_INFO */
6658 {errno = EINVAL; return -1;}
6659 #endif /* ndef LOG_INFO */
6660 if (x == Mono_Posix_SyslogLevel_LOG_NOTICE)
6662 {*r = LOG_NOTICE; return 0;}
6663 #else /* def LOG_NOTICE */
6664 {errno = EINVAL; return -1;}
6665 #endif /* ndef LOG_NOTICE */
6666 if (x == Mono_Posix_SyslogLevel_LOG_WARNING)
6668 {*r = LOG_WARNING; return 0;}
6669 #else /* def LOG_WARNING */
6670 {errno = EINVAL; return -1;}
6671 #endif /* ndef LOG_WARNING */
6674 errno = EINVAL; return -1;
6677 int Mono_Posix_ToSyslogLevel (int x, int *r)
6684 {*r = Mono_Posix_SyslogLevel_LOG_ALERT; return 0;}
6685 #endif /* ndef LOG_ALERT */
6688 {*r = Mono_Posix_SyslogLevel_LOG_CRIT; return 0;}
6689 #endif /* ndef LOG_CRIT */
6692 {*r = Mono_Posix_SyslogLevel_LOG_DEBUG; return 0;}
6693 #endif /* ndef LOG_DEBUG */
6696 {*r = Mono_Posix_SyslogLevel_LOG_EMERG; return 0;}
6697 #endif /* ndef LOG_EMERG */
6700 {*r = Mono_Posix_SyslogLevel_LOG_ERR; return 0;}
6701 #endif /* ndef LOG_ERR */
6704 {*r = Mono_Posix_SyslogLevel_LOG_INFO; return 0;}
6705 #endif /* ndef LOG_INFO */
6707 if (x == LOG_NOTICE)
6708 {*r = Mono_Posix_SyslogLevel_LOG_NOTICE; return 0;}
6709 #endif /* ndef LOG_NOTICE */
6711 if (x == LOG_WARNING)
6712 {*r = Mono_Posix_SyslogLevel_LOG_WARNING; return 0;}
6713 #endif /* ndef LOG_WARNING */
6714 errno = EINVAL; return -1;
6717 int Mono_Posix_FromSyslogOptions (int x, int *r)
6720 if ((x & Mono_Posix_SyslogOptions_LOG_CONS) == Mono_Posix_SyslogOptions_LOG_CONS)
6723 #else /* def LOG_CONS */
6724 {errno = EINVAL; return -1;}
6725 #endif /* ndef LOG_CONS */
6726 if ((x & Mono_Posix_SyslogOptions_LOG_NDELAY) == Mono_Posix_SyslogOptions_LOG_NDELAY)
6729 #else /* def LOG_NDELAY */
6730 {errno = EINVAL; return -1;}
6731 #endif /* ndef LOG_NDELAY */
6732 if ((x & Mono_Posix_SyslogOptions_LOG_NOWAIT) == Mono_Posix_SyslogOptions_LOG_NOWAIT)
6735 #else /* def LOG_NOWAIT */
6736 {errno = EINVAL; return -1;}
6737 #endif /* ndef LOG_NOWAIT */
6738 if ((x & Mono_Posix_SyslogOptions_LOG_ODELAY) == Mono_Posix_SyslogOptions_LOG_ODELAY)
6741 #else /* def LOG_ODELAY */
6742 {errno = EINVAL; return -1;}
6743 #endif /* ndef LOG_ODELAY */
6744 if ((x & Mono_Posix_SyslogOptions_LOG_PERROR) == Mono_Posix_SyslogOptions_LOG_PERROR)
6747 #else /* def LOG_PERROR */
6748 {errno = EINVAL; return -1;}
6749 #endif /* ndef LOG_PERROR */
6750 if ((x & Mono_Posix_SyslogOptions_LOG_PID) == Mono_Posix_SyslogOptions_LOG_PID)
6753 #else /* def LOG_PID */
6754 {errno = EINVAL; return -1;}
6755 #endif /* ndef LOG_PID */
6761 int Mono_Posix_ToSyslogOptions (int x, int *r)
6767 if ((x & LOG_CONS) == LOG_CONS)
6768 *r |= Mono_Posix_SyslogOptions_LOG_CONS;
6769 #endif /* ndef LOG_CONS */
6771 if ((x & LOG_NDELAY) == LOG_NDELAY)
6772 *r |= Mono_Posix_SyslogOptions_LOG_NDELAY;
6773 #endif /* ndef LOG_NDELAY */
6775 if ((x & LOG_NOWAIT) == LOG_NOWAIT)
6776 *r |= Mono_Posix_SyslogOptions_LOG_NOWAIT;
6777 #endif /* ndef LOG_NOWAIT */
6779 if ((x & LOG_ODELAY) == LOG_ODELAY)
6780 *r |= Mono_Posix_SyslogOptions_LOG_ODELAY;
6781 #endif /* ndef LOG_ODELAY */
6783 if ((x & LOG_PERROR) == LOG_PERROR)
6784 *r |= Mono_Posix_SyslogOptions_LOG_PERROR;
6785 #endif /* ndef LOG_PERROR */
6787 if ((x & LOG_PID) == LOG_PID)
6788 *r |= Mono_Posix_SyslogOptions_LOG_PID;
6789 #endif /* ndef LOG_PID */
6793 #ifdef HAVE_STRUCT_TIMESPEC
6795 Mono_Posix_FromTimespec (struct Mono_Posix_Timespec *from, struct timespec *to)
6797 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
6798 _cnm_return_val_if_overflow (gint64, from->tv_nsec, -1);
6800 memset (to, 0, sizeof(*to));
6802 to->tv_sec = from->tv_sec;
6803 to->tv_nsec = from->tv_nsec;
6807 #endif /* ndef HAVE_STRUCT_TIMESPEC */
6810 #ifdef HAVE_STRUCT_TIMESPEC
6812 Mono_Posix_ToTimespec (struct timespec *from, struct Mono_Posix_Timespec *to)
6814 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
6815 _cnm_return_val_if_overflow (gint64, from->tv_nsec, -1);
6817 memset (to, 0, sizeof(*to));
6819 to->tv_sec = from->tv_sec;
6820 to->tv_nsec = from->tv_nsec;
6824 #endif /* ndef HAVE_STRUCT_TIMESPEC */
6827 #ifdef HAVE_STRUCT_TIMEVAL
6829 Mono_Posix_FromTimeval (struct Mono_Posix_Timeval *from, struct timeval *to)
6831 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
6832 _cnm_return_val_if_overflow (suseconds_t, from->tv_usec, -1);
6834 memset (to, 0, sizeof(*to));
6836 to->tv_sec = from->tv_sec;
6837 to->tv_usec = from->tv_usec;
6841 #endif /* ndef HAVE_STRUCT_TIMEVAL */
6844 #ifdef HAVE_STRUCT_TIMEVAL
6846 Mono_Posix_ToTimeval (struct timeval *from, struct Mono_Posix_Timeval *to)
6848 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
6849 _cnm_return_val_if_overflow (gint64, from->tv_usec, -1);
6851 memset (to, 0, sizeof(*to));
6853 to->tv_sec = from->tv_sec;
6854 to->tv_usec = from->tv_usec;
6858 #endif /* ndef HAVE_STRUCT_TIMEVAL */
6861 #ifdef HAVE_STRUCT_TIMEZONE
6863 Mono_Posix_FromTimezone (struct Mono_Posix_Timezone *from, struct timezone *to)
6865 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6866 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6868 memset (to, 0, sizeof(*to));
6870 to->tz_minuteswest = from->tz_minuteswest;
6871 to->tz_dsttime = from->tz_dsttime;
6875 #endif /* ndef HAVE_STRUCT_TIMEZONE */
6878 #ifdef HAVE_STRUCT_TIMEZONE
6880 Mono_Posix_ToTimezone (struct timezone *from, struct Mono_Posix_Timezone *to)
6882 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6883 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6885 memset (to, 0, sizeof(*to));
6887 to->tz_minuteswest = from->tz_minuteswest;
6888 to->tz_dsttime = from->tz_dsttime;
6892 #endif /* ndef HAVE_STRUCT_TIMEZONE */
6895 #ifdef HAVE_STRUCT_UTIMBUF
6897 Mono_Posix_FromUtimbuf (struct Mono_Posix_Utimbuf *from, struct utimbuf *to)
6899 _cnm_return_val_if_overflow (time_t, from->actime, -1);
6900 _cnm_return_val_if_overflow (time_t, from->modtime, -1);
6902 memset (to, 0, sizeof(*to));
6904 to->actime = from->actime;
6905 to->modtime = from->modtime;
6909 #endif /* ndef HAVE_STRUCT_UTIMBUF */
6912 #ifdef HAVE_STRUCT_UTIMBUF
6914 Mono_Posix_ToUtimbuf (struct utimbuf *from, struct Mono_Posix_Utimbuf *to)
6916 _cnm_return_val_if_overflow (gint64, from->actime, -1);
6917 _cnm_return_val_if_overflow (gint64, from->modtime, -1);
6919 memset (to, 0, sizeof(*to));
6921 to->actime = from->actime;
6922 to->modtime = from->modtime;
6926 #endif /* ndef HAVE_STRUCT_UTIMBUF */
6929 int Mono_Posix_FromWaitOptions (int x, int *r)
6932 if ((x & Mono_Posix_WaitOptions_WNOHANG) == Mono_Posix_WaitOptions_WNOHANG)
6935 #else /* def WNOHANG */
6936 {errno = EINVAL; return -1;}
6937 #endif /* ndef WNOHANG */
6938 if ((x & Mono_Posix_WaitOptions_WUNTRACED) == Mono_Posix_WaitOptions_WUNTRACED)
6941 #else /* def WUNTRACED */
6942 {errno = EINVAL; return -1;}
6943 #endif /* ndef WUNTRACED */
6949 int Mono_Posix_ToWaitOptions (int x, int *r)
6955 if ((x & WNOHANG) == WNOHANG)
6956 *r |= Mono_Posix_WaitOptions_WNOHANG;
6957 #endif /* ndef WNOHANG */
6959 if ((x & WUNTRACED) == WUNTRACED)
6960 *r |= Mono_Posix_WaitOptions_WUNTRACED;
6961 #endif /* ndef WUNTRACED */
6965 int Mono_Posix_FromXattrFlags (int x, int *r)
6968 if ((x & Mono_Posix_XattrFlags_XATTR_AUTO) == Mono_Posix_XattrFlags_XATTR_AUTO)
6971 #else /* def XATTR_AUTO */
6972 {errno = EINVAL; return -1;}
6973 #endif /* ndef XATTR_AUTO */
6974 if ((x & Mono_Posix_XattrFlags_XATTR_CREATE) == Mono_Posix_XattrFlags_XATTR_CREATE)
6977 #else /* def XATTR_CREATE */
6978 {errno = EINVAL; return -1;}
6979 #endif /* ndef XATTR_CREATE */
6980 if ((x & Mono_Posix_XattrFlags_XATTR_REPLACE) == Mono_Posix_XattrFlags_XATTR_REPLACE)
6981 #ifdef XATTR_REPLACE
6982 *r |= XATTR_REPLACE;
6983 #else /* def XATTR_REPLACE */
6984 {errno = EINVAL; return -1;}
6985 #endif /* ndef XATTR_REPLACE */
6991 int Mono_Posix_ToXattrFlags (int x, int *r)
6997 if ((x & XATTR_AUTO) == XATTR_AUTO)
6998 *r |= Mono_Posix_XattrFlags_XATTR_AUTO;
6999 #endif /* ndef XATTR_AUTO */
7001 if ((x & XATTR_CREATE) == XATTR_CREATE)
7002 *r |= Mono_Posix_XattrFlags_XATTR_CREATE;
7003 #endif /* ndef XATTR_CREATE */
7004 #ifdef XATTR_REPLACE
7005 if ((x & XATTR_REPLACE) == XATTR_REPLACE)
7006 *r |= Mono_Posix_XattrFlags_XATTR_REPLACE;
7007 #endif /* ndef XATTR_REPLACE */