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 */
65 #include <errno.h> /* errno, EOVERFLOW */
66 #include <glib.h> /* g* types, g_assert_not_reached() */
68 /* returns TRUE if @type is an unsigned type */
69 #define _cnm_integral_type_is_unsigned(type) \
70 (sizeof(type) == sizeof(gint8) \
71 ? (((type)-1) > G_MAXINT8) \
72 : sizeof(type) == sizeof(gint16) \
73 ? (((type)-1) > G_MAXINT16) \
74 : sizeof(type) == sizeof(gint32) \
75 ? (((type)-1) > G_MAXINT32) \
76 : sizeof(type) == sizeof(gint64) \
77 ? (((type)-1) > G_MAXINT64) \
78 : (g_assert_not_reached (), 0))
80 /* returns the minimum value of @type as a gint64 */
81 #define _cnm_integral_type_min(type) \
82 (_cnm_integral_type_is_unsigned (type) \
84 : sizeof(type) == sizeof(gint8) \
86 : sizeof(type) == sizeof(gint16) \
88 : sizeof(type) == sizeof(gint32) \
90 : sizeof(type) == sizeof(gint64) \
92 : (g_assert_not_reached (), 0))
94 /* returns the maximum value of @type as a guint64 */
95 #define _cnm_integral_type_max(type) \
96 (_cnm_integral_type_is_unsigned (type) \
97 ? sizeof(type) == sizeof(gint8) \
99 : sizeof(type) == sizeof(gint16) \
101 : sizeof(type) == sizeof(gint32) \
103 : sizeof(type) == sizeof(gint64) \
105 : (g_assert_not_reached (), 0) \
106 : sizeof(type) == sizeof(gint8) \
108 : sizeof(type) == sizeof(gint16) \
110 : sizeof(type) == sizeof(gint32) \
112 : sizeof(type) == sizeof(gint64) \
114 : (g_assert_not_reached (), 0))
117 #define _cnm_dump_(to_t,from) \
118 printf ("# %s -> %s: min=%llx; max=%llx; value=%llx; lt=%i; l0=%i; gt=%i; e=%i\n", \
120 (gint64) (_cnm_integral_type_min(to_t)), \
121 (gint64) (_cnm_integral_type_max (to_t)), \
123 (_cnm_integral_type_min (to_t) <= from), \
125 /* (_cnm_integral_type_max (to_t) >= from) */ \
126 (from <= _cnm_integral_type_max (to_t)), \
127 ((_cnm_integral_type_min(to_t) >= from) && \
128 ((from < 0) ? 1 : (from <= _cnm_integral_type_max(to_t)))) \
131 #define _cnm_dump_(to_t, from) do {} while (0)
134 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
135 if (!(_cnm_integral_type_min(to_t) <= from && \
136 ((from < 0) || (from <= _cnm_integral_type_max(to_t))))) { \
137 _cnm_dump_(to_t, from); \
143 int Mono_Posix_FromAccessModes (int x, int *r)
146 if ((x & Mono_Posix_AccessModes_F_OK) == Mono_Posix_AccessModes_F_OK)
150 {errno = EINVAL; return -1;}
151 #endif /* ndef F_OK */
152 if ((x & Mono_Posix_AccessModes_R_OK) == Mono_Posix_AccessModes_R_OK)
156 {errno = EINVAL; return -1;}
157 #endif /* ndef R_OK */
158 if ((x & Mono_Posix_AccessModes_W_OK) == Mono_Posix_AccessModes_W_OK)
162 {errno = EINVAL; return -1;}
163 #endif /* ndef W_OK */
164 if ((x & Mono_Posix_AccessModes_X_OK) == Mono_Posix_AccessModes_X_OK)
168 {errno = EINVAL; return -1;}
169 #endif /* ndef X_OK */
175 int Mono_Posix_ToAccessModes (int x, int *r)
181 if ((x & F_OK) == F_OK)
182 *r |= Mono_Posix_AccessModes_F_OK;
183 #endif /* ndef F_OK */
185 if ((x & R_OK) == R_OK)
186 *r |= Mono_Posix_AccessModes_R_OK;
187 #endif /* ndef R_OK */
189 if ((x & W_OK) == W_OK)
190 *r |= Mono_Posix_AccessModes_W_OK;
191 #endif /* ndef W_OK */
193 if ((x & X_OK) == X_OK)
194 *r |= Mono_Posix_AccessModes_X_OK;
195 #endif /* ndef X_OK */
199 int Mono_Posix_FromConfstrName (int x, int *r)
202 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION)
203 #ifdef _CS_GNU_LIBC_VERSION
204 {*r = _CS_GNU_LIBC_VERSION; return 0;}
205 #else /* def _CS_GNU_LIBC_VERSION */
206 {errno = EINVAL; return -1;}
207 #endif /* ndef _CS_GNU_LIBC_VERSION */
208 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION)
209 #ifdef _CS_GNU_LIBPTHREAD_VERSION
210 {*r = _CS_GNU_LIBPTHREAD_VERSION; return 0;}
211 #else /* def _CS_GNU_LIBPTHREAD_VERSION */
212 {errno = EINVAL; return -1;}
213 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
214 if (x == Mono_Posix_ConfstrName__CS_LFS64_CFLAGS)
215 #ifdef _CS_LFS64_CFLAGS
216 {*r = _CS_LFS64_CFLAGS; return 0;}
217 #else /* def _CS_LFS64_CFLAGS */
218 {errno = EINVAL; return -1;}
219 #endif /* ndef _CS_LFS64_CFLAGS */
220 if (x == Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS)
221 #ifdef _CS_LFS64_LDFLAGS
222 {*r = _CS_LFS64_LDFLAGS; return 0;}
223 #else /* def _CS_LFS64_LDFLAGS */
224 {errno = EINVAL; return -1;}
225 #endif /* ndef _CS_LFS64_LDFLAGS */
226 if (x == Mono_Posix_ConfstrName__CS_LFS64_LIBS)
227 #ifdef _CS_LFS64_LIBS
228 {*r = _CS_LFS64_LIBS; return 0;}
229 #else /* def _CS_LFS64_LIBS */
230 {errno = EINVAL; return -1;}
231 #endif /* ndef _CS_LFS64_LIBS */
232 if (x == Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS)
233 #ifdef _CS_LFS64_LINTFLAGS
234 {*r = _CS_LFS64_LINTFLAGS; return 0;}
235 #else /* def _CS_LFS64_LINTFLAGS */
236 {errno = EINVAL; return -1;}
237 #endif /* ndef _CS_LFS64_LINTFLAGS */
238 if (x == Mono_Posix_ConfstrName__CS_LFS_CFLAGS)
239 #ifdef _CS_LFS_CFLAGS
240 {*r = _CS_LFS_CFLAGS; return 0;}
241 #else /* def _CS_LFS_CFLAGS */
242 {errno = EINVAL; return -1;}
243 #endif /* ndef _CS_LFS_CFLAGS */
244 if (x == Mono_Posix_ConfstrName__CS_LFS_LDFLAGS)
245 #ifdef _CS_LFS_LDFLAGS
246 {*r = _CS_LFS_LDFLAGS; return 0;}
247 #else /* def _CS_LFS_LDFLAGS */
248 {errno = EINVAL; return -1;}
249 #endif /* ndef _CS_LFS_LDFLAGS */
250 if (x == Mono_Posix_ConfstrName__CS_LFS_LIBS)
252 {*r = _CS_LFS_LIBS; return 0;}
253 #else /* def _CS_LFS_LIBS */
254 {errno = EINVAL; return -1;}
255 #endif /* ndef _CS_LFS_LIBS */
256 if (x == Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS)
257 #ifdef _CS_LFS_LINTFLAGS
258 {*r = _CS_LFS_LINTFLAGS; return 0;}
259 #else /* def _CS_LFS_LINTFLAGS */
260 {errno = EINVAL; return -1;}
261 #endif /* ndef _CS_LFS_LINTFLAGS */
262 if (x == Mono_Posix_ConfstrName__CS_PATH)
264 {*r = _CS_PATH; return 0;}
265 #else /* def _CS_PATH */
266 {errno = EINVAL; return -1;}
267 #endif /* ndef _CS_PATH */
268 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS)
269 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
270 {*r = _CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
271 #else /* def _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
272 {errno = EINVAL; return -1;}
273 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
274 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
275 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
276 {*r = _CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
277 #else /* def _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
278 {errno = EINVAL; return -1;}
279 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
280 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS)
281 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
282 {*r = _CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
283 #else /* def _CS_POSIX_V6_ILP32_OFF32_LIBS */
284 {errno = EINVAL; return -1;}
285 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
286 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
287 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
288 {*r = _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
289 #else /* def _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
290 {errno = EINVAL; return -1;}
291 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
292 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
293 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
294 {*r = _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
295 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
296 {errno = EINVAL; return -1;}
297 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
298 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
299 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
300 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
301 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
302 {errno = EINVAL; return -1;}
303 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
304 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS)
305 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
306 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
307 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
308 {errno = EINVAL; return -1;}
309 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
310 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
311 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
312 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
313 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
314 {errno = EINVAL; return -1;}
315 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
316 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS)
317 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
318 {*r = _CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
319 #else /* def _CS_POSIX_V6_LP64_OFF64_CFLAGS */
320 {errno = EINVAL; return -1;}
321 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
322 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS)
323 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
324 {*r = _CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
325 #else /* def _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
326 {errno = EINVAL; return -1;}
327 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
328 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS)
329 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
330 {*r = _CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
331 #else /* def _CS_POSIX_V6_LP64_OFF64_LIBS */
332 {errno = EINVAL; return -1;}
333 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
334 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
335 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
336 {*r = _CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
337 #else /* def _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
338 {errno = EINVAL; return -1;}
339 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
340 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
341 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
342 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
343 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
344 {errno = EINVAL; return -1;}
345 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
346 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
347 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
348 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
349 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
350 {errno = EINVAL; return -1;}
351 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
352 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
353 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
354 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
355 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
356 {errno = EINVAL; return -1;}
357 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
358 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
359 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
360 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
361 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
362 {errno = EINVAL; return -1;}
363 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
364 if (x == Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS)
365 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
366 {*r = _CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
367 #else /* def _CS_V6_WIDTH_RESTRICTED_ENVS */
368 {errno = EINVAL; return -1;}
369 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
370 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS)
371 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
372 {*r = _CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
373 #else /* def _CS_XBS5_ILP32_OFF32_CFLAGS */
374 {errno = EINVAL; return -1;}
375 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
376 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS)
377 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
378 {*r = _CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
379 #else /* def _CS_XBS5_ILP32_OFF32_LDFLAGS */
380 {errno = EINVAL; return -1;}
381 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
382 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS)
383 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
384 {*r = _CS_XBS5_ILP32_OFF32_LIBS; return 0;}
385 #else /* def _CS_XBS5_ILP32_OFF32_LIBS */
386 {errno = EINVAL; return -1;}
387 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
388 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS)
389 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
390 {*r = _CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
391 #else /* def _CS_XBS5_ILP32_OFF32_LINTFLAGS */
392 {errno = EINVAL; return -1;}
393 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
394 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS)
395 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
396 {*r = _CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
397 #else /* def _CS_XBS5_ILP32_OFFBIG_CFLAGS */
398 {errno = EINVAL; return -1;}
399 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
400 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS)
401 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
402 {*r = _CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
403 #else /* def _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
404 {errno = EINVAL; return -1;}
405 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
406 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS)
407 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
408 {*r = _CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
409 #else /* def _CS_XBS5_ILP32_OFFBIG_LIBS */
410 {errno = EINVAL; return -1;}
411 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
412 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
413 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
414 {*r = _CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
415 #else /* def _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
416 {errno = EINVAL; return -1;}
417 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
418 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS)
419 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
420 {*r = _CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
421 #else /* def _CS_XBS5_LP64_OFF64_CFLAGS */
422 {errno = EINVAL; return -1;}
423 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
424 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS)
425 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
426 {*r = _CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
427 #else /* def _CS_XBS5_LP64_OFF64_LDFLAGS */
428 {errno = EINVAL; return -1;}
429 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
430 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS)
431 #ifdef _CS_XBS5_LP64_OFF64_LIBS
432 {*r = _CS_XBS5_LP64_OFF64_LIBS; return 0;}
433 #else /* def _CS_XBS5_LP64_OFF64_LIBS */
434 {errno = EINVAL; return -1;}
435 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
436 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS)
437 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
438 {*r = _CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
439 #else /* def _CS_XBS5_LP64_OFF64_LINTFLAGS */
440 {errno = EINVAL; return -1;}
441 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
442 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS)
443 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
444 {*r = _CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
445 #else /* def _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
446 {errno = EINVAL; return -1;}
447 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
448 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
449 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
450 {*r = _CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
451 #else /* def _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
452 {errno = EINVAL; return -1;}
453 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
454 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS)
455 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
456 {*r = _CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
457 #else /* def _CS_XBS5_LPBIG_OFFBIG_LIBS */
458 {errno = EINVAL; return -1;}
459 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
460 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
461 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
462 {*r = _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
463 #else /* def _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
464 {errno = EINVAL; return -1;}
465 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
468 errno = EINVAL; return -1;
471 int Mono_Posix_ToConfstrName (int x, int *r)
476 #ifdef _CS_GNU_LIBC_VERSION
477 if (x == _CS_GNU_LIBC_VERSION)
478 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION; return 0;}
479 #endif /* ndef _CS_GNU_LIBC_VERSION */
480 #ifdef _CS_GNU_LIBPTHREAD_VERSION
481 if (x == _CS_GNU_LIBPTHREAD_VERSION)
482 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION; return 0;}
483 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
484 #ifdef _CS_LFS64_CFLAGS
485 if (x == _CS_LFS64_CFLAGS)
486 {*r = Mono_Posix_ConfstrName__CS_LFS64_CFLAGS; return 0;}
487 #endif /* ndef _CS_LFS64_CFLAGS */
488 #ifdef _CS_LFS64_LDFLAGS
489 if (x == _CS_LFS64_LDFLAGS)
490 {*r = Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS; return 0;}
491 #endif /* ndef _CS_LFS64_LDFLAGS */
492 #ifdef _CS_LFS64_LIBS
493 if (x == _CS_LFS64_LIBS)
494 {*r = Mono_Posix_ConfstrName__CS_LFS64_LIBS; return 0;}
495 #endif /* ndef _CS_LFS64_LIBS */
496 #ifdef _CS_LFS64_LINTFLAGS
497 if (x == _CS_LFS64_LINTFLAGS)
498 {*r = Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS; return 0;}
499 #endif /* ndef _CS_LFS64_LINTFLAGS */
500 #ifdef _CS_LFS_CFLAGS
501 if (x == _CS_LFS_CFLAGS)
502 {*r = Mono_Posix_ConfstrName__CS_LFS_CFLAGS; return 0;}
503 #endif /* ndef _CS_LFS_CFLAGS */
504 #ifdef _CS_LFS_LDFLAGS
505 if (x == _CS_LFS_LDFLAGS)
506 {*r = Mono_Posix_ConfstrName__CS_LFS_LDFLAGS; return 0;}
507 #endif /* ndef _CS_LFS_LDFLAGS */
509 if (x == _CS_LFS_LIBS)
510 {*r = Mono_Posix_ConfstrName__CS_LFS_LIBS; return 0;}
511 #endif /* ndef _CS_LFS_LIBS */
512 #ifdef _CS_LFS_LINTFLAGS
513 if (x == _CS_LFS_LINTFLAGS)
514 {*r = Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS; return 0;}
515 #endif /* ndef _CS_LFS_LINTFLAGS */
518 {*r = Mono_Posix_ConfstrName__CS_PATH; return 0;}
519 #endif /* ndef _CS_PATH */
520 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
521 if (x == _CS_POSIX_V6_ILP32_OFF32_CFLAGS)
522 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
523 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
524 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
525 if (x == _CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
526 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
527 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
528 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
529 if (x == _CS_POSIX_V6_ILP32_OFF32_LIBS)
530 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
531 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
532 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
533 if (x == _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
534 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
535 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
536 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
537 if (x == _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
538 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
539 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
540 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
541 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
542 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
543 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
544 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
545 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LIBS)
546 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
547 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
548 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
549 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
550 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
551 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
552 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
553 if (x == _CS_POSIX_V6_LP64_OFF64_CFLAGS)
554 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
555 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
556 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
557 if (x == _CS_POSIX_V6_LP64_OFF64_LDFLAGS)
558 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
559 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
560 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
561 if (x == _CS_POSIX_V6_LP64_OFF64_LIBS)
562 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
563 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
564 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
565 if (x == _CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
566 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
567 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
568 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
569 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
570 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
571 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
572 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
573 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
574 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
575 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
576 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
577 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
578 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
579 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
580 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
581 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
582 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
583 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
584 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
585 if (x == _CS_V6_WIDTH_RESTRICTED_ENVS)
586 {*r = Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
587 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
588 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
589 if (x == _CS_XBS5_ILP32_OFF32_CFLAGS)
590 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
591 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
592 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
593 if (x == _CS_XBS5_ILP32_OFF32_LDFLAGS)
594 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
595 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
596 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
597 if (x == _CS_XBS5_ILP32_OFF32_LIBS)
598 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS; return 0;}
599 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
600 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
601 if (x == _CS_XBS5_ILP32_OFF32_LINTFLAGS)
602 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
603 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
604 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
605 if (x == _CS_XBS5_ILP32_OFFBIG_CFLAGS)
606 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
607 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
608 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
609 if (x == _CS_XBS5_ILP32_OFFBIG_LDFLAGS)
610 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
611 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
612 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
613 if (x == _CS_XBS5_ILP32_OFFBIG_LIBS)
614 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
615 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
616 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
617 if (x == _CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
618 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
619 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
620 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
621 if (x == _CS_XBS5_LP64_OFF64_CFLAGS)
622 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
623 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
624 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
625 if (x == _CS_XBS5_LP64_OFF64_LDFLAGS)
626 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
627 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
628 #ifdef _CS_XBS5_LP64_OFF64_LIBS
629 if (x == _CS_XBS5_LP64_OFF64_LIBS)
630 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS; return 0;}
631 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
632 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
633 if (x == _CS_XBS5_LP64_OFF64_LINTFLAGS)
634 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
635 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
636 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
637 if (x == _CS_XBS5_LPBIG_OFFBIG_CFLAGS)
638 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
639 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
640 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
641 if (x == _CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
642 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
643 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
644 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
645 if (x == _CS_XBS5_LPBIG_OFFBIG_LIBS)
646 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
647 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
648 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
649 if (x == _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
650 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
651 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
652 errno = EINVAL; return -1;
655 int Mono_Posix_FromDirectoryNotifyFlags (int x, int *r)
658 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ACCESS) == Mono_Posix_DirectoryNotifyFlags_DN_ACCESS)
661 #else /* def DN_ACCESS */
662 {errno = EINVAL; return -1;}
663 #endif /* ndef DN_ACCESS */
664 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB) == Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB)
667 #else /* def DN_ATTRIB */
668 {errno = EINVAL; return -1;}
669 #endif /* ndef DN_ATTRIB */
670 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_CREATE) == Mono_Posix_DirectoryNotifyFlags_DN_CREATE)
673 #else /* def DN_CREATE */
674 {errno = EINVAL; return -1;}
675 #endif /* ndef DN_CREATE */
676 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_DELETE) == Mono_Posix_DirectoryNotifyFlags_DN_DELETE)
679 #else /* def DN_DELETE */
680 {errno = EINVAL; return -1;}
681 #endif /* ndef DN_DELETE */
682 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MODIFY) == Mono_Posix_DirectoryNotifyFlags_DN_MODIFY)
685 #else /* def DN_MODIFY */
686 {errno = EINVAL; return -1;}
687 #endif /* ndef DN_MODIFY */
688 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT) == Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT)
691 #else /* def DN_MULTISHOT */
692 {errno = EINVAL; return -1;}
693 #endif /* ndef DN_MULTISHOT */
694 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_RENAME) == Mono_Posix_DirectoryNotifyFlags_DN_RENAME)
697 #else /* def DN_RENAME */
698 {errno = EINVAL; return -1;}
699 #endif /* ndef DN_RENAME */
705 int Mono_Posix_ToDirectoryNotifyFlags (int x, int *r)
711 if ((x & DN_ACCESS) == DN_ACCESS)
712 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ACCESS;
713 #endif /* ndef DN_ACCESS */
715 if ((x & DN_ATTRIB) == DN_ATTRIB)
716 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB;
717 #endif /* ndef DN_ATTRIB */
719 if ((x & DN_CREATE) == DN_CREATE)
720 *r |= Mono_Posix_DirectoryNotifyFlags_DN_CREATE;
721 #endif /* ndef DN_CREATE */
723 if ((x & DN_DELETE) == DN_DELETE)
724 *r |= Mono_Posix_DirectoryNotifyFlags_DN_DELETE;
725 #endif /* ndef DN_DELETE */
727 if ((x & DN_MODIFY) == DN_MODIFY)
728 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MODIFY;
729 #endif /* ndef DN_MODIFY */
731 if ((x & DN_MULTISHOT) == DN_MULTISHOT)
732 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT;
733 #endif /* ndef DN_MULTISHOT */
735 if ((x & DN_RENAME) == DN_RENAME)
736 *r |= Mono_Posix_DirectoryNotifyFlags_DN_RENAME;
737 #endif /* ndef DN_RENAME */
741 int Mono_Posix_FromErrno (int x, int *r)
744 if (x == Mono_Posix_Errno_E2BIG)
746 {*r = E2BIG; return 0;}
747 #else /* def E2BIG */
748 {errno = EINVAL; return -1;}
749 #endif /* ndef E2BIG */
750 if (x == Mono_Posix_Errno_EACCES)
752 {*r = EACCES; return 0;}
753 #else /* def EACCES */
754 {errno = EINVAL; return -1;}
755 #endif /* ndef EACCES */
756 if (x == Mono_Posix_Errno_EADDRINUSE)
758 {*r = EADDRINUSE; return 0;}
759 #else /* def EADDRINUSE */
760 {errno = EINVAL; return -1;}
761 #endif /* ndef EADDRINUSE */
762 if (x == Mono_Posix_Errno_EADDRNOTAVAIL)
764 {*r = EADDRNOTAVAIL; return 0;}
765 #else /* def EADDRNOTAVAIL */
766 {errno = EINVAL; return -1;}
767 #endif /* ndef EADDRNOTAVAIL */
768 if (x == Mono_Posix_Errno_EADV)
770 {*r = EADV; return 0;}
772 {errno = EINVAL; return -1;}
773 #endif /* ndef EADV */
774 if (x == Mono_Posix_Errno_EAFNOSUPPORT)
776 {*r = EAFNOSUPPORT; return 0;}
777 #else /* def EAFNOSUPPORT */
778 {errno = EINVAL; return -1;}
779 #endif /* ndef EAFNOSUPPORT */
780 if (x == Mono_Posix_Errno_EAGAIN)
782 {*r = EAGAIN; return 0;}
783 #else /* def EAGAIN */
784 {errno = EINVAL; return -1;}
785 #endif /* ndef EAGAIN */
786 if (x == Mono_Posix_Errno_EALREADY)
788 {*r = EALREADY; return 0;}
789 #else /* def EALREADY */
790 {errno = EINVAL; return -1;}
791 #endif /* ndef EALREADY */
792 if (x == Mono_Posix_Errno_EBADE)
794 {*r = EBADE; return 0;}
795 #else /* def EBADE */
796 {errno = EINVAL; return -1;}
797 #endif /* ndef EBADE */
798 if (x == Mono_Posix_Errno_EBADF)
800 {*r = EBADF; return 0;}
801 #else /* def EBADF */
802 {errno = EINVAL; return -1;}
803 #endif /* ndef EBADF */
804 if (x == Mono_Posix_Errno_EBADFD)
806 {*r = EBADFD; return 0;}
807 #else /* def EBADFD */
808 {errno = EINVAL; return -1;}
809 #endif /* ndef EBADFD */
810 if (x == Mono_Posix_Errno_EBADMSG)
812 {*r = EBADMSG; return 0;}
813 #else /* def EBADMSG */
814 {errno = EINVAL; return -1;}
815 #endif /* ndef EBADMSG */
816 if (x == Mono_Posix_Errno_EBADR)
818 {*r = EBADR; return 0;}
819 #else /* def EBADR */
820 {errno = EINVAL; return -1;}
821 #endif /* ndef EBADR */
822 if (x == Mono_Posix_Errno_EBADRQC)
824 {*r = EBADRQC; return 0;}
825 #else /* def EBADRQC */
826 {errno = EINVAL; return -1;}
827 #endif /* ndef EBADRQC */
828 if (x == Mono_Posix_Errno_EBADSLT)
830 {*r = EBADSLT; return 0;}
831 #else /* def EBADSLT */
832 {errno = EINVAL; return -1;}
833 #endif /* ndef EBADSLT */
834 if (x == Mono_Posix_Errno_EBFONT)
836 {*r = EBFONT; return 0;}
837 #else /* def EBFONT */
838 {errno = EINVAL; return -1;}
839 #endif /* ndef EBFONT */
840 if (x == Mono_Posix_Errno_EBUSY)
842 {*r = EBUSY; return 0;}
843 #else /* def EBUSY */
844 {errno = EINVAL; return -1;}
845 #endif /* ndef EBUSY */
846 if (x == Mono_Posix_Errno_ECHILD)
848 {*r = ECHILD; return 0;}
849 #else /* def ECHILD */
850 {errno = EINVAL; return -1;}
851 #endif /* ndef ECHILD */
852 if (x == Mono_Posix_Errno_ECHRNG)
854 {*r = ECHRNG; return 0;}
855 #else /* def ECHRNG */
856 {errno = EINVAL; return -1;}
857 #endif /* ndef ECHRNG */
858 if (x == Mono_Posix_Errno_ECOMM)
860 {*r = ECOMM; return 0;}
861 #else /* def ECOMM */
862 {errno = EINVAL; return -1;}
863 #endif /* ndef ECOMM */
864 if (x == Mono_Posix_Errno_ECONNABORTED)
866 {*r = ECONNABORTED; return 0;}
867 #else /* def ECONNABORTED */
868 {errno = EINVAL; return -1;}
869 #endif /* ndef ECONNABORTED */
870 if (x == Mono_Posix_Errno_ECONNREFUSED)
872 {*r = ECONNREFUSED; return 0;}
873 #else /* def ECONNREFUSED */
874 {errno = EINVAL; return -1;}
875 #endif /* ndef ECONNREFUSED */
876 if (x == Mono_Posix_Errno_ECONNRESET)
878 {*r = ECONNRESET; return 0;}
879 #else /* def ECONNRESET */
880 {errno = EINVAL; return -1;}
881 #endif /* ndef ECONNRESET */
882 if (x == Mono_Posix_Errno_EDEADLK)
884 {*r = EDEADLK; return 0;}
885 #else /* def EDEADLK */
886 {errno = EINVAL; return -1;}
887 #endif /* ndef EDEADLK */
888 if (x == Mono_Posix_Errno_EDEADLOCK)
890 {*r = EDEADLOCK; return 0;}
891 #else /* def EDEADLOCK */
892 {errno = EINVAL; return -1;}
893 #endif /* ndef EDEADLOCK */
894 if (x == Mono_Posix_Errno_EDESTADDRREQ)
896 {*r = EDESTADDRREQ; return 0;}
897 #else /* def EDESTADDRREQ */
898 {errno = EINVAL; return -1;}
899 #endif /* ndef EDESTADDRREQ */
900 if (x == Mono_Posix_Errno_EDOM)
902 {*r = EDOM; return 0;}
904 {errno = EINVAL; return -1;}
905 #endif /* ndef EDOM */
906 if (x == Mono_Posix_Errno_EDOTDOT)
908 {*r = EDOTDOT; return 0;}
909 #else /* def EDOTDOT */
910 {errno = EINVAL; return -1;}
911 #endif /* ndef EDOTDOT */
912 if (x == Mono_Posix_Errno_EDQUOT)
914 {*r = EDQUOT; return 0;}
915 #else /* def EDQUOT */
916 {errno = EINVAL; return -1;}
917 #endif /* ndef EDQUOT */
918 if (x == Mono_Posix_Errno_EEXIST)
920 {*r = EEXIST; return 0;}
921 #else /* def EEXIST */
922 {errno = EINVAL; return -1;}
923 #endif /* ndef EEXIST */
924 if (x == Mono_Posix_Errno_EFAULT)
926 {*r = EFAULT; return 0;}
927 #else /* def EFAULT */
928 {errno = EINVAL; return -1;}
929 #endif /* ndef EFAULT */
930 if (x == Mono_Posix_Errno_EFBIG)
932 {*r = EFBIG; return 0;}
933 #else /* def EFBIG */
934 {errno = EINVAL; return -1;}
935 #endif /* ndef EFBIG */
936 if (x == Mono_Posix_Errno_EHOSTDOWN)
938 {*r = EHOSTDOWN; return 0;}
939 #else /* def EHOSTDOWN */
940 {errno = EINVAL; return -1;}
941 #endif /* ndef EHOSTDOWN */
942 if (x == Mono_Posix_Errno_EHOSTUNREACH)
944 {*r = EHOSTUNREACH; return 0;}
945 #else /* def EHOSTUNREACH */
946 {errno = EINVAL; return -1;}
947 #endif /* ndef EHOSTUNREACH */
948 if (x == Mono_Posix_Errno_EIDRM)
950 {*r = EIDRM; return 0;}
951 #else /* def EIDRM */
952 {errno = EINVAL; return -1;}
953 #endif /* ndef EIDRM */
954 if (x == Mono_Posix_Errno_EILSEQ)
956 {*r = EILSEQ; return 0;}
957 #else /* def EILSEQ */
958 {errno = EINVAL; return -1;}
959 #endif /* ndef EILSEQ */
960 if (x == Mono_Posix_Errno_EINPROGRESS)
962 {*r = EINPROGRESS; return 0;}
963 #else /* def EINPROGRESS */
964 {errno = EINVAL; return -1;}
965 #endif /* ndef EINPROGRESS */
966 if (x == Mono_Posix_Errno_EINTR)
968 {*r = EINTR; return 0;}
969 #else /* def EINTR */
970 {errno = EINVAL; return -1;}
971 #endif /* ndef EINTR */
972 if (x == Mono_Posix_Errno_EINVAL)
974 {*r = EINVAL; return 0;}
975 #else /* def EINVAL */
976 {errno = EINVAL; return -1;}
977 #endif /* ndef EINVAL */
978 if (x == Mono_Posix_Errno_EIO)
980 {*r = EIO; return 0;}
982 {errno = EINVAL; return -1;}
983 #endif /* ndef EIO */
984 if (x == Mono_Posix_Errno_EISCONN)
986 {*r = EISCONN; return 0;}
987 #else /* def EISCONN */
988 {errno = EINVAL; return -1;}
989 #endif /* ndef EISCONN */
990 if (x == Mono_Posix_Errno_EISDIR)
992 {*r = EISDIR; return 0;}
993 #else /* def EISDIR */
994 {errno = EINVAL; return -1;}
995 #endif /* ndef EISDIR */
996 if (x == Mono_Posix_Errno_EISNAM)
998 {*r = EISNAM; return 0;}
999 #else /* def EISNAM */
1000 {errno = EINVAL; return -1;}
1001 #endif /* ndef EISNAM */
1002 if (x == Mono_Posix_Errno_EL2HLT)
1004 {*r = EL2HLT; return 0;}
1005 #else /* def EL2HLT */
1006 {errno = EINVAL; return -1;}
1007 #endif /* ndef EL2HLT */
1008 if (x == Mono_Posix_Errno_EL2NSYNC)
1010 {*r = EL2NSYNC; return 0;}
1011 #else /* def EL2NSYNC */
1012 {errno = EINVAL; return -1;}
1013 #endif /* ndef EL2NSYNC */
1014 if (x == Mono_Posix_Errno_EL3HLT)
1016 {*r = EL3HLT; return 0;}
1017 #else /* def EL3HLT */
1018 {errno = EINVAL; return -1;}
1019 #endif /* ndef EL3HLT */
1020 if (x == Mono_Posix_Errno_EL3RST)
1022 {*r = EL3RST; return 0;}
1023 #else /* def EL3RST */
1024 {errno = EINVAL; return -1;}
1025 #endif /* ndef EL3RST */
1026 if (x == Mono_Posix_Errno_ELIBACC)
1028 {*r = ELIBACC; return 0;}
1029 #else /* def ELIBACC */
1030 {errno = EINVAL; return -1;}
1031 #endif /* ndef ELIBACC */
1032 if (x == Mono_Posix_Errno_ELIBBAD)
1034 {*r = ELIBBAD; return 0;}
1035 #else /* def ELIBBAD */
1036 {errno = EINVAL; return -1;}
1037 #endif /* ndef ELIBBAD */
1038 if (x == Mono_Posix_Errno_ELIBEXEC)
1040 {*r = ELIBEXEC; return 0;}
1041 #else /* def ELIBEXEC */
1042 {errno = EINVAL; return -1;}
1043 #endif /* ndef ELIBEXEC */
1044 if (x == Mono_Posix_Errno_ELIBMAX)
1046 {*r = ELIBMAX; return 0;}
1047 #else /* def ELIBMAX */
1048 {errno = EINVAL; return -1;}
1049 #endif /* ndef ELIBMAX */
1050 if (x == Mono_Posix_Errno_ELIBSCN)
1052 {*r = ELIBSCN; return 0;}
1053 #else /* def ELIBSCN */
1054 {errno = EINVAL; return -1;}
1055 #endif /* ndef ELIBSCN */
1056 if (x == Mono_Posix_Errno_ELNRNG)
1058 {*r = ELNRNG; return 0;}
1059 #else /* def ELNRNG */
1060 {errno = EINVAL; return -1;}
1061 #endif /* ndef ELNRNG */
1062 if (x == Mono_Posix_Errno_ELOOP)
1064 {*r = ELOOP; return 0;}
1065 #else /* def ELOOP */
1066 {errno = EINVAL; return -1;}
1067 #endif /* ndef ELOOP */
1068 if (x == Mono_Posix_Errno_EMEDIUMTYPE)
1070 {*r = EMEDIUMTYPE; return 0;}
1071 #else /* def EMEDIUMTYPE */
1072 {errno = EINVAL; return -1;}
1073 #endif /* ndef EMEDIUMTYPE */
1074 if (x == Mono_Posix_Errno_EMFILE)
1076 {*r = EMFILE; return 0;}
1077 #else /* def EMFILE */
1078 {errno = EINVAL; return -1;}
1079 #endif /* ndef EMFILE */
1080 if (x == Mono_Posix_Errno_EMLINK)
1082 {*r = EMLINK; return 0;}
1083 #else /* def EMLINK */
1084 {errno = EINVAL; return -1;}
1085 #endif /* ndef EMLINK */
1086 if (x == Mono_Posix_Errno_EMSGSIZE)
1088 {*r = EMSGSIZE; return 0;}
1089 #else /* def EMSGSIZE */
1090 {errno = EINVAL; return -1;}
1091 #endif /* ndef EMSGSIZE */
1092 if (x == Mono_Posix_Errno_EMULTIHOP)
1094 {*r = EMULTIHOP; return 0;}
1095 #else /* def EMULTIHOP */
1096 {errno = EINVAL; return -1;}
1097 #endif /* ndef EMULTIHOP */
1098 if (x == Mono_Posix_Errno_ENAMETOOLONG)
1100 {*r = ENAMETOOLONG; return 0;}
1101 #else /* def ENAMETOOLONG */
1102 {errno = EINVAL; return -1;}
1103 #endif /* ndef ENAMETOOLONG */
1104 if (x == Mono_Posix_Errno_ENAVAIL)
1106 {*r = ENAVAIL; return 0;}
1107 #else /* def ENAVAIL */
1108 {errno = EINVAL; return -1;}
1109 #endif /* ndef ENAVAIL */
1110 if (x == Mono_Posix_Errno_ENETDOWN)
1112 {*r = ENETDOWN; return 0;}
1113 #else /* def ENETDOWN */
1114 {errno = EINVAL; return -1;}
1115 #endif /* ndef ENETDOWN */
1116 if (x == Mono_Posix_Errno_ENETRESET)
1118 {*r = ENETRESET; return 0;}
1119 #else /* def ENETRESET */
1120 {errno = EINVAL; return -1;}
1121 #endif /* ndef ENETRESET */
1122 if (x == Mono_Posix_Errno_ENETUNREACH)
1124 {*r = ENETUNREACH; return 0;}
1125 #else /* def ENETUNREACH */
1126 {errno = EINVAL; return -1;}
1127 #endif /* ndef ENETUNREACH */
1128 if (x == Mono_Posix_Errno_ENFILE)
1130 {*r = ENFILE; return 0;}
1131 #else /* def ENFILE */
1132 {errno = EINVAL; return -1;}
1133 #endif /* ndef ENFILE */
1134 if (x == Mono_Posix_Errno_ENOANO)
1136 {*r = ENOANO; return 0;}
1137 #else /* def ENOANO */
1138 {errno = EINVAL; return -1;}
1139 #endif /* ndef ENOANO */
1140 if (x == Mono_Posix_Errno_ENOBUFS)
1142 {*r = ENOBUFS; return 0;}
1143 #else /* def ENOBUFS */
1144 {errno = EINVAL; return -1;}
1145 #endif /* ndef ENOBUFS */
1146 if (x == Mono_Posix_Errno_ENOCSI)
1148 {*r = ENOCSI; return 0;}
1149 #else /* def ENOCSI */
1150 {errno = EINVAL; return -1;}
1151 #endif /* ndef ENOCSI */
1152 if (x == Mono_Posix_Errno_ENODATA)
1154 {*r = ENODATA; return 0;}
1155 #else /* def ENODATA */
1156 {errno = EINVAL; return -1;}
1157 #endif /* ndef ENODATA */
1158 if (x == Mono_Posix_Errno_ENODEV)
1160 {*r = ENODEV; return 0;}
1161 #else /* def ENODEV */
1162 {errno = EINVAL; return -1;}
1163 #endif /* ndef ENODEV */
1164 if (x == Mono_Posix_Errno_ENOENT)
1166 {*r = ENOENT; return 0;}
1167 #else /* def ENOENT */
1168 {errno = EINVAL; return -1;}
1169 #endif /* ndef ENOENT */
1170 if (x == Mono_Posix_Errno_ENOEXEC)
1172 {*r = ENOEXEC; return 0;}
1173 #else /* def ENOEXEC */
1174 {errno = EINVAL; return -1;}
1175 #endif /* ndef ENOEXEC */
1176 if (x == Mono_Posix_Errno_ENOLCK)
1178 {*r = ENOLCK; return 0;}
1179 #else /* def ENOLCK */
1180 {errno = EINVAL; return -1;}
1181 #endif /* ndef ENOLCK */
1182 if (x == Mono_Posix_Errno_ENOLINK)
1184 {*r = ENOLINK; return 0;}
1185 #else /* def ENOLINK */
1186 {errno = EINVAL; return -1;}
1187 #endif /* ndef ENOLINK */
1188 if (x == Mono_Posix_Errno_ENOMEDIUM)
1190 {*r = ENOMEDIUM; return 0;}
1191 #else /* def ENOMEDIUM */
1192 {errno = EINVAL; return -1;}
1193 #endif /* ndef ENOMEDIUM */
1194 if (x == Mono_Posix_Errno_ENOMEM)
1196 {*r = ENOMEM; return 0;}
1197 #else /* def ENOMEM */
1198 {errno = EINVAL; return -1;}
1199 #endif /* ndef ENOMEM */
1200 if (x == Mono_Posix_Errno_ENOMSG)
1202 {*r = ENOMSG; return 0;}
1203 #else /* def ENOMSG */
1204 {errno = EINVAL; return -1;}
1205 #endif /* ndef ENOMSG */
1206 if (x == Mono_Posix_Errno_ENONET)
1208 {*r = ENONET; return 0;}
1209 #else /* def ENONET */
1210 {errno = EINVAL; return -1;}
1211 #endif /* ndef ENONET */
1212 if (x == Mono_Posix_Errno_ENOPKG)
1214 {*r = ENOPKG; return 0;}
1215 #else /* def ENOPKG */
1216 {errno = EINVAL; return -1;}
1217 #endif /* ndef ENOPKG */
1218 if (x == Mono_Posix_Errno_ENOPROTOOPT)
1220 {*r = ENOPROTOOPT; return 0;}
1221 #else /* def ENOPROTOOPT */
1222 {errno = EINVAL; return -1;}
1223 #endif /* ndef ENOPROTOOPT */
1224 if (x == Mono_Posix_Errno_ENOSPC)
1226 {*r = ENOSPC; return 0;}
1227 #else /* def ENOSPC */
1228 {errno = EINVAL; return -1;}
1229 #endif /* ndef ENOSPC */
1230 if (x == Mono_Posix_Errno_ENOSR)
1232 {*r = ENOSR; return 0;}
1233 #else /* def ENOSR */
1234 {errno = EINVAL; return -1;}
1235 #endif /* ndef ENOSR */
1236 if (x == Mono_Posix_Errno_ENOSTR)
1238 {*r = ENOSTR; return 0;}
1239 #else /* def ENOSTR */
1240 {errno = EINVAL; return -1;}
1241 #endif /* ndef ENOSTR */
1242 if (x == Mono_Posix_Errno_ENOSYS)
1244 {*r = ENOSYS; return 0;}
1245 #else /* def ENOSYS */
1246 {errno = EINVAL; return -1;}
1247 #endif /* ndef ENOSYS */
1248 if (x == Mono_Posix_Errno_ENOTBLK)
1250 {*r = ENOTBLK; return 0;}
1251 #else /* def ENOTBLK */
1252 {errno = EINVAL; return -1;}
1253 #endif /* ndef ENOTBLK */
1254 if (x == Mono_Posix_Errno_ENOTCONN)
1256 {*r = ENOTCONN; return 0;}
1257 #else /* def ENOTCONN */
1258 {errno = EINVAL; return -1;}
1259 #endif /* ndef ENOTCONN */
1260 if (x == Mono_Posix_Errno_ENOTDIR)
1262 {*r = ENOTDIR; return 0;}
1263 #else /* def ENOTDIR */
1264 {errno = EINVAL; return -1;}
1265 #endif /* ndef ENOTDIR */
1266 if (x == Mono_Posix_Errno_ENOTEMPTY)
1268 {*r = ENOTEMPTY; return 0;}
1269 #else /* def ENOTEMPTY */
1270 {errno = EINVAL; return -1;}
1271 #endif /* ndef ENOTEMPTY */
1272 if (x == Mono_Posix_Errno_ENOTNAM)
1274 {*r = ENOTNAM; return 0;}
1275 #else /* def ENOTNAM */
1276 {errno = EINVAL; return -1;}
1277 #endif /* ndef ENOTNAM */
1278 if (x == Mono_Posix_Errno_ENOTSOCK)
1280 {*r = ENOTSOCK; return 0;}
1281 #else /* def ENOTSOCK */
1282 {errno = EINVAL; return -1;}
1283 #endif /* ndef ENOTSOCK */
1284 if (x == Mono_Posix_Errno_ENOTTY)
1286 {*r = ENOTTY; return 0;}
1287 #else /* def ENOTTY */
1288 {errno = EINVAL; return -1;}
1289 #endif /* ndef ENOTTY */
1290 if (x == Mono_Posix_Errno_ENOTUNIQ)
1292 {*r = ENOTUNIQ; return 0;}
1293 #else /* def ENOTUNIQ */
1294 {errno = EINVAL; return -1;}
1295 #endif /* ndef ENOTUNIQ */
1296 if (x == Mono_Posix_Errno_ENXIO)
1298 {*r = ENXIO; return 0;}
1299 #else /* def ENXIO */
1300 {errno = EINVAL; return -1;}
1301 #endif /* ndef ENXIO */
1302 if (x == Mono_Posix_Errno_EOPNOTSUPP)
1304 {*r = EOPNOTSUPP; return 0;}
1305 #else /* def EOPNOTSUPP */
1306 {errno = EINVAL; return -1;}
1307 #endif /* ndef EOPNOTSUPP */
1308 if (x == Mono_Posix_Errno_EOVERFLOW)
1310 {*r = EOVERFLOW; return 0;}
1311 #else /* def EOVERFLOW */
1312 {errno = EINVAL; return -1;}
1313 #endif /* ndef EOVERFLOW */
1314 if (x == Mono_Posix_Errno_EPERM)
1316 {*r = EPERM; return 0;}
1317 #else /* def EPERM */
1318 {errno = EINVAL; return -1;}
1319 #endif /* ndef EPERM */
1320 if (x == Mono_Posix_Errno_EPFNOSUPPORT)
1322 {*r = EPFNOSUPPORT; return 0;}
1323 #else /* def EPFNOSUPPORT */
1324 {errno = EINVAL; return -1;}
1325 #endif /* ndef EPFNOSUPPORT */
1326 if (x == Mono_Posix_Errno_EPIPE)
1328 {*r = EPIPE; return 0;}
1329 #else /* def EPIPE */
1330 {errno = EINVAL; return -1;}
1331 #endif /* ndef EPIPE */
1332 if (x == Mono_Posix_Errno_EPROTO)
1334 {*r = EPROTO; return 0;}
1335 #else /* def EPROTO */
1336 {errno = EINVAL; return -1;}
1337 #endif /* ndef EPROTO */
1338 if (x == Mono_Posix_Errno_EPROTONOSUPPORT)
1339 #ifdef EPROTONOSUPPORT
1340 {*r = EPROTONOSUPPORT; return 0;}
1341 #else /* def EPROTONOSUPPORT */
1342 {errno = EINVAL; return -1;}
1343 #endif /* ndef EPROTONOSUPPORT */
1344 if (x == Mono_Posix_Errno_EPROTOTYPE)
1346 {*r = EPROTOTYPE; return 0;}
1347 #else /* def EPROTOTYPE */
1348 {errno = EINVAL; return -1;}
1349 #endif /* ndef EPROTOTYPE */
1350 if (x == Mono_Posix_Errno_ERANGE)
1352 {*r = ERANGE; return 0;}
1353 #else /* def ERANGE */
1354 {errno = EINVAL; return -1;}
1355 #endif /* ndef ERANGE */
1356 if (x == Mono_Posix_Errno_EREMCHG)
1358 {*r = EREMCHG; return 0;}
1359 #else /* def EREMCHG */
1360 {errno = EINVAL; return -1;}
1361 #endif /* ndef EREMCHG */
1362 if (x == Mono_Posix_Errno_EREMOTE)
1364 {*r = EREMOTE; return 0;}
1365 #else /* def EREMOTE */
1366 {errno = EINVAL; return -1;}
1367 #endif /* ndef EREMOTE */
1368 if (x == Mono_Posix_Errno_EREMOTEIO)
1370 {*r = EREMOTEIO; return 0;}
1371 #else /* def EREMOTEIO */
1372 {errno = EINVAL; return -1;}
1373 #endif /* ndef EREMOTEIO */
1374 if (x == Mono_Posix_Errno_ERESTART)
1376 {*r = ERESTART; return 0;}
1377 #else /* def ERESTART */
1378 {errno = EINVAL; return -1;}
1379 #endif /* ndef ERESTART */
1380 if (x == Mono_Posix_Errno_EROFS)
1382 {*r = EROFS; return 0;}
1383 #else /* def EROFS */
1384 {errno = EINVAL; return -1;}
1385 #endif /* ndef EROFS */
1386 if (x == Mono_Posix_Errno_ESHUTDOWN)
1388 {*r = ESHUTDOWN; return 0;}
1389 #else /* def ESHUTDOWN */
1390 {errno = EINVAL; return -1;}
1391 #endif /* ndef ESHUTDOWN */
1392 if (x == Mono_Posix_Errno_ESOCKTNOSUPPORT)
1393 #ifdef ESOCKTNOSUPPORT
1394 {*r = ESOCKTNOSUPPORT; return 0;}
1395 #else /* def ESOCKTNOSUPPORT */
1396 {errno = EINVAL; return -1;}
1397 #endif /* ndef ESOCKTNOSUPPORT */
1398 if (x == Mono_Posix_Errno_ESPIPE)
1400 {*r = ESPIPE; return 0;}
1401 #else /* def ESPIPE */
1402 {errno = EINVAL; return -1;}
1403 #endif /* ndef ESPIPE */
1404 if (x == Mono_Posix_Errno_ESRCH)
1406 {*r = ESRCH; return 0;}
1407 #else /* def ESRCH */
1408 {errno = EINVAL; return -1;}
1409 #endif /* ndef ESRCH */
1410 if (x == Mono_Posix_Errno_ESRMNT)
1412 {*r = ESRMNT; return 0;}
1413 #else /* def ESRMNT */
1414 {errno = EINVAL; return -1;}
1415 #endif /* ndef ESRMNT */
1416 if (x == Mono_Posix_Errno_ESTALE)
1418 {*r = ESTALE; return 0;}
1419 #else /* def ESTALE */
1420 {errno = EINVAL; return -1;}
1421 #endif /* ndef ESTALE */
1422 if (x == Mono_Posix_Errno_ESTRPIPE)
1424 {*r = ESTRPIPE; return 0;}
1425 #else /* def ESTRPIPE */
1426 {errno = EINVAL; return -1;}
1427 #endif /* ndef ESTRPIPE */
1428 if (x == Mono_Posix_Errno_ETIME)
1430 {*r = ETIME; return 0;}
1431 #else /* def ETIME */
1432 {errno = EINVAL; return -1;}
1433 #endif /* ndef ETIME */
1434 if (x == Mono_Posix_Errno_ETIMEDOUT)
1436 {*r = ETIMEDOUT; return 0;}
1437 #else /* def ETIMEDOUT */
1438 {errno = EINVAL; return -1;}
1439 #endif /* ndef ETIMEDOUT */
1440 if (x == Mono_Posix_Errno_ETOOMANYREFS)
1442 {*r = ETOOMANYREFS; return 0;}
1443 #else /* def ETOOMANYREFS */
1444 {errno = EINVAL; return -1;}
1445 #endif /* ndef ETOOMANYREFS */
1446 if (x == Mono_Posix_Errno_ETXTBSY)
1448 {*r = ETXTBSY; return 0;}
1449 #else /* def ETXTBSY */
1450 {errno = EINVAL; return -1;}
1451 #endif /* ndef ETXTBSY */
1452 if (x == Mono_Posix_Errno_EUCLEAN)
1454 {*r = EUCLEAN; return 0;}
1455 #else /* def EUCLEAN */
1456 {errno = EINVAL; return -1;}
1457 #endif /* ndef EUCLEAN */
1458 if (x == Mono_Posix_Errno_EUNATCH)
1460 {*r = EUNATCH; return 0;}
1461 #else /* def EUNATCH */
1462 {errno = EINVAL; return -1;}
1463 #endif /* ndef EUNATCH */
1464 if (x == Mono_Posix_Errno_EUSERS)
1466 {*r = EUSERS; return 0;}
1467 #else /* def EUSERS */
1468 {errno = EINVAL; return -1;}
1469 #endif /* ndef EUSERS */
1470 if (x == Mono_Posix_Errno_EWOULDBLOCK)
1472 {*r = EWOULDBLOCK; return 0;}
1473 #else /* def EWOULDBLOCK */
1474 {errno = EINVAL; return -1;}
1475 #endif /* ndef EWOULDBLOCK */
1476 if (x == Mono_Posix_Errno_EXDEV)
1478 {*r = EXDEV; return 0;}
1479 #else /* def EXDEV */
1480 {errno = EINVAL; return -1;}
1481 #endif /* ndef EXDEV */
1482 if (x == Mono_Posix_Errno_EXFULL)
1484 {*r = EXFULL; return 0;}
1485 #else /* def EXFULL */
1486 {errno = EINVAL; return -1;}
1487 #endif /* ndef EXFULL */
1490 errno = EINVAL; return -1;
1493 int Mono_Posix_ToErrno (int x, int *r)
1500 {*r = Mono_Posix_Errno_E2BIG; return 0;}
1501 #endif /* ndef E2BIG */
1504 {*r = Mono_Posix_Errno_EACCES; return 0;}
1505 #endif /* ndef EACCES */
1507 if (x == EADDRINUSE)
1508 {*r = Mono_Posix_Errno_EADDRINUSE; return 0;}
1509 #endif /* ndef EADDRINUSE */
1510 #ifdef EADDRNOTAVAIL
1511 if (x == EADDRNOTAVAIL)
1512 {*r = Mono_Posix_Errno_EADDRNOTAVAIL; return 0;}
1513 #endif /* ndef EADDRNOTAVAIL */
1516 {*r = Mono_Posix_Errno_EADV; return 0;}
1517 #endif /* ndef EADV */
1519 if (x == EAFNOSUPPORT)
1520 {*r = Mono_Posix_Errno_EAFNOSUPPORT; return 0;}
1521 #endif /* ndef EAFNOSUPPORT */
1524 {*r = Mono_Posix_Errno_EAGAIN; return 0;}
1525 #endif /* ndef EAGAIN */
1528 {*r = Mono_Posix_Errno_EALREADY; return 0;}
1529 #endif /* ndef EALREADY */
1532 {*r = Mono_Posix_Errno_EBADE; return 0;}
1533 #endif /* ndef EBADE */
1536 {*r = Mono_Posix_Errno_EBADF; return 0;}
1537 #endif /* ndef EBADF */
1540 {*r = Mono_Posix_Errno_EBADFD; return 0;}
1541 #endif /* ndef EBADFD */
1544 {*r = Mono_Posix_Errno_EBADMSG; return 0;}
1545 #endif /* ndef EBADMSG */
1548 {*r = Mono_Posix_Errno_EBADR; return 0;}
1549 #endif /* ndef EBADR */
1552 {*r = Mono_Posix_Errno_EBADRQC; return 0;}
1553 #endif /* ndef EBADRQC */
1556 {*r = Mono_Posix_Errno_EBADSLT; return 0;}
1557 #endif /* ndef EBADSLT */
1560 {*r = Mono_Posix_Errno_EBFONT; return 0;}
1561 #endif /* ndef EBFONT */
1564 {*r = Mono_Posix_Errno_EBUSY; return 0;}
1565 #endif /* ndef EBUSY */
1568 {*r = Mono_Posix_Errno_ECHILD; return 0;}
1569 #endif /* ndef ECHILD */
1572 {*r = Mono_Posix_Errno_ECHRNG; return 0;}
1573 #endif /* ndef ECHRNG */
1576 {*r = Mono_Posix_Errno_ECOMM; return 0;}
1577 #endif /* ndef ECOMM */
1579 if (x == ECONNABORTED)
1580 {*r = Mono_Posix_Errno_ECONNABORTED; return 0;}
1581 #endif /* ndef ECONNABORTED */
1583 if (x == ECONNREFUSED)
1584 {*r = Mono_Posix_Errno_ECONNREFUSED; return 0;}
1585 #endif /* ndef ECONNREFUSED */
1587 if (x == ECONNRESET)
1588 {*r = Mono_Posix_Errno_ECONNRESET; return 0;}
1589 #endif /* ndef ECONNRESET */
1592 {*r = Mono_Posix_Errno_EDEADLK; return 0;}
1593 #endif /* ndef EDEADLK */
1596 {*r = Mono_Posix_Errno_EDEADLOCK; return 0;}
1597 #endif /* ndef EDEADLOCK */
1599 if (x == EDESTADDRREQ)
1600 {*r = Mono_Posix_Errno_EDESTADDRREQ; return 0;}
1601 #endif /* ndef EDESTADDRREQ */
1604 {*r = Mono_Posix_Errno_EDOM; return 0;}
1605 #endif /* ndef EDOM */
1608 {*r = Mono_Posix_Errno_EDOTDOT; return 0;}
1609 #endif /* ndef EDOTDOT */
1612 {*r = Mono_Posix_Errno_EDQUOT; return 0;}
1613 #endif /* ndef EDQUOT */
1616 {*r = Mono_Posix_Errno_EEXIST; return 0;}
1617 #endif /* ndef EEXIST */
1620 {*r = Mono_Posix_Errno_EFAULT; return 0;}
1621 #endif /* ndef EFAULT */
1624 {*r = Mono_Posix_Errno_EFBIG; return 0;}
1625 #endif /* ndef EFBIG */
1628 {*r = Mono_Posix_Errno_EHOSTDOWN; return 0;}
1629 #endif /* ndef EHOSTDOWN */
1631 if (x == EHOSTUNREACH)
1632 {*r = Mono_Posix_Errno_EHOSTUNREACH; return 0;}
1633 #endif /* ndef EHOSTUNREACH */
1636 {*r = Mono_Posix_Errno_EIDRM; return 0;}
1637 #endif /* ndef EIDRM */
1640 {*r = Mono_Posix_Errno_EILSEQ; return 0;}
1641 #endif /* ndef EILSEQ */
1643 if (x == EINPROGRESS)
1644 {*r = Mono_Posix_Errno_EINPROGRESS; return 0;}
1645 #endif /* ndef EINPROGRESS */
1648 {*r = Mono_Posix_Errno_EINTR; return 0;}
1649 #endif /* ndef EINTR */
1652 {*r = Mono_Posix_Errno_EINVAL; return 0;}
1653 #endif /* ndef EINVAL */
1656 {*r = Mono_Posix_Errno_EIO; return 0;}
1657 #endif /* ndef EIO */
1660 {*r = Mono_Posix_Errno_EISCONN; return 0;}
1661 #endif /* ndef EISCONN */
1664 {*r = Mono_Posix_Errno_EISDIR; return 0;}
1665 #endif /* ndef EISDIR */
1668 {*r = Mono_Posix_Errno_EISNAM; return 0;}
1669 #endif /* ndef EISNAM */
1672 {*r = Mono_Posix_Errno_EL2HLT; return 0;}
1673 #endif /* ndef EL2HLT */
1676 {*r = Mono_Posix_Errno_EL2NSYNC; return 0;}
1677 #endif /* ndef EL2NSYNC */
1680 {*r = Mono_Posix_Errno_EL3HLT; return 0;}
1681 #endif /* ndef EL3HLT */
1684 {*r = Mono_Posix_Errno_EL3RST; return 0;}
1685 #endif /* ndef EL3RST */
1688 {*r = Mono_Posix_Errno_ELIBACC; return 0;}
1689 #endif /* ndef ELIBACC */
1692 {*r = Mono_Posix_Errno_ELIBBAD; return 0;}
1693 #endif /* ndef ELIBBAD */
1696 {*r = Mono_Posix_Errno_ELIBEXEC; return 0;}
1697 #endif /* ndef ELIBEXEC */
1700 {*r = Mono_Posix_Errno_ELIBMAX; return 0;}
1701 #endif /* ndef ELIBMAX */
1704 {*r = Mono_Posix_Errno_ELIBSCN; return 0;}
1705 #endif /* ndef ELIBSCN */
1708 {*r = Mono_Posix_Errno_ELNRNG; return 0;}
1709 #endif /* ndef ELNRNG */
1712 {*r = Mono_Posix_Errno_ELOOP; return 0;}
1713 #endif /* ndef ELOOP */
1715 if (x == EMEDIUMTYPE)
1716 {*r = Mono_Posix_Errno_EMEDIUMTYPE; return 0;}
1717 #endif /* ndef EMEDIUMTYPE */
1720 {*r = Mono_Posix_Errno_EMFILE; return 0;}
1721 #endif /* ndef EMFILE */
1724 {*r = Mono_Posix_Errno_EMLINK; return 0;}
1725 #endif /* ndef EMLINK */
1728 {*r = Mono_Posix_Errno_EMSGSIZE; return 0;}
1729 #endif /* ndef EMSGSIZE */
1732 {*r = Mono_Posix_Errno_EMULTIHOP; return 0;}
1733 #endif /* ndef EMULTIHOP */
1735 if (x == ENAMETOOLONG)
1736 {*r = Mono_Posix_Errno_ENAMETOOLONG; return 0;}
1737 #endif /* ndef ENAMETOOLONG */
1740 {*r = Mono_Posix_Errno_ENAVAIL; return 0;}
1741 #endif /* ndef ENAVAIL */
1744 {*r = Mono_Posix_Errno_ENETDOWN; return 0;}
1745 #endif /* ndef ENETDOWN */
1748 {*r = Mono_Posix_Errno_ENETRESET; return 0;}
1749 #endif /* ndef ENETRESET */
1751 if (x == ENETUNREACH)
1752 {*r = Mono_Posix_Errno_ENETUNREACH; return 0;}
1753 #endif /* ndef ENETUNREACH */
1756 {*r = Mono_Posix_Errno_ENFILE; return 0;}
1757 #endif /* ndef ENFILE */
1760 {*r = Mono_Posix_Errno_ENOANO; return 0;}
1761 #endif /* ndef ENOANO */
1764 {*r = Mono_Posix_Errno_ENOBUFS; return 0;}
1765 #endif /* ndef ENOBUFS */
1768 {*r = Mono_Posix_Errno_ENOCSI; return 0;}
1769 #endif /* ndef ENOCSI */
1772 {*r = Mono_Posix_Errno_ENODATA; return 0;}
1773 #endif /* ndef ENODATA */
1776 {*r = Mono_Posix_Errno_ENODEV; return 0;}
1777 #endif /* ndef ENODEV */
1780 {*r = Mono_Posix_Errno_ENOENT; return 0;}
1781 #endif /* ndef ENOENT */
1784 {*r = Mono_Posix_Errno_ENOEXEC; return 0;}
1785 #endif /* ndef ENOEXEC */
1788 {*r = Mono_Posix_Errno_ENOLCK; return 0;}
1789 #endif /* ndef ENOLCK */
1792 {*r = Mono_Posix_Errno_ENOLINK; return 0;}
1793 #endif /* ndef ENOLINK */
1796 {*r = Mono_Posix_Errno_ENOMEDIUM; return 0;}
1797 #endif /* ndef ENOMEDIUM */
1800 {*r = Mono_Posix_Errno_ENOMEM; return 0;}
1801 #endif /* ndef ENOMEM */
1804 {*r = Mono_Posix_Errno_ENOMSG; return 0;}
1805 #endif /* ndef ENOMSG */
1808 {*r = Mono_Posix_Errno_ENONET; return 0;}
1809 #endif /* ndef ENONET */
1812 {*r = Mono_Posix_Errno_ENOPKG; return 0;}
1813 #endif /* ndef ENOPKG */
1815 if (x == ENOPROTOOPT)
1816 {*r = Mono_Posix_Errno_ENOPROTOOPT; return 0;}
1817 #endif /* ndef ENOPROTOOPT */
1820 {*r = Mono_Posix_Errno_ENOSPC; return 0;}
1821 #endif /* ndef ENOSPC */
1824 {*r = Mono_Posix_Errno_ENOSR; return 0;}
1825 #endif /* ndef ENOSR */
1828 {*r = Mono_Posix_Errno_ENOSTR; return 0;}
1829 #endif /* ndef ENOSTR */
1832 {*r = Mono_Posix_Errno_ENOSYS; return 0;}
1833 #endif /* ndef ENOSYS */
1836 {*r = Mono_Posix_Errno_ENOTBLK; return 0;}
1837 #endif /* ndef ENOTBLK */
1840 {*r = Mono_Posix_Errno_ENOTCONN; return 0;}
1841 #endif /* ndef ENOTCONN */
1844 {*r = Mono_Posix_Errno_ENOTDIR; return 0;}
1845 #endif /* ndef ENOTDIR */
1848 {*r = Mono_Posix_Errno_ENOTEMPTY; return 0;}
1849 #endif /* ndef ENOTEMPTY */
1852 {*r = Mono_Posix_Errno_ENOTNAM; return 0;}
1853 #endif /* ndef ENOTNAM */
1856 {*r = Mono_Posix_Errno_ENOTSOCK; return 0;}
1857 #endif /* ndef ENOTSOCK */
1860 {*r = Mono_Posix_Errno_ENOTTY; return 0;}
1861 #endif /* ndef ENOTTY */
1864 {*r = Mono_Posix_Errno_ENOTUNIQ; return 0;}
1865 #endif /* ndef ENOTUNIQ */
1868 {*r = Mono_Posix_Errno_ENXIO; return 0;}
1869 #endif /* ndef ENXIO */
1871 if (x == EOPNOTSUPP)
1872 {*r = Mono_Posix_Errno_EOPNOTSUPP; return 0;}
1873 #endif /* ndef EOPNOTSUPP */
1876 {*r = Mono_Posix_Errno_EOVERFLOW; return 0;}
1877 #endif /* ndef EOVERFLOW */
1880 {*r = Mono_Posix_Errno_EPERM; return 0;}
1881 #endif /* ndef EPERM */
1883 if (x == EPFNOSUPPORT)
1884 {*r = Mono_Posix_Errno_EPFNOSUPPORT; return 0;}
1885 #endif /* ndef EPFNOSUPPORT */
1888 {*r = Mono_Posix_Errno_EPIPE; return 0;}
1889 #endif /* ndef EPIPE */
1892 {*r = Mono_Posix_Errno_EPROTO; return 0;}
1893 #endif /* ndef EPROTO */
1894 #ifdef EPROTONOSUPPORT
1895 if (x == EPROTONOSUPPORT)
1896 {*r = Mono_Posix_Errno_EPROTONOSUPPORT; return 0;}
1897 #endif /* ndef EPROTONOSUPPORT */
1899 if (x == EPROTOTYPE)
1900 {*r = Mono_Posix_Errno_EPROTOTYPE; return 0;}
1901 #endif /* ndef EPROTOTYPE */
1904 {*r = Mono_Posix_Errno_ERANGE; return 0;}
1905 #endif /* ndef ERANGE */
1908 {*r = Mono_Posix_Errno_EREMCHG; return 0;}
1909 #endif /* ndef EREMCHG */
1912 {*r = Mono_Posix_Errno_EREMOTE; return 0;}
1913 #endif /* ndef EREMOTE */
1916 {*r = Mono_Posix_Errno_EREMOTEIO; return 0;}
1917 #endif /* ndef EREMOTEIO */
1920 {*r = Mono_Posix_Errno_ERESTART; return 0;}
1921 #endif /* ndef ERESTART */
1924 {*r = Mono_Posix_Errno_EROFS; return 0;}
1925 #endif /* ndef EROFS */
1928 {*r = Mono_Posix_Errno_ESHUTDOWN; return 0;}
1929 #endif /* ndef ESHUTDOWN */
1930 #ifdef ESOCKTNOSUPPORT
1931 if (x == ESOCKTNOSUPPORT)
1932 {*r = Mono_Posix_Errno_ESOCKTNOSUPPORT; return 0;}
1933 #endif /* ndef ESOCKTNOSUPPORT */
1936 {*r = Mono_Posix_Errno_ESPIPE; return 0;}
1937 #endif /* ndef ESPIPE */
1940 {*r = Mono_Posix_Errno_ESRCH; return 0;}
1941 #endif /* ndef ESRCH */
1944 {*r = Mono_Posix_Errno_ESRMNT; return 0;}
1945 #endif /* ndef ESRMNT */
1948 {*r = Mono_Posix_Errno_ESTALE; return 0;}
1949 #endif /* ndef ESTALE */
1952 {*r = Mono_Posix_Errno_ESTRPIPE; return 0;}
1953 #endif /* ndef ESTRPIPE */
1956 {*r = Mono_Posix_Errno_ETIME; return 0;}
1957 #endif /* ndef ETIME */
1960 {*r = Mono_Posix_Errno_ETIMEDOUT; return 0;}
1961 #endif /* ndef ETIMEDOUT */
1963 if (x == ETOOMANYREFS)
1964 {*r = Mono_Posix_Errno_ETOOMANYREFS; return 0;}
1965 #endif /* ndef ETOOMANYREFS */
1968 {*r = Mono_Posix_Errno_ETXTBSY; return 0;}
1969 #endif /* ndef ETXTBSY */
1972 {*r = Mono_Posix_Errno_EUCLEAN; return 0;}
1973 #endif /* ndef EUCLEAN */
1976 {*r = Mono_Posix_Errno_EUNATCH; return 0;}
1977 #endif /* ndef EUNATCH */
1980 {*r = Mono_Posix_Errno_EUSERS; return 0;}
1981 #endif /* ndef EUSERS */
1983 if (x == EWOULDBLOCK)
1984 {*r = Mono_Posix_Errno_EWOULDBLOCK; return 0;}
1985 #endif /* ndef EWOULDBLOCK */
1988 {*r = Mono_Posix_Errno_EXDEV; return 0;}
1989 #endif /* ndef EXDEV */
1992 {*r = Mono_Posix_Errno_EXFULL; return 0;}
1993 #endif /* ndef EXFULL */
1994 errno = EINVAL; return -1;
1997 int Mono_Posix_FromFcntlCommand (int x, int *r)
2000 if (x == Mono_Posix_FcntlCommand_F_DUPFD)
2002 {*r = F_DUPFD; return 0;}
2003 #else /* def F_DUPFD */
2004 {errno = EINVAL; return -1;}
2005 #endif /* ndef F_DUPFD */
2006 if (x == Mono_Posix_FcntlCommand_F_GETFD)
2008 {*r = F_GETFD; return 0;}
2009 #else /* def F_GETFD */
2010 {errno = EINVAL; return -1;}
2011 #endif /* ndef F_GETFD */
2012 if (x == Mono_Posix_FcntlCommand_F_GETFL)
2014 {*r = F_GETFL; return 0;}
2015 #else /* def F_GETFL */
2016 {errno = EINVAL; return -1;}
2017 #endif /* ndef F_GETFL */
2018 if (x == Mono_Posix_FcntlCommand_F_GETLEASE)
2020 {*r = F_GETLEASE; return 0;}
2021 #else /* def F_GETLEASE */
2022 {errno = EINVAL; return -1;}
2023 #endif /* ndef F_GETLEASE */
2024 if (x == Mono_Posix_FcntlCommand_F_GETLK)
2026 {*r = F_GETLK; return 0;}
2027 #else /* def F_GETLK */
2028 {errno = EINVAL; return -1;}
2029 #endif /* ndef F_GETLK */
2030 if (x == Mono_Posix_FcntlCommand_F_GETOWN)
2032 {*r = F_GETOWN; return 0;}
2033 #else /* def F_GETOWN */
2034 {errno = EINVAL; return -1;}
2035 #endif /* ndef F_GETOWN */
2036 if (x == Mono_Posix_FcntlCommand_F_GETSIG)
2038 {*r = F_GETSIG; return 0;}
2039 #else /* def F_GETSIG */
2040 {errno = EINVAL; return -1;}
2041 #endif /* ndef F_GETSIG */
2042 if (x == Mono_Posix_FcntlCommand_F_NOTIFY)
2044 {*r = F_NOTIFY; return 0;}
2045 #else /* def F_NOTIFY */
2046 {errno = EINVAL; return -1;}
2047 #endif /* ndef F_NOTIFY */
2048 if (x == Mono_Posix_FcntlCommand_F_SETFD)
2050 {*r = F_SETFD; return 0;}
2051 #else /* def F_SETFD */
2052 {errno = EINVAL; return -1;}
2053 #endif /* ndef F_SETFD */
2054 if (x == Mono_Posix_FcntlCommand_F_SETFL)
2056 {*r = F_SETFL; return 0;}
2057 #else /* def F_SETFL */
2058 {errno = EINVAL; return -1;}
2059 #endif /* ndef F_SETFL */
2060 if (x == Mono_Posix_FcntlCommand_F_SETLEASE)
2062 {*r = F_SETLEASE; return 0;}
2063 #else /* def F_SETLEASE */
2064 {errno = EINVAL; return -1;}
2065 #endif /* ndef F_SETLEASE */
2066 if (x == Mono_Posix_FcntlCommand_F_SETLK)
2068 {*r = F_SETLK; return 0;}
2069 #else /* def F_SETLK */
2070 {errno = EINVAL; return -1;}
2071 #endif /* ndef F_SETLK */
2072 if (x == Mono_Posix_FcntlCommand_F_SETLKW)
2074 {*r = F_SETLKW; return 0;}
2075 #else /* def F_SETLKW */
2076 {errno = EINVAL; return -1;}
2077 #endif /* ndef F_SETLKW */
2078 if (x == Mono_Posix_FcntlCommand_F_SETOWN)
2080 {*r = F_SETOWN; return 0;}
2081 #else /* def F_SETOWN */
2082 {errno = EINVAL; return -1;}
2083 #endif /* ndef F_SETOWN */
2084 if (x == Mono_Posix_FcntlCommand_F_SETSIG)
2086 {*r = F_SETSIG; return 0;}
2087 #else /* def F_SETSIG */
2088 {errno = EINVAL; return -1;}
2089 #endif /* ndef F_SETSIG */
2092 errno = EINVAL; return -1;
2095 int Mono_Posix_ToFcntlCommand (int x, int *r)
2102 {*r = Mono_Posix_FcntlCommand_F_DUPFD; return 0;}
2103 #endif /* ndef F_DUPFD */
2106 {*r = Mono_Posix_FcntlCommand_F_GETFD; return 0;}
2107 #endif /* ndef F_GETFD */
2110 {*r = Mono_Posix_FcntlCommand_F_GETFL; return 0;}
2111 #endif /* ndef F_GETFL */
2113 if (x == F_GETLEASE)
2114 {*r = Mono_Posix_FcntlCommand_F_GETLEASE; return 0;}
2115 #endif /* ndef F_GETLEASE */
2118 {*r = Mono_Posix_FcntlCommand_F_GETLK; return 0;}
2119 #endif /* ndef F_GETLK */
2122 {*r = Mono_Posix_FcntlCommand_F_GETOWN; return 0;}
2123 #endif /* ndef F_GETOWN */
2126 {*r = Mono_Posix_FcntlCommand_F_GETSIG; return 0;}
2127 #endif /* ndef F_GETSIG */
2130 {*r = Mono_Posix_FcntlCommand_F_NOTIFY; return 0;}
2131 #endif /* ndef F_NOTIFY */
2134 {*r = Mono_Posix_FcntlCommand_F_SETFD; return 0;}
2135 #endif /* ndef F_SETFD */
2138 {*r = Mono_Posix_FcntlCommand_F_SETFL; return 0;}
2139 #endif /* ndef F_SETFL */
2141 if (x == F_SETLEASE)
2142 {*r = Mono_Posix_FcntlCommand_F_SETLEASE; return 0;}
2143 #endif /* ndef F_SETLEASE */
2146 {*r = Mono_Posix_FcntlCommand_F_SETLK; return 0;}
2147 #endif /* ndef F_SETLK */
2150 {*r = Mono_Posix_FcntlCommand_F_SETLKW; return 0;}
2151 #endif /* ndef F_SETLKW */
2154 {*r = Mono_Posix_FcntlCommand_F_SETOWN; return 0;}
2155 #endif /* ndef F_SETOWN */
2158 {*r = Mono_Posix_FcntlCommand_F_SETSIG; return 0;}
2159 #endif /* ndef F_SETSIG */
2160 errno = EINVAL; return -1;
2163 int Mono_Posix_FromFilePermissions (unsigned int x, unsigned int *r)
2166 if ((x & Mono_Posix_FilePermissions_ACCESSPERMS) == Mono_Posix_FilePermissions_ACCESSPERMS)
2169 #else /* def ACCESSPERMS */
2170 {errno = EINVAL; return -1;}
2171 #endif /* ndef ACCESSPERMS */
2172 if ((x & Mono_Posix_FilePermissions_ALLPERMS) == Mono_Posix_FilePermissions_ALLPERMS)
2175 #else /* def ALLPERMS */
2176 {errno = EINVAL; return -1;}
2177 #endif /* ndef ALLPERMS */
2178 if ((x & Mono_Posix_FilePermissions_DEFFILEMODE) == Mono_Posix_FilePermissions_DEFFILEMODE)
2181 #else /* def DEFFILEMODE */
2182 {errno = EINVAL; return -1;}
2183 #endif /* ndef DEFFILEMODE */
2184 if ((x & Mono_Posix_FilePermissions_S_IFBLK) == Mono_Posix_FilePermissions_S_IFBLK)
2187 #else /* def S_IFBLK */
2188 {errno = EINVAL; return -1;}
2189 #endif /* ndef S_IFBLK */
2190 if ((x & Mono_Posix_FilePermissions_S_IFCHR) == Mono_Posix_FilePermissions_S_IFCHR)
2193 #else /* def S_IFCHR */
2194 {errno = EINVAL; return -1;}
2195 #endif /* ndef S_IFCHR */
2196 if ((x & Mono_Posix_FilePermissions_S_IFDIR) == Mono_Posix_FilePermissions_S_IFDIR)
2199 #else /* def S_IFDIR */
2200 {errno = EINVAL; return -1;}
2201 #endif /* ndef S_IFDIR */
2202 if ((x & Mono_Posix_FilePermissions_S_IFIFO) == Mono_Posix_FilePermissions_S_IFIFO)
2205 #else /* def S_IFIFO */
2206 {errno = EINVAL; return -1;}
2207 #endif /* ndef S_IFIFO */
2208 if ((x & Mono_Posix_FilePermissions_S_IFLNK) == Mono_Posix_FilePermissions_S_IFLNK)
2211 #else /* def S_IFLNK */
2212 {errno = EINVAL; return -1;}
2213 #endif /* ndef S_IFLNK */
2214 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFMT)
2217 #else /* def S_IFMT */
2218 {errno = EINVAL; return -1;}
2219 #endif /* ndef S_IFMT */
2220 if ((x & Mono_Posix_FilePermissions_S_IFREG) == Mono_Posix_FilePermissions_S_IFREG)
2223 #else /* def S_IFREG */
2224 {errno = EINVAL; return -1;}
2225 #endif /* ndef S_IFREG */
2226 if ((x & Mono_Posix_FilePermissions_S_IFSOCK) == Mono_Posix_FilePermissions_S_IFSOCK)
2229 #else /* def S_IFSOCK */
2230 {errno = EINVAL; return -1;}
2231 #endif /* ndef S_IFSOCK */
2232 if ((x & Mono_Posix_FilePermissions_S_IRGRP) == Mono_Posix_FilePermissions_S_IRGRP)
2235 #else /* def S_IRGRP */
2236 {errno = EINVAL; return -1;}
2237 #endif /* ndef S_IRGRP */
2238 if ((x & Mono_Posix_FilePermissions_S_IROTH) == Mono_Posix_FilePermissions_S_IROTH)
2241 #else /* def S_IROTH */
2242 {errno = EINVAL; return -1;}
2243 #endif /* ndef S_IROTH */
2244 if ((x & Mono_Posix_FilePermissions_S_IRUSR) == Mono_Posix_FilePermissions_S_IRUSR)
2247 #else /* def S_IRUSR */
2248 {errno = EINVAL; return -1;}
2249 #endif /* ndef S_IRUSR */
2250 if ((x & Mono_Posix_FilePermissions_S_IRWXG) == Mono_Posix_FilePermissions_S_IRWXG)
2253 #else /* def S_IRWXG */
2254 {errno = EINVAL; return -1;}
2255 #endif /* ndef S_IRWXG */
2256 if ((x & Mono_Posix_FilePermissions_S_IRWXO) == Mono_Posix_FilePermissions_S_IRWXO)
2259 #else /* def S_IRWXO */
2260 {errno = EINVAL; return -1;}
2261 #endif /* ndef S_IRWXO */
2262 if ((x & Mono_Posix_FilePermissions_S_IRWXU) == Mono_Posix_FilePermissions_S_IRWXU)
2265 #else /* def S_IRWXU */
2266 {errno = EINVAL; return -1;}
2267 #endif /* ndef S_IRWXU */
2268 if ((x & Mono_Posix_FilePermissions_S_ISGID) == Mono_Posix_FilePermissions_S_ISGID)
2271 #else /* def S_ISGID */
2272 {errno = EINVAL; return -1;}
2273 #endif /* ndef S_ISGID */
2274 if ((x & Mono_Posix_FilePermissions_S_ISUID) == Mono_Posix_FilePermissions_S_ISUID)
2277 #else /* def S_ISUID */
2278 {errno = EINVAL; return -1;}
2279 #endif /* ndef S_ISUID */
2280 if ((x & Mono_Posix_FilePermissions_S_ISVTX) == Mono_Posix_FilePermissions_S_ISVTX)
2283 #else /* def S_ISVTX */
2284 {errno = EINVAL; return -1;}
2285 #endif /* ndef S_ISVTX */
2286 if ((x & Mono_Posix_FilePermissions_S_IWGRP) == Mono_Posix_FilePermissions_S_IWGRP)
2289 #else /* def S_IWGRP */
2290 {errno = EINVAL; return -1;}
2291 #endif /* ndef S_IWGRP */
2292 if ((x & Mono_Posix_FilePermissions_S_IWOTH) == Mono_Posix_FilePermissions_S_IWOTH)
2295 #else /* def S_IWOTH */
2296 {errno = EINVAL; return -1;}
2297 #endif /* ndef S_IWOTH */
2298 if ((x & Mono_Posix_FilePermissions_S_IWUSR) == Mono_Posix_FilePermissions_S_IWUSR)
2301 #else /* def S_IWUSR */
2302 {errno = EINVAL; return -1;}
2303 #endif /* ndef S_IWUSR */
2304 if ((x & Mono_Posix_FilePermissions_S_IXGRP) == Mono_Posix_FilePermissions_S_IXGRP)
2307 #else /* def S_IXGRP */
2308 {errno = EINVAL; return -1;}
2309 #endif /* ndef S_IXGRP */
2310 if ((x & Mono_Posix_FilePermissions_S_IXOTH) == Mono_Posix_FilePermissions_S_IXOTH)
2313 #else /* def S_IXOTH */
2314 {errno = EINVAL; return -1;}
2315 #endif /* ndef S_IXOTH */
2316 if ((x & Mono_Posix_FilePermissions_S_IXUSR) == Mono_Posix_FilePermissions_S_IXUSR)
2319 #else /* def S_IXUSR */
2320 {errno = EINVAL; return -1;}
2321 #endif /* ndef S_IXUSR */
2327 int Mono_Posix_ToFilePermissions (unsigned int x, unsigned int *r)
2333 if ((x & ACCESSPERMS) == ACCESSPERMS)
2334 *r |= Mono_Posix_FilePermissions_ACCESSPERMS;
2335 #endif /* ndef ACCESSPERMS */
2337 if ((x & ALLPERMS) == ALLPERMS)
2338 *r |= Mono_Posix_FilePermissions_ALLPERMS;
2339 #endif /* ndef ALLPERMS */
2341 if ((x & DEFFILEMODE) == DEFFILEMODE)
2342 *r |= Mono_Posix_FilePermissions_DEFFILEMODE;
2343 #endif /* ndef DEFFILEMODE */
2345 if ((x & S_IFBLK) == S_IFBLK)
2346 *r |= Mono_Posix_FilePermissions_S_IFBLK;
2347 #endif /* ndef S_IFBLK */
2349 if ((x & S_IFCHR) == S_IFCHR)
2350 *r |= Mono_Posix_FilePermissions_S_IFCHR;
2351 #endif /* ndef S_IFCHR */
2353 if ((x & S_IFDIR) == S_IFDIR)
2354 *r |= Mono_Posix_FilePermissions_S_IFDIR;
2355 #endif /* ndef S_IFDIR */
2357 if ((x & S_IFIFO) == S_IFIFO)
2358 *r |= Mono_Posix_FilePermissions_S_IFIFO;
2359 #endif /* ndef S_IFIFO */
2361 if ((x & S_IFLNK) == S_IFLNK)
2362 *r |= Mono_Posix_FilePermissions_S_IFLNK;
2363 #endif /* ndef S_IFLNK */
2365 if ((x & S_IFMT) == S_IFMT)
2366 *r |= Mono_Posix_FilePermissions_S_IFMT;
2367 #endif /* ndef S_IFMT */
2369 if ((x & S_IFREG) == S_IFREG)
2370 *r |= Mono_Posix_FilePermissions_S_IFREG;
2371 #endif /* ndef S_IFREG */
2373 if ((x & S_IFSOCK) == S_IFSOCK)
2374 *r |= Mono_Posix_FilePermissions_S_IFSOCK;
2375 #endif /* ndef S_IFSOCK */
2377 if ((x & S_IRGRP) == S_IRGRP)
2378 *r |= Mono_Posix_FilePermissions_S_IRGRP;
2379 #endif /* ndef S_IRGRP */
2381 if ((x & S_IROTH) == S_IROTH)
2382 *r |= Mono_Posix_FilePermissions_S_IROTH;
2383 #endif /* ndef S_IROTH */
2385 if ((x & S_IRUSR) == S_IRUSR)
2386 *r |= Mono_Posix_FilePermissions_S_IRUSR;
2387 #endif /* ndef S_IRUSR */
2389 if ((x & S_IRWXG) == S_IRWXG)
2390 *r |= Mono_Posix_FilePermissions_S_IRWXG;
2391 #endif /* ndef S_IRWXG */
2393 if ((x & S_IRWXO) == S_IRWXO)
2394 *r |= Mono_Posix_FilePermissions_S_IRWXO;
2395 #endif /* ndef S_IRWXO */
2397 if ((x & S_IRWXU) == S_IRWXU)
2398 *r |= Mono_Posix_FilePermissions_S_IRWXU;
2399 #endif /* ndef S_IRWXU */
2401 if ((x & S_ISGID) == S_ISGID)
2402 *r |= Mono_Posix_FilePermissions_S_ISGID;
2403 #endif /* ndef S_ISGID */
2405 if ((x & S_ISUID) == S_ISUID)
2406 *r |= Mono_Posix_FilePermissions_S_ISUID;
2407 #endif /* ndef S_ISUID */
2409 if ((x & S_ISVTX) == S_ISVTX)
2410 *r |= Mono_Posix_FilePermissions_S_ISVTX;
2411 #endif /* ndef S_ISVTX */
2413 if ((x & S_IWGRP) == S_IWGRP)
2414 *r |= Mono_Posix_FilePermissions_S_IWGRP;
2415 #endif /* ndef S_IWGRP */
2417 if ((x & S_IWOTH) == S_IWOTH)
2418 *r |= Mono_Posix_FilePermissions_S_IWOTH;
2419 #endif /* ndef S_IWOTH */
2421 if ((x & S_IWUSR) == S_IWUSR)
2422 *r |= Mono_Posix_FilePermissions_S_IWUSR;
2423 #endif /* ndef S_IWUSR */
2425 if ((x & S_IXGRP) == S_IXGRP)
2426 *r |= Mono_Posix_FilePermissions_S_IXGRP;
2427 #endif /* ndef S_IXGRP */
2429 if ((x & S_IXOTH) == S_IXOTH)
2430 *r |= Mono_Posix_FilePermissions_S_IXOTH;
2431 #endif /* ndef S_IXOTH */
2433 if ((x & S_IXUSR) == S_IXUSR)
2434 *r |= Mono_Posix_FilePermissions_S_IXUSR;
2435 #endif /* ndef S_IXUSR */
2439 int Mono_Posix_FromLockType (short x, short *r)
2442 if (x == Mono_Posix_LockType_F_RDLCK)
2444 {*r = F_RDLCK; return 0;}
2445 #else /* def F_RDLCK */
2446 {errno = EINVAL; return -1;}
2447 #endif /* ndef F_RDLCK */
2448 if (x == Mono_Posix_LockType_F_UNLCK)
2450 {*r = F_UNLCK; return 0;}
2451 #else /* def F_UNLCK */
2452 {errno = EINVAL; return -1;}
2453 #endif /* ndef F_UNLCK */
2454 if (x == Mono_Posix_LockType_F_WRLCK)
2456 {*r = F_WRLCK; return 0;}
2457 #else /* def F_WRLCK */
2458 {errno = EINVAL; return -1;}
2459 #endif /* ndef F_WRLCK */
2462 errno = EINVAL; return -1;
2465 int Mono_Posix_ToLockType (short x, short *r)
2472 {*r = Mono_Posix_LockType_F_RDLCK; return 0;}
2473 #endif /* ndef F_RDLCK */
2476 {*r = Mono_Posix_LockType_F_UNLCK; return 0;}
2477 #endif /* ndef F_UNLCK */
2480 {*r = Mono_Posix_LockType_F_WRLCK; return 0;}
2481 #endif /* ndef F_WRLCK */
2482 errno = EINVAL; return -1;
2485 int Mono_Posix_FromLockfCommand (int x, int *r)
2488 if (x == Mono_Posix_LockfCommand_F_LOCK)
2490 {*r = F_LOCK; return 0;}
2491 #else /* def F_LOCK */
2492 {errno = EINVAL; return -1;}
2493 #endif /* ndef F_LOCK */
2494 if (x == Mono_Posix_LockfCommand_F_TEST)
2496 {*r = F_TEST; return 0;}
2497 #else /* def F_TEST */
2498 {errno = EINVAL; return -1;}
2499 #endif /* ndef F_TEST */
2500 if (x == Mono_Posix_LockfCommand_F_TLOCK)
2502 {*r = F_TLOCK; return 0;}
2503 #else /* def F_TLOCK */
2504 {errno = EINVAL; return -1;}
2505 #endif /* ndef F_TLOCK */
2506 if (x == Mono_Posix_LockfCommand_F_ULOCK)
2508 {*r = F_ULOCK; return 0;}
2509 #else /* def F_ULOCK */
2510 {errno = EINVAL; return -1;}
2511 #endif /* ndef F_ULOCK */
2514 errno = EINVAL; return -1;
2517 int Mono_Posix_ToLockfCommand (int x, int *r)
2524 {*r = Mono_Posix_LockfCommand_F_LOCK; return 0;}
2525 #endif /* ndef F_LOCK */
2528 {*r = Mono_Posix_LockfCommand_F_TEST; return 0;}
2529 #endif /* ndef F_TEST */
2532 {*r = Mono_Posix_LockfCommand_F_TLOCK; return 0;}
2533 #endif /* ndef F_TLOCK */
2536 {*r = Mono_Posix_LockfCommand_F_ULOCK; return 0;}
2537 #endif /* ndef F_ULOCK */
2538 errno = EINVAL; return -1;
2541 int Mono_Posix_FromMlockallFlags (int x, int *r)
2544 if ((x & Mono_Posix_MlockallFlags_MCL_CURRENT) == Mono_Posix_MlockallFlags_MCL_CURRENT)
2547 #else /* def MCL_CURRENT */
2548 {errno = EINVAL; return -1;}
2549 #endif /* ndef MCL_CURRENT */
2550 if ((x & Mono_Posix_MlockallFlags_MCL_FUTURE) == Mono_Posix_MlockallFlags_MCL_FUTURE)
2553 #else /* def MCL_FUTURE */
2554 {errno = EINVAL; return -1;}
2555 #endif /* ndef MCL_FUTURE */
2561 int Mono_Posix_ToMlockallFlags (int x, int *r)
2567 if ((x & MCL_CURRENT) == MCL_CURRENT)
2568 *r |= Mono_Posix_MlockallFlags_MCL_CURRENT;
2569 #endif /* ndef MCL_CURRENT */
2571 if ((x & MCL_FUTURE) == MCL_FUTURE)
2572 *r |= Mono_Posix_MlockallFlags_MCL_FUTURE;
2573 #endif /* ndef MCL_FUTURE */
2577 int Mono_Posix_FromMmapFlags (int x, int *r)
2580 if ((x & Mono_Posix_MmapFlags_MAP_ANON) == Mono_Posix_MmapFlags_MAP_ANON)
2583 #else /* def MAP_ANON */
2584 {errno = EINVAL; return -1;}
2585 #endif /* ndef MAP_ANON */
2586 if ((x & Mono_Posix_MmapFlags_MAP_ANONYMOUS) == Mono_Posix_MmapFlags_MAP_ANONYMOUS)
2587 #ifdef MAP_ANONYMOUS
2588 *r |= MAP_ANONYMOUS;
2589 #else /* def MAP_ANONYMOUS */
2590 {errno = EINVAL; return -1;}
2591 #endif /* ndef MAP_ANONYMOUS */
2592 if ((x & Mono_Posix_MmapFlags_MAP_DENYWRITE) == Mono_Posix_MmapFlags_MAP_DENYWRITE)
2593 #ifdef MAP_DENYWRITE
2594 *r |= MAP_DENYWRITE;
2595 #else /* def MAP_DENYWRITE */
2596 {errno = EINVAL; return -1;}
2597 #endif /* ndef MAP_DENYWRITE */
2598 if ((x & Mono_Posix_MmapFlags_MAP_EXECUTABLE) == Mono_Posix_MmapFlags_MAP_EXECUTABLE)
2599 #ifdef MAP_EXECUTABLE
2600 *r |= MAP_EXECUTABLE;
2601 #else /* def MAP_EXECUTABLE */
2602 {errno = EINVAL; return -1;}
2603 #endif /* ndef MAP_EXECUTABLE */
2604 if ((x & Mono_Posix_MmapFlags_MAP_FILE) == Mono_Posix_MmapFlags_MAP_FILE)
2607 #else /* def MAP_FILE */
2608 {errno = EINVAL; return -1;}
2609 #endif /* ndef MAP_FILE */
2610 if ((x & Mono_Posix_MmapFlags_MAP_FIXED) == Mono_Posix_MmapFlags_MAP_FIXED)
2613 #else /* def MAP_FIXED */
2614 {errno = EINVAL; return -1;}
2615 #endif /* ndef MAP_FIXED */
2616 if ((x & Mono_Posix_MmapFlags_MAP_GROWSDOWN) == Mono_Posix_MmapFlags_MAP_GROWSDOWN)
2617 #ifdef MAP_GROWSDOWN
2618 *r |= MAP_GROWSDOWN;
2619 #else /* def MAP_GROWSDOWN */
2620 {errno = EINVAL; return -1;}
2621 #endif /* ndef MAP_GROWSDOWN */
2622 if ((x & Mono_Posix_MmapFlags_MAP_LOCKED) == Mono_Posix_MmapFlags_MAP_LOCKED)
2625 #else /* def MAP_LOCKED */
2626 {errno = EINVAL; return -1;}
2627 #endif /* ndef MAP_LOCKED */
2628 if ((x & Mono_Posix_MmapFlags_MAP_NONBLOCK) == Mono_Posix_MmapFlags_MAP_NONBLOCK)
2631 #else /* def MAP_NONBLOCK */
2632 {errno = EINVAL; return -1;}
2633 #endif /* ndef MAP_NONBLOCK */
2634 if ((x & Mono_Posix_MmapFlags_MAP_NORESERVE) == Mono_Posix_MmapFlags_MAP_NORESERVE)
2635 #ifdef MAP_NORESERVE
2636 *r |= MAP_NORESERVE;
2637 #else /* def MAP_NORESERVE */
2638 {errno = EINVAL; return -1;}
2639 #endif /* ndef MAP_NORESERVE */
2640 if ((x & Mono_Posix_MmapFlags_MAP_POPULATE) == Mono_Posix_MmapFlags_MAP_POPULATE)
2643 #else /* def MAP_POPULATE */
2644 {errno = EINVAL; return -1;}
2645 #endif /* ndef MAP_POPULATE */
2646 if ((x & Mono_Posix_MmapFlags_MAP_PRIVATE) == Mono_Posix_MmapFlags_MAP_PRIVATE)
2649 #else /* def MAP_PRIVATE */
2650 {errno = EINVAL; return -1;}
2651 #endif /* ndef MAP_PRIVATE */
2652 if ((x & Mono_Posix_MmapFlags_MAP_SHARED) == Mono_Posix_MmapFlags_MAP_SHARED)
2655 #else /* def MAP_SHARED */
2656 {errno = EINVAL; return -1;}
2657 #endif /* ndef MAP_SHARED */
2658 if ((x & Mono_Posix_MmapFlags_MAP_TYPE) == Mono_Posix_MmapFlags_MAP_TYPE)
2661 #else /* def MAP_TYPE */
2662 {errno = EINVAL; return -1;}
2663 #endif /* ndef MAP_TYPE */
2669 int Mono_Posix_ToMmapFlags (int x, int *r)
2675 if ((x & MAP_ANON) == MAP_ANON)
2676 *r |= Mono_Posix_MmapFlags_MAP_ANON;
2677 #endif /* ndef MAP_ANON */
2678 #ifdef MAP_ANONYMOUS
2679 if ((x & MAP_ANONYMOUS) == MAP_ANONYMOUS)
2680 *r |= Mono_Posix_MmapFlags_MAP_ANONYMOUS;
2681 #endif /* ndef MAP_ANONYMOUS */
2682 #ifdef MAP_DENYWRITE
2683 if ((x & MAP_DENYWRITE) == MAP_DENYWRITE)
2684 *r |= Mono_Posix_MmapFlags_MAP_DENYWRITE;
2685 #endif /* ndef MAP_DENYWRITE */
2686 #ifdef MAP_EXECUTABLE
2687 if ((x & MAP_EXECUTABLE) == MAP_EXECUTABLE)
2688 *r |= Mono_Posix_MmapFlags_MAP_EXECUTABLE;
2689 #endif /* ndef MAP_EXECUTABLE */
2691 if ((x & MAP_FILE) == MAP_FILE)
2692 *r |= Mono_Posix_MmapFlags_MAP_FILE;
2693 #endif /* ndef MAP_FILE */
2695 if ((x & MAP_FIXED) == MAP_FIXED)
2696 *r |= Mono_Posix_MmapFlags_MAP_FIXED;
2697 #endif /* ndef MAP_FIXED */
2698 #ifdef MAP_GROWSDOWN
2699 if ((x & MAP_GROWSDOWN) == MAP_GROWSDOWN)
2700 *r |= Mono_Posix_MmapFlags_MAP_GROWSDOWN;
2701 #endif /* ndef MAP_GROWSDOWN */
2703 if ((x & MAP_LOCKED) == MAP_LOCKED)
2704 *r |= Mono_Posix_MmapFlags_MAP_LOCKED;
2705 #endif /* ndef MAP_LOCKED */
2707 if ((x & MAP_NONBLOCK) == MAP_NONBLOCK)
2708 *r |= Mono_Posix_MmapFlags_MAP_NONBLOCK;
2709 #endif /* ndef MAP_NONBLOCK */
2710 #ifdef MAP_NORESERVE
2711 if ((x & MAP_NORESERVE) == MAP_NORESERVE)
2712 *r |= Mono_Posix_MmapFlags_MAP_NORESERVE;
2713 #endif /* ndef MAP_NORESERVE */
2715 if ((x & MAP_POPULATE) == MAP_POPULATE)
2716 *r |= Mono_Posix_MmapFlags_MAP_POPULATE;
2717 #endif /* ndef MAP_POPULATE */
2719 if ((x & MAP_PRIVATE) == MAP_PRIVATE)
2720 *r |= Mono_Posix_MmapFlags_MAP_PRIVATE;
2721 #endif /* ndef MAP_PRIVATE */
2723 if ((x & MAP_SHARED) == MAP_SHARED)
2724 *r |= Mono_Posix_MmapFlags_MAP_SHARED;
2725 #endif /* ndef MAP_SHARED */
2727 if ((x & MAP_TYPE) == MAP_TYPE)
2728 *r |= Mono_Posix_MmapFlags_MAP_TYPE;
2729 #endif /* ndef MAP_TYPE */
2733 int Mono_Posix_FromMmapProts (int x, int *r)
2736 if ((x & Mono_Posix_MmapProts_PROT_EXEC) == Mono_Posix_MmapProts_PROT_EXEC)
2739 #else /* def PROT_EXEC */
2740 {errno = EINVAL; return -1;}
2741 #endif /* ndef PROT_EXEC */
2742 if ((x & Mono_Posix_MmapProts_PROT_GROWSDOWN) == Mono_Posix_MmapProts_PROT_GROWSDOWN)
2743 #ifdef PROT_GROWSDOWN
2744 *r |= PROT_GROWSDOWN;
2745 #else /* def PROT_GROWSDOWN */
2746 {errno = EINVAL; return -1;}
2747 #endif /* ndef PROT_GROWSDOWN */
2748 if ((x & Mono_Posix_MmapProts_PROT_GROWSUP) == Mono_Posix_MmapProts_PROT_GROWSUP)
2751 #else /* def PROT_GROWSUP */
2752 {errno = EINVAL; return -1;}
2753 #endif /* ndef PROT_GROWSUP */
2754 if ((x & Mono_Posix_MmapProts_PROT_NONE) == Mono_Posix_MmapProts_PROT_NONE)
2757 #else /* def PROT_NONE */
2758 {errno = EINVAL; return -1;}
2759 #endif /* ndef PROT_NONE */
2760 if ((x & Mono_Posix_MmapProts_PROT_READ) == Mono_Posix_MmapProts_PROT_READ)
2763 #else /* def PROT_READ */
2764 {errno = EINVAL; return -1;}
2765 #endif /* ndef PROT_READ */
2766 if ((x & Mono_Posix_MmapProts_PROT_WRITE) == Mono_Posix_MmapProts_PROT_WRITE)
2769 #else /* def PROT_WRITE */
2770 {errno = EINVAL; return -1;}
2771 #endif /* ndef PROT_WRITE */
2777 int Mono_Posix_ToMmapProts (int x, int *r)
2783 if ((x & PROT_EXEC) == PROT_EXEC)
2784 *r |= Mono_Posix_MmapProts_PROT_EXEC;
2785 #endif /* ndef PROT_EXEC */
2786 #ifdef PROT_GROWSDOWN
2787 if ((x & PROT_GROWSDOWN) == PROT_GROWSDOWN)
2788 *r |= Mono_Posix_MmapProts_PROT_GROWSDOWN;
2789 #endif /* ndef PROT_GROWSDOWN */
2791 if ((x & PROT_GROWSUP) == PROT_GROWSUP)
2792 *r |= Mono_Posix_MmapProts_PROT_GROWSUP;
2793 #endif /* ndef PROT_GROWSUP */
2795 if ((x & PROT_NONE) == PROT_NONE)
2796 *r |= Mono_Posix_MmapProts_PROT_NONE;
2797 #endif /* ndef PROT_NONE */
2799 if ((x & PROT_READ) == PROT_READ)
2800 *r |= Mono_Posix_MmapProts_PROT_READ;
2801 #endif /* ndef PROT_READ */
2803 if ((x & PROT_WRITE) == PROT_WRITE)
2804 *r |= Mono_Posix_MmapProts_PROT_WRITE;
2805 #endif /* ndef PROT_WRITE */
2809 int Mono_Posix_FromMountFlags (guint64 x, guint64 *r)
2812 if ((x & Mono_Posix_MountFlags_ST_APPEND) == Mono_Posix_MountFlags_ST_APPEND)
2815 #else /* def ST_APPEND */
2816 {errno = EINVAL; return -1;}
2817 #endif /* ndef ST_APPEND */
2818 if ((x & Mono_Posix_MountFlags_ST_IMMUTABLE) == Mono_Posix_MountFlags_ST_IMMUTABLE)
2821 #else /* def ST_IMMUTABLE */
2822 {errno = EINVAL; return -1;}
2823 #endif /* ndef ST_IMMUTABLE */
2824 if ((x & Mono_Posix_MountFlags_ST_MANDLOCK) == Mono_Posix_MountFlags_ST_MANDLOCK)
2827 #else /* def ST_MANDLOCK */
2828 {errno = EINVAL; return -1;}
2829 #endif /* ndef ST_MANDLOCK */
2830 if ((x & Mono_Posix_MountFlags_ST_NOATIME) == Mono_Posix_MountFlags_ST_NOATIME)
2833 #else /* def ST_NOATIME */
2834 {errno = EINVAL; return -1;}
2835 #endif /* ndef ST_NOATIME */
2836 if ((x & Mono_Posix_MountFlags_ST_NODEV) == Mono_Posix_MountFlags_ST_NODEV)
2839 #else /* def ST_NODEV */
2840 {errno = EINVAL; return -1;}
2841 #endif /* ndef ST_NODEV */
2842 if ((x & Mono_Posix_MountFlags_ST_NODIRATIME) == Mono_Posix_MountFlags_ST_NODIRATIME)
2843 #ifdef ST_NODIRATIME
2844 *r |= ST_NODIRATIME;
2845 #else /* def ST_NODIRATIME */
2846 {errno = EINVAL; return -1;}
2847 #endif /* ndef ST_NODIRATIME */
2848 if ((x & Mono_Posix_MountFlags_ST_NOSUID) == Mono_Posix_MountFlags_ST_NOSUID)
2851 #else /* def ST_NOSUID */
2852 {errno = EINVAL; return -1;}
2853 #endif /* ndef ST_NOSUID */
2854 if ((x & Mono_Posix_MountFlags_ST_RDONLY) == Mono_Posix_MountFlags_ST_RDONLY)
2857 #else /* def ST_RDONLY */
2858 {errno = EINVAL; return -1;}
2859 #endif /* ndef ST_RDONLY */
2860 if ((x & Mono_Posix_MountFlags_ST_SYNCHRONOUS) == Mono_Posix_MountFlags_ST_SYNCHRONOUS)
2861 #ifdef ST_SYNCHRONOUS
2862 *r |= ST_SYNCHRONOUS;
2863 #else /* def ST_SYNCHRONOUS */
2864 {errno = EINVAL; return -1;}
2865 #endif /* ndef ST_SYNCHRONOUS */
2866 if ((x & Mono_Posix_MountFlags_ST_WRITE) == Mono_Posix_MountFlags_ST_WRITE)
2869 #else /* def ST_WRITE */
2870 {errno = EINVAL; return -1;}
2871 #endif /* ndef ST_WRITE */
2877 int Mono_Posix_ToMountFlags (guint64 x, guint64 *r)
2883 if ((x & ST_APPEND) == ST_APPEND)
2884 *r |= Mono_Posix_MountFlags_ST_APPEND;
2885 #endif /* ndef ST_APPEND */
2887 if ((x & ST_IMMUTABLE) == ST_IMMUTABLE)
2888 *r |= Mono_Posix_MountFlags_ST_IMMUTABLE;
2889 #endif /* ndef ST_IMMUTABLE */
2891 if ((x & ST_MANDLOCK) == ST_MANDLOCK)
2892 *r |= Mono_Posix_MountFlags_ST_MANDLOCK;
2893 #endif /* ndef ST_MANDLOCK */
2895 if ((x & ST_NOATIME) == ST_NOATIME)
2896 *r |= Mono_Posix_MountFlags_ST_NOATIME;
2897 #endif /* ndef ST_NOATIME */
2899 if ((x & ST_NODEV) == ST_NODEV)
2900 *r |= Mono_Posix_MountFlags_ST_NODEV;
2901 #endif /* ndef ST_NODEV */
2902 #ifdef ST_NODIRATIME
2903 if ((x & ST_NODIRATIME) == ST_NODIRATIME)
2904 *r |= Mono_Posix_MountFlags_ST_NODIRATIME;
2905 #endif /* ndef ST_NODIRATIME */
2907 if ((x & ST_NOSUID) == ST_NOSUID)
2908 *r |= Mono_Posix_MountFlags_ST_NOSUID;
2909 #endif /* ndef ST_NOSUID */
2911 if ((x & ST_RDONLY) == ST_RDONLY)
2912 *r |= Mono_Posix_MountFlags_ST_RDONLY;
2913 #endif /* ndef ST_RDONLY */
2914 #ifdef ST_SYNCHRONOUS
2915 if ((x & ST_SYNCHRONOUS) == ST_SYNCHRONOUS)
2916 *r |= Mono_Posix_MountFlags_ST_SYNCHRONOUS;
2917 #endif /* ndef ST_SYNCHRONOUS */
2919 if ((x & ST_WRITE) == ST_WRITE)
2920 *r |= Mono_Posix_MountFlags_ST_WRITE;
2921 #endif /* ndef ST_WRITE */
2925 int Mono_Posix_FromMremapFlags (guint64 x, guint64 *r)
2928 if ((x & Mono_Posix_MremapFlags_MREMAP_MAYMOVE) == Mono_Posix_MremapFlags_MREMAP_MAYMOVE)
2929 #ifdef MREMAP_MAYMOVE
2930 *r |= MREMAP_MAYMOVE;
2931 #else /* def MREMAP_MAYMOVE */
2932 {errno = EINVAL; return -1;}
2933 #endif /* ndef MREMAP_MAYMOVE */
2939 int Mono_Posix_ToMremapFlags (guint64 x, guint64 *r)
2944 #ifdef MREMAP_MAYMOVE
2945 if ((x & MREMAP_MAYMOVE) == MREMAP_MAYMOVE)
2946 *r |= Mono_Posix_MremapFlags_MREMAP_MAYMOVE;
2947 #endif /* ndef MREMAP_MAYMOVE */
2951 int Mono_Posix_FromMsyncFlags (int x, int *r)
2954 if ((x & Mono_Posix_MsyncFlags_MS_ASYNC) == Mono_Posix_MsyncFlags_MS_ASYNC)
2957 #else /* def MS_ASYNC */
2958 {errno = EINVAL; return -1;}
2959 #endif /* ndef MS_ASYNC */
2960 if ((x & Mono_Posix_MsyncFlags_MS_INVALIDATE) == Mono_Posix_MsyncFlags_MS_INVALIDATE)
2961 #ifdef MS_INVALIDATE
2962 *r |= MS_INVALIDATE;
2963 #else /* def MS_INVALIDATE */
2964 {errno = EINVAL; return -1;}
2965 #endif /* ndef MS_INVALIDATE */
2966 if ((x & Mono_Posix_MsyncFlags_MS_SYNC) == Mono_Posix_MsyncFlags_MS_SYNC)
2969 #else /* def MS_SYNC */
2970 {errno = EINVAL; return -1;}
2971 #endif /* ndef MS_SYNC */
2977 int Mono_Posix_ToMsyncFlags (int x, int *r)
2983 if ((x & MS_ASYNC) == MS_ASYNC)
2984 *r |= Mono_Posix_MsyncFlags_MS_ASYNC;
2985 #endif /* ndef MS_ASYNC */
2986 #ifdef MS_INVALIDATE
2987 if ((x & MS_INVALIDATE) == MS_INVALIDATE)
2988 *r |= Mono_Posix_MsyncFlags_MS_INVALIDATE;
2989 #endif /* ndef MS_INVALIDATE */
2991 if ((x & MS_SYNC) == MS_SYNC)
2992 *r |= Mono_Posix_MsyncFlags_MS_SYNC;
2993 #endif /* ndef MS_SYNC */
2997 int Mono_Posix_FromOpenFlags (int x, int *r)
3000 if ((x & Mono_Posix_OpenFlags_O_APPEND) == Mono_Posix_OpenFlags_O_APPEND)
3003 #else /* def O_APPEND */
3004 {errno = EINVAL; return -1;}
3005 #endif /* ndef O_APPEND */
3006 if ((x & Mono_Posix_OpenFlags_O_ASYNC) == Mono_Posix_OpenFlags_O_ASYNC)
3009 #else /* def O_ASYNC */
3010 {errno = EINVAL; return -1;}
3011 #endif /* ndef O_ASYNC */
3012 if ((x & Mono_Posix_OpenFlags_O_CREAT) == Mono_Posix_OpenFlags_O_CREAT)
3015 #else /* def O_CREAT */
3016 {errno = EINVAL; return -1;}
3017 #endif /* ndef O_CREAT */
3018 if ((x & Mono_Posix_OpenFlags_O_DIRECT) == Mono_Posix_OpenFlags_O_DIRECT)
3021 #else /* def O_DIRECT */
3022 {errno = EINVAL; return -1;}
3023 #endif /* ndef O_DIRECT */
3024 if ((x & Mono_Posix_OpenFlags_O_DIRECTORY) == Mono_Posix_OpenFlags_O_DIRECTORY)
3027 #else /* def O_DIRECTORY */
3028 {errno = EINVAL; return -1;}
3029 #endif /* ndef O_DIRECTORY */
3030 if ((x & Mono_Posix_OpenFlags_O_EXCL) == Mono_Posix_OpenFlags_O_EXCL)
3033 #else /* def O_EXCL */
3034 {errno = EINVAL; return -1;}
3035 #endif /* ndef O_EXCL */
3036 if ((x & Mono_Posix_OpenFlags_O_LARGEFILE) == Mono_Posix_OpenFlags_O_LARGEFILE)
3039 #else /* def O_LARGEFILE */
3040 {errno = EINVAL; return -1;}
3041 #endif /* ndef O_LARGEFILE */
3042 if ((x & Mono_Posix_OpenFlags_O_NOCTTY) == Mono_Posix_OpenFlags_O_NOCTTY)
3045 #else /* def O_NOCTTY */
3046 {errno = EINVAL; return -1;}
3047 #endif /* ndef O_NOCTTY */
3048 if ((x & Mono_Posix_OpenFlags_O_NOFOLLOW) == Mono_Posix_OpenFlags_O_NOFOLLOW)
3051 #else /* def O_NOFOLLOW */
3052 {errno = EINVAL; return -1;}
3053 #endif /* ndef O_NOFOLLOW */
3054 if ((x & Mono_Posix_OpenFlags_O_NONBLOCK) == Mono_Posix_OpenFlags_O_NONBLOCK)
3057 #else /* def O_NONBLOCK */
3058 {errno = EINVAL; return -1;}
3059 #endif /* ndef O_NONBLOCK */
3060 if ((x & Mono_Posix_OpenFlags_O_RDONLY) == Mono_Posix_OpenFlags_O_RDONLY)
3063 #else /* def O_RDONLY */
3064 {errno = EINVAL; return -1;}
3065 #endif /* ndef O_RDONLY */
3066 if ((x & Mono_Posix_OpenFlags_O_RDWR) == Mono_Posix_OpenFlags_O_RDWR)
3069 #else /* def O_RDWR */
3070 {errno = EINVAL; return -1;}
3071 #endif /* ndef O_RDWR */
3072 if ((x & Mono_Posix_OpenFlags_O_SYNC) == Mono_Posix_OpenFlags_O_SYNC)
3075 #else /* def O_SYNC */
3076 {errno = EINVAL; return -1;}
3077 #endif /* ndef O_SYNC */
3078 if ((x & Mono_Posix_OpenFlags_O_TRUNC) == Mono_Posix_OpenFlags_O_TRUNC)
3081 #else /* def O_TRUNC */
3082 {errno = EINVAL; return -1;}
3083 #endif /* ndef O_TRUNC */
3084 if ((x & Mono_Posix_OpenFlags_O_WRONLY) == Mono_Posix_OpenFlags_O_WRONLY)
3087 #else /* def O_WRONLY */
3088 {errno = EINVAL; return -1;}
3089 #endif /* ndef O_WRONLY */
3095 int Mono_Posix_ToOpenFlags (int x, int *r)
3101 if ((x & O_APPEND) == O_APPEND)
3102 *r |= Mono_Posix_OpenFlags_O_APPEND;
3103 #endif /* ndef O_APPEND */
3105 if ((x & O_ASYNC) == O_ASYNC)
3106 *r |= Mono_Posix_OpenFlags_O_ASYNC;
3107 #endif /* ndef O_ASYNC */
3109 if ((x & O_CREAT) == O_CREAT)
3110 *r |= Mono_Posix_OpenFlags_O_CREAT;
3111 #endif /* ndef O_CREAT */
3113 if ((x & O_DIRECT) == O_DIRECT)
3114 *r |= Mono_Posix_OpenFlags_O_DIRECT;
3115 #endif /* ndef O_DIRECT */
3117 if ((x & O_DIRECTORY) == O_DIRECTORY)
3118 *r |= Mono_Posix_OpenFlags_O_DIRECTORY;
3119 #endif /* ndef O_DIRECTORY */
3121 if ((x & O_EXCL) == O_EXCL)
3122 *r |= Mono_Posix_OpenFlags_O_EXCL;
3123 #endif /* ndef O_EXCL */
3125 if ((x & O_LARGEFILE) == O_LARGEFILE)
3126 *r |= Mono_Posix_OpenFlags_O_LARGEFILE;
3127 #endif /* ndef O_LARGEFILE */
3129 if ((x & O_NOCTTY) == O_NOCTTY)
3130 *r |= Mono_Posix_OpenFlags_O_NOCTTY;
3131 #endif /* ndef O_NOCTTY */
3133 if ((x & O_NOFOLLOW) == O_NOFOLLOW)
3134 *r |= Mono_Posix_OpenFlags_O_NOFOLLOW;
3135 #endif /* ndef O_NOFOLLOW */
3137 if ((x & O_NONBLOCK) == O_NONBLOCK)
3138 *r |= Mono_Posix_OpenFlags_O_NONBLOCK;
3139 #endif /* ndef O_NONBLOCK */
3141 if ((x & O_RDONLY) == O_RDONLY)
3142 *r |= Mono_Posix_OpenFlags_O_RDONLY;
3143 #endif /* ndef O_RDONLY */
3145 if ((x & O_RDWR) == O_RDWR)
3146 *r |= Mono_Posix_OpenFlags_O_RDWR;
3147 #endif /* ndef O_RDWR */
3149 if ((x & O_SYNC) == O_SYNC)
3150 *r |= Mono_Posix_OpenFlags_O_SYNC;
3151 #endif /* ndef O_SYNC */
3153 if ((x & O_TRUNC) == O_TRUNC)
3154 *r |= Mono_Posix_OpenFlags_O_TRUNC;
3155 #endif /* ndef O_TRUNC */
3157 if ((x & O_WRONLY) == O_WRONLY)
3158 *r |= Mono_Posix_OpenFlags_O_WRONLY;
3159 #endif /* ndef O_WRONLY */
3163 int Mono_Posix_FromPathconfName (int x, int *r)
3166 if (x == Mono_Posix_PathconfName__PC_2_SYMLINKS)
3167 #ifdef _PC_2_SYMLINKS
3168 {*r = _PC_2_SYMLINKS; return 0;}
3169 #else /* def _PC_2_SYMLINKS */
3170 {errno = EINVAL; return -1;}
3171 #endif /* ndef _PC_2_SYMLINKS */
3172 if (x == Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN)
3173 #ifdef _PC_ALLOC_SIZE_MIN
3174 {*r = _PC_ALLOC_SIZE_MIN; return 0;}
3175 #else /* def _PC_ALLOC_SIZE_MIN */
3176 {errno = EINVAL; return -1;}
3177 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3178 if (x == Mono_Posix_PathconfName__PC_ASYNC_IO)
3180 {*r = _PC_ASYNC_IO; return 0;}
3181 #else /* def _PC_ASYNC_IO */
3182 {errno = EINVAL; return -1;}
3183 #endif /* ndef _PC_ASYNC_IO */
3184 if (x == Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED)
3185 #ifdef _PC_CHOWN_RESTRICTED
3186 {*r = _PC_CHOWN_RESTRICTED; return 0;}
3187 #else /* def _PC_CHOWN_RESTRICTED */
3188 {errno = EINVAL; return -1;}
3189 #endif /* ndef _PC_CHOWN_RESTRICTED */
3190 if (x == Mono_Posix_PathconfName__PC_FILESIZEBITS)
3191 #ifdef _PC_FILESIZEBITS
3192 {*r = _PC_FILESIZEBITS; return 0;}
3193 #else /* def _PC_FILESIZEBITS */
3194 {errno = EINVAL; return -1;}
3195 #endif /* ndef _PC_FILESIZEBITS */
3196 if (x == Mono_Posix_PathconfName__PC_LINK_MAX)
3198 {*r = _PC_LINK_MAX; return 0;}
3199 #else /* def _PC_LINK_MAX */
3200 {errno = EINVAL; return -1;}
3201 #endif /* ndef _PC_LINK_MAX */
3202 if (x == Mono_Posix_PathconfName__PC_MAX_CANON)
3203 #ifdef _PC_MAX_CANON
3204 {*r = _PC_MAX_CANON; return 0;}
3205 #else /* def _PC_MAX_CANON */
3206 {errno = EINVAL; return -1;}
3207 #endif /* ndef _PC_MAX_CANON */
3208 if (x == Mono_Posix_PathconfName__PC_MAX_INPUT)
3209 #ifdef _PC_MAX_INPUT
3210 {*r = _PC_MAX_INPUT; return 0;}
3211 #else /* def _PC_MAX_INPUT */
3212 {errno = EINVAL; return -1;}
3213 #endif /* ndef _PC_MAX_INPUT */
3214 if (x == Mono_Posix_PathconfName__PC_NAME_MAX)
3216 {*r = _PC_NAME_MAX; return 0;}
3217 #else /* def _PC_NAME_MAX */
3218 {errno = EINVAL; return -1;}
3219 #endif /* ndef _PC_NAME_MAX */
3220 if (x == Mono_Posix_PathconfName__PC_NO_TRUNC)
3222 {*r = _PC_NO_TRUNC; return 0;}
3223 #else /* def _PC_NO_TRUNC */
3224 {errno = EINVAL; return -1;}
3225 #endif /* ndef _PC_NO_TRUNC */
3226 if (x == Mono_Posix_PathconfName__PC_PATH_MAX)
3228 {*r = _PC_PATH_MAX; return 0;}
3229 #else /* def _PC_PATH_MAX */
3230 {errno = EINVAL; return -1;}
3231 #endif /* ndef _PC_PATH_MAX */
3232 if (x == Mono_Posix_PathconfName__PC_PIPE_BUF)
3234 {*r = _PC_PIPE_BUF; return 0;}
3235 #else /* def _PC_PIPE_BUF */
3236 {errno = EINVAL; return -1;}
3237 #endif /* ndef _PC_PIPE_BUF */
3238 if (x == Mono_Posix_PathconfName__PC_PRIO_IO)
3240 {*r = _PC_PRIO_IO; return 0;}
3241 #else /* def _PC_PRIO_IO */
3242 {errno = EINVAL; return -1;}
3243 #endif /* ndef _PC_PRIO_IO */
3244 if (x == Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE)
3245 #ifdef _PC_REC_INCR_XFER_SIZE
3246 {*r = _PC_REC_INCR_XFER_SIZE; return 0;}
3247 #else /* def _PC_REC_INCR_XFER_SIZE */
3248 {errno = EINVAL; return -1;}
3249 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3250 if (x == Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE)
3251 #ifdef _PC_REC_MAX_XFER_SIZE
3252 {*r = _PC_REC_MAX_XFER_SIZE; return 0;}
3253 #else /* def _PC_REC_MAX_XFER_SIZE */
3254 {errno = EINVAL; return -1;}
3255 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3256 if (x == Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE)
3257 #ifdef _PC_REC_MIN_XFER_SIZE
3258 {*r = _PC_REC_MIN_XFER_SIZE; return 0;}
3259 #else /* def _PC_REC_MIN_XFER_SIZE */
3260 {errno = EINVAL; return -1;}
3261 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3262 if (x == Mono_Posix_PathconfName__PC_REC_XFER_ALIGN)
3263 #ifdef _PC_REC_XFER_ALIGN
3264 {*r = _PC_REC_XFER_ALIGN; return 0;}
3265 #else /* def _PC_REC_XFER_ALIGN */
3266 {errno = EINVAL; return -1;}
3267 #endif /* ndef _PC_REC_XFER_ALIGN */
3268 if (x == Mono_Posix_PathconfName__PC_SOCK_MAXBUF)
3269 #ifdef _PC_SOCK_MAXBUF
3270 {*r = _PC_SOCK_MAXBUF; return 0;}
3271 #else /* def _PC_SOCK_MAXBUF */
3272 {errno = EINVAL; return -1;}
3273 #endif /* ndef _PC_SOCK_MAXBUF */
3274 if (x == Mono_Posix_PathconfName__PC_SYMLINK_MAX)
3275 #ifdef _PC_SYMLINK_MAX
3276 {*r = _PC_SYMLINK_MAX; return 0;}
3277 #else /* def _PC_SYMLINK_MAX */
3278 {errno = EINVAL; return -1;}
3279 #endif /* ndef _PC_SYMLINK_MAX */
3280 if (x == Mono_Posix_PathconfName__PC_SYNC_IO)
3282 {*r = _PC_SYNC_IO; return 0;}
3283 #else /* def _PC_SYNC_IO */
3284 {errno = EINVAL; return -1;}
3285 #endif /* ndef _PC_SYNC_IO */
3286 if (x == Mono_Posix_PathconfName__PC_VDISABLE)
3288 {*r = _PC_VDISABLE; return 0;}
3289 #else /* def _PC_VDISABLE */
3290 {errno = EINVAL; return -1;}
3291 #endif /* ndef _PC_VDISABLE */
3294 errno = EINVAL; return -1;
3297 int Mono_Posix_ToPathconfName (int x, int *r)
3302 #ifdef _PC_2_SYMLINKS
3303 if (x == _PC_2_SYMLINKS)
3304 {*r = Mono_Posix_PathconfName__PC_2_SYMLINKS; return 0;}
3305 #endif /* ndef _PC_2_SYMLINKS */
3306 #ifdef _PC_ALLOC_SIZE_MIN
3307 if (x == _PC_ALLOC_SIZE_MIN)
3308 {*r = Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN; return 0;}
3309 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3311 if (x == _PC_ASYNC_IO)
3312 {*r = Mono_Posix_PathconfName__PC_ASYNC_IO; return 0;}
3313 #endif /* ndef _PC_ASYNC_IO */
3314 #ifdef _PC_CHOWN_RESTRICTED
3315 if (x == _PC_CHOWN_RESTRICTED)
3316 {*r = Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED; return 0;}
3317 #endif /* ndef _PC_CHOWN_RESTRICTED */
3318 #ifdef _PC_FILESIZEBITS
3319 if (x == _PC_FILESIZEBITS)
3320 {*r = Mono_Posix_PathconfName__PC_FILESIZEBITS; return 0;}
3321 #endif /* ndef _PC_FILESIZEBITS */
3323 if (x == _PC_LINK_MAX)
3324 {*r = Mono_Posix_PathconfName__PC_LINK_MAX; return 0;}
3325 #endif /* ndef _PC_LINK_MAX */
3326 #ifdef _PC_MAX_CANON
3327 if (x == _PC_MAX_CANON)
3328 {*r = Mono_Posix_PathconfName__PC_MAX_CANON; return 0;}
3329 #endif /* ndef _PC_MAX_CANON */
3330 #ifdef _PC_MAX_INPUT
3331 if (x == _PC_MAX_INPUT)
3332 {*r = Mono_Posix_PathconfName__PC_MAX_INPUT; return 0;}
3333 #endif /* ndef _PC_MAX_INPUT */
3335 if (x == _PC_NAME_MAX)
3336 {*r = Mono_Posix_PathconfName__PC_NAME_MAX; return 0;}
3337 #endif /* ndef _PC_NAME_MAX */
3339 if (x == _PC_NO_TRUNC)
3340 {*r = Mono_Posix_PathconfName__PC_NO_TRUNC; return 0;}
3341 #endif /* ndef _PC_NO_TRUNC */
3343 if (x == _PC_PATH_MAX)
3344 {*r = Mono_Posix_PathconfName__PC_PATH_MAX; return 0;}
3345 #endif /* ndef _PC_PATH_MAX */
3347 if (x == _PC_PIPE_BUF)
3348 {*r = Mono_Posix_PathconfName__PC_PIPE_BUF; return 0;}
3349 #endif /* ndef _PC_PIPE_BUF */
3351 if (x == _PC_PRIO_IO)
3352 {*r = Mono_Posix_PathconfName__PC_PRIO_IO; return 0;}
3353 #endif /* ndef _PC_PRIO_IO */
3354 #ifdef _PC_REC_INCR_XFER_SIZE
3355 if (x == _PC_REC_INCR_XFER_SIZE)
3356 {*r = Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE; return 0;}
3357 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3358 #ifdef _PC_REC_MAX_XFER_SIZE
3359 if (x == _PC_REC_MAX_XFER_SIZE)
3360 {*r = Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE; return 0;}
3361 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3362 #ifdef _PC_REC_MIN_XFER_SIZE
3363 if (x == _PC_REC_MIN_XFER_SIZE)
3364 {*r = Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE; return 0;}
3365 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3366 #ifdef _PC_REC_XFER_ALIGN
3367 if (x == _PC_REC_XFER_ALIGN)
3368 {*r = Mono_Posix_PathconfName__PC_REC_XFER_ALIGN; return 0;}
3369 #endif /* ndef _PC_REC_XFER_ALIGN */
3370 #ifdef _PC_SOCK_MAXBUF
3371 if (x == _PC_SOCK_MAXBUF)
3372 {*r = Mono_Posix_PathconfName__PC_SOCK_MAXBUF; return 0;}
3373 #endif /* ndef _PC_SOCK_MAXBUF */
3374 #ifdef _PC_SYMLINK_MAX
3375 if (x == _PC_SYMLINK_MAX)
3376 {*r = Mono_Posix_PathconfName__PC_SYMLINK_MAX; return 0;}
3377 #endif /* ndef _PC_SYMLINK_MAX */
3379 if (x == _PC_SYNC_IO)
3380 {*r = Mono_Posix_PathconfName__PC_SYNC_IO; return 0;}
3381 #endif /* ndef _PC_SYNC_IO */
3383 if (x == _PC_VDISABLE)
3384 {*r = Mono_Posix_PathconfName__PC_VDISABLE; return 0;}
3385 #endif /* ndef _PC_VDISABLE */
3386 errno = EINVAL; return -1;
3389 int Mono_Posix_FromPollEvents (short x, short *r)
3392 if ((x & Mono_Posix_PollEvents_POLLERR) == Mono_Posix_PollEvents_POLLERR)
3395 #else /* def POLLERR */
3396 {errno = EINVAL; return -1;}
3397 #endif /* ndef POLLERR */
3398 if ((x & Mono_Posix_PollEvents_POLLHUP) == Mono_Posix_PollEvents_POLLHUP)
3401 #else /* def POLLHUP */
3402 {errno = EINVAL; return -1;}
3403 #endif /* ndef POLLHUP */
3404 if ((x & Mono_Posix_PollEvents_POLLIN) == Mono_Posix_PollEvents_POLLIN)
3407 #else /* def POLLIN */
3408 {errno = EINVAL; return -1;}
3409 #endif /* ndef POLLIN */
3410 if ((x & Mono_Posix_PollEvents_POLLNVAL) == Mono_Posix_PollEvents_POLLNVAL)
3413 #else /* def POLLNVAL */
3414 {errno = EINVAL; return -1;}
3415 #endif /* ndef POLLNVAL */
3416 if ((x & Mono_Posix_PollEvents_POLLOUT) == Mono_Posix_PollEvents_POLLOUT)
3419 #else /* def POLLOUT */
3420 {errno = EINVAL; return -1;}
3421 #endif /* ndef POLLOUT */
3422 if ((x & Mono_Posix_PollEvents_POLLPRI) == Mono_Posix_PollEvents_POLLPRI)
3425 #else /* def POLLPRI */
3426 {errno = EINVAL; return -1;}
3427 #endif /* ndef POLLPRI */
3428 if ((x & Mono_Posix_PollEvents_POLLRDBAND) == Mono_Posix_PollEvents_POLLRDBAND)
3431 #else /* def POLLRDBAND */
3432 {errno = EINVAL; return -1;}
3433 #endif /* ndef POLLRDBAND */
3434 if ((x & Mono_Posix_PollEvents_POLLRDNORM) == Mono_Posix_PollEvents_POLLRDNORM)
3437 #else /* def POLLRDNORM */
3438 {errno = EINVAL; return -1;}
3439 #endif /* ndef POLLRDNORM */
3440 if ((x & Mono_Posix_PollEvents_POLLWRBAND) == Mono_Posix_PollEvents_POLLWRBAND)
3443 #else /* def POLLWRBAND */
3444 {errno = EINVAL; return -1;}
3445 #endif /* ndef POLLWRBAND */
3446 if ((x & Mono_Posix_PollEvents_POLLWRNORM) == Mono_Posix_PollEvents_POLLWRNORM)
3449 #else /* def POLLWRNORM */
3450 {errno = EINVAL; return -1;}
3451 #endif /* ndef POLLWRNORM */
3457 int Mono_Posix_ToPollEvents (short x, short *r)
3463 if ((x & POLLERR) == POLLERR)
3464 *r |= Mono_Posix_PollEvents_POLLERR;
3465 #endif /* ndef POLLERR */
3467 if ((x & POLLHUP) == POLLHUP)
3468 *r |= Mono_Posix_PollEvents_POLLHUP;
3469 #endif /* ndef POLLHUP */
3471 if ((x & POLLIN) == POLLIN)
3472 *r |= Mono_Posix_PollEvents_POLLIN;
3473 #endif /* ndef POLLIN */
3475 if ((x & POLLNVAL) == POLLNVAL)
3476 *r |= Mono_Posix_PollEvents_POLLNVAL;
3477 #endif /* ndef POLLNVAL */
3479 if ((x & POLLOUT) == POLLOUT)
3480 *r |= Mono_Posix_PollEvents_POLLOUT;
3481 #endif /* ndef POLLOUT */
3483 if ((x & POLLPRI) == POLLPRI)
3484 *r |= Mono_Posix_PollEvents_POLLPRI;
3485 #endif /* ndef POLLPRI */
3487 if ((x & POLLRDBAND) == POLLRDBAND)
3488 *r |= Mono_Posix_PollEvents_POLLRDBAND;
3489 #endif /* ndef POLLRDBAND */
3491 if ((x & POLLRDNORM) == POLLRDNORM)
3492 *r |= Mono_Posix_PollEvents_POLLRDNORM;
3493 #endif /* ndef POLLRDNORM */
3495 if ((x & POLLWRBAND) == POLLWRBAND)
3496 *r |= Mono_Posix_PollEvents_POLLWRBAND;
3497 #endif /* ndef POLLWRBAND */
3499 if ((x & POLLWRNORM) == POLLWRNORM)
3500 *r |= Mono_Posix_PollEvents_POLLWRNORM;
3501 #endif /* ndef POLLWRNORM */
3506 Mono_Posix_FromPollfd (struct Mono_Posix_Pollfd *from, struct pollfd *to)
3508 _cnm_return_val_if_overflow (int, from->fd, -1);
3510 memset (to, 0, sizeof(*to));
3513 if (Mono_Posix_FromPollEvents (from->events, &to->events) != 0) {
3516 if (Mono_Posix_FromPollEvents (from->revents, &to->revents) != 0) {
3525 Mono_Posix_ToPollfd (struct pollfd *from, struct Mono_Posix_Pollfd *to)
3527 _cnm_return_val_if_overflow (int, from->fd, -1);
3529 memset (to, 0, sizeof(*to));
3532 if (Mono_Posix_ToPollEvents (from->events, &to->events) != 0) {
3535 if (Mono_Posix_ToPollEvents (from->revents, &to->revents) != 0) {
3543 int Mono_Posix_FromPosixFadviseAdvice (int x, int *r)
3546 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED)
3547 #ifdef POSIX_FADV_DONTNEED
3548 {*r = POSIX_FADV_DONTNEED; return 0;}
3549 #else /* def POSIX_FADV_DONTNEED */
3550 {errno = EINVAL; return -1;}
3551 #endif /* ndef POSIX_FADV_DONTNEED */
3552 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE)
3553 #ifdef POSIX_FADV_NOREUSE
3554 {*r = POSIX_FADV_NOREUSE; return 0;}
3555 #else /* def POSIX_FADV_NOREUSE */
3556 {errno = EINVAL; return -1;}
3557 #endif /* ndef POSIX_FADV_NOREUSE */
3558 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL)
3559 #ifdef POSIX_FADV_NORMAL
3560 {*r = POSIX_FADV_NORMAL; return 0;}
3561 #else /* def POSIX_FADV_NORMAL */
3562 {errno = EINVAL; return -1;}
3563 #endif /* ndef POSIX_FADV_NORMAL */
3564 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM)
3565 #ifdef POSIX_FADV_RANDOM
3566 {*r = POSIX_FADV_RANDOM; return 0;}
3567 #else /* def POSIX_FADV_RANDOM */
3568 {errno = EINVAL; return -1;}
3569 #endif /* ndef POSIX_FADV_RANDOM */
3570 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL)
3571 #ifdef POSIX_FADV_SEQUENTIAL
3572 {*r = POSIX_FADV_SEQUENTIAL; return 0;}
3573 #else /* def POSIX_FADV_SEQUENTIAL */
3574 {errno = EINVAL; return -1;}
3575 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3576 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED)
3577 #ifdef POSIX_FADV_WILLNEED
3578 {*r = POSIX_FADV_WILLNEED; return 0;}
3579 #else /* def POSIX_FADV_WILLNEED */
3580 {errno = EINVAL; return -1;}
3581 #endif /* ndef POSIX_FADV_WILLNEED */
3584 errno = EINVAL; return -1;
3587 int Mono_Posix_ToPosixFadviseAdvice (int x, int *r)
3592 #ifdef POSIX_FADV_DONTNEED
3593 if (x == POSIX_FADV_DONTNEED)
3594 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED; return 0;}
3595 #endif /* ndef POSIX_FADV_DONTNEED */
3596 #ifdef POSIX_FADV_NOREUSE
3597 if (x == POSIX_FADV_NOREUSE)
3598 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE; return 0;}
3599 #endif /* ndef POSIX_FADV_NOREUSE */
3600 #ifdef POSIX_FADV_NORMAL
3601 if (x == POSIX_FADV_NORMAL)
3602 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL; return 0;}
3603 #endif /* ndef POSIX_FADV_NORMAL */
3604 #ifdef POSIX_FADV_RANDOM
3605 if (x == POSIX_FADV_RANDOM)
3606 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM; return 0;}
3607 #endif /* ndef POSIX_FADV_RANDOM */
3608 #ifdef POSIX_FADV_SEQUENTIAL
3609 if (x == POSIX_FADV_SEQUENTIAL)
3610 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL; return 0;}
3611 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3612 #ifdef POSIX_FADV_WILLNEED
3613 if (x == POSIX_FADV_WILLNEED)
3614 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED; return 0;}
3615 #endif /* ndef POSIX_FADV_WILLNEED */
3616 errno = EINVAL; return -1;
3619 int Mono_Posix_FromPosixMadviseAdvice (int x, int *r)
3622 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED)
3623 #ifdef POSIX_MADV_DONTNEED
3624 {*r = POSIX_MADV_DONTNEED; return 0;}
3625 #else /* def POSIX_MADV_DONTNEED */
3626 {errno = EINVAL; return -1;}
3627 #endif /* ndef POSIX_MADV_DONTNEED */
3628 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL)
3629 #ifdef POSIX_MADV_NORMAL
3630 {*r = POSIX_MADV_NORMAL; return 0;}
3631 #else /* def POSIX_MADV_NORMAL */
3632 {errno = EINVAL; return -1;}
3633 #endif /* ndef POSIX_MADV_NORMAL */
3634 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM)
3635 #ifdef POSIX_MADV_RANDOM
3636 {*r = POSIX_MADV_RANDOM; return 0;}
3637 #else /* def POSIX_MADV_RANDOM */
3638 {errno = EINVAL; return -1;}
3639 #endif /* ndef POSIX_MADV_RANDOM */
3640 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL)
3641 #ifdef POSIX_MADV_SEQUENTIAL
3642 {*r = POSIX_MADV_SEQUENTIAL; return 0;}
3643 #else /* def POSIX_MADV_SEQUENTIAL */
3644 {errno = EINVAL; return -1;}
3645 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3646 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED)
3647 #ifdef POSIX_MADV_WILLNEED
3648 {*r = POSIX_MADV_WILLNEED; return 0;}
3649 #else /* def POSIX_MADV_WILLNEED */
3650 {errno = EINVAL; return -1;}
3651 #endif /* ndef POSIX_MADV_WILLNEED */
3654 errno = EINVAL; return -1;
3657 int Mono_Posix_ToPosixMadviseAdvice (int x, int *r)
3662 #ifdef POSIX_MADV_DONTNEED
3663 if (x == POSIX_MADV_DONTNEED)
3664 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED; return 0;}
3665 #endif /* ndef POSIX_MADV_DONTNEED */
3666 #ifdef POSIX_MADV_NORMAL
3667 if (x == POSIX_MADV_NORMAL)
3668 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL; return 0;}
3669 #endif /* ndef POSIX_MADV_NORMAL */
3670 #ifdef POSIX_MADV_RANDOM
3671 if (x == POSIX_MADV_RANDOM)
3672 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM; return 0;}
3673 #endif /* ndef POSIX_MADV_RANDOM */
3674 #ifdef POSIX_MADV_SEQUENTIAL
3675 if (x == POSIX_MADV_SEQUENTIAL)
3676 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL; return 0;}
3677 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3678 #ifdef POSIX_MADV_WILLNEED
3679 if (x == POSIX_MADV_WILLNEED)
3680 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED; return 0;}
3681 #endif /* ndef POSIX_MADV_WILLNEED */
3682 errno = EINVAL; return -1;
3685 int Mono_Posix_FromSeekFlags (short x, short *r)
3688 if (x == Mono_Posix_SeekFlags_L_INCR)
3690 {*r = L_INCR; return 0;}
3691 #else /* def L_INCR */
3692 {errno = EINVAL; return -1;}
3693 #endif /* ndef L_INCR */
3694 if (x == Mono_Posix_SeekFlags_L_SET)
3696 {*r = L_SET; return 0;}
3697 #else /* def L_SET */
3698 {errno = EINVAL; return -1;}
3699 #endif /* ndef L_SET */
3700 if (x == Mono_Posix_SeekFlags_L_XTND)
3702 {*r = L_XTND; return 0;}
3703 #else /* def L_XTND */
3704 {errno = EINVAL; return -1;}
3705 #endif /* ndef L_XTND */
3706 if (x == Mono_Posix_SeekFlags_SEEK_CUR)
3708 {*r = SEEK_CUR; return 0;}
3709 #else /* def SEEK_CUR */
3710 {errno = EINVAL; return -1;}
3711 #endif /* ndef SEEK_CUR */
3712 if (x == Mono_Posix_SeekFlags_SEEK_END)
3714 {*r = SEEK_END; return 0;}
3715 #else /* def SEEK_END */
3716 {errno = EINVAL; return -1;}
3717 #endif /* ndef SEEK_END */
3718 if (x == Mono_Posix_SeekFlags_SEEK_SET)
3720 {*r = SEEK_SET; return 0;}
3721 #else /* def SEEK_SET */
3722 {errno = EINVAL; return -1;}
3723 #endif /* ndef SEEK_SET */
3726 errno = EINVAL; return -1;
3729 int Mono_Posix_ToSeekFlags (short x, short *r)
3736 {*r = Mono_Posix_SeekFlags_L_INCR; return 0;}
3737 #endif /* ndef L_INCR */
3740 {*r = Mono_Posix_SeekFlags_L_SET; return 0;}
3741 #endif /* ndef L_SET */
3744 {*r = Mono_Posix_SeekFlags_L_XTND; return 0;}
3745 #endif /* ndef L_XTND */
3748 {*r = Mono_Posix_SeekFlags_SEEK_CUR; return 0;}
3749 #endif /* ndef SEEK_CUR */
3752 {*r = Mono_Posix_SeekFlags_SEEK_END; return 0;}
3753 #endif /* ndef SEEK_END */
3756 {*r = Mono_Posix_SeekFlags_SEEK_SET; return 0;}
3757 #endif /* ndef SEEK_SET */
3758 errno = EINVAL; return -1;
3761 int Mono_Posix_FromSignum (int x, int *r)
3764 if (x == Mono_Posix_Signum_SIGABRT)
3766 {*r = SIGABRT; return 0;}
3767 #else /* def SIGABRT */
3768 {errno = EINVAL; return -1;}
3769 #endif /* ndef SIGABRT */
3770 if (x == Mono_Posix_Signum_SIGALRM)
3772 {*r = SIGALRM; return 0;}
3773 #else /* def SIGALRM */
3774 {errno = EINVAL; return -1;}
3775 #endif /* ndef SIGALRM */
3776 if (x == Mono_Posix_Signum_SIGBUS)
3778 {*r = SIGBUS; return 0;}
3779 #else /* def SIGBUS */
3780 {errno = EINVAL; return -1;}
3781 #endif /* ndef SIGBUS */
3782 if (x == Mono_Posix_Signum_SIGCHLD)
3784 {*r = SIGCHLD; return 0;}
3785 #else /* def SIGCHLD */
3786 {errno = EINVAL; return -1;}
3787 #endif /* ndef SIGCHLD */
3788 if (x == Mono_Posix_Signum_SIGCLD)
3790 {*r = SIGCLD; return 0;}
3791 #else /* def SIGCLD */
3792 {errno = EINVAL; return -1;}
3793 #endif /* ndef SIGCLD */
3794 if (x == Mono_Posix_Signum_SIGCONT)
3796 {*r = SIGCONT; return 0;}
3797 #else /* def SIGCONT */
3798 {errno = EINVAL; return -1;}
3799 #endif /* ndef SIGCONT */
3800 if (x == Mono_Posix_Signum_SIGFPE)
3802 {*r = SIGFPE; return 0;}
3803 #else /* def SIGFPE */
3804 {errno = EINVAL; return -1;}
3805 #endif /* ndef SIGFPE */
3806 if (x == Mono_Posix_Signum_SIGHUP)
3808 {*r = SIGHUP; return 0;}
3809 #else /* def SIGHUP */
3810 {errno = EINVAL; return -1;}
3811 #endif /* ndef SIGHUP */
3812 if (x == Mono_Posix_Signum_SIGILL)
3814 {*r = SIGILL; return 0;}
3815 #else /* def SIGILL */
3816 {errno = EINVAL; return -1;}
3817 #endif /* ndef SIGILL */
3818 if (x == Mono_Posix_Signum_SIGINT)
3820 {*r = SIGINT; return 0;}
3821 #else /* def SIGINT */
3822 {errno = EINVAL; return -1;}
3823 #endif /* ndef SIGINT */
3824 if (x == Mono_Posix_Signum_SIGIO)
3826 {*r = SIGIO; return 0;}
3827 #else /* def SIGIO */
3828 {errno = EINVAL; return -1;}
3829 #endif /* ndef SIGIO */
3830 if (x == Mono_Posix_Signum_SIGIOT)
3832 {*r = SIGIOT; return 0;}
3833 #else /* def SIGIOT */
3834 {errno = EINVAL; return -1;}
3835 #endif /* ndef SIGIOT */
3836 if (x == Mono_Posix_Signum_SIGKILL)
3838 {*r = SIGKILL; return 0;}
3839 #else /* def SIGKILL */
3840 {errno = EINVAL; return -1;}
3841 #endif /* ndef SIGKILL */
3842 if (x == Mono_Posix_Signum_SIGPIPE)
3844 {*r = SIGPIPE; return 0;}
3845 #else /* def SIGPIPE */
3846 {errno = EINVAL; return -1;}
3847 #endif /* ndef SIGPIPE */
3848 if (x == Mono_Posix_Signum_SIGPOLL)
3850 {*r = SIGPOLL; return 0;}
3851 #else /* def SIGPOLL */
3852 {errno = EINVAL; return -1;}
3853 #endif /* ndef SIGPOLL */
3854 if (x == Mono_Posix_Signum_SIGPROF)
3856 {*r = SIGPROF; return 0;}
3857 #else /* def SIGPROF */
3858 {errno = EINVAL; return -1;}
3859 #endif /* ndef SIGPROF */
3860 if (x == Mono_Posix_Signum_SIGPWR)
3862 {*r = SIGPWR; return 0;}
3863 #else /* def SIGPWR */
3864 {errno = EINVAL; return -1;}
3865 #endif /* ndef SIGPWR */
3866 if (x == Mono_Posix_Signum_SIGQUIT)
3868 {*r = SIGQUIT; return 0;}
3869 #else /* def SIGQUIT */
3870 {errno = EINVAL; return -1;}
3871 #endif /* ndef SIGQUIT */
3872 if (x == Mono_Posix_Signum_SIGSEGV)
3874 {*r = SIGSEGV; return 0;}
3875 #else /* def SIGSEGV */
3876 {errno = EINVAL; return -1;}
3877 #endif /* ndef SIGSEGV */
3878 if (x == Mono_Posix_Signum_SIGSTKFLT)
3880 {*r = SIGSTKFLT; return 0;}
3881 #else /* def SIGSTKFLT */
3882 {errno = EINVAL; return -1;}
3883 #endif /* ndef SIGSTKFLT */
3884 if (x == Mono_Posix_Signum_SIGSTOP)
3886 {*r = SIGSTOP; return 0;}
3887 #else /* def SIGSTOP */
3888 {errno = EINVAL; return -1;}
3889 #endif /* ndef SIGSTOP */
3890 if (x == Mono_Posix_Signum_SIGSYS)
3892 {*r = SIGSYS; return 0;}
3893 #else /* def SIGSYS */
3894 {errno = EINVAL; return -1;}
3895 #endif /* ndef SIGSYS */
3896 if (x == Mono_Posix_Signum_SIGTERM)
3898 {*r = SIGTERM; return 0;}
3899 #else /* def SIGTERM */
3900 {errno = EINVAL; return -1;}
3901 #endif /* ndef SIGTERM */
3902 if (x == Mono_Posix_Signum_SIGTRAP)
3904 {*r = SIGTRAP; return 0;}
3905 #else /* def SIGTRAP */
3906 {errno = EINVAL; return -1;}
3907 #endif /* ndef SIGTRAP */
3908 if (x == Mono_Posix_Signum_SIGTSTP)
3910 {*r = SIGTSTP; return 0;}
3911 #else /* def SIGTSTP */
3912 {errno = EINVAL; return -1;}
3913 #endif /* ndef SIGTSTP */
3914 if (x == Mono_Posix_Signum_SIGTTIN)
3916 {*r = SIGTTIN; return 0;}
3917 #else /* def SIGTTIN */
3918 {errno = EINVAL; return -1;}
3919 #endif /* ndef SIGTTIN */
3920 if (x == Mono_Posix_Signum_SIGTTOU)
3922 {*r = SIGTTOU; return 0;}
3923 #else /* def SIGTTOU */
3924 {errno = EINVAL; return -1;}
3925 #endif /* ndef SIGTTOU */
3926 if (x == Mono_Posix_Signum_SIGUNUSED)
3928 {*r = SIGUNUSED; return 0;}
3929 #else /* def SIGUNUSED */
3930 {errno = EINVAL; return -1;}
3931 #endif /* ndef SIGUNUSED */
3932 if (x == Mono_Posix_Signum_SIGURG)
3934 {*r = SIGURG; return 0;}
3935 #else /* def SIGURG */
3936 {errno = EINVAL; return -1;}
3937 #endif /* ndef SIGURG */
3938 if (x == Mono_Posix_Signum_SIGUSR1)
3940 {*r = SIGUSR1; return 0;}
3941 #else /* def SIGUSR1 */
3942 {errno = EINVAL; return -1;}
3943 #endif /* ndef SIGUSR1 */
3944 if (x == Mono_Posix_Signum_SIGUSR2)
3946 {*r = SIGUSR2; return 0;}
3947 #else /* def SIGUSR2 */
3948 {errno = EINVAL; return -1;}
3949 #endif /* ndef SIGUSR2 */
3950 if (x == Mono_Posix_Signum_SIGVTALRM)
3952 {*r = SIGVTALRM; return 0;}
3953 #else /* def SIGVTALRM */
3954 {errno = EINVAL; return -1;}
3955 #endif /* ndef SIGVTALRM */
3956 if (x == Mono_Posix_Signum_SIGWINCH)
3958 {*r = SIGWINCH; return 0;}
3959 #else /* def SIGWINCH */
3960 {errno = EINVAL; return -1;}
3961 #endif /* ndef SIGWINCH */
3962 if (x == Mono_Posix_Signum_SIGXCPU)
3964 {*r = SIGXCPU; return 0;}
3965 #else /* def SIGXCPU */
3966 {errno = EINVAL; return -1;}
3967 #endif /* ndef SIGXCPU */
3968 if (x == Mono_Posix_Signum_SIGXFSZ)
3970 {*r = SIGXFSZ; return 0;}
3971 #else /* def SIGXFSZ */
3972 {errno = EINVAL; return -1;}
3973 #endif /* ndef SIGXFSZ */
3976 errno = EINVAL; return -1;
3979 int Mono_Posix_ToSignum (int x, int *r)
3986 {*r = Mono_Posix_Signum_SIGABRT; return 0;}
3987 #endif /* ndef SIGABRT */
3990 {*r = Mono_Posix_Signum_SIGALRM; return 0;}
3991 #endif /* ndef SIGALRM */
3994 {*r = Mono_Posix_Signum_SIGBUS; return 0;}
3995 #endif /* ndef SIGBUS */
3998 {*r = Mono_Posix_Signum_SIGCHLD; return 0;}
3999 #endif /* ndef SIGCHLD */
4002 {*r = Mono_Posix_Signum_SIGCLD; return 0;}
4003 #endif /* ndef SIGCLD */
4006 {*r = Mono_Posix_Signum_SIGCONT; return 0;}
4007 #endif /* ndef SIGCONT */
4010 {*r = Mono_Posix_Signum_SIGFPE; return 0;}
4011 #endif /* ndef SIGFPE */
4014 {*r = Mono_Posix_Signum_SIGHUP; return 0;}
4015 #endif /* ndef SIGHUP */
4018 {*r = Mono_Posix_Signum_SIGILL; return 0;}
4019 #endif /* ndef SIGILL */
4022 {*r = Mono_Posix_Signum_SIGINT; return 0;}
4023 #endif /* ndef SIGINT */
4026 {*r = Mono_Posix_Signum_SIGIO; return 0;}
4027 #endif /* ndef SIGIO */
4030 {*r = Mono_Posix_Signum_SIGIOT; return 0;}
4031 #endif /* ndef SIGIOT */
4034 {*r = Mono_Posix_Signum_SIGKILL; return 0;}
4035 #endif /* ndef SIGKILL */
4038 {*r = Mono_Posix_Signum_SIGPIPE; return 0;}
4039 #endif /* ndef SIGPIPE */
4042 {*r = Mono_Posix_Signum_SIGPOLL; return 0;}
4043 #endif /* ndef SIGPOLL */
4046 {*r = Mono_Posix_Signum_SIGPROF; return 0;}
4047 #endif /* ndef SIGPROF */
4050 {*r = Mono_Posix_Signum_SIGPWR; return 0;}
4051 #endif /* ndef SIGPWR */
4054 {*r = Mono_Posix_Signum_SIGQUIT; return 0;}
4055 #endif /* ndef SIGQUIT */
4058 {*r = Mono_Posix_Signum_SIGSEGV; return 0;}
4059 #endif /* ndef SIGSEGV */
4062 {*r = Mono_Posix_Signum_SIGSTKFLT; return 0;}
4063 #endif /* ndef SIGSTKFLT */
4066 {*r = Mono_Posix_Signum_SIGSTOP; return 0;}
4067 #endif /* ndef SIGSTOP */
4070 {*r = Mono_Posix_Signum_SIGSYS; return 0;}
4071 #endif /* ndef SIGSYS */
4074 {*r = Mono_Posix_Signum_SIGTERM; return 0;}
4075 #endif /* ndef SIGTERM */
4078 {*r = Mono_Posix_Signum_SIGTRAP; return 0;}
4079 #endif /* ndef SIGTRAP */
4082 {*r = Mono_Posix_Signum_SIGTSTP; return 0;}
4083 #endif /* ndef SIGTSTP */
4086 {*r = Mono_Posix_Signum_SIGTTIN; return 0;}
4087 #endif /* ndef SIGTTIN */
4090 {*r = Mono_Posix_Signum_SIGTTOU; return 0;}
4091 #endif /* ndef SIGTTOU */
4094 {*r = Mono_Posix_Signum_SIGUNUSED; return 0;}
4095 #endif /* ndef SIGUNUSED */
4098 {*r = Mono_Posix_Signum_SIGURG; return 0;}
4099 #endif /* ndef SIGURG */
4102 {*r = Mono_Posix_Signum_SIGUSR1; return 0;}
4103 #endif /* ndef SIGUSR1 */
4106 {*r = Mono_Posix_Signum_SIGUSR2; return 0;}
4107 #endif /* ndef SIGUSR2 */
4110 {*r = Mono_Posix_Signum_SIGVTALRM; return 0;}
4111 #endif /* ndef SIGVTALRM */
4114 {*r = Mono_Posix_Signum_SIGWINCH; return 0;}
4115 #endif /* ndef SIGWINCH */
4118 {*r = Mono_Posix_Signum_SIGXCPU; return 0;}
4119 #endif /* ndef SIGXCPU */
4122 {*r = Mono_Posix_Signum_SIGXFSZ; return 0;}
4123 #endif /* ndef SIGXFSZ */
4124 errno = EINVAL; return -1;
4128 Mono_Posix_FromStat (struct Mono_Posix_Stat *from, struct stat *to)
4130 _cnm_return_val_if_overflow (dev_t, from->st_dev, -1);
4131 _cnm_return_val_if_overflow (ino_t, from->st_ino, -1);
4132 _cnm_return_val_if_overflow (nlink_t, from->st_nlink, -1);
4133 _cnm_return_val_if_overflow (uid_t, from->st_uid, -1);
4134 _cnm_return_val_if_overflow (gid_t, from->st_gid, -1);
4135 _cnm_return_val_if_overflow (dev_t, from->st_rdev, -1);
4136 _cnm_return_val_if_overflow (off_t, from->st_size, -1);
4137 _cnm_return_val_if_overflow (blksize_t, from->st_blksize, -1);
4138 _cnm_return_val_if_overflow (blkcnt_t, from->st_blocks, -1);
4139 _cnm_return_val_if_overflow (time_t, from->st_atime_, -1);
4140 _cnm_return_val_if_overflow (time_t, from->st_mtime_, -1);
4141 _cnm_return_val_if_overflow (time_t, from->st_ctime_, -1);
4143 memset (to, 0, sizeof(*to));
4145 to->st_dev = from->st_dev;
4146 to->st_ino = from->st_ino;
4147 if (Mono_Posix_FromFilePermissions (from->st_mode, &to->st_mode) != 0) {
4150 to->st_nlink = from->st_nlink;
4151 to->st_uid = from->st_uid;
4152 to->st_gid = from->st_gid;
4153 to->st_rdev = from->st_rdev;
4154 to->st_size = from->st_size;
4155 to->st_blksize = from->st_blksize;
4156 to->st_blocks = from->st_blocks;
4157 to->st_atime = from->st_atime_;
4158 to->st_mtime = from->st_mtime_;
4159 to->st_ctime = from->st_ctime_;
4166 Mono_Posix_ToStat (struct stat *from, struct Mono_Posix_Stat *to)
4168 _cnm_return_val_if_overflow (guint64, from->st_dev, -1);
4169 _cnm_return_val_if_overflow (guint64, from->st_ino, -1);
4170 _cnm_return_val_if_overflow (guint64, from->st_nlink, -1);
4171 _cnm_return_val_if_overflow (unsigned int, from->st_uid, -1);
4172 _cnm_return_val_if_overflow (unsigned int, from->st_gid, -1);
4173 _cnm_return_val_if_overflow (guint64, from->st_rdev, -1);
4174 _cnm_return_val_if_overflow (gint64, from->st_size, -1);
4175 _cnm_return_val_if_overflow (gint64, from->st_blksize, -1);
4176 _cnm_return_val_if_overflow (gint64, from->st_blocks, -1);
4177 _cnm_return_val_if_overflow (gint64, from->st_atime, -1);
4178 _cnm_return_val_if_overflow (gint64, from->st_mtime, -1);
4179 _cnm_return_val_if_overflow (gint64, from->st_ctime, -1);
4181 memset (to, 0, sizeof(*to));
4183 to->st_dev = from->st_dev;
4184 to->st_ino = from->st_ino;
4185 if (Mono_Posix_ToFilePermissions (from->st_mode, &to->st_mode) != 0) {
4188 to->st_nlink = from->st_nlink;
4189 to->st_uid = from->st_uid;
4190 to->st_gid = from->st_gid;
4191 to->st_rdev = from->st_rdev;
4192 to->st_size = from->st_size;
4193 to->st_blksize = from->st_blksize;
4194 to->st_blocks = from->st_blocks;
4195 to->st_atime_ = from->st_atime;
4196 to->st_mtime_ = from->st_mtime;
4197 to->st_ctime_ = from->st_ctime;
4203 int Mono_Posix_FromSysconfName (int x, int *r)
4206 if (x == Mono_Posix_SysconfName__SC_2_CHAR_TERM)
4207 #ifdef _SC_2_CHAR_TERM
4208 {*r = _SC_2_CHAR_TERM; return 0;}
4209 #else /* def _SC_2_CHAR_TERM */
4210 {errno = EINVAL; return -1;}
4211 #endif /* ndef _SC_2_CHAR_TERM */
4212 if (x == Mono_Posix_SysconfName__SC_2_C_BIND)
4214 {*r = _SC_2_C_BIND; return 0;}
4215 #else /* def _SC_2_C_BIND */
4216 {errno = EINVAL; return -1;}
4217 #endif /* ndef _SC_2_C_BIND */
4218 if (x == Mono_Posix_SysconfName__SC_2_C_DEV)
4220 {*r = _SC_2_C_DEV; return 0;}
4221 #else /* def _SC_2_C_DEV */
4222 {errno = EINVAL; return -1;}
4223 #endif /* ndef _SC_2_C_DEV */
4224 if (x == Mono_Posix_SysconfName__SC_2_C_VERSION)
4225 #ifdef _SC_2_C_VERSION
4226 {*r = _SC_2_C_VERSION; return 0;}
4227 #else /* def _SC_2_C_VERSION */
4228 {errno = EINVAL; return -1;}
4229 #endif /* ndef _SC_2_C_VERSION */
4230 if (x == Mono_Posix_SysconfName__SC_2_FORT_DEV)
4231 #ifdef _SC_2_FORT_DEV
4232 {*r = _SC_2_FORT_DEV; return 0;}
4233 #else /* def _SC_2_FORT_DEV */
4234 {errno = EINVAL; return -1;}
4235 #endif /* ndef _SC_2_FORT_DEV */
4236 if (x == Mono_Posix_SysconfName__SC_2_FORT_RUN)
4237 #ifdef _SC_2_FORT_RUN
4238 {*r = _SC_2_FORT_RUN; return 0;}
4239 #else /* def _SC_2_FORT_RUN */
4240 {errno = EINVAL; return -1;}
4241 #endif /* ndef _SC_2_FORT_RUN */
4242 if (x == Mono_Posix_SysconfName__SC_2_LOCALEDEF)
4243 #ifdef _SC_2_LOCALEDEF
4244 {*r = _SC_2_LOCALEDEF; return 0;}
4245 #else /* def _SC_2_LOCALEDEF */
4246 {errno = EINVAL; return -1;}
4247 #endif /* ndef _SC_2_LOCALEDEF */
4248 if (x == Mono_Posix_SysconfName__SC_2_PBS)
4250 {*r = _SC_2_PBS; return 0;}
4251 #else /* def _SC_2_PBS */
4252 {errno = EINVAL; return -1;}
4253 #endif /* ndef _SC_2_PBS */
4254 if (x == Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING)
4255 #ifdef _SC_2_PBS_ACCOUNTING
4256 {*r = _SC_2_PBS_ACCOUNTING; return 0;}
4257 #else /* def _SC_2_PBS_ACCOUNTING */
4258 {errno = EINVAL; return -1;}
4259 #endif /* ndef _SC_2_PBS_ACCOUNTING */
4260 if (x == Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT)
4261 #ifdef _SC_2_PBS_CHECKPOINT
4262 {*r = _SC_2_PBS_CHECKPOINT; return 0;}
4263 #else /* def _SC_2_PBS_CHECKPOINT */
4264 {errno = EINVAL; return -1;}
4265 #endif /* ndef _SC_2_PBS_CHECKPOINT */
4266 if (x == Mono_Posix_SysconfName__SC_2_PBS_LOCATE)
4267 #ifdef _SC_2_PBS_LOCATE
4268 {*r = _SC_2_PBS_LOCATE; return 0;}
4269 #else /* def _SC_2_PBS_LOCATE */
4270 {errno = EINVAL; return -1;}
4271 #endif /* ndef _SC_2_PBS_LOCATE */
4272 if (x == Mono_Posix_SysconfName__SC_2_PBS_MESSAGE)
4273 #ifdef _SC_2_PBS_MESSAGE
4274 {*r = _SC_2_PBS_MESSAGE; return 0;}
4275 #else /* def _SC_2_PBS_MESSAGE */
4276 {errno = EINVAL; return -1;}
4277 #endif /* ndef _SC_2_PBS_MESSAGE */
4278 if (x == Mono_Posix_SysconfName__SC_2_PBS_TRACK)
4279 #ifdef _SC_2_PBS_TRACK
4280 {*r = _SC_2_PBS_TRACK; return 0;}
4281 #else /* def _SC_2_PBS_TRACK */
4282 {errno = EINVAL; return -1;}
4283 #endif /* ndef _SC_2_PBS_TRACK */
4284 if (x == Mono_Posix_SysconfName__SC_2_SW_DEV)
4286 {*r = _SC_2_SW_DEV; return 0;}
4287 #else /* def _SC_2_SW_DEV */
4288 {errno = EINVAL; return -1;}
4289 #endif /* ndef _SC_2_SW_DEV */
4290 if (x == Mono_Posix_SysconfName__SC_2_UPE)
4292 {*r = _SC_2_UPE; return 0;}
4293 #else /* def _SC_2_UPE */
4294 {errno = EINVAL; return -1;}
4295 #endif /* ndef _SC_2_UPE */
4296 if (x == Mono_Posix_SysconfName__SC_2_VERSION)
4297 #ifdef _SC_2_VERSION
4298 {*r = _SC_2_VERSION; return 0;}
4299 #else /* def _SC_2_VERSION */
4300 {errno = EINVAL; return -1;}
4301 #endif /* ndef _SC_2_VERSION */
4302 if (x == Mono_Posix_SysconfName__SC_ADVISORY_INFO)
4303 #ifdef _SC_ADVISORY_INFO
4304 {*r = _SC_ADVISORY_INFO; return 0;}
4305 #else /* def _SC_ADVISORY_INFO */
4306 {errno = EINVAL; return -1;}
4307 #endif /* ndef _SC_ADVISORY_INFO */
4308 if (x == Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX)
4309 #ifdef _SC_AIO_LISTIO_MAX
4310 {*r = _SC_AIO_LISTIO_MAX; return 0;}
4311 #else /* def _SC_AIO_LISTIO_MAX */
4312 {errno = EINVAL; return -1;}
4313 #endif /* ndef _SC_AIO_LISTIO_MAX */
4314 if (x == Mono_Posix_SysconfName__SC_AIO_MAX)
4316 {*r = _SC_AIO_MAX; return 0;}
4317 #else /* def _SC_AIO_MAX */
4318 {errno = EINVAL; return -1;}
4319 #endif /* ndef _SC_AIO_MAX */
4320 if (x == Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX)
4321 #ifdef _SC_AIO_PRIO_DELTA_MAX
4322 {*r = _SC_AIO_PRIO_DELTA_MAX; return 0;}
4323 #else /* def _SC_AIO_PRIO_DELTA_MAX */
4324 {errno = EINVAL; return -1;}
4325 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
4326 if (x == Mono_Posix_SysconfName__SC_ARG_MAX)
4328 {*r = _SC_ARG_MAX; return 0;}
4329 #else /* def _SC_ARG_MAX */
4330 {errno = EINVAL; return -1;}
4331 #endif /* ndef _SC_ARG_MAX */
4332 if (x == Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO)
4333 #ifdef _SC_ASYNCHRONOUS_IO
4334 {*r = _SC_ASYNCHRONOUS_IO; return 0;}
4335 #else /* def _SC_ASYNCHRONOUS_IO */
4336 {errno = EINVAL; return -1;}
4337 #endif /* ndef _SC_ASYNCHRONOUS_IO */
4338 if (x == Mono_Posix_SysconfName__SC_ATEXIT_MAX)
4339 #ifdef _SC_ATEXIT_MAX
4340 {*r = _SC_ATEXIT_MAX; return 0;}
4341 #else /* def _SC_ATEXIT_MAX */
4342 {errno = EINVAL; return -1;}
4343 #endif /* ndef _SC_ATEXIT_MAX */
4344 if (x == Mono_Posix_SysconfName__SC_AVPHYS_PAGES)
4345 #ifdef _SC_AVPHYS_PAGES
4346 {*r = _SC_AVPHYS_PAGES; return 0;}
4347 #else /* def _SC_AVPHYS_PAGES */
4348 {errno = EINVAL; return -1;}
4349 #endif /* ndef _SC_AVPHYS_PAGES */
4350 if (x == Mono_Posix_SysconfName__SC_BARRIERS)
4352 {*r = _SC_BARRIERS; return 0;}
4353 #else /* def _SC_BARRIERS */
4354 {errno = EINVAL; return -1;}
4355 #endif /* ndef _SC_BARRIERS */
4356 if (x == Mono_Posix_SysconfName__SC_BASE)
4358 {*r = _SC_BASE; return 0;}
4359 #else /* def _SC_BASE */
4360 {errno = EINVAL; return -1;}
4361 #endif /* ndef _SC_BASE */
4362 if (x == Mono_Posix_SysconfName__SC_BC_BASE_MAX)
4363 #ifdef _SC_BC_BASE_MAX
4364 {*r = _SC_BC_BASE_MAX; return 0;}
4365 #else /* def _SC_BC_BASE_MAX */
4366 {errno = EINVAL; return -1;}
4367 #endif /* ndef _SC_BC_BASE_MAX */
4368 if (x == Mono_Posix_SysconfName__SC_BC_DIM_MAX)
4369 #ifdef _SC_BC_DIM_MAX
4370 {*r = _SC_BC_DIM_MAX; return 0;}
4371 #else /* def _SC_BC_DIM_MAX */
4372 {errno = EINVAL; return -1;}
4373 #endif /* ndef _SC_BC_DIM_MAX */
4374 if (x == Mono_Posix_SysconfName__SC_BC_SCALE_MAX)
4375 #ifdef _SC_BC_SCALE_MAX
4376 {*r = _SC_BC_SCALE_MAX; return 0;}
4377 #else /* def _SC_BC_SCALE_MAX */
4378 {errno = EINVAL; return -1;}
4379 #endif /* ndef _SC_BC_SCALE_MAX */
4380 if (x == Mono_Posix_SysconfName__SC_BC_STRING_MAX)
4381 #ifdef _SC_BC_STRING_MAX
4382 {*r = _SC_BC_STRING_MAX; return 0;}
4383 #else /* def _SC_BC_STRING_MAX */
4384 {errno = EINVAL; return -1;}
4385 #endif /* ndef _SC_BC_STRING_MAX */
4386 if (x == Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX)
4387 #ifdef _SC_CHARCLASS_NAME_MAX
4388 {*r = _SC_CHARCLASS_NAME_MAX; return 0;}
4389 #else /* def _SC_CHARCLASS_NAME_MAX */
4390 {errno = EINVAL; return -1;}
4391 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
4392 if (x == Mono_Posix_SysconfName__SC_CHAR_BIT)
4394 {*r = _SC_CHAR_BIT; return 0;}
4395 #else /* def _SC_CHAR_BIT */
4396 {errno = EINVAL; return -1;}
4397 #endif /* ndef _SC_CHAR_BIT */
4398 if (x == Mono_Posix_SysconfName__SC_CHAR_MAX)
4400 {*r = _SC_CHAR_MAX; return 0;}
4401 #else /* def _SC_CHAR_MAX */
4402 {errno = EINVAL; return -1;}
4403 #endif /* ndef _SC_CHAR_MAX */
4404 if (x == Mono_Posix_SysconfName__SC_CHAR_MIN)
4406 {*r = _SC_CHAR_MIN; return 0;}
4407 #else /* def _SC_CHAR_MIN */
4408 {errno = EINVAL; return -1;}
4409 #endif /* ndef _SC_CHAR_MIN */
4410 if (x == Mono_Posix_SysconfName__SC_CHILD_MAX)
4411 #ifdef _SC_CHILD_MAX
4412 {*r = _SC_CHILD_MAX; return 0;}
4413 #else /* def _SC_CHILD_MAX */
4414 {errno = EINVAL; return -1;}
4415 #endif /* ndef _SC_CHILD_MAX */
4416 if (x == Mono_Posix_SysconfName__SC_CLK_TCK)
4418 {*r = _SC_CLK_TCK; return 0;}
4419 #else /* def _SC_CLK_TCK */
4420 {errno = EINVAL; return -1;}
4421 #endif /* ndef _SC_CLK_TCK */
4422 if (x == Mono_Posix_SysconfName__SC_CLOCK_SELECTION)
4423 #ifdef _SC_CLOCK_SELECTION
4424 {*r = _SC_CLOCK_SELECTION; return 0;}
4425 #else /* def _SC_CLOCK_SELECTION */
4426 {errno = EINVAL; return -1;}
4427 #endif /* ndef _SC_CLOCK_SELECTION */
4428 if (x == Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX)
4429 #ifdef _SC_COLL_WEIGHTS_MAX
4430 {*r = _SC_COLL_WEIGHTS_MAX; return 0;}
4431 #else /* def _SC_COLL_WEIGHTS_MAX */
4432 {errno = EINVAL; return -1;}
4433 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
4434 if (x == Mono_Posix_SysconfName__SC_CPUTIME)
4436 {*r = _SC_CPUTIME; return 0;}
4437 #else /* def _SC_CPUTIME */
4438 {errno = EINVAL; return -1;}
4439 #endif /* ndef _SC_CPUTIME */
4440 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT)
4441 #ifdef _SC_C_LANG_SUPPORT
4442 {*r = _SC_C_LANG_SUPPORT; return 0;}
4443 #else /* def _SC_C_LANG_SUPPORT */
4444 {errno = EINVAL; return -1;}
4445 #endif /* ndef _SC_C_LANG_SUPPORT */
4446 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R)
4447 #ifdef _SC_C_LANG_SUPPORT_R
4448 {*r = _SC_C_LANG_SUPPORT_R; return 0;}
4449 #else /* def _SC_C_LANG_SUPPORT_R */
4450 {errno = EINVAL; return -1;}
4451 #endif /* ndef _SC_C_LANG_SUPPORT_R */
4452 if (x == Mono_Posix_SysconfName__SC_DELAYTIMER_MAX)
4453 #ifdef _SC_DELAYTIMER_MAX
4454 {*r = _SC_DELAYTIMER_MAX; return 0;}
4455 #else /* def _SC_DELAYTIMER_MAX */
4456 {errno = EINVAL; return -1;}
4457 #endif /* ndef _SC_DELAYTIMER_MAX */
4458 if (x == Mono_Posix_SysconfName__SC_DEVICE_IO)
4459 #ifdef _SC_DEVICE_IO
4460 {*r = _SC_DEVICE_IO; return 0;}
4461 #else /* def _SC_DEVICE_IO */
4462 {errno = EINVAL; return -1;}
4463 #endif /* ndef _SC_DEVICE_IO */
4464 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC)
4465 #ifdef _SC_DEVICE_SPECIFIC
4466 {*r = _SC_DEVICE_SPECIFIC; return 0;}
4467 #else /* def _SC_DEVICE_SPECIFIC */
4468 {errno = EINVAL; return -1;}
4469 #endif /* ndef _SC_DEVICE_SPECIFIC */
4470 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R)
4471 #ifdef _SC_DEVICE_SPECIFIC_R
4472 {*r = _SC_DEVICE_SPECIFIC_R; return 0;}
4473 #else /* def _SC_DEVICE_SPECIFIC_R */
4474 {errno = EINVAL; return -1;}
4475 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
4476 if (x == Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX)
4477 #ifdef _SC_EQUIV_CLASS_MAX
4478 {*r = _SC_EQUIV_CLASS_MAX; return 0;}
4479 #else /* def _SC_EQUIV_CLASS_MAX */
4480 {errno = EINVAL; return -1;}
4481 #endif /* ndef _SC_EQUIV_CLASS_MAX */
4482 if (x == Mono_Posix_SysconfName__SC_EXPR_NEST_MAX)
4483 #ifdef _SC_EXPR_NEST_MAX
4484 {*r = _SC_EXPR_NEST_MAX; return 0;}
4485 #else /* def _SC_EXPR_NEST_MAX */
4486 {errno = EINVAL; return -1;}
4487 #endif /* ndef _SC_EXPR_NEST_MAX */
4488 if (x == Mono_Posix_SysconfName__SC_FD_MGMT)
4490 {*r = _SC_FD_MGMT; return 0;}
4491 #else /* def _SC_FD_MGMT */
4492 {errno = EINVAL; return -1;}
4493 #endif /* ndef _SC_FD_MGMT */
4494 if (x == Mono_Posix_SysconfName__SC_FIFO)
4496 {*r = _SC_FIFO; return 0;}
4497 #else /* def _SC_FIFO */
4498 {errno = EINVAL; return -1;}
4499 #endif /* ndef _SC_FIFO */
4500 if (x == Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES)
4501 #ifdef _SC_FILE_ATTRIBUTES
4502 {*r = _SC_FILE_ATTRIBUTES; return 0;}
4503 #else /* def _SC_FILE_ATTRIBUTES */
4504 {errno = EINVAL; return -1;}
4505 #endif /* ndef _SC_FILE_ATTRIBUTES */
4506 if (x == Mono_Posix_SysconfName__SC_FILE_LOCKING)
4507 #ifdef _SC_FILE_LOCKING
4508 {*r = _SC_FILE_LOCKING; return 0;}
4509 #else /* def _SC_FILE_LOCKING */
4510 {errno = EINVAL; return -1;}
4511 #endif /* ndef _SC_FILE_LOCKING */
4512 if (x == Mono_Posix_SysconfName__SC_FILE_SYSTEM)
4513 #ifdef _SC_FILE_SYSTEM
4514 {*r = _SC_FILE_SYSTEM; return 0;}
4515 #else /* def _SC_FILE_SYSTEM */
4516 {errno = EINVAL; return -1;}
4517 #endif /* ndef _SC_FILE_SYSTEM */
4518 if (x == Mono_Posix_SysconfName__SC_FSYNC)
4520 {*r = _SC_FSYNC; return 0;}
4521 #else /* def _SC_FSYNC */
4522 {errno = EINVAL; return -1;}
4523 #endif /* ndef _SC_FSYNC */
4524 if (x == Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX)
4525 #ifdef _SC_GETGR_R_SIZE_MAX
4526 {*r = _SC_GETGR_R_SIZE_MAX; return 0;}
4527 #else /* def _SC_GETGR_R_SIZE_MAX */
4528 {errno = EINVAL; return -1;}
4529 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
4530 if (x == Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX)
4531 #ifdef _SC_GETPW_R_SIZE_MAX
4532 {*r = _SC_GETPW_R_SIZE_MAX; return 0;}
4533 #else /* def _SC_GETPW_R_SIZE_MAX */
4534 {errno = EINVAL; return -1;}
4535 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
4536 if (x == Mono_Posix_SysconfName__SC_HOST_NAME_MAX)
4537 #ifdef _SC_HOST_NAME_MAX
4538 {*r = _SC_HOST_NAME_MAX; return 0;}
4539 #else /* def _SC_HOST_NAME_MAX */
4540 {errno = EINVAL; return -1;}
4541 #endif /* ndef _SC_HOST_NAME_MAX */
4542 if (x == Mono_Posix_SysconfName__SC_INT_MAX)
4544 {*r = _SC_INT_MAX; return 0;}
4545 #else /* def _SC_INT_MAX */
4546 {errno = EINVAL; return -1;}
4547 #endif /* ndef _SC_INT_MAX */
4548 if (x == Mono_Posix_SysconfName__SC_INT_MIN)
4550 {*r = _SC_INT_MIN; return 0;}
4551 #else /* def _SC_INT_MIN */
4552 {errno = EINVAL; return -1;}
4553 #endif /* ndef _SC_INT_MIN */
4554 if (x == Mono_Posix_SysconfName__SC_IOV_MAX)
4556 {*r = _SC_IOV_MAX; return 0;}
4557 #else /* def _SC_IOV_MAX */
4558 {errno = EINVAL; return -1;}
4559 #endif /* ndef _SC_IOV_MAX */
4560 if (x == Mono_Posix_SysconfName__SC_JOB_CONTROL)
4561 #ifdef _SC_JOB_CONTROL
4562 {*r = _SC_JOB_CONTROL; return 0;}
4563 #else /* def _SC_JOB_CONTROL */
4564 {errno = EINVAL; return -1;}
4565 #endif /* ndef _SC_JOB_CONTROL */
4566 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC)
4567 #ifdef _SC_LEVEL1_DCACHE_ASSOC
4568 {*r = _SC_LEVEL1_DCACHE_ASSOC; return 0;}
4569 #else /* def _SC_LEVEL1_DCACHE_ASSOC */
4570 {errno = EINVAL; return -1;}
4571 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
4572 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE)
4573 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
4574 {*r = _SC_LEVEL1_DCACHE_LINESIZE; return 0;}
4575 #else /* def _SC_LEVEL1_DCACHE_LINESIZE */
4576 {errno = EINVAL; return -1;}
4577 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
4578 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE)
4579 #ifdef _SC_LEVEL1_DCACHE_SIZE
4580 {*r = _SC_LEVEL1_DCACHE_SIZE; return 0;}
4581 #else /* def _SC_LEVEL1_DCACHE_SIZE */
4582 {errno = EINVAL; return -1;}
4583 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
4584 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC)
4585 #ifdef _SC_LEVEL1_ICACHE_ASSOC
4586 {*r = _SC_LEVEL1_ICACHE_ASSOC; return 0;}
4587 #else /* def _SC_LEVEL1_ICACHE_ASSOC */
4588 {errno = EINVAL; return -1;}
4589 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
4590 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE)
4591 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
4592 {*r = _SC_LEVEL1_ICACHE_LINESIZE; return 0;}
4593 #else /* def _SC_LEVEL1_ICACHE_LINESIZE */
4594 {errno = EINVAL; return -1;}
4595 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
4596 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE)
4597 #ifdef _SC_LEVEL1_ICACHE_SIZE
4598 {*r = _SC_LEVEL1_ICACHE_SIZE; return 0;}
4599 #else /* def _SC_LEVEL1_ICACHE_SIZE */
4600 {errno = EINVAL; return -1;}
4601 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
4602 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC)
4603 #ifdef _SC_LEVEL2_CACHE_ASSOC
4604 {*r = _SC_LEVEL2_CACHE_ASSOC; return 0;}
4605 #else /* def _SC_LEVEL2_CACHE_ASSOC */
4606 {errno = EINVAL; return -1;}
4607 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
4608 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE)
4609 #ifdef _SC_LEVEL2_CACHE_LINESIZE
4610 {*r = _SC_LEVEL2_CACHE_LINESIZE; return 0;}
4611 #else /* def _SC_LEVEL2_CACHE_LINESIZE */
4612 {errno = EINVAL; return -1;}
4613 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
4614 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE)
4615 #ifdef _SC_LEVEL2_CACHE_SIZE
4616 {*r = _SC_LEVEL2_CACHE_SIZE; return 0;}
4617 #else /* def _SC_LEVEL2_CACHE_SIZE */
4618 {errno = EINVAL; return -1;}
4619 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
4620 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC)
4621 #ifdef _SC_LEVEL3_CACHE_ASSOC
4622 {*r = _SC_LEVEL3_CACHE_ASSOC; return 0;}
4623 #else /* def _SC_LEVEL3_CACHE_ASSOC */
4624 {errno = EINVAL; return -1;}
4625 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
4626 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE)
4627 #ifdef _SC_LEVEL3_CACHE_LINESIZE
4628 {*r = _SC_LEVEL3_CACHE_LINESIZE; return 0;}
4629 #else /* def _SC_LEVEL3_CACHE_LINESIZE */
4630 {errno = EINVAL; return -1;}
4631 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
4632 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE)
4633 #ifdef _SC_LEVEL3_CACHE_SIZE
4634 {*r = _SC_LEVEL3_CACHE_SIZE; return 0;}
4635 #else /* def _SC_LEVEL3_CACHE_SIZE */
4636 {errno = EINVAL; return -1;}
4637 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
4638 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC)
4639 #ifdef _SC_LEVEL4_CACHE_ASSOC
4640 {*r = _SC_LEVEL4_CACHE_ASSOC; return 0;}
4641 #else /* def _SC_LEVEL4_CACHE_ASSOC */
4642 {errno = EINVAL; return -1;}
4643 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
4644 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE)
4645 #ifdef _SC_LEVEL4_CACHE_LINESIZE
4646 {*r = _SC_LEVEL4_CACHE_LINESIZE; return 0;}
4647 #else /* def _SC_LEVEL4_CACHE_LINESIZE */
4648 {errno = EINVAL; return -1;}
4649 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
4650 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE)
4651 #ifdef _SC_LEVEL4_CACHE_SIZE
4652 {*r = _SC_LEVEL4_CACHE_SIZE; return 0;}
4653 #else /* def _SC_LEVEL4_CACHE_SIZE */
4654 {errno = EINVAL; return -1;}
4655 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
4656 if (x == Mono_Posix_SysconfName__SC_LINE_MAX)
4658 {*r = _SC_LINE_MAX; return 0;}
4659 #else /* def _SC_LINE_MAX */
4660 {errno = EINVAL; return -1;}
4661 #endif /* ndef _SC_LINE_MAX */
4662 if (x == Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX)
4663 #ifdef _SC_LOGIN_NAME_MAX
4664 {*r = _SC_LOGIN_NAME_MAX; return 0;}
4665 #else /* def _SC_LOGIN_NAME_MAX */
4666 {errno = EINVAL; return -1;}
4667 #endif /* ndef _SC_LOGIN_NAME_MAX */
4668 if (x == Mono_Posix_SysconfName__SC_LONG_BIT)
4670 {*r = _SC_LONG_BIT; return 0;}
4671 #else /* def _SC_LONG_BIT */
4672 {errno = EINVAL; return -1;}
4673 #endif /* ndef _SC_LONG_BIT */
4674 if (x == Mono_Posix_SysconfName__SC_MAPPED_FILES)
4675 #ifdef _SC_MAPPED_FILES
4676 {*r = _SC_MAPPED_FILES; return 0;}
4677 #else /* def _SC_MAPPED_FILES */
4678 {errno = EINVAL; return -1;}
4679 #endif /* ndef _SC_MAPPED_FILES */
4680 if (x == Mono_Posix_SysconfName__SC_MB_LEN_MAX)
4681 #ifdef _SC_MB_LEN_MAX
4682 {*r = _SC_MB_LEN_MAX; return 0;}
4683 #else /* def _SC_MB_LEN_MAX */
4684 {errno = EINVAL; return -1;}
4685 #endif /* ndef _SC_MB_LEN_MAX */
4686 if (x == Mono_Posix_SysconfName__SC_MEMLOCK)
4688 {*r = _SC_MEMLOCK; return 0;}
4689 #else /* def _SC_MEMLOCK */
4690 {errno = EINVAL; return -1;}
4691 #endif /* ndef _SC_MEMLOCK */
4692 if (x == Mono_Posix_SysconfName__SC_MEMLOCK_RANGE)
4693 #ifdef _SC_MEMLOCK_RANGE
4694 {*r = _SC_MEMLOCK_RANGE; return 0;}
4695 #else /* def _SC_MEMLOCK_RANGE */
4696 {errno = EINVAL; return -1;}
4697 #endif /* ndef _SC_MEMLOCK_RANGE */
4698 if (x == Mono_Posix_SysconfName__SC_MEMORY_PROTECTION)
4699 #ifdef _SC_MEMORY_PROTECTION
4700 {*r = _SC_MEMORY_PROTECTION; return 0;}
4701 #else /* def _SC_MEMORY_PROTECTION */
4702 {errno = EINVAL; return -1;}
4703 #endif /* ndef _SC_MEMORY_PROTECTION */
4704 if (x == Mono_Posix_SysconfName__SC_MESSAGE_PASSING)
4705 #ifdef _SC_MESSAGE_PASSING
4706 {*r = _SC_MESSAGE_PASSING; return 0;}
4707 #else /* def _SC_MESSAGE_PASSING */
4708 {errno = EINVAL; return -1;}
4709 #endif /* ndef _SC_MESSAGE_PASSING */
4710 if (x == Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK)
4711 #ifdef _SC_MONOTONIC_CLOCK
4712 {*r = _SC_MONOTONIC_CLOCK; return 0;}
4713 #else /* def _SC_MONOTONIC_CLOCK */
4714 {errno = EINVAL; return -1;}
4715 #endif /* ndef _SC_MONOTONIC_CLOCK */
4716 if (x == Mono_Posix_SysconfName__SC_MQ_OPEN_MAX)
4717 #ifdef _SC_MQ_OPEN_MAX
4718 {*r = _SC_MQ_OPEN_MAX; return 0;}
4719 #else /* def _SC_MQ_OPEN_MAX */
4720 {errno = EINVAL; return -1;}
4721 #endif /* ndef _SC_MQ_OPEN_MAX */
4722 if (x == Mono_Posix_SysconfName__SC_MQ_PRIO_MAX)
4723 #ifdef _SC_MQ_PRIO_MAX
4724 {*r = _SC_MQ_PRIO_MAX; return 0;}
4725 #else /* def _SC_MQ_PRIO_MAX */
4726 {errno = EINVAL; return -1;}
4727 #endif /* ndef _SC_MQ_PRIO_MAX */
4728 if (x == Mono_Posix_SysconfName__SC_MULTI_PROCESS)
4729 #ifdef _SC_MULTI_PROCESS
4730 {*r = _SC_MULTI_PROCESS; return 0;}
4731 #else /* def _SC_MULTI_PROCESS */
4732 {errno = EINVAL; return -1;}
4733 #endif /* ndef _SC_MULTI_PROCESS */
4734 if (x == Mono_Posix_SysconfName__SC_NETWORKING)
4735 #ifdef _SC_NETWORKING
4736 {*r = _SC_NETWORKING; return 0;}
4737 #else /* def _SC_NETWORKING */
4738 {errno = EINVAL; return -1;}
4739 #endif /* ndef _SC_NETWORKING */
4740 if (x == Mono_Posix_SysconfName__SC_NGROUPS_MAX)
4741 #ifdef _SC_NGROUPS_MAX
4742 {*r = _SC_NGROUPS_MAX; return 0;}
4743 #else /* def _SC_NGROUPS_MAX */
4744 {errno = EINVAL; return -1;}
4745 #endif /* ndef _SC_NGROUPS_MAX */
4746 if (x == Mono_Posix_SysconfName__SC_NL_ARGMAX)
4747 #ifdef _SC_NL_ARGMAX
4748 {*r = _SC_NL_ARGMAX; return 0;}
4749 #else /* def _SC_NL_ARGMAX */
4750 {errno = EINVAL; return -1;}
4751 #endif /* ndef _SC_NL_ARGMAX */
4752 if (x == Mono_Posix_SysconfName__SC_NL_LANGMAX)
4753 #ifdef _SC_NL_LANGMAX
4754 {*r = _SC_NL_LANGMAX; return 0;}
4755 #else /* def _SC_NL_LANGMAX */
4756 {errno = EINVAL; return -1;}
4757 #endif /* ndef _SC_NL_LANGMAX */
4758 if (x == Mono_Posix_SysconfName__SC_NL_MSGMAX)
4759 #ifdef _SC_NL_MSGMAX
4760 {*r = _SC_NL_MSGMAX; return 0;}
4761 #else /* def _SC_NL_MSGMAX */
4762 {errno = EINVAL; return -1;}
4763 #endif /* ndef _SC_NL_MSGMAX */
4764 if (x == Mono_Posix_SysconfName__SC_NL_NMAX)
4766 {*r = _SC_NL_NMAX; return 0;}
4767 #else /* def _SC_NL_NMAX */
4768 {errno = EINVAL; return -1;}
4769 #endif /* ndef _SC_NL_NMAX */
4770 if (x == Mono_Posix_SysconfName__SC_NL_SETMAX)
4771 #ifdef _SC_NL_SETMAX
4772 {*r = _SC_NL_SETMAX; return 0;}
4773 #else /* def _SC_NL_SETMAX */
4774 {errno = EINVAL; return -1;}
4775 #endif /* ndef _SC_NL_SETMAX */
4776 if (x == Mono_Posix_SysconfName__SC_NL_TEXTMAX)
4777 #ifdef _SC_NL_TEXTMAX
4778 {*r = _SC_NL_TEXTMAX; return 0;}
4779 #else /* def _SC_NL_TEXTMAX */
4780 {errno = EINVAL; return -1;}
4781 #endif /* ndef _SC_NL_TEXTMAX */
4782 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_CONF)
4783 #ifdef _SC_NPROCESSORS_CONF
4784 {*r = _SC_NPROCESSORS_CONF; return 0;}
4785 #else /* def _SC_NPROCESSORS_CONF */
4786 {errno = EINVAL; return -1;}
4787 #endif /* ndef _SC_NPROCESSORS_CONF */
4788 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN)
4789 #ifdef _SC_NPROCESSORS_ONLN
4790 {*r = _SC_NPROCESSORS_ONLN; return 0;}
4791 #else /* def _SC_NPROCESSORS_ONLN */
4792 {errno = EINVAL; return -1;}
4793 #endif /* ndef _SC_NPROCESSORS_ONLN */
4794 if (x == Mono_Posix_SysconfName__SC_NZERO)
4796 {*r = _SC_NZERO; return 0;}
4797 #else /* def _SC_NZERO */
4798 {errno = EINVAL; return -1;}
4799 #endif /* ndef _SC_NZERO */
4800 if (x == Mono_Posix_SysconfName__SC_OPEN_MAX)
4802 {*r = _SC_OPEN_MAX; return 0;}
4803 #else /* def _SC_OPEN_MAX */
4804 {errno = EINVAL; return -1;}
4805 #endif /* ndef _SC_OPEN_MAX */
4806 if (x == Mono_Posix_SysconfName__SC_PAGESIZE)
4808 {*r = _SC_PAGESIZE; return 0;}
4809 #else /* def _SC_PAGESIZE */
4810 {errno = EINVAL; return -1;}
4811 #endif /* ndef _SC_PAGESIZE */
4812 if (x == Mono_Posix_SysconfName__SC_PASS_MAX)
4814 {*r = _SC_PASS_MAX; return 0;}
4815 #else /* def _SC_PASS_MAX */
4816 {errno = EINVAL; return -1;}
4817 #endif /* ndef _SC_PASS_MAX */
4818 if (x == Mono_Posix_SysconfName__SC_PHYS_PAGES)
4819 #ifdef _SC_PHYS_PAGES
4820 {*r = _SC_PHYS_PAGES; return 0;}
4821 #else /* def _SC_PHYS_PAGES */
4822 {errno = EINVAL; return -1;}
4823 #endif /* ndef _SC_PHYS_PAGES */
4824 if (x == Mono_Posix_SysconfName__SC_PII)
4826 {*r = _SC_PII; return 0;}
4827 #else /* def _SC_PII */
4828 {errno = EINVAL; return -1;}
4829 #endif /* ndef _SC_PII */
4830 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET)
4831 #ifdef _SC_PII_INTERNET
4832 {*r = _SC_PII_INTERNET; return 0;}
4833 #else /* def _SC_PII_INTERNET */
4834 {errno = EINVAL; return -1;}
4835 #endif /* ndef _SC_PII_INTERNET */
4836 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM)
4837 #ifdef _SC_PII_INTERNET_DGRAM
4838 {*r = _SC_PII_INTERNET_DGRAM; return 0;}
4839 #else /* def _SC_PII_INTERNET_DGRAM */
4840 {errno = EINVAL; return -1;}
4841 #endif /* ndef _SC_PII_INTERNET_DGRAM */
4842 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM)
4843 #ifdef _SC_PII_INTERNET_STREAM
4844 {*r = _SC_PII_INTERNET_STREAM; return 0;}
4845 #else /* def _SC_PII_INTERNET_STREAM */
4846 {errno = EINVAL; return -1;}
4847 #endif /* ndef _SC_PII_INTERNET_STREAM */
4848 if (x == Mono_Posix_SysconfName__SC_PII_OSI)
4850 {*r = _SC_PII_OSI; return 0;}
4851 #else /* def _SC_PII_OSI */
4852 {errno = EINVAL; return -1;}
4853 #endif /* ndef _SC_PII_OSI */
4854 if (x == Mono_Posix_SysconfName__SC_PII_OSI_CLTS)
4855 #ifdef _SC_PII_OSI_CLTS
4856 {*r = _SC_PII_OSI_CLTS; return 0;}
4857 #else /* def _SC_PII_OSI_CLTS */
4858 {errno = EINVAL; return -1;}
4859 #endif /* ndef _SC_PII_OSI_CLTS */
4860 if (x == Mono_Posix_SysconfName__SC_PII_OSI_COTS)
4861 #ifdef _SC_PII_OSI_COTS
4862 {*r = _SC_PII_OSI_COTS; return 0;}
4863 #else /* def _SC_PII_OSI_COTS */
4864 {errno = EINVAL; return -1;}
4865 #endif /* ndef _SC_PII_OSI_COTS */
4866 if (x == Mono_Posix_SysconfName__SC_PII_OSI_M)
4867 #ifdef _SC_PII_OSI_M
4868 {*r = _SC_PII_OSI_M; return 0;}
4869 #else /* def _SC_PII_OSI_M */
4870 {errno = EINVAL; return -1;}
4871 #endif /* ndef _SC_PII_OSI_M */
4872 if (x == Mono_Posix_SysconfName__SC_PII_SOCKET)
4873 #ifdef _SC_PII_SOCKET
4874 {*r = _SC_PII_SOCKET; return 0;}
4875 #else /* def _SC_PII_SOCKET */
4876 {errno = EINVAL; return -1;}
4877 #endif /* ndef _SC_PII_SOCKET */
4878 if (x == Mono_Posix_SysconfName__SC_PII_XTI)
4880 {*r = _SC_PII_XTI; return 0;}
4881 #else /* def _SC_PII_XTI */
4882 {errno = EINVAL; return -1;}
4883 #endif /* ndef _SC_PII_XTI */
4884 if (x == Mono_Posix_SysconfName__SC_PIPE)
4886 {*r = _SC_PIPE; return 0;}
4887 #else /* def _SC_PIPE */
4888 {errno = EINVAL; return -1;}
4889 #endif /* ndef _SC_PIPE */
4890 if (x == Mono_Posix_SysconfName__SC_POLL)
4892 {*r = _SC_POLL; return 0;}
4893 #else /* def _SC_POLL */
4894 {errno = EINVAL; return -1;}
4895 #endif /* ndef _SC_POLL */
4896 if (x == Mono_Posix_SysconfName__SC_PRIORITIZED_IO)
4897 #ifdef _SC_PRIORITIZED_IO
4898 {*r = _SC_PRIORITIZED_IO; return 0;}
4899 #else /* def _SC_PRIORITIZED_IO */
4900 {errno = EINVAL; return -1;}
4901 #endif /* ndef _SC_PRIORITIZED_IO */
4902 if (x == Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING)
4903 #ifdef _SC_PRIORITY_SCHEDULING
4904 {*r = _SC_PRIORITY_SCHEDULING; return 0;}
4905 #else /* def _SC_PRIORITY_SCHEDULING */
4906 {errno = EINVAL; return -1;}
4907 #endif /* ndef _SC_PRIORITY_SCHEDULING */
4908 if (x == Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS)
4909 #ifdef _SC_READER_WRITER_LOCKS
4910 {*r = _SC_READER_WRITER_LOCKS; return 0;}
4911 #else /* def _SC_READER_WRITER_LOCKS */
4912 {errno = EINVAL; return -1;}
4913 #endif /* ndef _SC_READER_WRITER_LOCKS */
4914 if (x == Mono_Posix_SysconfName__SC_REALTIME_SIGNALS)
4915 #ifdef _SC_REALTIME_SIGNALS
4916 {*r = _SC_REALTIME_SIGNALS; return 0;}
4917 #else /* def _SC_REALTIME_SIGNALS */
4918 {errno = EINVAL; return -1;}
4919 #endif /* ndef _SC_REALTIME_SIGNALS */
4920 if (x == Mono_Posix_SysconfName__SC_REGEXP)
4922 {*r = _SC_REGEXP; return 0;}
4923 #else /* def _SC_REGEXP */
4924 {errno = EINVAL; return -1;}
4925 #endif /* ndef _SC_REGEXP */
4926 if (x == Mono_Posix_SysconfName__SC_REGEX_VERSION)
4927 #ifdef _SC_REGEX_VERSION
4928 {*r = _SC_REGEX_VERSION; return 0;}
4929 #else /* def _SC_REGEX_VERSION */
4930 {errno = EINVAL; return -1;}
4931 #endif /* ndef _SC_REGEX_VERSION */
4932 if (x == Mono_Posix_SysconfName__SC_RE_DUP_MAX)
4933 #ifdef _SC_RE_DUP_MAX
4934 {*r = _SC_RE_DUP_MAX; return 0;}
4935 #else /* def _SC_RE_DUP_MAX */
4936 {errno = EINVAL; return -1;}
4937 #endif /* ndef _SC_RE_DUP_MAX */
4938 if (x == Mono_Posix_SysconfName__SC_RTSIG_MAX)
4939 #ifdef _SC_RTSIG_MAX
4940 {*r = _SC_RTSIG_MAX; return 0;}
4941 #else /* def _SC_RTSIG_MAX */
4942 {errno = EINVAL; return -1;}
4943 #endif /* ndef _SC_RTSIG_MAX */
4944 if (x == Mono_Posix_SysconfName__SC_SAVED_IDS)
4945 #ifdef _SC_SAVED_IDS
4946 {*r = _SC_SAVED_IDS; return 0;}
4947 #else /* def _SC_SAVED_IDS */
4948 {errno = EINVAL; return -1;}
4949 #endif /* ndef _SC_SAVED_IDS */
4950 if (x == Mono_Posix_SysconfName__SC_SCHAR_MAX)
4951 #ifdef _SC_SCHAR_MAX
4952 {*r = _SC_SCHAR_MAX; return 0;}
4953 #else /* def _SC_SCHAR_MAX */
4954 {errno = EINVAL; return -1;}
4955 #endif /* ndef _SC_SCHAR_MAX */
4956 if (x == Mono_Posix_SysconfName__SC_SCHAR_MIN)
4957 #ifdef _SC_SCHAR_MIN
4958 {*r = _SC_SCHAR_MIN; return 0;}
4959 #else /* def _SC_SCHAR_MIN */
4960 {errno = EINVAL; return -1;}
4961 #endif /* ndef _SC_SCHAR_MIN */
4962 if (x == Mono_Posix_SysconfName__SC_SELECT)
4964 {*r = _SC_SELECT; return 0;}
4965 #else /* def _SC_SELECT */
4966 {errno = EINVAL; return -1;}
4967 #endif /* ndef _SC_SELECT */
4968 if (x == Mono_Posix_SysconfName__SC_SEMAPHORES)
4969 #ifdef _SC_SEMAPHORES
4970 {*r = _SC_SEMAPHORES; return 0;}
4971 #else /* def _SC_SEMAPHORES */
4972 {errno = EINVAL; return -1;}
4973 #endif /* ndef _SC_SEMAPHORES */
4974 if (x == Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX)
4975 #ifdef _SC_SEM_NSEMS_MAX
4976 {*r = _SC_SEM_NSEMS_MAX; return 0;}
4977 #else /* def _SC_SEM_NSEMS_MAX */
4978 {errno = EINVAL; return -1;}
4979 #endif /* ndef _SC_SEM_NSEMS_MAX */
4980 if (x == Mono_Posix_SysconfName__SC_SEM_VALUE_MAX)
4981 #ifdef _SC_SEM_VALUE_MAX
4982 {*r = _SC_SEM_VALUE_MAX; return 0;}
4983 #else /* def _SC_SEM_VALUE_MAX */
4984 {errno = EINVAL; return -1;}
4985 #endif /* ndef _SC_SEM_VALUE_MAX */
4986 if (x == Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS)
4987 #ifdef _SC_SHARED_MEMORY_OBJECTS
4988 {*r = _SC_SHARED_MEMORY_OBJECTS; return 0;}
4989 #else /* def _SC_SHARED_MEMORY_OBJECTS */
4990 {errno = EINVAL; return -1;}
4991 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
4992 if (x == Mono_Posix_SysconfName__SC_SHELL)
4994 {*r = _SC_SHELL; return 0;}
4995 #else /* def _SC_SHELL */
4996 {errno = EINVAL; return -1;}
4997 #endif /* ndef _SC_SHELL */
4998 if (x == Mono_Posix_SysconfName__SC_SHRT_MAX)
5000 {*r = _SC_SHRT_MAX; return 0;}
5001 #else /* def _SC_SHRT_MAX */
5002 {errno = EINVAL; return -1;}
5003 #endif /* ndef _SC_SHRT_MAX */
5004 if (x == Mono_Posix_SysconfName__SC_SHRT_MIN)
5006 {*r = _SC_SHRT_MIN; return 0;}
5007 #else /* def _SC_SHRT_MIN */
5008 {errno = EINVAL; return -1;}
5009 #endif /* ndef _SC_SHRT_MIN */
5010 if (x == Mono_Posix_SysconfName__SC_SIGNALS)
5012 {*r = _SC_SIGNALS; return 0;}
5013 #else /* def _SC_SIGNALS */
5014 {errno = EINVAL; return -1;}
5015 #endif /* ndef _SC_SIGNALS */
5016 if (x == Mono_Posix_SysconfName__SC_SIGQUEUE_MAX)
5017 #ifdef _SC_SIGQUEUE_MAX
5018 {*r = _SC_SIGQUEUE_MAX; return 0;}
5019 #else /* def _SC_SIGQUEUE_MAX */
5020 {errno = EINVAL; return -1;}
5021 #endif /* ndef _SC_SIGQUEUE_MAX */
5022 if (x == Mono_Posix_SysconfName__SC_SINGLE_PROCESS)
5023 #ifdef _SC_SINGLE_PROCESS
5024 {*r = _SC_SINGLE_PROCESS; return 0;}
5025 #else /* def _SC_SINGLE_PROCESS */
5026 {errno = EINVAL; return -1;}
5027 #endif /* ndef _SC_SINGLE_PROCESS */
5028 if (x == Mono_Posix_SysconfName__SC_SPAWN)
5030 {*r = _SC_SPAWN; return 0;}
5031 #else /* def _SC_SPAWN */
5032 {errno = EINVAL; return -1;}
5033 #endif /* ndef _SC_SPAWN */
5034 if (x == Mono_Posix_SysconfName__SC_SPIN_LOCKS)
5035 #ifdef _SC_SPIN_LOCKS
5036 {*r = _SC_SPIN_LOCKS; return 0;}
5037 #else /* def _SC_SPIN_LOCKS */
5038 {errno = EINVAL; return -1;}
5039 #endif /* ndef _SC_SPIN_LOCKS */
5040 if (x == Mono_Posix_SysconfName__SC_SPORADIC_SERVER)
5041 #ifdef _SC_SPORADIC_SERVER
5042 {*r = _SC_SPORADIC_SERVER; return 0;}
5043 #else /* def _SC_SPORADIC_SERVER */
5044 {errno = EINVAL; return -1;}
5045 #endif /* ndef _SC_SPORADIC_SERVER */
5046 if (x == Mono_Posix_SysconfName__SC_SSIZE_MAX)
5047 #ifdef _SC_SSIZE_MAX
5048 {*r = _SC_SSIZE_MAX; return 0;}
5049 #else /* def _SC_SSIZE_MAX */
5050 {errno = EINVAL; return -1;}
5051 #endif /* ndef _SC_SSIZE_MAX */
5052 if (x == Mono_Posix_SysconfName__SC_STREAMS)
5054 {*r = _SC_STREAMS; return 0;}
5055 #else /* def _SC_STREAMS */
5056 {errno = EINVAL; return -1;}
5057 #endif /* ndef _SC_STREAMS */
5058 if (x == Mono_Posix_SysconfName__SC_STREAM_MAX)
5059 #ifdef _SC_STREAM_MAX
5060 {*r = _SC_STREAM_MAX; return 0;}
5061 #else /* def _SC_STREAM_MAX */
5062 {errno = EINVAL; return -1;}
5063 #endif /* ndef _SC_STREAM_MAX */
5064 if (x == Mono_Posix_SysconfName__SC_SYMLOOP_MAX)
5065 #ifdef _SC_SYMLOOP_MAX
5066 {*r = _SC_SYMLOOP_MAX; return 0;}
5067 #else /* def _SC_SYMLOOP_MAX */
5068 {errno = EINVAL; return -1;}
5069 #endif /* ndef _SC_SYMLOOP_MAX */
5070 if (x == Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO)
5071 #ifdef _SC_SYNCHRONIZED_IO
5072 {*r = _SC_SYNCHRONIZED_IO; return 0;}
5073 #else /* def _SC_SYNCHRONIZED_IO */
5074 {errno = EINVAL; return -1;}
5075 #endif /* ndef _SC_SYNCHRONIZED_IO */
5076 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE)
5077 #ifdef _SC_SYSTEM_DATABASE
5078 {*r = _SC_SYSTEM_DATABASE; return 0;}
5079 #else /* def _SC_SYSTEM_DATABASE */
5080 {errno = EINVAL; return -1;}
5081 #endif /* ndef _SC_SYSTEM_DATABASE */
5082 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R)
5083 #ifdef _SC_SYSTEM_DATABASE_R
5084 {*r = _SC_SYSTEM_DATABASE_R; return 0;}
5085 #else /* def _SC_SYSTEM_DATABASE_R */
5086 {errno = EINVAL; return -1;}
5087 #endif /* ndef _SC_SYSTEM_DATABASE_R */
5088 if (x == Mono_Posix_SysconfName__SC_THREADS)
5090 {*r = _SC_THREADS; return 0;}
5091 #else /* def _SC_THREADS */
5092 {errno = EINVAL; return -1;}
5093 #endif /* ndef _SC_THREADS */
5094 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR)
5095 #ifdef _SC_THREAD_ATTR_STACKADDR
5096 {*r = _SC_THREAD_ATTR_STACKADDR; return 0;}
5097 #else /* def _SC_THREAD_ATTR_STACKADDR */
5098 {errno = EINVAL; return -1;}
5099 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
5100 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE)
5101 #ifdef _SC_THREAD_ATTR_STACKSIZE
5102 {*r = _SC_THREAD_ATTR_STACKSIZE; return 0;}
5103 #else /* def _SC_THREAD_ATTR_STACKSIZE */
5104 {errno = EINVAL; return -1;}
5105 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
5106 if (x == Mono_Posix_SysconfName__SC_THREAD_CPUTIME)
5107 #ifdef _SC_THREAD_CPUTIME
5108 {*r = _SC_THREAD_CPUTIME; return 0;}
5109 #else /* def _SC_THREAD_CPUTIME */
5110 {errno = EINVAL; return -1;}
5111 #endif /* ndef _SC_THREAD_CPUTIME */
5112 if (x == Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS)
5113 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
5114 {*r = _SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
5115 #else /* def _SC_THREAD_DESTRUCTOR_ITERATIONS */
5116 {errno = EINVAL; return -1;}
5117 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
5118 if (x == Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX)
5119 #ifdef _SC_THREAD_KEYS_MAX
5120 {*r = _SC_THREAD_KEYS_MAX; return 0;}
5121 #else /* def _SC_THREAD_KEYS_MAX */
5122 {errno = EINVAL; return -1;}
5123 #endif /* ndef _SC_THREAD_KEYS_MAX */
5124 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING)
5125 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
5126 {*r = _SC_THREAD_PRIORITY_SCHEDULING; return 0;}
5127 #else /* def _SC_THREAD_PRIORITY_SCHEDULING */
5128 {errno = EINVAL; return -1;}
5129 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
5130 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT)
5131 #ifdef _SC_THREAD_PRIO_INHERIT
5132 {*r = _SC_THREAD_PRIO_INHERIT; return 0;}
5133 #else /* def _SC_THREAD_PRIO_INHERIT */
5134 {errno = EINVAL; return -1;}
5135 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
5136 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT)
5137 #ifdef _SC_THREAD_PRIO_PROTECT
5138 {*r = _SC_THREAD_PRIO_PROTECT; return 0;}
5139 #else /* def _SC_THREAD_PRIO_PROTECT */
5140 {errno = EINVAL; return -1;}
5141 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
5142 if (x == Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED)
5143 #ifdef _SC_THREAD_PROCESS_SHARED
5144 {*r = _SC_THREAD_PROCESS_SHARED; return 0;}
5145 #else /* def _SC_THREAD_PROCESS_SHARED */
5146 {errno = EINVAL; return -1;}
5147 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
5148 if (x == Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS)
5149 #ifdef _SC_THREAD_SAFE_FUNCTIONS
5150 {*r = _SC_THREAD_SAFE_FUNCTIONS; return 0;}
5151 #else /* def _SC_THREAD_SAFE_FUNCTIONS */
5152 {errno = EINVAL; return -1;}
5153 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
5154 if (x == Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER)
5155 #ifdef _SC_THREAD_SPORADIC_SERVER
5156 {*r = _SC_THREAD_SPORADIC_SERVER; return 0;}
5157 #else /* def _SC_THREAD_SPORADIC_SERVER */
5158 {errno = EINVAL; return -1;}
5159 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
5160 if (x == Mono_Posix_SysconfName__SC_THREAD_STACK_MIN)
5161 #ifdef _SC_THREAD_STACK_MIN
5162 {*r = _SC_THREAD_STACK_MIN; return 0;}
5163 #else /* def _SC_THREAD_STACK_MIN */
5164 {errno = EINVAL; return -1;}
5165 #endif /* ndef _SC_THREAD_STACK_MIN */
5166 if (x == Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX)
5167 #ifdef _SC_THREAD_THREADS_MAX
5168 {*r = _SC_THREAD_THREADS_MAX; return 0;}
5169 #else /* def _SC_THREAD_THREADS_MAX */
5170 {errno = EINVAL; return -1;}
5171 #endif /* ndef _SC_THREAD_THREADS_MAX */
5172 if (x == Mono_Posix_SysconfName__SC_TIMEOUTS)
5174 {*r = _SC_TIMEOUTS; return 0;}
5175 #else /* def _SC_TIMEOUTS */
5176 {errno = EINVAL; return -1;}
5177 #endif /* ndef _SC_TIMEOUTS */
5178 if (x == Mono_Posix_SysconfName__SC_TIMERS)
5180 {*r = _SC_TIMERS; return 0;}
5181 #else /* def _SC_TIMERS */
5182 {errno = EINVAL; return -1;}
5183 #endif /* ndef _SC_TIMERS */
5184 if (x == Mono_Posix_SysconfName__SC_TIMER_MAX)
5185 #ifdef _SC_TIMER_MAX
5186 {*r = _SC_TIMER_MAX; return 0;}
5187 #else /* def _SC_TIMER_MAX */
5188 {errno = EINVAL; return -1;}
5189 #endif /* ndef _SC_TIMER_MAX */
5190 if (x == Mono_Posix_SysconfName__SC_TRACE)
5192 {*r = _SC_TRACE; return 0;}
5193 #else /* def _SC_TRACE */
5194 {errno = EINVAL; return -1;}
5195 #endif /* ndef _SC_TRACE */
5196 if (x == Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER)
5197 #ifdef _SC_TRACE_EVENT_FILTER
5198 {*r = _SC_TRACE_EVENT_FILTER; return 0;}
5199 #else /* def _SC_TRACE_EVENT_FILTER */
5200 {errno = EINVAL; return -1;}
5201 #endif /* ndef _SC_TRACE_EVENT_FILTER */
5202 if (x == Mono_Posix_SysconfName__SC_TRACE_INHERIT)
5203 #ifdef _SC_TRACE_INHERIT
5204 {*r = _SC_TRACE_INHERIT; return 0;}
5205 #else /* def _SC_TRACE_INHERIT */
5206 {errno = EINVAL; return -1;}
5207 #endif /* ndef _SC_TRACE_INHERIT */
5208 if (x == Mono_Posix_SysconfName__SC_TRACE_LOG)
5209 #ifdef _SC_TRACE_LOG
5210 {*r = _SC_TRACE_LOG; return 0;}
5211 #else /* def _SC_TRACE_LOG */
5212 {errno = EINVAL; return -1;}
5213 #endif /* ndef _SC_TRACE_LOG */
5214 if (x == Mono_Posix_SysconfName__SC_TTY_NAME_MAX)
5215 #ifdef _SC_TTY_NAME_MAX
5216 {*r = _SC_TTY_NAME_MAX; return 0;}
5217 #else /* def _SC_TTY_NAME_MAX */
5218 {errno = EINVAL; return -1;}
5219 #endif /* ndef _SC_TTY_NAME_MAX */
5220 if (x == Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS)
5221 #ifdef _SC_TYPED_MEMORY_OBJECTS
5222 {*r = _SC_TYPED_MEMORY_OBJECTS; return 0;}
5223 #else /* def _SC_TYPED_MEMORY_OBJECTS */
5224 {errno = EINVAL; return -1;}
5225 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
5226 if (x == Mono_Posix_SysconfName__SC_TZNAME_MAX)
5227 #ifdef _SC_TZNAME_MAX
5228 {*r = _SC_TZNAME_MAX; return 0;}
5229 #else /* def _SC_TZNAME_MAX */
5230 {errno = EINVAL; return -1;}
5231 #endif /* ndef _SC_TZNAME_MAX */
5232 if (x == Mono_Posix_SysconfName__SC_T_IOV_MAX)
5233 #ifdef _SC_T_IOV_MAX
5234 {*r = _SC_T_IOV_MAX; return 0;}
5235 #else /* def _SC_T_IOV_MAX */
5236 {errno = EINVAL; return -1;}
5237 #endif /* ndef _SC_T_IOV_MAX */
5238 if (x == Mono_Posix_SysconfName__SC_UCHAR_MAX)
5239 #ifdef _SC_UCHAR_MAX
5240 {*r = _SC_UCHAR_MAX; return 0;}
5241 #else /* def _SC_UCHAR_MAX */
5242 {errno = EINVAL; return -1;}
5243 #endif /* ndef _SC_UCHAR_MAX */
5244 if (x == Mono_Posix_SysconfName__SC_UINT_MAX)
5246 {*r = _SC_UINT_MAX; return 0;}
5247 #else /* def _SC_UINT_MAX */
5248 {errno = EINVAL; return -1;}
5249 #endif /* ndef _SC_UINT_MAX */
5250 if (x == Mono_Posix_SysconfName__SC_UIO_MAXIOV)
5251 #ifdef _SC_UIO_MAXIOV
5252 {*r = _SC_UIO_MAXIOV; return 0;}
5253 #else /* def _SC_UIO_MAXIOV */
5254 {errno = EINVAL; return -1;}
5255 #endif /* ndef _SC_UIO_MAXIOV */
5256 if (x == Mono_Posix_SysconfName__SC_ULONG_MAX)
5257 #ifdef _SC_ULONG_MAX
5258 {*r = _SC_ULONG_MAX; return 0;}
5259 #else /* def _SC_ULONG_MAX */
5260 {errno = EINVAL; return -1;}
5261 #endif /* ndef _SC_ULONG_MAX */
5262 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS)
5263 #ifdef _SC_USER_GROUPS
5264 {*r = _SC_USER_GROUPS; return 0;}
5265 #else /* def _SC_USER_GROUPS */
5266 {errno = EINVAL; return -1;}
5267 #endif /* ndef _SC_USER_GROUPS */
5268 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS_R)
5269 #ifdef _SC_USER_GROUPS_R
5270 {*r = _SC_USER_GROUPS_R; return 0;}
5271 #else /* def _SC_USER_GROUPS_R */
5272 {errno = EINVAL; return -1;}
5273 #endif /* ndef _SC_USER_GROUPS_R */
5274 if (x == Mono_Posix_SysconfName__SC_USHRT_MAX)
5275 #ifdef _SC_USHRT_MAX
5276 {*r = _SC_USHRT_MAX; return 0;}
5277 #else /* def _SC_USHRT_MAX */
5278 {errno = EINVAL; return -1;}
5279 #endif /* ndef _SC_USHRT_MAX */
5280 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFF32)
5281 #ifdef _SC_V6_ILP32_OFF32
5282 {*r = _SC_V6_ILP32_OFF32; return 0;}
5283 #else /* def _SC_V6_ILP32_OFF32 */
5284 {errno = EINVAL; return -1;}
5285 #endif /* ndef _SC_V6_ILP32_OFF32 */
5286 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG)
5287 #ifdef _SC_V6_ILP32_OFFBIG
5288 {*r = _SC_V6_ILP32_OFFBIG; return 0;}
5289 #else /* def _SC_V6_ILP32_OFFBIG */
5290 {errno = EINVAL; return -1;}
5291 #endif /* ndef _SC_V6_ILP32_OFFBIG */
5292 if (x == Mono_Posix_SysconfName__SC_V6_LP64_OFF64)
5293 #ifdef _SC_V6_LP64_OFF64
5294 {*r = _SC_V6_LP64_OFF64; return 0;}
5295 #else /* def _SC_V6_LP64_OFF64 */
5296 {errno = EINVAL; return -1;}
5297 #endif /* ndef _SC_V6_LP64_OFF64 */
5298 if (x == Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG)
5299 #ifdef _SC_V6_LPBIG_OFFBIG
5300 {*r = _SC_V6_LPBIG_OFFBIG; return 0;}
5301 #else /* def _SC_V6_LPBIG_OFFBIG */
5302 {errno = EINVAL; return -1;}
5303 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
5304 if (x == Mono_Posix_SysconfName__SC_VERSION)
5306 {*r = _SC_VERSION; return 0;}
5307 #else /* def _SC_VERSION */
5308 {errno = EINVAL; return -1;}
5309 #endif /* ndef _SC_VERSION */
5310 if (x == Mono_Posix_SysconfName__SC_WORD_BIT)
5312 {*r = _SC_WORD_BIT; return 0;}
5313 #else /* def _SC_WORD_BIT */
5314 {errno = EINVAL; return -1;}
5315 #endif /* ndef _SC_WORD_BIT */
5316 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32)
5317 #ifdef _SC_XBS5_ILP32_OFF32
5318 {*r = _SC_XBS5_ILP32_OFF32; return 0;}
5319 #else /* def _SC_XBS5_ILP32_OFF32 */
5320 {errno = EINVAL; return -1;}
5321 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
5322 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG)
5323 #ifdef _SC_XBS5_ILP32_OFFBIG
5324 {*r = _SC_XBS5_ILP32_OFFBIG; return 0;}
5325 #else /* def _SC_XBS5_ILP32_OFFBIG */
5326 {errno = EINVAL; return -1;}
5327 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
5328 if (x == Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64)
5329 #ifdef _SC_XBS5_LP64_OFF64
5330 {*r = _SC_XBS5_LP64_OFF64; return 0;}
5331 #else /* def _SC_XBS5_LP64_OFF64 */
5332 {errno = EINVAL; return -1;}
5333 #endif /* ndef _SC_XBS5_LP64_OFF64 */
5334 if (x == Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG)
5335 #ifdef _SC_XBS5_LPBIG_OFFBIG
5336 {*r = _SC_XBS5_LPBIG_OFFBIG; return 0;}
5337 #else /* def _SC_XBS5_LPBIG_OFFBIG */
5338 {errno = EINVAL; return -1;}
5339 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
5340 if (x == Mono_Posix_SysconfName__SC_XOPEN_CRYPT)
5341 #ifdef _SC_XOPEN_CRYPT
5342 {*r = _SC_XOPEN_CRYPT; return 0;}
5343 #else /* def _SC_XOPEN_CRYPT */
5344 {errno = EINVAL; return -1;}
5345 #endif /* ndef _SC_XOPEN_CRYPT */
5346 if (x == Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N)
5347 #ifdef _SC_XOPEN_ENH_I18N
5348 {*r = _SC_XOPEN_ENH_I18N; return 0;}
5349 #else /* def _SC_XOPEN_ENH_I18N */
5350 {errno = EINVAL; return -1;}
5351 #endif /* ndef _SC_XOPEN_ENH_I18N */
5352 if (x == Mono_Posix_SysconfName__SC_XOPEN_LEGACY)
5353 #ifdef _SC_XOPEN_LEGACY
5354 {*r = _SC_XOPEN_LEGACY; return 0;}
5355 #else /* def _SC_XOPEN_LEGACY */
5356 {errno = EINVAL; return -1;}
5357 #endif /* ndef _SC_XOPEN_LEGACY */
5358 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME)
5359 #ifdef _SC_XOPEN_REALTIME
5360 {*r = _SC_XOPEN_REALTIME; return 0;}
5361 #else /* def _SC_XOPEN_REALTIME */
5362 {errno = EINVAL; return -1;}
5363 #endif /* ndef _SC_XOPEN_REALTIME */
5364 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS)
5365 #ifdef _SC_XOPEN_REALTIME_THREADS
5366 {*r = _SC_XOPEN_REALTIME_THREADS; return 0;}
5367 #else /* def _SC_XOPEN_REALTIME_THREADS */
5368 {errno = EINVAL; return -1;}
5369 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
5370 if (x == Mono_Posix_SysconfName__SC_XOPEN_SHM)
5371 #ifdef _SC_XOPEN_SHM
5372 {*r = _SC_XOPEN_SHM; return 0;}
5373 #else /* def _SC_XOPEN_SHM */
5374 {errno = EINVAL; return -1;}
5375 #endif /* ndef _SC_XOPEN_SHM */
5376 if (x == Mono_Posix_SysconfName__SC_XOPEN_UNIX)
5377 #ifdef _SC_XOPEN_UNIX
5378 {*r = _SC_XOPEN_UNIX; return 0;}
5379 #else /* def _SC_XOPEN_UNIX */
5380 {errno = EINVAL; return -1;}
5381 #endif /* ndef _SC_XOPEN_UNIX */
5382 if (x == Mono_Posix_SysconfName__SC_XOPEN_VERSION)
5383 #ifdef _SC_XOPEN_VERSION
5384 {*r = _SC_XOPEN_VERSION; return 0;}
5385 #else /* def _SC_XOPEN_VERSION */
5386 {errno = EINVAL; return -1;}
5387 #endif /* ndef _SC_XOPEN_VERSION */
5388 if (x == Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION)
5389 #ifdef _SC_XOPEN_XCU_VERSION
5390 {*r = _SC_XOPEN_XCU_VERSION; return 0;}
5391 #else /* def _SC_XOPEN_XCU_VERSION */
5392 {errno = EINVAL; return -1;}
5393 #endif /* ndef _SC_XOPEN_XCU_VERSION */
5394 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG2)
5395 #ifdef _SC_XOPEN_XPG2
5396 {*r = _SC_XOPEN_XPG2; return 0;}
5397 #else /* def _SC_XOPEN_XPG2 */
5398 {errno = EINVAL; return -1;}
5399 #endif /* ndef _SC_XOPEN_XPG2 */
5400 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG3)
5401 #ifdef _SC_XOPEN_XPG3
5402 {*r = _SC_XOPEN_XPG3; return 0;}
5403 #else /* def _SC_XOPEN_XPG3 */
5404 {errno = EINVAL; return -1;}
5405 #endif /* ndef _SC_XOPEN_XPG3 */
5406 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG4)
5407 #ifdef _SC_XOPEN_XPG4
5408 {*r = _SC_XOPEN_XPG4; return 0;}
5409 #else /* def _SC_XOPEN_XPG4 */
5410 {errno = EINVAL; return -1;}
5411 #endif /* ndef _SC_XOPEN_XPG4 */
5414 errno = EINVAL; return -1;
5417 int Mono_Posix_ToSysconfName (int x, int *r)
5422 #ifdef _SC_2_CHAR_TERM
5423 if (x == _SC_2_CHAR_TERM)
5424 {*r = Mono_Posix_SysconfName__SC_2_CHAR_TERM; return 0;}
5425 #endif /* ndef _SC_2_CHAR_TERM */
5427 if (x == _SC_2_C_BIND)
5428 {*r = Mono_Posix_SysconfName__SC_2_C_BIND; return 0;}
5429 #endif /* ndef _SC_2_C_BIND */
5431 if (x == _SC_2_C_DEV)
5432 {*r = Mono_Posix_SysconfName__SC_2_C_DEV; return 0;}
5433 #endif /* ndef _SC_2_C_DEV */
5434 #ifdef _SC_2_C_VERSION
5435 if (x == _SC_2_C_VERSION)
5436 {*r = Mono_Posix_SysconfName__SC_2_C_VERSION; return 0;}
5437 #endif /* ndef _SC_2_C_VERSION */
5438 #ifdef _SC_2_FORT_DEV
5439 if (x == _SC_2_FORT_DEV)
5440 {*r = Mono_Posix_SysconfName__SC_2_FORT_DEV; return 0;}
5441 #endif /* ndef _SC_2_FORT_DEV */
5442 #ifdef _SC_2_FORT_RUN
5443 if (x == _SC_2_FORT_RUN)
5444 {*r = Mono_Posix_SysconfName__SC_2_FORT_RUN; return 0;}
5445 #endif /* ndef _SC_2_FORT_RUN */
5446 #ifdef _SC_2_LOCALEDEF
5447 if (x == _SC_2_LOCALEDEF)
5448 {*r = Mono_Posix_SysconfName__SC_2_LOCALEDEF; return 0;}
5449 #endif /* ndef _SC_2_LOCALEDEF */
5452 {*r = Mono_Posix_SysconfName__SC_2_PBS; return 0;}
5453 #endif /* ndef _SC_2_PBS */
5454 #ifdef _SC_2_PBS_ACCOUNTING
5455 if (x == _SC_2_PBS_ACCOUNTING)
5456 {*r = Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING; return 0;}
5457 #endif /* ndef _SC_2_PBS_ACCOUNTING */
5458 #ifdef _SC_2_PBS_CHECKPOINT
5459 if (x == _SC_2_PBS_CHECKPOINT)
5460 {*r = Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT; return 0;}
5461 #endif /* ndef _SC_2_PBS_CHECKPOINT */
5462 #ifdef _SC_2_PBS_LOCATE
5463 if (x == _SC_2_PBS_LOCATE)
5464 {*r = Mono_Posix_SysconfName__SC_2_PBS_LOCATE; return 0;}
5465 #endif /* ndef _SC_2_PBS_LOCATE */
5466 #ifdef _SC_2_PBS_MESSAGE
5467 if (x == _SC_2_PBS_MESSAGE)
5468 {*r = Mono_Posix_SysconfName__SC_2_PBS_MESSAGE; return 0;}
5469 #endif /* ndef _SC_2_PBS_MESSAGE */
5470 #ifdef _SC_2_PBS_TRACK
5471 if (x == _SC_2_PBS_TRACK)
5472 {*r = Mono_Posix_SysconfName__SC_2_PBS_TRACK; return 0;}
5473 #endif /* ndef _SC_2_PBS_TRACK */
5475 if (x == _SC_2_SW_DEV)
5476 {*r = Mono_Posix_SysconfName__SC_2_SW_DEV; return 0;}
5477 #endif /* ndef _SC_2_SW_DEV */
5480 {*r = Mono_Posix_SysconfName__SC_2_UPE; return 0;}
5481 #endif /* ndef _SC_2_UPE */
5482 #ifdef _SC_2_VERSION
5483 if (x == _SC_2_VERSION)
5484 {*r = Mono_Posix_SysconfName__SC_2_VERSION; return 0;}
5485 #endif /* ndef _SC_2_VERSION */
5486 #ifdef _SC_ADVISORY_INFO
5487 if (x == _SC_ADVISORY_INFO)
5488 {*r = Mono_Posix_SysconfName__SC_ADVISORY_INFO; return 0;}
5489 #endif /* ndef _SC_ADVISORY_INFO */
5490 #ifdef _SC_AIO_LISTIO_MAX
5491 if (x == _SC_AIO_LISTIO_MAX)
5492 {*r = Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX; return 0;}
5493 #endif /* ndef _SC_AIO_LISTIO_MAX */
5495 if (x == _SC_AIO_MAX)
5496 {*r = Mono_Posix_SysconfName__SC_AIO_MAX; return 0;}
5497 #endif /* ndef _SC_AIO_MAX */
5498 #ifdef _SC_AIO_PRIO_DELTA_MAX
5499 if (x == _SC_AIO_PRIO_DELTA_MAX)
5500 {*r = Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX; return 0;}
5501 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
5503 if (x == _SC_ARG_MAX)
5504 {*r = Mono_Posix_SysconfName__SC_ARG_MAX; return 0;}
5505 #endif /* ndef _SC_ARG_MAX */
5506 #ifdef _SC_ASYNCHRONOUS_IO
5507 if (x == _SC_ASYNCHRONOUS_IO)
5508 {*r = Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO; return 0;}
5509 #endif /* ndef _SC_ASYNCHRONOUS_IO */
5510 #ifdef _SC_ATEXIT_MAX
5511 if (x == _SC_ATEXIT_MAX)
5512 {*r = Mono_Posix_SysconfName__SC_ATEXIT_MAX; return 0;}
5513 #endif /* ndef _SC_ATEXIT_MAX */
5514 #ifdef _SC_AVPHYS_PAGES
5515 if (x == _SC_AVPHYS_PAGES)
5516 {*r = Mono_Posix_SysconfName__SC_AVPHYS_PAGES; return 0;}
5517 #endif /* ndef _SC_AVPHYS_PAGES */
5519 if (x == _SC_BARRIERS)
5520 {*r = Mono_Posix_SysconfName__SC_BARRIERS; return 0;}
5521 #endif /* ndef _SC_BARRIERS */
5524 {*r = Mono_Posix_SysconfName__SC_BASE; return 0;}
5525 #endif /* ndef _SC_BASE */
5526 #ifdef _SC_BC_BASE_MAX
5527 if (x == _SC_BC_BASE_MAX)
5528 {*r = Mono_Posix_SysconfName__SC_BC_BASE_MAX; return 0;}
5529 #endif /* ndef _SC_BC_BASE_MAX */
5530 #ifdef _SC_BC_DIM_MAX
5531 if (x == _SC_BC_DIM_MAX)
5532 {*r = Mono_Posix_SysconfName__SC_BC_DIM_MAX; return 0;}
5533 #endif /* ndef _SC_BC_DIM_MAX */
5534 #ifdef _SC_BC_SCALE_MAX
5535 if (x == _SC_BC_SCALE_MAX)
5536 {*r = Mono_Posix_SysconfName__SC_BC_SCALE_MAX; return 0;}
5537 #endif /* ndef _SC_BC_SCALE_MAX */
5538 #ifdef _SC_BC_STRING_MAX
5539 if (x == _SC_BC_STRING_MAX)
5540 {*r = Mono_Posix_SysconfName__SC_BC_STRING_MAX; return 0;}
5541 #endif /* ndef _SC_BC_STRING_MAX */
5542 #ifdef _SC_CHARCLASS_NAME_MAX
5543 if (x == _SC_CHARCLASS_NAME_MAX)
5544 {*r = Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX; return 0;}
5545 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
5547 if (x == _SC_CHAR_BIT)
5548 {*r = Mono_Posix_SysconfName__SC_CHAR_BIT; return 0;}
5549 #endif /* ndef _SC_CHAR_BIT */
5551 if (x == _SC_CHAR_MAX)
5552 {*r = Mono_Posix_SysconfName__SC_CHAR_MAX; return 0;}
5553 #endif /* ndef _SC_CHAR_MAX */
5555 if (x == _SC_CHAR_MIN)
5556 {*r = Mono_Posix_SysconfName__SC_CHAR_MIN; return 0;}
5557 #endif /* ndef _SC_CHAR_MIN */
5558 #ifdef _SC_CHILD_MAX
5559 if (x == _SC_CHILD_MAX)
5560 {*r = Mono_Posix_SysconfName__SC_CHILD_MAX; return 0;}
5561 #endif /* ndef _SC_CHILD_MAX */
5563 if (x == _SC_CLK_TCK)
5564 {*r = Mono_Posix_SysconfName__SC_CLK_TCK; return 0;}
5565 #endif /* ndef _SC_CLK_TCK */
5566 #ifdef _SC_CLOCK_SELECTION
5567 if (x == _SC_CLOCK_SELECTION)
5568 {*r = Mono_Posix_SysconfName__SC_CLOCK_SELECTION; return 0;}
5569 #endif /* ndef _SC_CLOCK_SELECTION */
5570 #ifdef _SC_COLL_WEIGHTS_MAX
5571 if (x == _SC_COLL_WEIGHTS_MAX)
5572 {*r = Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX; return 0;}
5573 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
5575 if (x == _SC_CPUTIME)
5576 {*r = Mono_Posix_SysconfName__SC_CPUTIME; return 0;}
5577 #endif /* ndef _SC_CPUTIME */
5578 #ifdef _SC_C_LANG_SUPPORT
5579 if (x == _SC_C_LANG_SUPPORT)
5580 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT; return 0;}
5581 #endif /* ndef _SC_C_LANG_SUPPORT */
5582 #ifdef _SC_C_LANG_SUPPORT_R
5583 if (x == _SC_C_LANG_SUPPORT_R)
5584 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R; return 0;}
5585 #endif /* ndef _SC_C_LANG_SUPPORT_R */
5586 #ifdef _SC_DELAYTIMER_MAX
5587 if (x == _SC_DELAYTIMER_MAX)
5588 {*r = Mono_Posix_SysconfName__SC_DELAYTIMER_MAX; return 0;}
5589 #endif /* ndef _SC_DELAYTIMER_MAX */
5590 #ifdef _SC_DEVICE_IO
5591 if (x == _SC_DEVICE_IO)
5592 {*r = Mono_Posix_SysconfName__SC_DEVICE_IO; return 0;}
5593 #endif /* ndef _SC_DEVICE_IO */
5594 #ifdef _SC_DEVICE_SPECIFIC
5595 if (x == _SC_DEVICE_SPECIFIC)
5596 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC; return 0;}
5597 #endif /* ndef _SC_DEVICE_SPECIFIC */
5598 #ifdef _SC_DEVICE_SPECIFIC_R
5599 if (x == _SC_DEVICE_SPECIFIC_R)
5600 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R; return 0;}
5601 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
5602 #ifdef _SC_EQUIV_CLASS_MAX
5603 if (x == _SC_EQUIV_CLASS_MAX)
5604 {*r = Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX; return 0;}
5605 #endif /* ndef _SC_EQUIV_CLASS_MAX */
5606 #ifdef _SC_EXPR_NEST_MAX
5607 if (x == _SC_EXPR_NEST_MAX)
5608 {*r = Mono_Posix_SysconfName__SC_EXPR_NEST_MAX; return 0;}
5609 #endif /* ndef _SC_EXPR_NEST_MAX */
5611 if (x == _SC_FD_MGMT)
5612 {*r = Mono_Posix_SysconfName__SC_FD_MGMT; return 0;}
5613 #endif /* ndef _SC_FD_MGMT */
5616 {*r = Mono_Posix_SysconfName__SC_FIFO; return 0;}
5617 #endif /* ndef _SC_FIFO */
5618 #ifdef _SC_FILE_ATTRIBUTES
5619 if (x == _SC_FILE_ATTRIBUTES)
5620 {*r = Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES; return 0;}
5621 #endif /* ndef _SC_FILE_ATTRIBUTES */
5622 #ifdef _SC_FILE_LOCKING
5623 if (x == _SC_FILE_LOCKING)
5624 {*r = Mono_Posix_SysconfName__SC_FILE_LOCKING; return 0;}
5625 #endif /* ndef _SC_FILE_LOCKING */
5626 #ifdef _SC_FILE_SYSTEM
5627 if (x == _SC_FILE_SYSTEM)
5628 {*r = Mono_Posix_SysconfName__SC_FILE_SYSTEM; return 0;}
5629 #endif /* ndef _SC_FILE_SYSTEM */
5632 {*r = Mono_Posix_SysconfName__SC_FSYNC; return 0;}
5633 #endif /* ndef _SC_FSYNC */
5634 #ifdef _SC_GETGR_R_SIZE_MAX
5635 if (x == _SC_GETGR_R_SIZE_MAX)
5636 {*r = Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX; return 0;}
5637 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
5638 #ifdef _SC_GETPW_R_SIZE_MAX
5639 if (x == _SC_GETPW_R_SIZE_MAX)
5640 {*r = Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX; return 0;}
5641 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
5642 #ifdef _SC_HOST_NAME_MAX
5643 if (x == _SC_HOST_NAME_MAX)
5644 {*r = Mono_Posix_SysconfName__SC_HOST_NAME_MAX; return 0;}
5645 #endif /* ndef _SC_HOST_NAME_MAX */
5647 if (x == _SC_INT_MAX)
5648 {*r = Mono_Posix_SysconfName__SC_INT_MAX; return 0;}
5649 #endif /* ndef _SC_INT_MAX */
5651 if (x == _SC_INT_MIN)
5652 {*r = Mono_Posix_SysconfName__SC_INT_MIN; return 0;}
5653 #endif /* ndef _SC_INT_MIN */
5655 if (x == _SC_IOV_MAX)
5656 {*r = Mono_Posix_SysconfName__SC_IOV_MAX; return 0;}
5657 #endif /* ndef _SC_IOV_MAX */
5658 #ifdef _SC_JOB_CONTROL
5659 if (x == _SC_JOB_CONTROL)
5660 {*r = Mono_Posix_SysconfName__SC_JOB_CONTROL; return 0;}
5661 #endif /* ndef _SC_JOB_CONTROL */
5662 #ifdef _SC_LEVEL1_DCACHE_ASSOC
5663 if (x == _SC_LEVEL1_DCACHE_ASSOC)
5664 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC; return 0;}
5665 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
5666 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
5667 if (x == _SC_LEVEL1_DCACHE_LINESIZE)
5668 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE; return 0;}
5669 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
5670 #ifdef _SC_LEVEL1_DCACHE_SIZE
5671 if (x == _SC_LEVEL1_DCACHE_SIZE)
5672 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE; return 0;}
5673 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
5674 #ifdef _SC_LEVEL1_ICACHE_ASSOC
5675 if (x == _SC_LEVEL1_ICACHE_ASSOC)
5676 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC; return 0;}
5677 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
5678 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
5679 if (x == _SC_LEVEL1_ICACHE_LINESIZE)
5680 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE; return 0;}
5681 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
5682 #ifdef _SC_LEVEL1_ICACHE_SIZE
5683 if (x == _SC_LEVEL1_ICACHE_SIZE)
5684 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE; return 0;}
5685 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
5686 #ifdef _SC_LEVEL2_CACHE_ASSOC
5687 if (x == _SC_LEVEL2_CACHE_ASSOC)
5688 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC; return 0;}
5689 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
5690 #ifdef _SC_LEVEL2_CACHE_LINESIZE
5691 if (x == _SC_LEVEL2_CACHE_LINESIZE)
5692 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE; return 0;}
5693 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
5694 #ifdef _SC_LEVEL2_CACHE_SIZE
5695 if (x == _SC_LEVEL2_CACHE_SIZE)
5696 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE; return 0;}
5697 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
5698 #ifdef _SC_LEVEL3_CACHE_ASSOC
5699 if (x == _SC_LEVEL3_CACHE_ASSOC)
5700 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC; return 0;}
5701 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
5702 #ifdef _SC_LEVEL3_CACHE_LINESIZE
5703 if (x == _SC_LEVEL3_CACHE_LINESIZE)
5704 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE; return 0;}
5705 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
5706 #ifdef _SC_LEVEL3_CACHE_SIZE
5707 if (x == _SC_LEVEL3_CACHE_SIZE)
5708 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE; return 0;}
5709 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
5710 #ifdef _SC_LEVEL4_CACHE_ASSOC
5711 if (x == _SC_LEVEL4_CACHE_ASSOC)
5712 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC; return 0;}
5713 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
5714 #ifdef _SC_LEVEL4_CACHE_LINESIZE
5715 if (x == _SC_LEVEL4_CACHE_LINESIZE)
5716 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE; return 0;}
5717 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
5718 #ifdef _SC_LEVEL4_CACHE_SIZE
5719 if (x == _SC_LEVEL4_CACHE_SIZE)
5720 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE; return 0;}
5721 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
5723 if (x == _SC_LINE_MAX)
5724 {*r = Mono_Posix_SysconfName__SC_LINE_MAX; return 0;}
5725 #endif /* ndef _SC_LINE_MAX */
5726 #ifdef _SC_LOGIN_NAME_MAX
5727 if (x == _SC_LOGIN_NAME_MAX)
5728 {*r = Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX; return 0;}
5729 #endif /* ndef _SC_LOGIN_NAME_MAX */
5731 if (x == _SC_LONG_BIT)
5732 {*r = Mono_Posix_SysconfName__SC_LONG_BIT; return 0;}
5733 #endif /* ndef _SC_LONG_BIT */
5734 #ifdef _SC_MAPPED_FILES
5735 if (x == _SC_MAPPED_FILES)
5736 {*r = Mono_Posix_SysconfName__SC_MAPPED_FILES; return 0;}
5737 #endif /* ndef _SC_MAPPED_FILES */
5738 #ifdef _SC_MB_LEN_MAX
5739 if (x == _SC_MB_LEN_MAX)
5740 {*r = Mono_Posix_SysconfName__SC_MB_LEN_MAX; return 0;}
5741 #endif /* ndef _SC_MB_LEN_MAX */
5743 if (x == _SC_MEMLOCK)
5744 {*r = Mono_Posix_SysconfName__SC_MEMLOCK; return 0;}
5745 #endif /* ndef _SC_MEMLOCK */
5746 #ifdef _SC_MEMLOCK_RANGE
5747 if (x == _SC_MEMLOCK_RANGE)
5748 {*r = Mono_Posix_SysconfName__SC_MEMLOCK_RANGE; return 0;}
5749 #endif /* ndef _SC_MEMLOCK_RANGE */
5750 #ifdef _SC_MEMORY_PROTECTION
5751 if (x == _SC_MEMORY_PROTECTION)
5752 {*r = Mono_Posix_SysconfName__SC_MEMORY_PROTECTION; return 0;}
5753 #endif /* ndef _SC_MEMORY_PROTECTION */
5754 #ifdef _SC_MESSAGE_PASSING
5755 if (x == _SC_MESSAGE_PASSING)
5756 {*r = Mono_Posix_SysconfName__SC_MESSAGE_PASSING; return 0;}
5757 #endif /* ndef _SC_MESSAGE_PASSING */
5758 #ifdef _SC_MONOTONIC_CLOCK
5759 if (x == _SC_MONOTONIC_CLOCK)
5760 {*r = Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK; return 0;}
5761 #endif /* ndef _SC_MONOTONIC_CLOCK */
5762 #ifdef _SC_MQ_OPEN_MAX
5763 if (x == _SC_MQ_OPEN_MAX)
5764 {*r = Mono_Posix_SysconfName__SC_MQ_OPEN_MAX; return 0;}
5765 #endif /* ndef _SC_MQ_OPEN_MAX */
5766 #ifdef _SC_MQ_PRIO_MAX
5767 if (x == _SC_MQ_PRIO_MAX)
5768 {*r = Mono_Posix_SysconfName__SC_MQ_PRIO_MAX; return 0;}
5769 #endif /* ndef _SC_MQ_PRIO_MAX */
5770 #ifdef _SC_MULTI_PROCESS
5771 if (x == _SC_MULTI_PROCESS)
5772 {*r = Mono_Posix_SysconfName__SC_MULTI_PROCESS; return 0;}
5773 #endif /* ndef _SC_MULTI_PROCESS */
5774 #ifdef _SC_NETWORKING
5775 if (x == _SC_NETWORKING)
5776 {*r = Mono_Posix_SysconfName__SC_NETWORKING; return 0;}
5777 #endif /* ndef _SC_NETWORKING */
5778 #ifdef _SC_NGROUPS_MAX
5779 if (x == _SC_NGROUPS_MAX)
5780 {*r = Mono_Posix_SysconfName__SC_NGROUPS_MAX; return 0;}
5781 #endif /* ndef _SC_NGROUPS_MAX */
5782 #ifdef _SC_NL_ARGMAX
5783 if (x == _SC_NL_ARGMAX)
5784 {*r = Mono_Posix_SysconfName__SC_NL_ARGMAX; return 0;}
5785 #endif /* ndef _SC_NL_ARGMAX */
5786 #ifdef _SC_NL_LANGMAX
5787 if (x == _SC_NL_LANGMAX)
5788 {*r = Mono_Posix_SysconfName__SC_NL_LANGMAX; return 0;}
5789 #endif /* ndef _SC_NL_LANGMAX */
5790 #ifdef _SC_NL_MSGMAX
5791 if (x == _SC_NL_MSGMAX)
5792 {*r = Mono_Posix_SysconfName__SC_NL_MSGMAX; return 0;}
5793 #endif /* ndef _SC_NL_MSGMAX */
5795 if (x == _SC_NL_NMAX)
5796 {*r = Mono_Posix_SysconfName__SC_NL_NMAX; return 0;}
5797 #endif /* ndef _SC_NL_NMAX */
5798 #ifdef _SC_NL_SETMAX
5799 if (x == _SC_NL_SETMAX)
5800 {*r = Mono_Posix_SysconfName__SC_NL_SETMAX; return 0;}
5801 #endif /* ndef _SC_NL_SETMAX */
5802 #ifdef _SC_NL_TEXTMAX
5803 if (x == _SC_NL_TEXTMAX)
5804 {*r = Mono_Posix_SysconfName__SC_NL_TEXTMAX; return 0;}
5805 #endif /* ndef _SC_NL_TEXTMAX */
5806 #ifdef _SC_NPROCESSORS_CONF
5807 if (x == _SC_NPROCESSORS_CONF)
5808 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_CONF; return 0;}
5809 #endif /* ndef _SC_NPROCESSORS_CONF */
5810 #ifdef _SC_NPROCESSORS_ONLN
5811 if (x == _SC_NPROCESSORS_ONLN)
5812 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN; return 0;}
5813 #endif /* ndef _SC_NPROCESSORS_ONLN */
5816 {*r = Mono_Posix_SysconfName__SC_NZERO; return 0;}
5817 #endif /* ndef _SC_NZERO */
5819 if (x == _SC_OPEN_MAX)
5820 {*r = Mono_Posix_SysconfName__SC_OPEN_MAX; return 0;}
5821 #endif /* ndef _SC_OPEN_MAX */
5823 if (x == _SC_PAGESIZE)
5824 {*r = Mono_Posix_SysconfName__SC_PAGESIZE; return 0;}
5825 #endif /* ndef _SC_PAGESIZE */
5827 if (x == _SC_PASS_MAX)
5828 {*r = Mono_Posix_SysconfName__SC_PASS_MAX; return 0;}
5829 #endif /* ndef _SC_PASS_MAX */
5830 #ifdef _SC_PHYS_PAGES
5831 if (x == _SC_PHYS_PAGES)
5832 {*r = Mono_Posix_SysconfName__SC_PHYS_PAGES; return 0;}
5833 #endif /* ndef _SC_PHYS_PAGES */
5836 {*r = Mono_Posix_SysconfName__SC_PII; return 0;}
5837 #endif /* ndef _SC_PII */
5838 #ifdef _SC_PII_INTERNET
5839 if (x == _SC_PII_INTERNET)
5840 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET; return 0;}
5841 #endif /* ndef _SC_PII_INTERNET */
5842 #ifdef _SC_PII_INTERNET_DGRAM
5843 if (x == _SC_PII_INTERNET_DGRAM)
5844 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM; return 0;}
5845 #endif /* ndef _SC_PII_INTERNET_DGRAM */
5846 #ifdef _SC_PII_INTERNET_STREAM
5847 if (x == _SC_PII_INTERNET_STREAM)
5848 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM; return 0;}
5849 #endif /* ndef _SC_PII_INTERNET_STREAM */
5851 if (x == _SC_PII_OSI)
5852 {*r = Mono_Posix_SysconfName__SC_PII_OSI; return 0;}
5853 #endif /* ndef _SC_PII_OSI */
5854 #ifdef _SC_PII_OSI_CLTS
5855 if (x == _SC_PII_OSI_CLTS)
5856 {*r = Mono_Posix_SysconfName__SC_PII_OSI_CLTS; return 0;}
5857 #endif /* ndef _SC_PII_OSI_CLTS */
5858 #ifdef _SC_PII_OSI_COTS
5859 if (x == _SC_PII_OSI_COTS)
5860 {*r = Mono_Posix_SysconfName__SC_PII_OSI_COTS; return 0;}
5861 #endif /* ndef _SC_PII_OSI_COTS */
5862 #ifdef _SC_PII_OSI_M
5863 if (x == _SC_PII_OSI_M)
5864 {*r = Mono_Posix_SysconfName__SC_PII_OSI_M; return 0;}
5865 #endif /* ndef _SC_PII_OSI_M */
5866 #ifdef _SC_PII_SOCKET
5867 if (x == _SC_PII_SOCKET)
5868 {*r = Mono_Posix_SysconfName__SC_PII_SOCKET; return 0;}
5869 #endif /* ndef _SC_PII_SOCKET */
5871 if (x == _SC_PII_XTI)
5872 {*r = Mono_Posix_SysconfName__SC_PII_XTI; return 0;}
5873 #endif /* ndef _SC_PII_XTI */
5876 {*r = Mono_Posix_SysconfName__SC_PIPE; return 0;}
5877 #endif /* ndef _SC_PIPE */
5880 {*r = Mono_Posix_SysconfName__SC_POLL; return 0;}
5881 #endif /* ndef _SC_POLL */
5882 #ifdef _SC_PRIORITIZED_IO
5883 if (x == _SC_PRIORITIZED_IO)
5884 {*r = Mono_Posix_SysconfName__SC_PRIORITIZED_IO; return 0;}
5885 #endif /* ndef _SC_PRIORITIZED_IO */
5886 #ifdef _SC_PRIORITY_SCHEDULING
5887 if (x == _SC_PRIORITY_SCHEDULING)
5888 {*r = Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING; return 0;}
5889 #endif /* ndef _SC_PRIORITY_SCHEDULING */
5890 #ifdef _SC_READER_WRITER_LOCKS
5891 if (x == _SC_READER_WRITER_LOCKS)
5892 {*r = Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS; return 0;}
5893 #endif /* ndef _SC_READER_WRITER_LOCKS */
5894 #ifdef _SC_REALTIME_SIGNALS
5895 if (x == _SC_REALTIME_SIGNALS)
5896 {*r = Mono_Posix_SysconfName__SC_REALTIME_SIGNALS; return 0;}
5897 #endif /* ndef _SC_REALTIME_SIGNALS */
5899 if (x == _SC_REGEXP)
5900 {*r = Mono_Posix_SysconfName__SC_REGEXP; return 0;}
5901 #endif /* ndef _SC_REGEXP */
5902 #ifdef _SC_REGEX_VERSION
5903 if (x == _SC_REGEX_VERSION)
5904 {*r = Mono_Posix_SysconfName__SC_REGEX_VERSION; return 0;}
5905 #endif /* ndef _SC_REGEX_VERSION */
5906 #ifdef _SC_RE_DUP_MAX
5907 if (x == _SC_RE_DUP_MAX)
5908 {*r = Mono_Posix_SysconfName__SC_RE_DUP_MAX; return 0;}
5909 #endif /* ndef _SC_RE_DUP_MAX */
5910 #ifdef _SC_RTSIG_MAX
5911 if (x == _SC_RTSIG_MAX)
5912 {*r = Mono_Posix_SysconfName__SC_RTSIG_MAX; return 0;}
5913 #endif /* ndef _SC_RTSIG_MAX */
5914 #ifdef _SC_SAVED_IDS
5915 if (x == _SC_SAVED_IDS)
5916 {*r = Mono_Posix_SysconfName__SC_SAVED_IDS; return 0;}
5917 #endif /* ndef _SC_SAVED_IDS */
5918 #ifdef _SC_SCHAR_MAX
5919 if (x == _SC_SCHAR_MAX)
5920 {*r = Mono_Posix_SysconfName__SC_SCHAR_MAX; return 0;}
5921 #endif /* ndef _SC_SCHAR_MAX */
5922 #ifdef _SC_SCHAR_MIN
5923 if (x == _SC_SCHAR_MIN)
5924 {*r = Mono_Posix_SysconfName__SC_SCHAR_MIN; return 0;}
5925 #endif /* ndef _SC_SCHAR_MIN */
5927 if (x == _SC_SELECT)
5928 {*r = Mono_Posix_SysconfName__SC_SELECT; return 0;}
5929 #endif /* ndef _SC_SELECT */
5930 #ifdef _SC_SEMAPHORES
5931 if (x == _SC_SEMAPHORES)
5932 {*r = Mono_Posix_SysconfName__SC_SEMAPHORES; return 0;}
5933 #endif /* ndef _SC_SEMAPHORES */
5934 #ifdef _SC_SEM_NSEMS_MAX
5935 if (x == _SC_SEM_NSEMS_MAX)
5936 {*r = Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX; return 0;}
5937 #endif /* ndef _SC_SEM_NSEMS_MAX */
5938 #ifdef _SC_SEM_VALUE_MAX
5939 if (x == _SC_SEM_VALUE_MAX)
5940 {*r = Mono_Posix_SysconfName__SC_SEM_VALUE_MAX; return 0;}
5941 #endif /* ndef _SC_SEM_VALUE_MAX */
5942 #ifdef _SC_SHARED_MEMORY_OBJECTS
5943 if (x == _SC_SHARED_MEMORY_OBJECTS)
5944 {*r = Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS; return 0;}
5945 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
5948 {*r = Mono_Posix_SysconfName__SC_SHELL; return 0;}
5949 #endif /* ndef _SC_SHELL */
5951 if (x == _SC_SHRT_MAX)
5952 {*r = Mono_Posix_SysconfName__SC_SHRT_MAX; return 0;}
5953 #endif /* ndef _SC_SHRT_MAX */
5955 if (x == _SC_SHRT_MIN)
5956 {*r = Mono_Posix_SysconfName__SC_SHRT_MIN; return 0;}
5957 #endif /* ndef _SC_SHRT_MIN */
5959 if (x == _SC_SIGNALS)
5960 {*r = Mono_Posix_SysconfName__SC_SIGNALS; return 0;}
5961 #endif /* ndef _SC_SIGNALS */
5962 #ifdef _SC_SIGQUEUE_MAX
5963 if (x == _SC_SIGQUEUE_MAX)
5964 {*r = Mono_Posix_SysconfName__SC_SIGQUEUE_MAX; return 0;}
5965 #endif /* ndef _SC_SIGQUEUE_MAX */
5966 #ifdef _SC_SINGLE_PROCESS
5967 if (x == _SC_SINGLE_PROCESS)
5968 {*r = Mono_Posix_SysconfName__SC_SINGLE_PROCESS; return 0;}
5969 #endif /* ndef _SC_SINGLE_PROCESS */
5972 {*r = Mono_Posix_SysconfName__SC_SPAWN; return 0;}
5973 #endif /* ndef _SC_SPAWN */
5974 #ifdef _SC_SPIN_LOCKS
5975 if (x == _SC_SPIN_LOCKS)
5976 {*r = Mono_Posix_SysconfName__SC_SPIN_LOCKS; return 0;}
5977 #endif /* ndef _SC_SPIN_LOCKS */
5978 #ifdef _SC_SPORADIC_SERVER
5979 if (x == _SC_SPORADIC_SERVER)
5980 {*r = Mono_Posix_SysconfName__SC_SPORADIC_SERVER; return 0;}
5981 #endif /* ndef _SC_SPORADIC_SERVER */
5982 #ifdef _SC_SSIZE_MAX
5983 if (x == _SC_SSIZE_MAX)
5984 {*r = Mono_Posix_SysconfName__SC_SSIZE_MAX; return 0;}
5985 #endif /* ndef _SC_SSIZE_MAX */
5987 if (x == _SC_STREAMS)
5988 {*r = Mono_Posix_SysconfName__SC_STREAMS; return 0;}
5989 #endif /* ndef _SC_STREAMS */
5990 #ifdef _SC_STREAM_MAX
5991 if (x == _SC_STREAM_MAX)
5992 {*r = Mono_Posix_SysconfName__SC_STREAM_MAX; return 0;}
5993 #endif /* ndef _SC_STREAM_MAX */
5994 #ifdef _SC_SYMLOOP_MAX
5995 if (x == _SC_SYMLOOP_MAX)
5996 {*r = Mono_Posix_SysconfName__SC_SYMLOOP_MAX; return 0;}
5997 #endif /* ndef _SC_SYMLOOP_MAX */
5998 #ifdef _SC_SYNCHRONIZED_IO
5999 if (x == _SC_SYNCHRONIZED_IO)
6000 {*r = Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO; return 0;}
6001 #endif /* ndef _SC_SYNCHRONIZED_IO */
6002 #ifdef _SC_SYSTEM_DATABASE
6003 if (x == _SC_SYSTEM_DATABASE)
6004 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE; return 0;}
6005 #endif /* ndef _SC_SYSTEM_DATABASE */
6006 #ifdef _SC_SYSTEM_DATABASE_R
6007 if (x == _SC_SYSTEM_DATABASE_R)
6008 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R; return 0;}
6009 #endif /* ndef _SC_SYSTEM_DATABASE_R */
6011 if (x == _SC_THREADS)
6012 {*r = Mono_Posix_SysconfName__SC_THREADS; return 0;}
6013 #endif /* ndef _SC_THREADS */
6014 #ifdef _SC_THREAD_ATTR_STACKADDR
6015 if (x == _SC_THREAD_ATTR_STACKADDR)
6016 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR; return 0;}
6017 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
6018 #ifdef _SC_THREAD_ATTR_STACKSIZE
6019 if (x == _SC_THREAD_ATTR_STACKSIZE)
6020 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE; return 0;}
6021 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
6022 #ifdef _SC_THREAD_CPUTIME
6023 if (x == _SC_THREAD_CPUTIME)
6024 {*r = Mono_Posix_SysconfName__SC_THREAD_CPUTIME; return 0;}
6025 #endif /* ndef _SC_THREAD_CPUTIME */
6026 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
6027 if (x == _SC_THREAD_DESTRUCTOR_ITERATIONS)
6028 {*r = Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
6029 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
6030 #ifdef _SC_THREAD_KEYS_MAX
6031 if (x == _SC_THREAD_KEYS_MAX)
6032 {*r = Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX; return 0;}
6033 #endif /* ndef _SC_THREAD_KEYS_MAX */
6034 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
6035 if (x == _SC_THREAD_PRIORITY_SCHEDULING)
6036 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING; return 0;}
6037 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
6038 #ifdef _SC_THREAD_PRIO_INHERIT
6039 if (x == _SC_THREAD_PRIO_INHERIT)
6040 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT; return 0;}
6041 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
6042 #ifdef _SC_THREAD_PRIO_PROTECT
6043 if (x == _SC_THREAD_PRIO_PROTECT)
6044 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT; return 0;}
6045 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
6046 #ifdef _SC_THREAD_PROCESS_SHARED
6047 if (x == _SC_THREAD_PROCESS_SHARED)
6048 {*r = Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED; return 0;}
6049 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
6050 #ifdef _SC_THREAD_SAFE_FUNCTIONS
6051 if (x == _SC_THREAD_SAFE_FUNCTIONS)
6052 {*r = Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS; return 0;}
6053 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
6054 #ifdef _SC_THREAD_SPORADIC_SERVER
6055 if (x == _SC_THREAD_SPORADIC_SERVER)
6056 {*r = Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER; return 0;}
6057 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
6058 #ifdef _SC_THREAD_STACK_MIN
6059 if (x == _SC_THREAD_STACK_MIN)
6060 {*r = Mono_Posix_SysconfName__SC_THREAD_STACK_MIN; return 0;}
6061 #endif /* ndef _SC_THREAD_STACK_MIN */
6062 #ifdef _SC_THREAD_THREADS_MAX
6063 if (x == _SC_THREAD_THREADS_MAX)
6064 {*r = Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX; return 0;}
6065 #endif /* ndef _SC_THREAD_THREADS_MAX */
6067 if (x == _SC_TIMEOUTS)
6068 {*r = Mono_Posix_SysconfName__SC_TIMEOUTS; return 0;}
6069 #endif /* ndef _SC_TIMEOUTS */
6071 if (x == _SC_TIMERS)
6072 {*r = Mono_Posix_SysconfName__SC_TIMERS; return 0;}
6073 #endif /* ndef _SC_TIMERS */
6074 #ifdef _SC_TIMER_MAX
6075 if (x == _SC_TIMER_MAX)
6076 {*r = Mono_Posix_SysconfName__SC_TIMER_MAX; return 0;}
6077 #endif /* ndef _SC_TIMER_MAX */
6080 {*r = Mono_Posix_SysconfName__SC_TRACE; return 0;}
6081 #endif /* ndef _SC_TRACE */
6082 #ifdef _SC_TRACE_EVENT_FILTER
6083 if (x == _SC_TRACE_EVENT_FILTER)
6084 {*r = Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER; return 0;}
6085 #endif /* ndef _SC_TRACE_EVENT_FILTER */
6086 #ifdef _SC_TRACE_INHERIT
6087 if (x == _SC_TRACE_INHERIT)
6088 {*r = Mono_Posix_SysconfName__SC_TRACE_INHERIT; return 0;}
6089 #endif /* ndef _SC_TRACE_INHERIT */
6090 #ifdef _SC_TRACE_LOG
6091 if (x == _SC_TRACE_LOG)
6092 {*r = Mono_Posix_SysconfName__SC_TRACE_LOG; return 0;}
6093 #endif /* ndef _SC_TRACE_LOG */
6094 #ifdef _SC_TTY_NAME_MAX
6095 if (x == _SC_TTY_NAME_MAX)
6096 {*r = Mono_Posix_SysconfName__SC_TTY_NAME_MAX; return 0;}
6097 #endif /* ndef _SC_TTY_NAME_MAX */
6098 #ifdef _SC_TYPED_MEMORY_OBJECTS
6099 if (x == _SC_TYPED_MEMORY_OBJECTS)
6100 {*r = Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS; return 0;}
6101 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
6102 #ifdef _SC_TZNAME_MAX
6103 if (x == _SC_TZNAME_MAX)
6104 {*r = Mono_Posix_SysconfName__SC_TZNAME_MAX; return 0;}
6105 #endif /* ndef _SC_TZNAME_MAX */
6106 #ifdef _SC_T_IOV_MAX
6107 if (x == _SC_T_IOV_MAX)
6108 {*r = Mono_Posix_SysconfName__SC_T_IOV_MAX; return 0;}
6109 #endif /* ndef _SC_T_IOV_MAX */
6110 #ifdef _SC_UCHAR_MAX
6111 if (x == _SC_UCHAR_MAX)
6112 {*r = Mono_Posix_SysconfName__SC_UCHAR_MAX; return 0;}
6113 #endif /* ndef _SC_UCHAR_MAX */
6115 if (x == _SC_UINT_MAX)
6116 {*r = Mono_Posix_SysconfName__SC_UINT_MAX; return 0;}
6117 #endif /* ndef _SC_UINT_MAX */
6118 #ifdef _SC_UIO_MAXIOV
6119 if (x == _SC_UIO_MAXIOV)
6120 {*r = Mono_Posix_SysconfName__SC_UIO_MAXIOV; return 0;}
6121 #endif /* ndef _SC_UIO_MAXIOV */
6122 #ifdef _SC_ULONG_MAX
6123 if (x == _SC_ULONG_MAX)
6124 {*r = Mono_Posix_SysconfName__SC_ULONG_MAX; return 0;}
6125 #endif /* ndef _SC_ULONG_MAX */
6126 #ifdef _SC_USER_GROUPS
6127 if (x == _SC_USER_GROUPS)
6128 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS; return 0;}
6129 #endif /* ndef _SC_USER_GROUPS */
6130 #ifdef _SC_USER_GROUPS_R
6131 if (x == _SC_USER_GROUPS_R)
6132 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS_R; return 0;}
6133 #endif /* ndef _SC_USER_GROUPS_R */
6134 #ifdef _SC_USHRT_MAX
6135 if (x == _SC_USHRT_MAX)
6136 {*r = Mono_Posix_SysconfName__SC_USHRT_MAX; return 0;}
6137 #endif /* ndef _SC_USHRT_MAX */
6138 #ifdef _SC_V6_ILP32_OFF32
6139 if (x == _SC_V6_ILP32_OFF32)
6140 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFF32; return 0;}
6141 #endif /* ndef _SC_V6_ILP32_OFF32 */
6142 #ifdef _SC_V6_ILP32_OFFBIG
6143 if (x == _SC_V6_ILP32_OFFBIG)
6144 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG; return 0;}
6145 #endif /* ndef _SC_V6_ILP32_OFFBIG */
6146 #ifdef _SC_V6_LP64_OFF64
6147 if (x == _SC_V6_LP64_OFF64)
6148 {*r = Mono_Posix_SysconfName__SC_V6_LP64_OFF64; return 0;}
6149 #endif /* ndef _SC_V6_LP64_OFF64 */
6150 #ifdef _SC_V6_LPBIG_OFFBIG
6151 if (x == _SC_V6_LPBIG_OFFBIG)
6152 {*r = Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG; return 0;}
6153 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
6155 if (x == _SC_VERSION)
6156 {*r = Mono_Posix_SysconfName__SC_VERSION; return 0;}
6157 #endif /* ndef _SC_VERSION */
6159 if (x == _SC_WORD_BIT)
6160 {*r = Mono_Posix_SysconfName__SC_WORD_BIT; return 0;}
6161 #endif /* ndef _SC_WORD_BIT */
6162 #ifdef _SC_XBS5_ILP32_OFF32
6163 if (x == _SC_XBS5_ILP32_OFF32)
6164 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32; return 0;}
6165 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
6166 #ifdef _SC_XBS5_ILP32_OFFBIG
6167 if (x == _SC_XBS5_ILP32_OFFBIG)
6168 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG; return 0;}
6169 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
6170 #ifdef _SC_XBS5_LP64_OFF64
6171 if (x == _SC_XBS5_LP64_OFF64)
6172 {*r = Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64; return 0;}
6173 #endif /* ndef _SC_XBS5_LP64_OFF64 */
6174 #ifdef _SC_XBS5_LPBIG_OFFBIG
6175 if (x == _SC_XBS5_LPBIG_OFFBIG)
6176 {*r = Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG; return 0;}
6177 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
6178 #ifdef _SC_XOPEN_CRYPT
6179 if (x == _SC_XOPEN_CRYPT)
6180 {*r = Mono_Posix_SysconfName__SC_XOPEN_CRYPT; return 0;}
6181 #endif /* ndef _SC_XOPEN_CRYPT */
6182 #ifdef _SC_XOPEN_ENH_I18N
6183 if (x == _SC_XOPEN_ENH_I18N)
6184 {*r = Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N; return 0;}
6185 #endif /* ndef _SC_XOPEN_ENH_I18N */
6186 #ifdef _SC_XOPEN_LEGACY
6187 if (x == _SC_XOPEN_LEGACY)
6188 {*r = Mono_Posix_SysconfName__SC_XOPEN_LEGACY; return 0;}
6189 #endif /* ndef _SC_XOPEN_LEGACY */
6190 #ifdef _SC_XOPEN_REALTIME
6191 if (x == _SC_XOPEN_REALTIME)
6192 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME; return 0;}
6193 #endif /* ndef _SC_XOPEN_REALTIME */
6194 #ifdef _SC_XOPEN_REALTIME_THREADS
6195 if (x == _SC_XOPEN_REALTIME_THREADS)
6196 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS; return 0;}
6197 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
6198 #ifdef _SC_XOPEN_SHM
6199 if (x == _SC_XOPEN_SHM)
6200 {*r = Mono_Posix_SysconfName__SC_XOPEN_SHM; return 0;}
6201 #endif /* ndef _SC_XOPEN_SHM */
6202 #ifdef _SC_XOPEN_UNIX
6203 if (x == _SC_XOPEN_UNIX)
6204 {*r = Mono_Posix_SysconfName__SC_XOPEN_UNIX; return 0;}
6205 #endif /* ndef _SC_XOPEN_UNIX */
6206 #ifdef _SC_XOPEN_VERSION
6207 if (x == _SC_XOPEN_VERSION)
6208 {*r = Mono_Posix_SysconfName__SC_XOPEN_VERSION; return 0;}
6209 #endif /* ndef _SC_XOPEN_VERSION */
6210 #ifdef _SC_XOPEN_XCU_VERSION
6211 if (x == _SC_XOPEN_XCU_VERSION)
6212 {*r = Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION; return 0;}
6213 #endif /* ndef _SC_XOPEN_XCU_VERSION */
6214 #ifdef _SC_XOPEN_XPG2
6215 if (x == _SC_XOPEN_XPG2)
6216 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG2; return 0;}
6217 #endif /* ndef _SC_XOPEN_XPG2 */
6218 #ifdef _SC_XOPEN_XPG3
6219 if (x == _SC_XOPEN_XPG3)
6220 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG3; return 0;}
6221 #endif /* ndef _SC_XOPEN_XPG3 */
6222 #ifdef _SC_XOPEN_XPG4
6223 if (x == _SC_XOPEN_XPG4)
6224 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG4; return 0;}
6225 #endif /* ndef _SC_XOPEN_XPG4 */
6226 errno = EINVAL; return -1;
6229 int Mono_Posix_FromSyslogFacility (int x, int *r)
6232 if (x == Mono_Posix_SyslogFacility_LOG_AUTH)
6234 {*r = LOG_AUTH; return 0;}
6235 #else /* def LOG_AUTH */
6236 {errno = EINVAL; return -1;}
6237 #endif /* ndef LOG_AUTH */
6238 if (x == Mono_Posix_SyslogFacility_LOG_AUTHPRIV)
6240 {*r = LOG_AUTHPRIV; return 0;}
6241 #else /* def LOG_AUTHPRIV */
6242 {errno = EINVAL; return -1;}
6243 #endif /* ndef LOG_AUTHPRIV */
6244 if (x == Mono_Posix_SyslogFacility_LOG_CRON)
6246 {*r = LOG_CRON; return 0;}
6247 #else /* def LOG_CRON */
6248 {errno = EINVAL; return -1;}
6249 #endif /* ndef LOG_CRON */
6250 if (x == Mono_Posix_SyslogFacility_LOG_DAEMON)
6252 {*r = LOG_DAEMON; return 0;}
6253 #else /* def LOG_DAEMON */
6254 {errno = EINVAL; return -1;}
6255 #endif /* ndef LOG_DAEMON */
6256 if (x == Mono_Posix_SyslogFacility_LOG_FTP)
6258 {*r = LOG_FTP; return 0;}
6259 #else /* def LOG_FTP */
6260 {errno = EINVAL; return -1;}
6261 #endif /* ndef LOG_FTP */
6262 if (x == Mono_Posix_SyslogFacility_LOG_KERN)
6264 {*r = LOG_KERN; return 0;}
6265 #else /* def LOG_KERN */
6266 {errno = EINVAL; return -1;}
6267 #endif /* ndef LOG_KERN */
6268 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL0)
6270 {*r = LOG_LOCAL0; return 0;}
6271 #else /* def LOG_LOCAL0 */
6272 {errno = EINVAL; return -1;}
6273 #endif /* ndef LOG_LOCAL0 */
6274 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL1)
6276 {*r = LOG_LOCAL1; return 0;}
6277 #else /* def LOG_LOCAL1 */
6278 {errno = EINVAL; return -1;}
6279 #endif /* ndef LOG_LOCAL1 */
6280 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL2)
6282 {*r = LOG_LOCAL2; return 0;}
6283 #else /* def LOG_LOCAL2 */
6284 {errno = EINVAL; return -1;}
6285 #endif /* ndef LOG_LOCAL2 */
6286 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL3)
6288 {*r = LOG_LOCAL3; return 0;}
6289 #else /* def LOG_LOCAL3 */
6290 {errno = EINVAL; return -1;}
6291 #endif /* ndef LOG_LOCAL3 */
6292 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL4)
6294 {*r = LOG_LOCAL4; return 0;}
6295 #else /* def LOG_LOCAL4 */
6296 {errno = EINVAL; return -1;}
6297 #endif /* ndef LOG_LOCAL4 */
6298 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL5)
6300 {*r = LOG_LOCAL5; return 0;}
6301 #else /* def LOG_LOCAL5 */
6302 {errno = EINVAL; return -1;}
6303 #endif /* ndef LOG_LOCAL5 */
6304 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL6)
6306 {*r = LOG_LOCAL6; return 0;}
6307 #else /* def LOG_LOCAL6 */
6308 {errno = EINVAL; return -1;}
6309 #endif /* ndef LOG_LOCAL6 */
6310 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL7)
6312 {*r = LOG_LOCAL7; return 0;}
6313 #else /* def LOG_LOCAL7 */
6314 {errno = EINVAL; return -1;}
6315 #endif /* ndef LOG_LOCAL7 */
6316 if (x == Mono_Posix_SyslogFacility_LOG_LPR)
6318 {*r = LOG_LPR; return 0;}
6319 #else /* def LOG_LPR */
6320 {errno = EINVAL; return -1;}
6321 #endif /* ndef LOG_LPR */
6322 if (x == Mono_Posix_SyslogFacility_LOG_MAIL)
6324 {*r = LOG_MAIL; return 0;}
6325 #else /* def LOG_MAIL */
6326 {errno = EINVAL; return -1;}
6327 #endif /* ndef LOG_MAIL */
6328 if (x == Mono_Posix_SyslogFacility_LOG_NEWS)
6330 {*r = LOG_NEWS; return 0;}
6331 #else /* def LOG_NEWS */
6332 {errno = EINVAL; return -1;}
6333 #endif /* ndef LOG_NEWS */
6334 if (x == Mono_Posix_SyslogFacility_LOG_SYSLOG)
6336 {*r = LOG_SYSLOG; return 0;}
6337 #else /* def LOG_SYSLOG */
6338 {errno = EINVAL; return -1;}
6339 #endif /* ndef LOG_SYSLOG */
6340 if (x == Mono_Posix_SyslogFacility_LOG_USER)
6342 {*r = LOG_USER; return 0;}
6343 #else /* def LOG_USER */
6344 {errno = EINVAL; return -1;}
6345 #endif /* ndef LOG_USER */
6346 if (x == Mono_Posix_SyslogFacility_LOG_UUCP)
6348 {*r = LOG_UUCP; return 0;}
6349 #else /* def LOG_UUCP */
6350 {errno = EINVAL; return -1;}
6351 #endif /* ndef LOG_UUCP */
6354 errno = EINVAL; return -1;
6357 int Mono_Posix_ToSyslogFacility (int x, int *r)
6364 {*r = Mono_Posix_SyslogFacility_LOG_AUTH; return 0;}
6365 #endif /* ndef LOG_AUTH */
6367 if (x == LOG_AUTHPRIV)
6368 {*r = Mono_Posix_SyslogFacility_LOG_AUTHPRIV; return 0;}
6369 #endif /* ndef LOG_AUTHPRIV */
6372 {*r = Mono_Posix_SyslogFacility_LOG_CRON; return 0;}
6373 #endif /* ndef LOG_CRON */
6375 if (x == LOG_DAEMON)
6376 {*r = Mono_Posix_SyslogFacility_LOG_DAEMON; return 0;}
6377 #endif /* ndef LOG_DAEMON */
6380 {*r = Mono_Posix_SyslogFacility_LOG_FTP; return 0;}
6381 #endif /* ndef LOG_FTP */
6384 {*r = Mono_Posix_SyslogFacility_LOG_KERN; return 0;}
6385 #endif /* ndef LOG_KERN */
6387 if (x == LOG_LOCAL0)
6388 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL0; return 0;}
6389 #endif /* ndef LOG_LOCAL0 */
6391 if (x == LOG_LOCAL1)
6392 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL1; return 0;}
6393 #endif /* ndef LOG_LOCAL1 */
6395 if (x == LOG_LOCAL2)
6396 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL2; return 0;}
6397 #endif /* ndef LOG_LOCAL2 */
6399 if (x == LOG_LOCAL3)
6400 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL3; return 0;}
6401 #endif /* ndef LOG_LOCAL3 */
6403 if (x == LOG_LOCAL4)
6404 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL4; return 0;}
6405 #endif /* ndef LOG_LOCAL4 */
6407 if (x == LOG_LOCAL5)
6408 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL5; return 0;}
6409 #endif /* ndef LOG_LOCAL5 */
6411 if (x == LOG_LOCAL6)
6412 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL6; return 0;}
6413 #endif /* ndef LOG_LOCAL6 */
6415 if (x == LOG_LOCAL7)
6416 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL7; return 0;}
6417 #endif /* ndef LOG_LOCAL7 */
6420 {*r = Mono_Posix_SyslogFacility_LOG_LPR; return 0;}
6421 #endif /* ndef LOG_LPR */
6424 {*r = Mono_Posix_SyslogFacility_LOG_MAIL; return 0;}
6425 #endif /* ndef LOG_MAIL */
6428 {*r = Mono_Posix_SyslogFacility_LOG_NEWS; return 0;}
6429 #endif /* ndef LOG_NEWS */
6431 if (x == LOG_SYSLOG)
6432 {*r = Mono_Posix_SyslogFacility_LOG_SYSLOG; return 0;}
6433 #endif /* ndef LOG_SYSLOG */
6436 {*r = Mono_Posix_SyslogFacility_LOG_USER; return 0;}
6437 #endif /* ndef LOG_USER */
6440 {*r = Mono_Posix_SyslogFacility_LOG_UUCP; return 0;}
6441 #endif /* ndef LOG_UUCP */
6442 errno = EINVAL; return -1;
6445 int Mono_Posix_FromSyslogLevel (int x, int *r)
6448 if (x == Mono_Posix_SyslogLevel_LOG_ALERT)
6450 {*r = LOG_ALERT; return 0;}
6451 #else /* def LOG_ALERT */
6452 {errno = EINVAL; return -1;}
6453 #endif /* ndef LOG_ALERT */
6454 if (x == Mono_Posix_SyslogLevel_LOG_CRIT)
6456 {*r = LOG_CRIT; return 0;}
6457 #else /* def LOG_CRIT */
6458 {errno = EINVAL; return -1;}
6459 #endif /* ndef LOG_CRIT */
6460 if (x == Mono_Posix_SyslogLevel_LOG_DEBUG)
6462 {*r = LOG_DEBUG; return 0;}
6463 #else /* def LOG_DEBUG */
6464 {errno = EINVAL; return -1;}
6465 #endif /* ndef LOG_DEBUG */
6466 if (x == Mono_Posix_SyslogLevel_LOG_EMERG)
6468 {*r = LOG_EMERG; return 0;}
6469 #else /* def LOG_EMERG */
6470 {errno = EINVAL; return -1;}
6471 #endif /* ndef LOG_EMERG */
6472 if (x == Mono_Posix_SyslogLevel_LOG_ERR)
6474 {*r = LOG_ERR; return 0;}
6475 #else /* def LOG_ERR */
6476 {errno = EINVAL; return -1;}
6477 #endif /* ndef LOG_ERR */
6478 if (x == Mono_Posix_SyslogLevel_LOG_INFO)
6480 {*r = LOG_INFO; return 0;}
6481 #else /* def LOG_INFO */
6482 {errno = EINVAL; return -1;}
6483 #endif /* ndef LOG_INFO */
6484 if (x == Mono_Posix_SyslogLevel_LOG_NOTICE)
6486 {*r = LOG_NOTICE; return 0;}
6487 #else /* def LOG_NOTICE */
6488 {errno = EINVAL; return -1;}
6489 #endif /* ndef LOG_NOTICE */
6490 if (x == Mono_Posix_SyslogLevel_LOG_WARNING)
6492 {*r = LOG_WARNING; return 0;}
6493 #else /* def LOG_WARNING */
6494 {errno = EINVAL; return -1;}
6495 #endif /* ndef LOG_WARNING */
6498 errno = EINVAL; return -1;
6501 int Mono_Posix_ToSyslogLevel (int x, int *r)
6508 {*r = Mono_Posix_SyslogLevel_LOG_ALERT; return 0;}
6509 #endif /* ndef LOG_ALERT */
6512 {*r = Mono_Posix_SyslogLevel_LOG_CRIT; return 0;}
6513 #endif /* ndef LOG_CRIT */
6516 {*r = Mono_Posix_SyslogLevel_LOG_DEBUG; return 0;}
6517 #endif /* ndef LOG_DEBUG */
6520 {*r = Mono_Posix_SyslogLevel_LOG_EMERG; return 0;}
6521 #endif /* ndef LOG_EMERG */
6524 {*r = Mono_Posix_SyslogLevel_LOG_ERR; return 0;}
6525 #endif /* ndef LOG_ERR */
6528 {*r = Mono_Posix_SyslogLevel_LOG_INFO; return 0;}
6529 #endif /* ndef LOG_INFO */
6531 if (x == LOG_NOTICE)
6532 {*r = Mono_Posix_SyslogLevel_LOG_NOTICE; return 0;}
6533 #endif /* ndef LOG_NOTICE */
6535 if (x == LOG_WARNING)
6536 {*r = Mono_Posix_SyslogLevel_LOG_WARNING; return 0;}
6537 #endif /* ndef LOG_WARNING */
6538 errno = EINVAL; return -1;
6541 int Mono_Posix_FromSyslogOptions (int x, int *r)
6544 if ((x & Mono_Posix_SyslogOptions_LOG_CONS) == Mono_Posix_SyslogOptions_LOG_CONS)
6547 #else /* def LOG_CONS */
6548 {errno = EINVAL; return -1;}
6549 #endif /* ndef LOG_CONS */
6550 if ((x & Mono_Posix_SyslogOptions_LOG_NDELAY) == Mono_Posix_SyslogOptions_LOG_NDELAY)
6553 #else /* def LOG_NDELAY */
6554 {errno = EINVAL; return -1;}
6555 #endif /* ndef LOG_NDELAY */
6556 if ((x & Mono_Posix_SyslogOptions_LOG_NOWAIT) == Mono_Posix_SyslogOptions_LOG_NOWAIT)
6559 #else /* def LOG_NOWAIT */
6560 {errno = EINVAL; return -1;}
6561 #endif /* ndef LOG_NOWAIT */
6562 if ((x & Mono_Posix_SyslogOptions_LOG_ODELAY) == Mono_Posix_SyslogOptions_LOG_ODELAY)
6565 #else /* def LOG_ODELAY */
6566 {errno = EINVAL; return -1;}
6567 #endif /* ndef LOG_ODELAY */
6568 if ((x & Mono_Posix_SyslogOptions_LOG_PERROR) == Mono_Posix_SyslogOptions_LOG_PERROR)
6571 #else /* def LOG_PERROR */
6572 {errno = EINVAL; return -1;}
6573 #endif /* ndef LOG_PERROR */
6574 if ((x & Mono_Posix_SyslogOptions_LOG_PID) == Mono_Posix_SyslogOptions_LOG_PID)
6577 #else /* def LOG_PID */
6578 {errno = EINVAL; return -1;}
6579 #endif /* ndef LOG_PID */
6585 int Mono_Posix_ToSyslogOptions (int x, int *r)
6591 if ((x & LOG_CONS) == LOG_CONS)
6592 *r |= Mono_Posix_SyslogOptions_LOG_CONS;
6593 #endif /* ndef LOG_CONS */
6595 if ((x & LOG_NDELAY) == LOG_NDELAY)
6596 *r |= Mono_Posix_SyslogOptions_LOG_NDELAY;
6597 #endif /* ndef LOG_NDELAY */
6599 if ((x & LOG_NOWAIT) == LOG_NOWAIT)
6600 *r |= Mono_Posix_SyslogOptions_LOG_NOWAIT;
6601 #endif /* ndef LOG_NOWAIT */
6603 if ((x & LOG_ODELAY) == LOG_ODELAY)
6604 *r |= Mono_Posix_SyslogOptions_LOG_ODELAY;
6605 #endif /* ndef LOG_ODELAY */
6607 if ((x & LOG_PERROR) == LOG_PERROR)
6608 *r |= Mono_Posix_SyslogOptions_LOG_PERROR;
6609 #endif /* ndef LOG_PERROR */
6611 if ((x & LOG_PID) == LOG_PID)
6612 *r |= Mono_Posix_SyslogOptions_LOG_PID;
6613 #endif /* ndef LOG_PID */
6618 Mono_Posix_FromTimeval (struct Mono_Posix_Timeval *from, struct timeval *to)
6620 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
6621 _cnm_return_val_if_overflow (suseconds_t, from->tv_usec, -1);
6623 memset (to, 0, sizeof(*to));
6625 to->tv_sec = from->tv_sec;
6626 to->tv_usec = from->tv_usec;
6633 Mono_Posix_ToTimeval (struct timeval *from, struct Mono_Posix_Timeval *to)
6635 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
6636 _cnm_return_val_if_overflow (gint64, from->tv_usec, -1);
6638 memset (to, 0, sizeof(*to));
6640 to->tv_sec = from->tv_sec;
6641 to->tv_usec = from->tv_usec;
6648 Mono_Posix_FromTimezone (struct Mono_Posix_Timezone *from, struct timezone *to)
6650 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6651 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6653 memset (to, 0, sizeof(*to));
6655 to->tz_minuteswest = from->tz_minuteswest;
6656 to->tz_dsttime = from->tz_dsttime;
6663 Mono_Posix_ToTimezone (struct timezone *from, struct Mono_Posix_Timezone *to)
6665 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6666 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6668 memset (to, 0, sizeof(*to));
6670 to->tz_minuteswest = from->tz_minuteswest;
6671 to->tz_dsttime = from->tz_dsttime;
6677 int Mono_Posix_FromWaitOptions (int x, int *r)
6680 if ((x & Mono_Posix_WaitOptions_WNOHANG) == Mono_Posix_WaitOptions_WNOHANG)
6683 #else /* def WNOHANG */
6684 {errno = EINVAL; return -1;}
6685 #endif /* ndef WNOHANG */
6686 if ((x & Mono_Posix_WaitOptions_WUNTRACED) == Mono_Posix_WaitOptions_WUNTRACED)
6689 #else /* def WUNTRACED */
6690 {errno = EINVAL; return -1;}
6691 #endif /* ndef WUNTRACED */
6697 int Mono_Posix_ToWaitOptions (int x, int *r)
6703 if ((x & WNOHANG) == WNOHANG)
6704 *r |= Mono_Posix_WaitOptions_WNOHANG;
6705 #endif /* ndef WNOHANG */
6707 if ((x & WUNTRACED) == WUNTRACED)
6708 *r |= Mono_Posix_WaitOptions_WUNTRACED;
6709 #endif /* ndef WUNTRACED */
6713 int Mono_Posix_FromXattrFlags (int x, int *r)
6716 if ((x & Mono_Posix_XattrFlags_XATTR_AUTO) == Mono_Posix_XattrFlags_XATTR_AUTO)
6719 #else /* def XATTR_AUTO */
6720 {errno = EINVAL; return -1;}
6721 #endif /* ndef XATTR_AUTO */
6722 if ((x & Mono_Posix_XattrFlags_XATTR_CREATE) == Mono_Posix_XattrFlags_XATTR_CREATE)
6725 #else /* def XATTR_CREATE */
6726 {errno = EINVAL; return -1;}
6727 #endif /* ndef XATTR_CREATE */
6728 if ((x & Mono_Posix_XattrFlags_XATTR_REPLACE) == Mono_Posix_XattrFlags_XATTR_REPLACE)
6729 #ifdef XATTR_REPLACE
6730 *r |= XATTR_REPLACE;
6731 #else /* def XATTR_REPLACE */
6732 {errno = EINVAL; return -1;}
6733 #endif /* ndef XATTR_REPLACE */
6739 int Mono_Posix_ToXattrFlags (int x, int *r)
6745 if ((x & XATTR_AUTO) == XATTR_AUTO)
6746 *r |= Mono_Posix_XattrFlags_XATTR_AUTO;
6747 #endif /* ndef XATTR_AUTO */
6749 if ((x & XATTR_CREATE) == XATTR_CREATE)
6750 *r |= Mono_Posix_XattrFlags_XATTR_CREATE;
6751 #endif /* ndef XATTR_CREATE */
6752 #ifdef XATTR_REPLACE
6753 if ((x & XATTR_REPLACE) == XATTR_REPLACE)
6754 *r |= Mono_Posix_XattrFlags_XATTR_REPLACE;
6755 #endif /* ndef XATTR_REPLACE */