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 */
64 #include <errno.h> /* errno, EOVERFLOW */
65 #include <glib.h> /* g* types, g_assert_not_reached() */
67 /* returns TRUE if @type is an unsigned type */
68 #define _cnm_integral_type_is_unsigned(type) \
69 (sizeof(type) == sizeof(gint8) \
70 ? (((type)-1) > G_MAXINT8) \
71 : sizeof(type) == sizeof(gint16) \
72 ? (((type)-1) > G_MAXINT16) \
73 : sizeof(type) == sizeof(gint32) \
74 ? (((type)-1) > G_MAXINT32) \
75 : sizeof(type) == sizeof(gint64) \
76 ? (((type)-1) > G_MAXINT64) \
77 : (g_assert_not_reached (), 0))
79 /* returns the minimum value of @type as a gint64 */
80 #define _cnm_integral_type_min(type) \
81 (_cnm_integral_type_is_unsigned (type) \
83 : sizeof(type) == sizeof(gint8) \
85 : sizeof(type) == sizeof(gint16) \
87 : sizeof(type) == sizeof(gint32) \
89 : sizeof(type) == sizeof(gint64) \
91 : (g_assert_not_reached (), 0))
93 /* returns the maximum value of @type as a guint64 */
94 #define _cnm_integral_type_max(type) \
95 (_cnm_integral_type_is_unsigned (type) \
96 ? sizeof(type) == sizeof(gint8) \
98 : sizeof(type) == sizeof(gint16) \
100 : sizeof(type) == sizeof(gint32) \
102 : sizeof(type) == sizeof(gint64) \
104 : (g_assert_not_reached (), 0) \
105 : sizeof(type) == sizeof(gint8) \
107 : sizeof(type) == sizeof(gint16) \
109 : sizeof(type) == sizeof(gint32) \
111 : sizeof(type) == sizeof(gint64) \
113 : (g_assert_not_reached (), 0))
116 #define _cnm_dump_(to_t,from) \
117 printf ("# %s -> %s: min=%llx; max=%llx; value=%llx; lt=%i; l0=%i; gt=%i; e=%i\n", \
119 (gint64) (_cnm_integral_type_min(to_t)), \
120 (gint64) (_cnm_integral_type_max (to_t)), \
122 (_cnm_integral_type_min (to_t) <= from), \
124 /* (_cnm_integral_type_max (to_t) >= from) */ \
125 (from <= _cnm_integral_type_max (to_t)), \
126 ((_cnm_integral_type_min(to_t) >= from) && \
127 ((from < 0) ? 1 : (from <= _cnm_integral_type_max(to_t)))) \
130 #define _cnm_dump_(to_t, from) do {} while (0)
133 #define _cnm_return_val_if_overflow(to_t,from,val) G_STMT_START { \
134 if (!(_cnm_integral_type_min(to_t) <= from && \
135 ((from < 0) || (from <= _cnm_integral_type_max(to_t))))) { \
136 _cnm_dump_(to_t, from); \
142 int Mono_Posix_FromAccessModes (int x, int *r)
145 if ((x & Mono_Posix_AccessModes_F_OK) == Mono_Posix_AccessModes_F_OK)
149 {errno = EINVAL; return -1;}
150 #endif /* ndef F_OK */
151 if ((x & Mono_Posix_AccessModes_R_OK) == Mono_Posix_AccessModes_R_OK)
155 {errno = EINVAL; return -1;}
156 #endif /* ndef R_OK */
157 if ((x & Mono_Posix_AccessModes_W_OK) == Mono_Posix_AccessModes_W_OK)
161 {errno = EINVAL; return -1;}
162 #endif /* ndef W_OK */
163 if ((x & Mono_Posix_AccessModes_X_OK) == Mono_Posix_AccessModes_X_OK)
167 {errno = EINVAL; return -1;}
168 #endif /* ndef X_OK */
174 int Mono_Posix_ToAccessModes (int x, int *r)
180 if ((x & F_OK) == F_OK)
181 *r |= Mono_Posix_AccessModes_F_OK;
182 #endif /* ndef F_OK */
184 if ((x & R_OK) == R_OK)
185 *r |= Mono_Posix_AccessModes_R_OK;
186 #endif /* ndef R_OK */
188 if ((x & W_OK) == W_OK)
189 *r |= Mono_Posix_AccessModes_W_OK;
190 #endif /* ndef W_OK */
192 if ((x & X_OK) == X_OK)
193 *r |= Mono_Posix_AccessModes_X_OK;
194 #endif /* ndef X_OK */
198 int Mono_Posix_FromConfstrName (int x, int *r)
201 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION)
202 #ifdef _CS_GNU_LIBC_VERSION
203 {*r = _CS_GNU_LIBC_VERSION; return 0;}
204 #else /* def _CS_GNU_LIBC_VERSION */
205 {errno = EINVAL; return -1;}
206 #endif /* ndef _CS_GNU_LIBC_VERSION */
207 if (x == Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION)
208 #ifdef _CS_GNU_LIBPTHREAD_VERSION
209 {*r = _CS_GNU_LIBPTHREAD_VERSION; return 0;}
210 #else /* def _CS_GNU_LIBPTHREAD_VERSION */
211 {errno = EINVAL; return -1;}
212 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
213 if (x == Mono_Posix_ConfstrName__CS_LFS64_CFLAGS)
214 #ifdef _CS_LFS64_CFLAGS
215 {*r = _CS_LFS64_CFLAGS; return 0;}
216 #else /* def _CS_LFS64_CFLAGS */
217 {errno = EINVAL; return -1;}
218 #endif /* ndef _CS_LFS64_CFLAGS */
219 if (x == Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS)
220 #ifdef _CS_LFS64_LDFLAGS
221 {*r = _CS_LFS64_LDFLAGS; return 0;}
222 #else /* def _CS_LFS64_LDFLAGS */
223 {errno = EINVAL; return -1;}
224 #endif /* ndef _CS_LFS64_LDFLAGS */
225 if (x == Mono_Posix_ConfstrName__CS_LFS64_LIBS)
226 #ifdef _CS_LFS64_LIBS
227 {*r = _CS_LFS64_LIBS; return 0;}
228 #else /* def _CS_LFS64_LIBS */
229 {errno = EINVAL; return -1;}
230 #endif /* ndef _CS_LFS64_LIBS */
231 if (x == Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS)
232 #ifdef _CS_LFS64_LINTFLAGS
233 {*r = _CS_LFS64_LINTFLAGS; return 0;}
234 #else /* def _CS_LFS64_LINTFLAGS */
235 {errno = EINVAL; return -1;}
236 #endif /* ndef _CS_LFS64_LINTFLAGS */
237 if (x == Mono_Posix_ConfstrName__CS_LFS_CFLAGS)
238 #ifdef _CS_LFS_CFLAGS
239 {*r = _CS_LFS_CFLAGS; return 0;}
240 #else /* def _CS_LFS_CFLAGS */
241 {errno = EINVAL; return -1;}
242 #endif /* ndef _CS_LFS_CFLAGS */
243 if (x == Mono_Posix_ConfstrName__CS_LFS_LDFLAGS)
244 #ifdef _CS_LFS_LDFLAGS
245 {*r = _CS_LFS_LDFLAGS; return 0;}
246 #else /* def _CS_LFS_LDFLAGS */
247 {errno = EINVAL; return -1;}
248 #endif /* ndef _CS_LFS_LDFLAGS */
249 if (x == Mono_Posix_ConfstrName__CS_LFS_LIBS)
251 {*r = _CS_LFS_LIBS; return 0;}
252 #else /* def _CS_LFS_LIBS */
253 {errno = EINVAL; return -1;}
254 #endif /* ndef _CS_LFS_LIBS */
255 if (x == Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS)
256 #ifdef _CS_LFS_LINTFLAGS
257 {*r = _CS_LFS_LINTFLAGS; return 0;}
258 #else /* def _CS_LFS_LINTFLAGS */
259 {errno = EINVAL; return -1;}
260 #endif /* ndef _CS_LFS_LINTFLAGS */
261 if (x == Mono_Posix_ConfstrName__CS_PATH)
263 {*r = _CS_PATH; return 0;}
264 #else /* def _CS_PATH */
265 {errno = EINVAL; return -1;}
266 #endif /* ndef _CS_PATH */
267 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS)
268 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
269 {*r = _CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
270 #else /* def _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
271 {errno = EINVAL; return -1;}
272 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
273 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
274 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
275 {*r = _CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
276 #else /* def _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
277 {errno = EINVAL; return -1;}
278 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
279 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS)
280 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
281 {*r = _CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
282 #else /* def _CS_POSIX_V6_ILP32_OFF32_LIBS */
283 {errno = EINVAL; return -1;}
284 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
285 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
286 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
287 {*r = _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
288 #else /* def _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
289 {errno = EINVAL; return -1;}
290 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
291 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
292 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
293 {*r = _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
294 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
295 {errno = EINVAL; return -1;}
296 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
297 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
298 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
299 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
300 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
301 {errno = EINVAL; return -1;}
302 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
303 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS)
304 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
305 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
306 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
307 {errno = EINVAL; return -1;}
308 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
309 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
310 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
311 {*r = _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
312 #else /* def _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
313 {errno = EINVAL; return -1;}
314 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
315 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS)
316 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
317 {*r = _CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
318 #else /* def _CS_POSIX_V6_LP64_OFF64_CFLAGS */
319 {errno = EINVAL; return -1;}
320 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
321 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS)
322 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
323 {*r = _CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
324 #else /* def _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
325 {errno = EINVAL; return -1;}
326 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
327 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS)
328 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
329 {*r = _CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
330 #else /* def _CS_POSIX_V6_LP64_OFF64_LIBS */
331 {errno = EINVAL; return -1;}
332 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
333 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
334 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
335 {*r = _CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
336 #else /* def _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
337 {errno = EINVAL; return -1;}
338 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
339 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
340 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
341 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
342 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
343 {errno = EINVAL; return -1;}
344 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
345 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
346 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
347 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
348 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
349 {errno = EINVAL; return -1;}
350 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
351 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
352 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
353 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
354 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
355 {errno = EINVAL; return -1;}
356 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
357 if (x == Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
358 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
359 {*r = _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
360 #else /* def _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
361 {errno = EINVAL; return -1;}
362 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
363 if (x == Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS)
364 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
365 {*r = _CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
366 #else /* def _CS_V6_WIDTH_RESTRICTED_ENVS */
367 {errno = EINVAL; return -1;}
368 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
369 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS)
370 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
371 {*r = _CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
372 #else /* def _CS_XBS5_ILP32_OFF32_CFLAGS */
373 {errno = EINVAL; return -1;}
374 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
375 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS)
376 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
377 {*r = _CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
378 #else /* def _CS_XBS5_ILP32_OFF32_LDFLAGS */
379 {errno = EINVAL; return -1;}
380 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
381 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS)
382 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
383 {*r = _CS_XBS5_ILP32_OFF32_LIBS; return 0;}
384 #else /* def _CS_XBS5_ILP32_OFF32_LIBS */
385 {errno = EINVAL; return -1;}
386 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
387 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS)
388 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
389 {*r = _CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
390 #else /* def _CS_XBS5_ILP32_OFF32_LINTFLAGS */
391 {errno = EINVAL; return -1;}
392 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
393 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS)
394 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
395 {*r = _CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
396 #else /* def _CS_XBS5_ILP32_OFFBIG_CFLAGS */
397 {errno = EINVAL; return -1;}
398 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
399 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS)
400 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
401 {*r = _CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
402 #else /* def _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
403 {errno = EINVAL; return -1;}
404 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
405 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS)
406 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
407 {*r = _CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
408 #else /* def _CS_XBS5_ILP32_OFFBIG_LIBS */
409 {errno = EINVAL; return -1;}
410 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
411 if (x == Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
412 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
413 {*r = _CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
414 #else /* def _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
415 {errno = EINVAL; return -1;}
416 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
417 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS)
418 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
419 {*r = _CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
420 #else /* def _CS_XBS5_LP64_OFF64_CFLAGS */
421 {errno = EINVAL; return -1;}
422 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
423 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS)
424 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
425 {*r = _CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
426 #else /* def _CS_XBS5_LP64_OFF64_LDFLAGS */
427 {errno = EINVAL; return -1;}
428 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
429 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS)
430 #ifdef _CS_XBS5_LP64_OFF64_LIBS
431 {*r = _CS_XBS5_LP64_OFF64_LIBS; return 0;}
432 #else /* def _CS_XBS5_LP64_OFF64_LIBS */
433 {errno = EINVAL; return -1;}
434 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
435 if (x == Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS)
436 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
437 {*r = _CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
438 #else /* def _CS_XBS5_LP64_OFF64_LINTFLAGS */
439 {errno = EINVAL; return -1;}
440 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
441 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS)
442 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
443 {*r = _CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
444 #else /* def _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
445 {errno = EINVAL; return -1;}
446 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
447 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
448 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
449 {*r = _CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
450 #else /* def _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
451 {errno = EINVAL; return -1;}
452 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
453 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS)
454 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
455 {*r = _CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
456 #else /* def _CS_XBS5_LPBIG_OFFBIG_LIBS */
457 {errno = EINVAL; return -1;}
458 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
459 if (x == Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
460 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
461 {*r = _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
462 #else /* def _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
463 {errno = EINVAL; return -1;}
464 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
467 errno = EINVAL; return -1;
470 int Mono_Posix_ToConfstrName (int x, int *r)
475 #ifdef _CS_GNU_LIBC_VERSION
476 if (x == _CS_GNU_LIBC_VERSION)
477 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBC_VERSION; return 0;}
478 #endif /* ndef _CS_GNU_LIBC_VERSION */
479 #ifdef _CS_GNU_LIBPTHREAD_VERSION
480 if (x == _CS_GNU_LIBPTHREAD_VERSION)
481 {*r = Mono_Posix_ConfstrName__CS_GNU_LIBPTHREAD_VERSION; return 0;}
482 #endif /* ndef _CS_GNU_LIBPTHREAD_VERSION */
483 #ifdef _CS_LFS64_CFLAGS
484 if (x == _CS_LFS64_CFLAGS)
485 {*r = Mono_Posix_ConfstrName__CS_LFS64_CFLAGS; return 0;}
486 #endif /* ndef _CS_LFS64_CFLAGS */
487 #ifdef _CS_LFS64_LDFLAGS
488 if (x == _CS_LFS64_LDFLAGS)
489 {*r = Mono_Posix_ConfstrName__CS_LFS64_LDFLAGS; return 0;}
490 #endif /* ndef _CS_LFS64_LDFLAGS */
491 #ifdef _CS_LFS64_LIBS
492 if (x == _CS_LFS64_LIBS)
493 {*r = Mono_Posix_ConfstrName__CS_LFS64_LIBS; return 0;}
494 #endif /* ndef _CS_LFS64_LIBS */
495 #ifdef _CS_LFS64_LINTFLAGS
496 if (x == _CS_LFS64_LINTFLAGS)
497 {*r = Mono_Posix_ConfstrName__CS_LFS64_LINTFLAGS; return 0;}
498 #endif /* ndef _CS_LFS64_LINTFLAGS */
499 #ifdef _CS_LFS_CFLAGS
500 if (x == _CS_LFS_CFLAGS)
501 {*r = Mono_Posix_ConfstrName__CS_LFS_CFLAGS; return 0;}
502 #endif /* ndef _CS_LFS_CFLAGS */
503 #ifdef _CS_LFS_LDFLAGS
504 if (x == _CS_LFS_LDFLAGS)
505 {*r = Mono_Posix_ConfstrName__CS_LFS_LDFLAGS; return 0;}
506 #endif /* ndef _CS_LFS_LDFLAGS */
508 if (x == _CS_LFS_LIBS)
509 {*r = Mono_Posix_ConfstrName__CS_LFS_LIBS; return 0;}
510 #endif /* ndef _CS_LFS_LIBS */
511 #ifdef _CS_LFS_LINTFLAGS
512 if (x == _CS_LFS_LINTFLAGS)
513 {*r = Mono_Posix_ConfstrName__CS_LFS_LINTFLAGS; return 0;}
514 #endif /* ndef _CS_LFS_LINTFLAGS */
517 {*r = Mono_Posix_ConfstrName__CS_PATH; return 0;}
518 #endif /* ndef _CS_PATH */
519 #ifdef _CS_POSIX_V6_ILP32_OFF32_CFLAGS
520 if (x == _CS_POSIX_V6_ILP32_OFF32_CFLAGS)
521 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_CFLAGS; return 0;}
522 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_CFLAGS */
523 #ifdef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS
524 if (x == _CS_POSIX_V6_ILP32_OFF32_LDFLAGS)
525 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LDFLAGS; return 0;}
526 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LDFLAGS */
527 #ifdef _CS_POSIX_V6_ILP32_OFF32_LIBS
528 if (x == _CS_POSIX_V6_ILP32_OFF32_LIBS)
529 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LIBS; return 0;}
530 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LIBS */
531 #ifdef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS
532 if (x == _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS)
533 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; return 0;}
534 #endif /* ndef _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS */
535 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS
536 if (x == _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS)
537 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; return 0;}
538 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS */
539 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS
540 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS)
541 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; return 0;}
542 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS */
543 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LIBS
544 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LIBS)
545 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LIBS; return 0;}
546 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LIBS */
547 #ifdef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS
548 if (x == _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS)
549 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; return 0;}
550 #endif /* ndef _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS */
551 #ifdef _CS_POSIX_V6_LP64_OFF64_CFLAGS
552 if (x == _CS_POSIX_V6_LP64_OFF64_CFLAGS)
553 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_CFLAGS; return 0;}
554 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_CFLAGS */
555 #ifdef _CS_POSIX_V6_LP64_OFF64_LDFLAGS
556 if (x == _CS_POSIX_V6_LP64_OFF64_LDFLAGS)
557 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LDFLAGS; return 0;}
558 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LDFLAGS */
559 #ifdef _CS_POSIX_V6_LP64_OFF64_LIBS
560 if (x == _CS_POSIX_V6_LP64_OFF64_LIBS)
561 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LIBS; return 0;}
562 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LIBS */
563 #ifdef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS
564 if (x == _CS_POSIX_V6_LP64_OFF64_LINTFLAGS)
565 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LP64_OFF64_LINTFLAGS; return 0;}
566 #endif /* ndef _CS_POSIX_V6_LP64_OFF64_LINTFLAGS */
567 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS
568 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS)
569 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; return 0;}
570 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS */
571 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS
572 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS)
573 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; return 0;}
574 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS */
575 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS
576 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LIBS)
577 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LIBS; return 0;}
578 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LIBS */
579 #ifdef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS
580 if (x == _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS)
581 {*r = Mono_Posix_ConfstrName__CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; return 0;}
582 #endif /* ndef _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS */
583 #ifdef _CS_V6_WIDTH_RESTRICTED_ENVS
584 if (x == _CS_V6_WIDTH_RESTRICTED_ENVS)
585 {*r = Mono_Posix_ConfstrName__CS_V6_WIDTH_RESTRICTED_ENVS; return 0;}
586 #endif /* ndef _CS_V6_WIDTH_RESTRICTED_ENVS */
587 #ifdef _CS_XBS5_ILP32_OFF32_CFLAGS
588 if (x == _CS_XBS5_ILP32_OFF32_CFLAGS)
589 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_CFLAGS; return 0;}
590 #endif /* ndef _CS_XBS5_ILP32_OFF32_CFLAGS */
591 #ifdef _CS_XBS5_ILP32_OFF32_LDFLAGS
592 if (x == _CS_XBS5_ILP32_OFF32_LDFLAGS)
593 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LDFLAGS; return 0;}
594 #endif /* ndef _CS_XBS5_ILP32_OFF32_LDFLAGS */
595 #ifdef _CS_XBS5_ILP32_OFF32_LIBS
596 if (x == _CS_XBS5_ILP32_OFF32_LIBS)
597 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LIBS; return 0;}
598 #endif /* ndef _CS_XBS5_ILP32_OFF32_LIBS */
599 #ifdef _CS_XBS5_ILP32_OFF32_LINTFLAGS
600 if (x == _CS_XBS5_ILP32_OFF32_LINTFLAGS)
601 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFF32_LINTFLAGS; return 0;}
602 #endif /* ndef _CS_XBS5_ILP32_OFF32_LINTFLAGS */
603 #ifdef _CS_XBS5_ILP32_OFFBIG_CFLAGS
604 if (x == _CS_XBS5_ILP32_OFFBIG_CFLAGS)
605 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_CFLAGS; return 0;}
606 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_CFLAGS */
607 #ifdef _CS_XBS5_ILP32_OFFBIG_LDFLAGS
608 if (x == _CS_XBS5_ILP32_OFFBIG_LDFLAGS)
609 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LDFLAGS; return 0;}
610 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LDFLAGS */
611 #ifdef _CS_XBS5_ILP32_OFFBIG_LIBS
612 if (x == _CS_XBS5_ILP32_OFFBIG_LIBS)
613 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LIBS; return 0;}
614 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LIBS */
615 #ifdef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS
616 if (x == _CS_XBS5_ILP32_OFFBIG_LINTFLAGS)
617 {*r = Mono_Posix_ConfstrName__CS_XBS5_ILP32_OFFBIG_LINTFLAGS; return 0;}
618 #endif /* ndef _CS_XBS5_ILP32_OFFBIG_LINTFLAGS */
619 #ifdef _CS_XBS5_LP64_OFF64_CFLAGS
620 if (x == _CS_XBS5_LP64_OFF64_CFLAGS)
621 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_CFLAGS; return 0;}
622 #endif /* ndef _CS_XBS5_LP64_OFF64_CFLAGS */
623 #ifdef _CS_XBS5_LP64_OFF64_LDFLAGS
624 if (x == _CS_XBS5_LP64_OFF64_LDFLAGS)
625 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LDFLAGS; return 0;}
626 #endif /* ndef _CS_XBS5_LP64_OFF64_LDFLAGS */
627 #ifdef _CS_XBS5_LP64_OFF64_LIBS
628 if (x == _CS_XBS5_LP64_OFF64_LIBS)
629 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LIBS; return 0;}
630 #endif /* ndef _CS_XBS5_LP64_OFF64_LIBS */
631 #ifdef _CS_XBS5_LP64_OFF64_LINTFLAGS
632 if (x == _CS_XBS5_LP64_OFF64_LINTFLAGS)
633 {*r = Mono_Posix_ConfstrName__CS_XBS5_LP64_OFF64_LINTFLAGS; return 0;}
634 #endif /* ndef _CS_XBS5_LP64_OFF64_LINTFLAGS */
635 #ifdef _CS_XBS5_LPBIG_OFFBIG_CFLAGS
636 if (x == _CS_XBS5_LPBIG_OFFBIG_CFLAGS)
637 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_CFLAGS; return 0;}
638 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_CFLAGS */
639 #ifdef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS
640 if (x == _CS_XBS5_LPBIG_OFFBIG_LDFLAGS)
641 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LDFLAGS; return 0;}
642 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LDFLAGS */
643 #ifdef _CS_XBS5_LPBIG_OFFBIG_LIBS
644 if (x == _CS_XBS5_LPBIG_OFFBIG_LIBS)
645 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LIBS; return 0;}
646 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LIBS */
647 #ifdef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS
648 if (x == _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS)
649 {*r = Mono_Posix_ConfstrName__CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; return 0;}
650 #endif /* ndef _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS */
651 errno = EINVAL; return -1;
654 int Mono_Posix_FromDirectoryNotifyFlags (int x, int *r)
657 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ACCESS) == Mono_Posix_DirectoryNotifyFlags_DN_ACCESS)
660 #else /* def DN_ACCESS */
661 {errno = EINVAL; return -1;}
662 #endif /* ndef DN_ACCESS */
663 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB) == Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB)
666 #else /* def DN_ATTRIB */
667 {errno = EINVAL; return -1;}
668 #endif /* ndef DN_ATTRIB */
669 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_CREATE) == Mono_Posix_DirectoryNotifyFlags_DN_CREATE)
672 #else /* def DN_CREATE */
673 {errno = EINVAL; return -1;}
674 #endif /* ndef DN_CREATE */
675 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_DELETE) == Mono_Posix_DirectoryNotifyFlags_DN_DELETE)
678 #else /* def DN_DELETE */
679 {errno = EINVAL; return -1;}
680 #endif /* ndef DN_DELETE */
681 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MODIFY) == Mono_Posix_DirectoryNotifyFlags_DN_MODIFY)
684 #else /* def DN_MODIFY */
685 {errno = EINVAL; return -1;}
686 #endif /* ndef DN_MODIFY */
687 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT) == Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT)
690 #else /* def DN_MULTISHOT */
691 {errno = EINVAL; return -1;}
692 #endif /* ndef DN_MULTISHOT */
693 if ((x & Mono_Posix_DirectoryNotifyFlags_DN_RENAME) == Mono_Posix_DirectoryNotifyFlags_DN_RENAME)
696 #else /* def DN_RENAME */
697 {errno = EINVAL; return -1;}
698 #endif /* ndef DN_RENAME */
704 int Mono_Posix_ToDirectoryNotifyFlags (int x, int *r)
710 if ((x & DN_ACCESS) == DN_ACCESS)
711 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ACCESS;
712 #endif /* ndef DN_ACCESS */
714 if ((x & DN_ATTRIB) == DN_ATTRIB)
715 *r |= Mono_Posix_DirectoryNotifyFlags_DN_ATTRIB;
716 #endif /* ndef DN_ATTRIB */
718 if ((x & DN_CREATE) == DN_CREATE)
719 *r |= Mono_Posix_DirectoryNotifyFlags_DN_CREATE;
720 #endif /* ndef DN_CREATE */
722 if ((x & DN_DELETE) == DN_DELETE)
723 *r |= Mono_Posix_DirectoryNotifyFlags_DN_DELETE;
724 #endif /* ndef DN_DELETE */
726 if ((x & DN_MODIFY) == DN_MODIFY)
727 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MODIFY;
728 #endif /* ndef DN_MODIFY */
730 if ((x & DN_MULTISHOT) == DN_MULTISHOT)
731 *r |= Mono_Posix_DirectoryNotifyFlags_DN_MULTISHOT;
732 #endif /* ndef DN_MULTISHOT */
734 if ((x & DN_RENAME) == DN_RENAME)
735 *r |= Mono_Posix_DirectoryNotifyFlags_DN_RENAME;
736 #endif /* ndef DN_RENAME */
740 int Mono_Posix_FromErrno (int x, int *r)
743 if (x == Mono_Posix_Errno_E2BIG)
745 {*r = E2BIG; return 0;}
746 #else /* def E2BIG */
747 {errno = EINVAL; return -1;}
748 #endif /* ndef E2BIG */
749 if (x == Mono_Posix_Errno_EACCES)
751 {*r = EACCES; return 0;}
752 #else /* def EACCES */
753 {errno = EINVAL; return -1;}
754 #endif /* ndef EACCES */
755 if (x == Mono_Posix_Errno_EADDRINUSE)
757 {*r = EADDRINUSE; return 0;}
758 #else /* def EADDRINUSE */
759 {errno = EINVAL; return -1;}
760 #endif /* ndef EADDRINUSE */
761 if (x == Mono_Posix_Errno_EADDRNOTAVAIL)
763 {*r = EADDRNOTAVAIL; return 0;}
764 #else /* def EADDRNOTAVAIL */
765 {errno = EINVAL; return -1;}
766 #endif /* ndef EADDRNOTAVAIL */
767 if (x == Mono_Posix_Errno_EADV)
769 {*r = EADV; return 0;}
771 {errno = EINVAL; return -1;}
772 #endif /* ndef EADV */
773 if (x == Mono_Posix_Errno_EAFNOSUPPORT)
775 {*r = EAFNOSUPPORT; return 0;}
776 #else /* def EAFNOSUPPORT */
777 {errno = EINVAL; return -1;}
778 #endif /* ndef EAFNOSUPPORT */
779 if (x == Mono_Posix_Errno_EAGAIN)
781 {*r = EAGAIN; return 0;}
782 #else /* def EAGAIN */
783 {errno = EINVAL; return -1;}
784 #endif /* ndef EAGAIN */
785 if (x == Mono_Posix_Errno_EALREADY)
787 {*r = EALREADY; return 0;}
788 #else /* def EALREADY */
789 {errno = EINVAL; return -1;}
790 #endif /* ndef EALREADY */
791 if (x == Mono_Posix_Errno_EBADE)
793 {*r = EBADE; return 0;}
794 #else /* def EBADE */
795 {errno = EINVAL; return -1;}
796 #endif /* ndef EBADE */
797 if (x == Mono_Posix_Errno_EBADF)
799 {*r = EBADF; return 0;}
800 #else /* def EBADF */
801 {errno = EINVAL; return -1;}
802 #endif /* ndef EBADF */
803 if (x == Mono_Posix_Errno_EBADFD)
805 {*r = EBADFD; return 0;}
806 #else /* def EBADFD */
807 {errno = EINVAL; return -1;}
808 #endif /* ndef EBADFD */
809 if (x == Mono_Posix_Errno_EBADMSG)
811 {*r = EBADMSG; return 0;}
812 #else /* def EBADMSG */
813 {errno = EINVAL; return -1;}
814 #endif /* ndef EBADMSG */
815 if (x == Mono_Posix_Errno_EBADR)
817 {*r = EBADR; return 0;}
818 #else /* def EBADR */
819 {errno = EINVAL; return -1;}
820 #endif /* ndef EBADR */
821 if (x == Mono_Posix_Errno_EBADRQC)
823 {*r = EBADRQC; return 0;}
824 #else /* def EBADRQC */
825 {errno = EINVAL; return -1;}
826 #endif /* ndef EBADRQC */
827 if (x == Mono_Posix_Errno_EBADSLT)
829 {*r = EBADSLT; return 0;}
830 #else /* def EBADSLT */
831 {errno = EINVAL; return -1;}
832 #endif /* ndef EBADSLT */
833 if (x == Mono_Posix_Errno_EBFONT)
835 {*r = EBFONT; return 0;}
836 #else /* def EBFONT */
837 {errno = EINVAL; return -1;}
838 #endif /* ndef EBFONT */
839 if (x == Mono_Posix_Errno_EBUSY)
841 {*r = EBUSY; return 0;}
842 #else /* def EBUSY */
843 {errno = EINVAL; return -1;}
844 #endif /* ndef EBUSY */
845 if (x == Mono_Posix_Errno_ECHILD)
847 {*r = ECHILD; return 0;}
848 #else /* def ECHILD */
849 {errno = EINVAL; return -1;}
850 #endif /* ndef ECHILD */
851 if (x == Mono_Posix_Errno_ECHRNG)
853 {*r = ECHRNG; return 0;}
854 #else /* def ECHRNG */
855 {errno = EINVAL; return -1;}
856 #endif /* ndef ECHRNG */
857 if (x == Mono_Posix_Errno_ECOMM)
859 {*r = ECOMM; return 0;}
860 #else /* def ECOMM */
861 {errno = EINVAL; return -1;}
862 #endif /* ndef ECOMM */
863 if (x == Mono_Posix_Errno_ECONNABORTED)
865 {*r = ECONNABORTED; return 0;}
866 #else /* def ECONNABORTED */
867 {errno = EINVAL; return -1;}
868 #endif /* ndef ECONNABORTED */
869 if (x == Mono_Posix_Errno_ECONNREFUSED)
871 {*r = ECONNREFUSED; return 0;}
872 #else /* def ECONNREFUSED */
873 {errno = EINVAL; return -1;}
874 #endif /* ndef ECONNREFUSED */
875 if (x == Mono_Posix_Errno_ECONNRESET)
877 {*r = ECONNRESET; return 0;}
878 #else /* def ECONNRESET */
879 {errno = EINVAL; return -1;}
880 #endif /* ndef ECONNRESET */
881 if (x == Mono_Posix_Errno_EDEADLK)
883 {*r = EDEADLK; return 0;}
884 #else /* def EDEADLK */
885 {errno = EINVAL; return -1;}
886 #endif /* ndef EDEADLK */
887 if (x == Mono_Posix_Errno_EDEADLOCK)
889 {*r = EDEADLOCK; return 0;}
890 #else /* def EDEADLOCK */
891 {errno = EINVAL; return -1;}
892 #endif /* ndef EDEADLOCK */
893 if (x == Mono_Posix_Errno_EDESTADDRREQ)
895 {*r = EDESTADDRREQ; return 0;}
896 #else /* def EDESTADDRREQ */
897 {errno = EINVAL; return -1;}
898 #endif /* ndef EDESTADDRREQ */
899 if (x == Mono_Posix_Errno_EDOM)
901 {*r = EDOM; return 0;}
903 {errno = EINVAL; return -1;}
904 #endif /* ndef EDOM */
905 if (x == Mono_Posix_Errno_EDOTDOT)
907 {*r = EDOTDOT; return 0;}
908 #else /* def EDOTDOT */
909 {errno = EINVAL; return -1;}
910 #endif /* ndef EDOTDOT */
911 if (x == Mono_Posix_Errno_EDQUOT)
913 {*r = EDQUOT; return 0;}
914 #else /* def EDQUOT */
915 {errno = EINVAL; return -1;}
916 #endif /* ndef EDQUOT */
917 if (x == Mono_Posix_Errno_EEXIST)
919 {*r = EEXIST; return 0;}
920 #else /* def EEXIST */
921 {errno = EINVAL; return -1;}
922 #endif /* ndef EEXIST */
923 if (x == Mono_Posix_Errno_EFAULT)
925 {*r = EFAULT; return 0;}
926 #else /* def EFAULT */
927 {errno = EINVAL; return -1;}
928 #endif /* ndef EFAULT */
929 if (x == Mono_Posix_Errno_EFBIG)
931 {*r = EFBIG; return 0;}
932 #else /* def EFBIG */
933 {errno = EINVAL; return -1;}
934 #endif /* ndef EFBIG */
935 if (x == Mono_Posix_Errno_EHOSTDOWN)
937 {*r = EHOSTDOWN; return 0;}
938 #else /* def EHOSTDOWN */
939 {errno = EINVAL; return -1;}
940 #endif /* ndef EHOSTDOWN */
941 if (x == Mono_Posix_Errno_EHOSTUNREACH)
943 {*r = EHOSTUNREACH; return 0;}
944 #else /* def EHOSTUNREACH */
945 {errno = EINVAL; return -1;}
946 #endif /* ndef EHOSTUNREACH */
947 if (x == Mono_Posix_Errno_EIDRM)
949 {*r = EIDRM; return 0;}
950 #else /* def EIDRM */
951 {errno = EINVAL; return -1;}
952 #endif /* ndef EIDRM */
953 if (x == Mono_Posix_Errno_EILSEQ)
955 {*r = EILSEQ; return 0;}
956 #else /* def EILSEQ */
957 {errno = EINVAL; return -1;}
958 #endif /* ndef EILSEQ */
959 if (x == Mono_Posix_Errno_EINPROGRESS)
961 {*r = EINPROGRESS; return 0;}
962 #else /* def EINPROGRESS */
963 {errno = EINVAL; return -1;}
964 #endif /* ndef EINPROGRESS */
965 if (x == Mono_Posix_Errno_EINTR)
967 {*r = EINTR; return 0;}
968 #else /* def EINTR */
969 {errno = EINVAL; return -1;}
970 #endif /* ndef EINTR */
971 if (x == Mono_Posix_Errno_EINVAL)
973 {*r = EINVAL; return 0;}
974 #else /* def EINVAL */
975 {errno = EINVAL; return -1;}
976 #endif /* ndef EINVAL */
977 if (x == Mono_Posix_Errno_EIO)
979 {*r = EIO; return 0;}
981 {errno = EINVAL; return -1;}
982 #endif /* ndef EIO */
983 if (x == Mono_Posix_Errno_EISCONN)
985 {*r = EISCONN; return 0;}
986 #else /* def EISCONN */
987 {errno = EINVAL; return -1;}
988 #endif /* ndef EISCONN */
989 if (x == Mono_Posix_Errno_EISDIR)
991 {*r = EISDIR; return 0;}
992 #else /* def EISDIR */
993 {errno = EINVAL; return -1;}
994 #endif /* ndef EISDIR */
995 if (x == Mono_Posix_Errno_EISNAM)
997 {*r = EISNAM; return 0;}
998 #else /* def EISNAM */
999 {errno = EINVAL; return -1;}
1000 #endif /* ndef EISNAM */
1001 if (x == Mono_Posix_Errno_EL2HLT)
1003 {*r = EL2HLT; return 0;}
1004 #else /* def EL2HLT */
1005 {errno = EINVAL; return -1;}
1006 #endif /* ndef EL2HLT */
1007 if (x == Mono_Posix_Errno_EL2NSYNC)
1009 {*r = EL2NSYNC; return 0;}
1010 #else /* def EL2NSYNC */
1011 {errno = EINVAL; return -1;}
1012 #endif /* ndef EL2NSYNC */
1013 if (x == Mono_Posix_Errno_EL3HLT)
1015 {*r = EL3HLT; return 0;}
1016 #else /* def EL3HLT */
1017 {errno = EINVAL; return -1;}
1018 #endif /* ndef EL3HLT */
1019 if (x == Mono_Posix_Errno_EL3RST)
1021 {*r = EL3RST; return 0;}
1022 #else /* def EL3RST */
1023 {errno = EINVAL; return -1;}
1024 #endif /* ndef EL3RST */
1025 if (x == Mono_Posix_Errno_ELIBACC)
1027 {*r = ELIBACC; return 0;}
1028 #else /* def ELIBACC */
1029 {errno = EINVAL; return -1;}
1030 #endif /* ndef ELIBACC */
1031 if (x == Mono_Posix_Errno_ELIBBAD)
1033 {*r = ELIBBAD; return 0;}
1034 #else /* def ELIBBAD */
1035 {errno = EINVAL; return -1;}
1036 #endif /* ndef ELIBBAD */
1037 if (x == Mono_Posix_Errno_ELIBEXEC)
1039 {*r = ELIBEXEC; return 0;}
1040 #else /* def ELIBEXEC */
1041 {errno = EINVAL; return -1;}
1042 #endif /* ndef ELIBEXEC */
1043 if (x == Mono_Posix_Errno_ELIBMAX)
1045 {*r = ELIBMAX; return 0;}
1046 #else /* def ELIBMAX */
1047 {errno = EINVAL; return -1;}
1048 #endif /* ndef ELIBMAX */
1049 if (x == Mono_Posix_Errno_ELIBSCN)
1051 {*r = ELIBSCN; return 0;}
1052 #else /* def ELIBSCN */
1053 {errno = EINVAL; return -1;}
1054 #endif /* ndef ELIBSCN */
1055 if (x == Mono_Posix_Errno_ELNRNG)
1057 {*r = ELNRNG; return 0;}
1058 #else /* def ELNRNG */
1059 {errno = EINVAL; return -1;}
1060 #endif /* ndef ELNRNG */
1061 if (x == Mono_Posix_Errno_ELOOP)
1063 {*r = ELOOP; return 0;}
1064 #else /* def ELOOP */
1065 {errno = EINVAL; return -1;}
1066 #endif /* ndef ELOOP */
1067 if (x == Mono_Posix_Errno_EMEDIUMTYPE)
1069 {*r = EMEDIUMTYPE; return 0;}
1070 #else /* def EMEDIUMTYPE */
1071 {errno = EINVAL; return -1;}
1072 #endif /* ndef EMEDIUMTYPE */
1073 if (x == Mono_Posix_Errno_EMFILE)
1075 {*r = EMFILE; return 0;}
1076 #else /* def EMFILE */
1077 {errno = EINVAL; return -1;}
1078 #endif /* ndef EMFILE */
1079 if (x == Mono_Posix_Errno_EMLINK)
1081 {*r = EMLINK; return 0;}
1082 #else /* def EMLINK */
1083 {errno = EINVAL; return -1;}
1084 #endif /* ndef EMLINK */
1085 if (x == Mono_Posix_Errno_EMSGSIZE)
1087 {*r = EMSGSIZE; return 0;}
1088 #else /* def EMSGSIZE */
1089 {errno = EINVAL; return -1;}
1090 #endif /* ndef EMSGSIZE */
1091 if (x == Mono_Posix_Errno_EMULTIHOP)
1093 {*r = EMULTIHOP; return 0;}
1094 #else /* def EMULTIHOP */
1095 {errno = EINVAL; return -1;}
1096 #endif /* ndef EMULTIHOP */
1097 if (x == Mono_Posix_Errno_ENAMETOOLONG)
1099 {*r = ENAMETOOLONG; return 0;}
1100 #else /* def ENAMETOOLONG */
1101 {errno = EINVAL; return -1;}
1102 #endif /* ndef ENAMETOOLONG */
1103 if (x == Mono_Posix_Errno_ENAVAIL)
1105 {*r = ENAVAIL; return 0;}
1106 #else /* def ENAVAIL */
1107 {errno = EINVAL; return -1;}
1108 #endif /* ndef ENAVAIL */
1109 if (x == Mono_Posix_Errno_ENETDOWN)
1111 {*r = ENETDOWN; return 0;}
1112 #else /* def ENETDOWN */
1113 {errno = EINVAL; return -1;}
1114 #endif /* ndef ENETDOWN */
1115 if (x == Mono_Posix_Errno_ENETRESET)
1117 {*r = ENETRESET; return 0;}
1118 #else /* def ENETRESET */
1119 {errno = EINVAL; return -1;}
1120 #endif /* ndef ENETRESET */
1121 if (x == Mono_Posix_Errno_ENETUNREACH)
1123 {*r = ENETUNREACH; return 0;}
1124 #else /* def ENETUNREACH */
1125 {errno = EINVAL; return -1;}
1126 #endif /* ndef ENETUNREACH */
1127 if (x == Mono_Posix_Errno_ENFILE)
1129 {*r = ENFILE; return 0;}
1130 #else /* def ENFILE */
1131 {errno = EINVAL; return -1;}
1132 #endif /* ndef ENFILE */
1133 if (x == Mono_Posix_Errno_ENOANO)
1135 {*r = ENOANO; return 0;}
1136 #else /* def ENOANO */
1137 {errno = EINVAL; return -1;}
1138 #endif /* ndef ENOANO */
1139 if (x == Mono_Posix_Errno_ENOBUFS)
1141 {*r = ENOBUFS; return 0;}
1142 #else /* def ENOBUFS */
1143 {errno = EINVAL; return -1;}
1144 #endif /* ndef ENOBUFS */
1145 if (x == Mono_Posix_Errno_ENOCSI)
1147 {*r = ENOCSI; return 0;}
1148 #else /* def ENOCSI */
1149 {errno = EINVAL; return -1;}
1150 #endif /* ndef ENOCSI */
1151 if (x == Mono_Posix_Errno_ENODATA)
1153 {*r = ENODATA; return 0;}
1154 #else /* def ENODATA */
1155 {errno = EINVAL; return -1;}
1156 #endif /* ndef ENODATA */
1157 if (x == Mono_Posix_Errno_ENODEV)
1159 {*r = ENODEV; return 0;}
1160 #else /* def ENODEV */
1161 {errno = EINVAL; return -1;}
1162 #endif /* ndef ENODEV */
1163 if (x == Mono_Posix_Errno_ENOENT)
1165 {*r = ENOENT; return 0;}
1166 #else /* def ENOENT */
1167 {errno = EINVAL; return -1;}
1168 #endif /* ndef ENOENT */
1169 if (x == Mono_Posix_Errno_ENOEXEC)
1171 {*r = ENOEXEC; return 0;}
1172 #else /* def ENOEXEC */
1173 {errno = EINVAL; return -1;}
1174 #endif /* ndef ENOEXEC */
1175 if (x == Mono_Posix_Errno_ENOLCK)
1177 {*r = ENOLCK; return 0;}
1178 #else /* def ENOLCK */
1179 {errno = EINVAL; return -1;}
1180 #endif /* ndef ENOLCK */
1181 if (x == Mono_Posix_Errno_ENOLINK)
1183 {*r = ENOLINK; return 0;}
1184 #else /* def ENOLINK */
1185 {errno = EINVAL; return -1;}
1186 #endif /* ndef ENOLINK */
1187 if (x == Mono_Posix_Errno_ENOMEDIUM)
1189 {*r = ENOMEDIUM; return 0;}
1190 #else /* def ENOMEDIUM */
1191 {errno = EINVAL; return -1;}
1192 #endif /* ndef ENOMEDIUM */
1193 if (x == Mono_Posix_Errno_ENOMEM)
1195 {*r = ENOMEM; return 0;}
1196 #else /* def ENOMEM */
1197 {errno = EINVAL; return -1;}
1198 #endif /* ndef ENOMEM */
1199 if (x == Mono_Posix_Errno_ENOMSG)
1201 {*r = ENOMSG; return 0;}
1202 #else /* def ENOMSG */
1203 {errno = EINVAL; return -1;}
1204 #endif /* ndef ENOMSG */
1205 if (x == Mono_Posix_Errno_ENONET)
1207 {*r = ENONET; return 0;}
1208 #else /* def ENONET */
1209 {errno = EINVAL; return -1;}
1210 #endif /* ndef ENONET */
1211 if (x == Mono_Posix_Errno_ENOPKG)
1213 {*r = ENOPKG; return 0;}
1214 #else /* def ENOPKG */
1215 {errno = EINVAL; return -1;}
1216 #endif /* ndef ENOPKG */
1217 if (x == Mono_Posix_Errno_ENOPROTOOPT)
1219 {*r = ENOPROTOOPT; return 0;}
1220 #else /* def ENOPROTOOPT */
1221 {errno = EINVAL; return -1;}
1222 #endif /* ndef ENOPROTOOPT */
1223 if (x == Mono_Posix_Errno_ENOSPC)
1225 {*r = ENOSPC; return 0;}
1226 #else /* def ENOSPC */
1227 {errno = EINVAL; return -1;}
1228 #endif /* ndef ENOSPC */
1229 if (x == Mono_Posix_Errno_ENOSR)
1231 {*r = ENOSR; return 0;}
1232 #else /* def ENOSR */
1233 {errno = EINVAL; return -1;}
1234 #endif /* ndef ENOSR */
1235 if (x == Mono_Posix_Errno_ENOSTR)
1237 {*r = ENOSTR; return 0;}
1238 #else /* def ENOSTR */
1239 {errno = EINVAL; return -1;}
1240 #endif /* ndef ENOSTR */
1241 if (x == Mono_Posix_Errno_ENOSYS)
1243 {*r = ENOSYS; return 0;}
1244 #else /* def ENOSYS */
1245 {errno = EINVAL; return -1;}
1246 #endif /* ndef ENOSYS */
1247 if (x == Mono_Posix_Errno_ENOTBLK)
1249 {*r = ENOTBLK; return 0;}
1250 #else /* def ENOTBLK */
1251 {errno = EINVAL; return -1;}
1252 #endif /* ndef ENOTBLK */
1253 if (x == Mono_Posix_Errno_ENOTCONN)
1255 {*r = ENOTCONN; return 0;}
1256 #else /* def ENOTCONN */
1257 {errno = EINVAL; return -1;}
1258 #endif /* ndef ENOTCONN */
1259 if (x == Mono_Posix_Errno_ENOTDIR)
1261 {*r = ENOTDIR; return 0;}
1262 #else /* def ENOTDIR */
1263 {errno = EINVAL; return -1;}
1264 #endif /* ndef ENOTDIR */
1265 if (x == Mono_Posix_Errno_ENOTEMPTY)
1267 {*r = ENOTEMPTY; return 0;}
1268 #else /* def ENOTEMPTY */
1269 {errno = EINVAL; return -1;}
1270 #endif /* ndef ENOTEMPTY */
1271 if (x == Mono_Posix_Errno_ENOTNAM)
1273 {*r = ENOTNAM; return 0;}
1274 #else /* def ENOTNAM */
1275 {errno = EINVAL; return -1;}
1276 #endif /* ndef ENOTNAM */
1277 if (x == Mono_Posix_Errno_ENOTSOCK)
1279 {*r = ENOTSOCK; return 0;}
1280 #else /* def ENOTSOCK */
1281 {errno = EINVAL; return -1;}
1282 #endif /* ndef ENOTSOCK */
1283 if (x == Mono_Posix_Errno_ENOTTY)
1285 {*r = ENOTTY; return 0;}
1286 #else /* def ENOTTY */
1287 {errno = EINVAL; return -1;}
1288 #endif /* ndef ENOTTY */
1289 if (x == Mono_Posix_Errno_ENOTUNIQ)
1291 {*r = ENOTUNIQ; return 0;}
1292 #else /* def ENOTUNIQ */
1293 {errno = EINVAL; return -1;}
1294 #endif /* ndef ENOTUNIQ */
1295 if (x == Mono_Posix_Errno_ENXIO)
1297 {*r = ENXIO; return 0;}
1298 #else /* def ENXIO */
1299 {errno = EINVAL; return -1;}
1300 #endif /* ndef ENXIO */
1301 if (x == Mono_Posix_Errno_EOPNOTSUPP)
1303 {*r = EOPNOTSUPP; return 0;}
1304 #else /* def EOPNOTSUPP */
1305 {errno = EINVAL; return -1;}
1306 #endif /* ndef EOPNOTSUPP */
1307 if (x == Mono_Posix_Errno_EOVERFLOW)
1309 {*r = EOVERFLOW; return 0;}
1310 #else /* def EOVERFLOW */
1311 {errno = EINVAL; return -1;}
1312 #endif /* ndef EOVERFLOW */
1313 if (x == Mono_Posix_Errno_EPERM)
1315 {*r = EPERM; return 0;}
1316 #else /* def EPERM */
1317 {errno = EINVAL; return -1;}
1318 #endif /* ndef EPERM */
1319 if (x == Mono_Posix_Errno_EPFNOSUPPORT)
1321 {*r = EPFNOSUPPORT; return 0;}
1322 #else /* def EPFNOSUPPORT */
1323 {errno = EINVAL; return -1;}
1324 #endif /* ndef EPFNOSUPPORT */
1325 if (x == Mono_Posix_Errno_EPIPE)
1327 {*r = EPIPE; return 0;}
1328 #else /* def EPIPE */
1329 {errno = EINVAL; return -1;}
1330 #endif /* ndef EPIPE */
1331 if (x == Mono_Posix_Errno_EPROTO)
1333 {*r = EPROTO; return 0;}
1334 #else /* def EPROTO */
1335 {errno = EINVAL; return -1;}
1336 #endif /* ndef EPROTO */
1337 if (x == Mono_Posix_Errno_EPROTONOSUPPORT)
1338 #ifdef EPROTONOSUPPORT
1339 {*r = EPROTONOSUPPORT; return 0;}
1340 #else /* def EPROTONOSUPPORT */
1341 {errno = EINVAL; return -1;}
1342 #endif /* ndef EPROTONOSUPPORT */
1343 if (x == Mono_Posix_Errno_EPROTOTYPE)
1345 {*r = EPROTOTYPE; return 0;}
1346 #else /* def EPROTOTYPE */
1347 {errno = EINVAL; return -1;}
1348 #endif /* ndef EPROTOTYPE */
1349 if (x == Mono_Posix_Errno_ERANGE)
1351 {*r = ERANGE; return 0;}
1352 #else /* def ERANGE */
1353 {errno = EINVAL; return -1;}
1354 #endif /* ndef ERANGE */
1355 if (x == Mono_Posix_Errno_EREMCHG)
1357 {*r = EREMCHG; return 0;}
1358 #else /* def EREMCHG */
1359 {errno = EINVAL; return -1;}
1360 #endif /* ndef EREMCHG */
1361 if (x == Mono_Posix_Errno_EREMOTE)
1363 {*r = EREMOTE; return 0;}
1364 #else /* def EREMOTE */
1365 {errno = EINVAL; return -1;}
1366 #endif /* ndef EREMOTE */
1367 if (x == Mono_Posix_Errno_EREMOTEIO)
1369 {*r = EREMOTEIO; return 0;}
1370 #else /* def EREMOTEIO */
1371 {errno = EINVAL; return -1;}
1372 #endif /* ndef EREMOTEIO */
1373 if (x == Mono_Posix_Errno_ERESTART)
1375 {*r = ERESTART; return 0;}
1376 #else /* def ERESTART */
1377 {errno = EINVAL; return -1;}
1378 #endif /* ndef ERESTART */
1379 if (x == Mono_Posix_Errno_EROFS)
1381 {*r = EROFS; return 0;}
1382 #else /* def EROFS */
1383 {errno = EINVAL; return -1;}
1384 #endif /* ndef EROFS */
1385 if (x == Mono_Posix_Errno_ESHUTDOWN)
1387 {*r = ESHUTDOWN; return 0;}
1388 #else /* def ESHUTDOWN */
1389 {errno = EINVAL; return -1;}
1390 #endif /* ndef ESHUTDOWN */
1391 if (x == Mono_Posix_Errno_ESOCKTNOSUPPORT)
1392 #ifdef ESOCKTNOSUPPORT
1393 {*r = ESOCKTNOSUPPORT; return 0;}
1394 #else /* def ESOCKTNOSUPPORT */
1395 {errno = EINVAL; return -1;}
1396 #endif /* ndef ESOCKTNOSUPPORT */
1397 if (x == Mono_Posix_Errno_ESPIPE)
1399 {*r = ESPIPE; return 0;}
1400 #else /* def ESPIPE */
1401 {errno = EINVAL; return -1;}
1402 #endif /* ndef ESPIPE */
1403 if (x == Mono_Posix_Errno_ESRCH)
1405 {*r = ESRCH; return 0;}
1406 #else /* def ESRCH */
1407 {errno = EINVAL; return -1;}
1408 #endif /* ndef ESRCH */
1409 if (x == Mono_Posix_Errno_ESRMNT)
1411 {*r = ESRMNT; return 0;}
1412 #else /* def ESRMNT */
1413 {errno = EINVAL; return -1;}
1414 #endif /* ndef ESRMNT */
1415 if (x == Mono_Posix_Errno_ESTALE)
1417 {*r = ESTALE; return 0;}
1418 #else /* def ESTALE */
1419 {errno = EINVAL; return -1;}
1420 #endif /* ndef ESTALE */
1421 if (x == Mono_Posix_Errno_ESTRPIPE)
1423 {*r = ESTRPIPE; return 0;}
1424 #else /* def ESTRPIPE */
1425 {errno = EINVAL; return -1;}
1426 #endif /* ndef ESTRPIPE */
1427 if (x == Mono_Posix_Errno_ETIME)
1429 {*r = ETIME; return 0;}
1430 #else /* def ETIME */
1431 {errno = EINVAL; return -1;}
1432 #endif /* ndef ETIME */
1433 if (x == Mono_Posix_Errno_ETIMEDOUT)
1435 {*r = ETIMEDOUT; return 0;}
1436 #else /* def ETIMEDOUT */
1437 {errno = EINVAL; return -1;}
1438 #endif /* ndef ETIMEDOUT */
1439 if (x == Mono_Posix_Errno_ETOOMANYREFS)
1441 {*r = ETOOMANYREFS; return 0;}
1442 #else /* def ETOOMANYREFS */
1443 {errno = EINVAL; return -1;}
1444 #endif /* ndef ETOOMANYREFS */
1445 if (x == Mono_Posix_Errno_ETXTBSY)
1447 {*r = ETXTBSY; return 0;}
1448 #else /* def ETXTBSY */
1449 {errno = EINVAL; return -1;}
1450 #endif /* ndef ETXTBSY */
1451 if (x == Mono_Posix_Errno_EUCLEAN)
1453 {*r = EUCLEAN; return 0;}
1454 #else /* def EUCLEAN */
1455 {errno = EINVAL; return -1;}
1456 #endif /* ndef EUCLEAN */
1457 if (x == Mono_Posix_Errno_EUNATCH)
1459 {*r = EUNATCH; return 0;}
1460 #else /* def EUNATCH */
1461 {errno = EINVAL; return -1;}
1462 #endif /* ndef EUNATCH */
1463 if (x == Mono_Posix_Errno_EUSERS)
1465 {*r = EUSERS; return 0;}
1466 #else /* def EUSERS */
1467 {errno = EINVAL; return -1;}
1468 #endif /* ndef EUSERS */
1469 if (x == Mono_Posix_Errno_EWOULDBLOCK)
1471 {*r = EWOULDBLOCK; return 0;}
1472 #else /* def EWOULDBLOCK */
1473 {errno = EINVAL; return -1;}
1474 #endif /* ndef EWOULDBLOCK */
1475 if (x == Mono_Posix_Errno_EXDEV)
1477 {*r = EXDEV; return 0;}
1478 #else /* def EXDEV */
1479 {errno = EINVAL; return -1;}
1480 #endif /* ndef EXDEV */
1481 if (x == Mono_Posix_Errno_EXFULL)
1483 {*r = EXFULL; return 0;}
1484 #else /* def EXFULL */
1485 {errno = EINVAL; return -1;}
1486 #endif /* ndef EXFULL */
1489 errno = EINVAL; return -1;
1492 int Mono_Posix_ToErrno (int x, int *r)
1499 {*r = Mono_Posix_Errno_E2BIG; return 0;}
1500 #endif /* ndef E2BIG */
1503 {*r = Mono_Posix_Errno_EACCES; return 0;}
1504 #endif /* ndef EACCES */
1506 if (x == EADDRINUSE)
1507 {*r = Mono_Posix_Errno_EADDRINUSE; return 0;}
1508 #endif /* ndef EADDRINUSE */
1509 #ifdef EADDRNOTAVAIL
1510 if (x == EADDRNOTAVAIL)
1511 {*r = Mono_Posix_Errno_EADDRNOTAVAIL; return 0;}
1512 #endif /* ndef EADDRNOTAVAIL */
1515 {*r = Mono_Posix_Errno_EADV; return 0;}
1516 #endif /* ndef EADV */
1518 if (x == EAFNOSUPPORT)
1519 {*r = Mono_Posix_Errno_EAFNOSUPPORT; return 0;}
1520 #endif /* ndef EAFNOSUPPORT */
1523 {*r = Mono_Posix_Errno_EAGAIN; return 0;}
1524 #endif /* ndef EAGAIN */
1527 {*r = Mono_Posix_Errno_EALREADY; return 0;}
1528 #endif /* ndef EALREADY */
1531 {*r = Mono_Posix_Errno_EBADE; return 0;}
1532 #endif /* ndef EBADE */
1535 {*r = Mono_Posix_Errno_EBADF; return 0;}
1536 #endif /* ndef EBADF */
1539 {*r = Mono_Posix_Errno_EBADFD; return 0;}
1540 #endif /* ndef EBADFD */
1543 {*r = Mono_Posix_Errno_EBADMSG; return 0;}
1544 #endif /* ndef EBADMSG */
1547 {*r = Mono_Posix_Errno_EBADR; return 0;}
1548 #endif /* ndef EBADR */
1551 {*r = Mono_Posix_Errno_EBADRQC; return 0;}
1552 #endif /* ndef EBADRQC */
1555 {*r = Mono_Posix_Errno_EBADSLT; return 0;}
1556 #endif /* ndef EBADSLT */
1559 {*r = Mono_Posix_Errno_EBFONT; return 0;}
1560 #endif /* ndef EBFONT */
1563 {*r = Mono_Posix_Errno_EBUSY; return 0;}
1564 #endif /* ndef EBUSY */
1567 {*r = Mono_Posix_Errno_ECHILD; return 0;}
1568 #endif /* ndef ECHILD */
1571 {*r = Mono_Posix_Errno_ECHRNG; return 0;}
1572 #endif /* ndef ECHRNG */
1575 {*r = Mono_Posix_Errno_ECOMM; return 0;}
1576 #endif /* ndef ECOMM */
1578 if (x == ECONNABORTED)
1579 {*r = Mono_Posix_Errno_ECONNABORTED; return 0;}
1580 #endif /* ndef ECONNABORTED */
1582 if (x == ECONNREFUSED)
1583 {*r = Mono_Posix_Errno_ECONNREFUSED; return 0;}
1584 #endif /* ndef ECONNREFUSED */
1586 if (x == ECONNRESET)
1587 {*r = Mono_Posix_Errno_ECONNRESET; return 0;}
1588 #endif /* ndef ECONNRESET */
1591 {*r = Mono_Posix_Errno_EDEADLK; return 0;}
1592 #endif /* ndef EDEADLK */
1595 {*r = Mono_Posix_Errno_EDEADLOCK; return 0;}
1596 #endif /* ndef EDEADLOCK */
1598 if (x == EDESTADDRREQ)
1599 {*r = Mono_Posix_Errno_EDESTADDRREQ; return 0;}
1600 #endif /* ndef EDESTADDRREQ */
1603 {*r = Mono_Posix_Errno_EDOM; return 0;}
1604 #endif /* ndef EDOM */
1607 {*r = Mono_Posix_Errno_EDOTDOT; return 0;}
1608 #endif /* ndef EDOTDOT */
1611 {*r = Mono_Posix_Errno_EDQUOT; return 0;}
1612 #endif /* ndef EDQUOT */
1615 {*r = Mono_Posix_Errno_EEXIST; return 0;}
1616 #endif /* ndef EEXIST */
1619 {*r = Mono_Posix_Errno_EFAULT; return 0;}
1620 #endif /* ndef EFAULT */
1623 {*r = Mono_Posix_Errno_EFBIG; return 0;}
1624 #endif /* ndef EFBIG */
1627 {*r = Mono_Posix_Errno_EHOSTDOWN; return 0;}
1628 #endif /* ndef EHOSTDOWN */
1630 if (x == EHOSTUNREACH)
1631 {*r = Mono_Posix_Errno_EHOSTUNREACH; return 0;}
1632 #endif /* ndef EHOSTUNREACH */
1635 {*r = Mono_Posix_Errno_EIDRM; return 0;}
1636 #endif /* ndef EIDRM */
1639 {*r = Mono_Posix_Errno_EILSEQ; return 0;}
1640 #endif /* ndef EILSEQ */
1642 if (x == EINPROGRESS)
1643 {*r = Mono_Posix_Errno_EINPROGRESS; return 0;}
1644 #endif /* ndef EINPROGRESS */
1647 {*r = Mono_Posix_Errno_EINTR; return 0;}
1648 #endif /* ndef EINTR */
1651 {*r = Mono_Posix_Errno_EINVAL; return 0;}
1652 #endif /* ndef EINVAL */
1655 {*r = Mono_Posix_Errno_EIO; return 0;}
1656 #endif /* ndef EIO */
1659 {*r = Mono_Posix_Errno_EISCONN; return 0;}
1660 #endif /* ndef EISCONN */
1663 {*r = Mono_Posix_Errno_EISDIR; return 0;}
1664 #endif /* ndef EISDIR */
1667 {*r = Mono_Posix_Errno_EISNAM; return 0;}
1668 #endif /* ndef EISNAM */
1671 {*r = Mono_Posix_Errno_EL2HLT; return 0;}
1672 #endif /* ndef EL2HLT */
1675 {*r = Mono_Posix_Errno_EL2NSYNC; return 0;}
1676 #endif /* ndef EL2NSYNC */
1679 {*r = Mono_Posix_Errno_EL3HLT; return 0;}
1680 #endif /* ndef EL3HLT */
1683 {*r = Mono_Posix_Errno_EL3RST; return 0;}
1684 #endif /* ndef EL3RST */
1687 {*r = Mono_Posix_Errno_ELIBACC; return 0;}
1688 #endif /* ndef ELIBACC */
1691 {*r = Mono_Posix_Errno_ELIBBAD; return 0;}
1692 #endif /* ndef ELIBBAD */
1695 {*r = Mono_Posix_Errno_ELIBEXEC; return 0;}
1696 #endif /* ndef ELIBEXEC */
1699 {*r = Mono_Posix_Errno_ELIBMAX; return 0;}
1700 #endif /* ndef ELIBMAX */
1703 {*r = Mono_Posix_Errno_ELIBSCN; return 0;}
1704 #endif /* ndef ELIBSCN */
1707 {*r = Mono_Posix_Errno_ELNRNG; return 0;}
1708 #endif /* ndef ELNRNG */
1711 {*r = Mono_Posix_Errno_ELOOP; return 0;}
1712 #endif /* ndef ELOOP */
1714 if (x == EMEDIUMTYPE)
1715 {*r = Mono_Posix_Errno_EMEDIUMTYPE; return 0;}
1716 #endif /* ndef EMEDIUMTYPE */
1719 {*r = Mono_Posix_Errno_EMFILE; return 0;}
1720 #endif /* ndef EMFILE */
1723 {*r = Mono_Posix_Errno_EMLINK; return 0;}
1724 #endif /* ndef EMLINK */
1727 {*r = Mono_Posix_Errno_EMSGSIZE; return 0;}
1728 #endif /* ndef EMSGSIZE */
1731 {*r = Mono_Posix_Errno_EMULTIHOP; return 0;}
1732 #endif /* ndef EMULTIHOP */
1734 if (x == ENAMETOOLONG)
1735 {*r = Mono_Posix_Errno_ENAMETOOLONG; return 0;}
1736 #endif /* ndef ENAMETOOLONG */
1739 {*r = Mono_Posix_Errno_ENAVAIL; return 0;}
1740 #endif /* ndef ENAVAIL */
1743 {*r = Mono_Posix_Errno_ENETDOWN; return 0;}
1744 #endif /* ndef ENETDOWN */
1747 {*r = Mono_Posix_Errno_ENETRESET; return 0;}
1748 #endif /* ndef ENETRESET */
1750 if (x == ENETUNREACH)
1751 {*r = Mono_Posix_Errno_ENETUNREACH; return 0;}
1752 #endif /* ndef ENETUNREACH */
1755 {*r = Mono_Posix_Errno_ENFILE; return 0;}
1756 #endif /* ndef ENFILE */
1759 {*r = Mono_Posix_Errno_ENOANO; return 0;}
1760 #endif /* ndef ENOANO */
1763 {*r = Mono_Posix_Errno_ENOBUFS; return 0;}
1764 #endif /* ndef ENOBUFS */
1767 {*r = Mono_Posix_Errno_ENOCSI; return 0;}
1768 #endif /* ndef ENOCSI */
1771 {*r = Mono_Posix_Errno_ENODATA; return 0;}
1772 #endif /* ndef ENODATA */
1775 {*r = Mono_Posix_Errno_ENODEV; return 0;}
1776 #endif /* ndef ENODEV */
1779 {*r = Mono_Posix_Errno_ENOENT; return 0;}
1780 #endif /* ndef ENOENT */
1783 {*r = Mono_Posix_Errno_ENOEXEC; return 0;}
1784 #endif /* ndef ENOEXEC */
1787 {*r = Mono_Posix_Errno_ENOLCK; return 0;}
1788 #endif /* ndef ENOLCK */
1791 {*r = Mono_Posix_Errno_ENOLINK; return 0;}
1792 #endif /* ndef ENOLINK */
1795 {*r = Mono_Posix_Errno_ENOMEDIUM; return 0;}
1796 #endif /* ndef ENOMEDIUM */
1799 {*r = Mono_Posix_Errno_ENOMEM; return 0;}
1800 #endif /* ndef ENOMEM */
1803 {*r = Mono_Posix_Errno_ENOMSG; return 0;}
1804 #endif /* ndef ENOMSG */
1807 {*r = Mono_Posix_Errno_ENONET; return 0;}
1808 #endif /* ndef ENONET */
1811 {*r = Mono_Posix_Errno_ENOPKG; return 0;}
1812 #endif /* ndef ENOPKG */
1814 if (x == ENOPROTOOPT)
1815 {*r = Mono_Posix_Errno_ENOPROTOOPT; return 0;}
1816 #endif /* ndef ENOPROTOOPT */
1819 {*r = Mono_Posix_Errno_ENOSPC; return 0;}
1820 #endif /* ndef ENOSPC */
1823 {*r = Mono_Posix_Errno_ENOSR; return 0;}
1824 #endif /* ndef ENOSR */
1827 {*r = Mono_Posix_Errno_ENOSTR; return 0;}
1828 #endif /* ndef ENOSTR */
1831 {*r = Mono_Posix_Errno_ENOSYS; return 0;}
1832 #endif /* ndef ENOSYS */
1835 {*r = Mono_Posix_Errno_ENOTBLK; return 0;}
1836 #endif /* ndef ENOTBLK */
1839 {*r = Mono_Posix_Errno_ENOTCONN; return 0;}
1840 #endif /* ndef ENOTCONN */
1843 {*r = Mono_Posix_Errno_ENOTDIR; return 0;}
1844 #endif /* ndef ENOTDIR */
1847 {*r = Mono_Posix_Errno_ENOTEMPTY; return 0;}
1848 #endif /* ndef ENOTEMPTY */
1851 {*r = Mono_Posix_Errno_ENOTNAM; return 0;}
1852 #endif /* ndef ENOTNAM */
1855 {*r = Mono_Posix_Errno_ENOTSOCK; return 0;}
1856 #endif /* ndef ENOTSOCK */
1859 {*r = Mono_Posix_Errno_ENOTTY; return 0;}
1860 #endif /* ndef ENOTTY */
1863 {*r = Mono_Posix_Errno_ENOTUNIQ; return 0;}
1864 #endif /* ndef ENOTUNIQ */
1867 {*r = Mono_Posix_Errno_ENXIO; return 0;}
1868 #endif /* ndef ENXIO */
1870 if (x == EOPNOTSUPP)
1871 {*r = Mono_Posix_Errno_EOPNOTSUPP; return 0;}
1872 #endif /* ndef EOPNOTSUPP */
1875 {*r = Mono_Posix_Errno_EOVERFLOW; return 0;}
1876 #endif /* ndef EOVERFLOW */
1879 {*r = Mono_Posix_Errno_EPERM; return 0;}
1880 #endif /* ndef EPERM */
1882 if (x == EPFNOSUPPORT)
1883 {*r = Mono_Posix_Errno_EPFNOSUPPORT; return 0;}
1884 #endif /* ndef EPFNOSUPPORT */
1887 {*r = Mono_Posix_Errno_EPIPE; return 0;}
1888 #endif /* ndef EPIPE */
1891 {*r = Mono_Posix_Errno_EPROTO; return 0;}
1892 #endif /* ndef EPROTO */
1893 #ifdef EPROTONOSUPPORT
1894 if (x == EPROTONOSUPPORT)
1895 {*r = Mono_Posix_Errno_EPROTONOSUPPORT; return 0;}
1896 #endif /* ndef EPROTONOSUPPORT */
1898 if (x == EPROTOTYPE)
1899 {*r = Mono_Posix_Errno_EPROTOTYPE; return 0;}
1900 #endif /* ndef EPROTOTYPE */
1903 {*r = Mono_Posix_Errno_ERANGE; return 0;}
1904 #endif /* ndef ERANGE */
1907 {*r = Mono_Posix_Errno_EREMCHG; return 0;}
1908 #endif /* ndef EREMCHG */
1911 {*r = Mono_Posix_Errno_EREMOTE; return 0;}
1912 #endif /* ndef EREMOTE */
1915 {*r = Mono_Posix_Errno_EREMOTEIO; return 0;}
1916 #endif /* ndef EREMOTEIO */
1919 {*r = Mono_Posix_Errno_ERESTART; return 0;}
1920 #endif /* ndef ERESTART */
1923 {*r = Mono_Posix_Errno_EROFS; return 0;}
1924 #endif /* ndef EROFS */
1927 {*r = Mono_Posix_Errno_ESHUTDOWN; return 0;}
1928 #endif /* ndef ESHUTDOWN */
1929 #ifdef ESOCKTNOSUPPORT
1930 if (x == ESOCKTNOSUPPORT)
1931 {*r = Mono_Posix_Errno_ESOCKTNOSUPPORT; return 0;}
1932 #endif /* ndef ESOCKTNOSUPPORT */
1935 {*r = Mono_Posix_Errno_ESPIPE; return 0;}
1936 #endif /* ndef ESPIPE */
1939 {*r = Mono_Posix_Errno_ESRCH; return 0;}
1940 #endif /* ndef ESRCH */
1943 {*r = Mono_Posix_Errno_ESRMNT; return 0;}
1944 #endif /* ndef ESRMNT */
1947 {*r = Mono_Posix_Errno_ESTALE; return 0;}
1948 #endif /* ndef ESTALE */
1951 {*r = Mono_Posix_Errno_ESTRPIPE; return 0;}
1952 #endif /* ndef ESTRPIPE */
1955 {*r = Mono_Posix_Errno_ETIME; return 0;}
1956 #endif /* ndef ETIME */
1959 {*r = Mono_Posix_Errno_ETIMEDOUT; return 0;}
1960 #endif /* ndef ETIMEDOUT */
1962 if (x == ETOOMANYREFS)
1963 {*r = Mono_Posix_Errno_ETOOMANYREFS; return 0;}
1964 #endif /* ndef ETOOMANYREFS */
1967 {*r = Mono_Posix_Errno_ETXTBSY; return 0;}
1968 #endif /* ndef ETXTBSY */
1971 {*r = Mono_Posix_Errno_EUCLEAN; return 0;}
1972 #endif /* ndef EUCLEAN */
1975 {*r = Mono_Posix_Errno_EUNATCH; return 0;}
1976 #endif /* ndef EUNATCH */
1979 {*r = Mono_Posix_Errno_EUSERS; return 0;}
1980 #endif /* ndef EUSERS */
1982 if (x == EWOULDBLOCK)
1983 {*r = Mono_Posix_Errno_EWOULDBLOCK; return 0;}
1984 #endif /* ndef EWOULDBLOCK */
1987 {*r = Mono_Posix_Errno_EXDEV; return 0;}
1988 #endif /* ndef EXDEV */
1991 {*r = Mono_Posix_Errno_EXFULL; return 0;}
1992 #endif /* ndef EXFULL */
1993 errno = EINVAL; return -1;
1996 int Mono_Posix_FromFcntlCommand (int x, int *r)
1999 if (x == Mono_Posix_FcntlCommand_F_DUPFD)
2001 {*r = F_DUPFD; return 0;}
2002 #else /* def F_DUPFD */
2003 {errno = EINVAL; return -1;}
2004 #endif /* ndef F_DUPFD */
2005 if (x == Mono_Posix_FcntlCommand_F_GETFD)
2007 {*r = F_GETFD; return 0;}
2008 #else /* def F_GETFD */
2009 {errno = EINVAL; return -1;}
2010 #endif /* ndef F_GETFD */
2011 if (x == Mono_Posix_FcntlCommand_F_GETFL)
2013 {*r = F_GETFL; return 0;}
2014 #else /* def F_GETFL */
2015 {errno = EINVAL; return -1;}
2016 #endif /* ndef F_GETFL */
2017 if (x == Mono_Posix_FcntlCommand_F_GETLEASE)
2019 {*r = F_GETLEASE; return 0;}
2020 #else /* def F_GETLEASE */
2021 {errno = EINVAL; return -1;}
2022 #endif /* ndef F_GETLEASE */
2023 if (x == Mono_Posix_FcntlCommand_F_GETLK)
2025 {*r = F_GETLK; return 0;}
2026 #else /* def F_GETLK */
2027 {errno = EINVAL; return -1;}
2028 #endif /* ndef F_GETLK */
2029 if (x == Mono_Posix_FcntlCommand_F_GETOWN)
2031 {*r = F_GETOWN; return 0;}
2032 #else /* def F_GETOWN */
2033 {errno = EINVAL; return -1;}
2034 #endif /* ndef F_GETOWN */
2035 if (x == Mono_Posix_FcntlCommand_F_GETSIG)
2037 {*r = F_GETSIG; return 0;}
2038 #else /* def F_GETSIG */
2039 {errno = EINVAL; return -1;}
2040 #endif /* ndef F_GETSIG */
2041 if (x == Mono_Posix_FcntlCommand_F_NOTIFY)
2043 {*r = F_NOTIFY; return 0;}
2044 #else /* def F_NOTIFY */
2045 {errno = EINVAL; return -1;}
2046 #endif /* ndef F_NOTIFY */
2047 if (x == Mono_Posix_FcntlCommand_F_SETFD)
2049 {*r = F_SETFD; return 0;}
2050 #else /* def F_SETFD */
2051 {errno = EINVAL; return -1;}
2052 #endif /* ndef F_SETFD */
2053 if (x == Mono_Posix_FcntlCommand_F_SETFL)
2055 {*r = F_SETFL; return 0;}
2056 #else /* def F_SETFL */
2057 {errno = EINVAL; return -1;}
2058 #endif /* ndef F_SETFL */
2059 if (x == Mono_Posix_FcntlCommand_F_SETLEASE)
2061 {*r = F_SETLEASE; return 0;}
2062 #else /* def F_SETLEASE */
2063 {errno = EINVAL; return -1;}
2064 #endif /* ndef F_SETLEASE */
2065 if (x == Mono_Posix_FcntlCommand_F_SETLK)
2067 {*r = F_SETLK; return 0;}
2068 #else /* def F_SETLK */
2069 {errno = EINVAL; return -1;}
2070 #endif /* ndef F_SETLK */
2071 if (x == Mono_Posix_FcntlCommand_F_SETLKW)
2073 {*r = F_SETLKW; return 0;}
2074 #else /* def F_SETLKW */
2075 {errno = EINVAL; return -1;}
2076 #endif /* ndef F_SETLKW */
2077 if (x == Mono_Posix_FcntlCommand_F_SETOWN)
2079 {*r = F_SETOWN; return 0;}
2080 #else /* def F_SETOWN */
2081 {errno = EINVAL; return -1;}
2082 #endif /* ndef F_SETOWN */
2083 if (x == Mono_Posix_FcntlCommand_F_SETSIG)
2085 {*r = F_SETSIG; return 0;}
2086 #else /* def F_SETSIG */
2087 {errno = EINVAL; return -1;}
2088 #endif /* ndef F_SETSIG */
2091 errno = EINVAL; return -1;
2094 int Mono_Posix_ToFcntlCommand (int x, int *r)
2101 {*r = Mono_Posix_FcntlCommand_F_DUPFD; return 0;}
2102 #endif /* ndef F_DUPFD */
2105 {*r = Mono_Posix_FcntlCommand_F_GETFD; return 0;}
2106 #endif /* ndef F_GETFD */
2109 {*r = Mono_Posix_FcntlCommand_F_GETFL; return 0;}
2110 #endif /* ndef F_GETFL */
2112 if (x == F_GETLEASE)
2113 {*r = Mono_Posix_FcntlCommand_F_GETLEASE; return 0;}
2114 #endif /* ndef F_GETLEASE */
2117 {*r = Mono_Posix_FcntlCommand_F_GETLK; return 0;}
2118 #endif /* ndef F_GETLK */
2121 {*r = Mono_Posix_FcntlCommand_F_GETOWN; return 0;}
2122 #endif /* ndef F_GETOWN */
2125 {*r = Mono_Posix_FcntlCommand_F_GETSIG; return 0;}
2126 #endif /* ndef F_GETSIG */
2129 {*r = Mono_Posix_FcntlCommand_F_NOTIFY; return 0;}
2130 #endif /* ndef F_NOTIFY */
2133 {*r = Mono_Posix_FcntlCommand_F_SETFD; return 0;}
2134 #endif /* ndef F_SETFD */
2137 {*r = Mono_Posix_FcntlCommand_F_SETFL; return 0;}
2138 #endif /* ndef F_SETFL */
2140 if (x == F_SETLEASE)
2141 {*r = Mono_Posix_FcntlCommand_F_SETLEASE; return 0;}
2142 #endif /* ndef F_SETLEASE */
2145 {*r = Mono_Posix_FcntlCommand_F_SETLK; return 0;}
2146 #endif /* ndef F_SETLK */
2149 {*r = Mono_Posix_FcntlCommand_F_SETLKW; return 0;}
2150 #endif /* ndef F_SETLKW */
2153 {*r = Mono_Posix_FcntlCommand_F_SETOWN; return 0;}
2154 #endif /* ndef F_SETOWN */
2157 {*r = Mono_Posix_FcntlCommand_F_SETSIG; return 0;}
2158 #endif /* ndef F_SETSIG */
2159 errno = EINVAL; return -1;
2162 int Mono_Posix_FromFilePermissions (unsigned int x, unsigned int *r)
2165 if ((x & Mono_Posix_FilePermissions_ACCESSPERMS) == Mono_Posix_FilePermissions_ACCESSPERMS)
2168 #else /* def ACCESSPERMS */
2169 {errno = EINVAL; return -1;}
2170 #endif /* ndef ACCESSPERMS */
2171 if ((x & Mono_Posix_FilePermissions_ALLPERMS) == Mono_Posix_FilePermissions_ALLPERMS)
2174 #else /* def ALLPERMS */
2175 {errno = EINVAL; return -1;}
2176 #endif /* ndef ALLPERMS */
2177 if ((x & Mono_Posix_FilePermissions_DEFFILEMODE) == Mono_Posix_FilePermissions_DEFFILEMODE)
2180 #else /* def DEFFILEMODE */
2181 {errno = EINVAL; return -1;}
2182 #endif /* ndef DEFFILEMODE */
2183 if ((x & Mono_Posix_FilePermissions_S_IFBLK) == Mono_Posix_FilePermissions_S_IFBLK)
2186 #else /* def S_IFBLK */
2187 {errno = EINVAL; return -1;}
2188 #endif /* ndef S_IFBLK */
2189 if ((x & Mono_Posix_FilePermissions_S_IFCHR) == Mono_Posix_FilePermissions_S_IFCHR)
2192 #else /* def S_IFCHR */
2193 {errno = EINVAL; return -1;}
2194 #endif /* ndef S_IFCHR */
2195 if ((x & Mono_Posix_FilePermissions_S_IFDIR) == Mono_Posix_FilePermissions_S_IFDIR)
2198 #else /* def S_IFDIR */
2199 {errno = EINVAL; return -1;}
2200 #endif /* ndef S_IFDIR */
2201 if ((x & Mono_Posix_FilePermissions_S_IFIFO) == Mono_Posix_FilePermissions_S_IFIFO)
2204 #else /* def S_IFIFO */
2205 {errno = EINVAL; return -1;}
2206 #endif /* ndef S_IFIFO */
2207 if ((x & Mono_Posix_FilePermissions_S_IFLNK) == Mono_Posix_FilePermissions_S_IFLNK)
2210 #else /* def S_IFLNK */
2211 {errno = EINVAL; return -1;}
2212 #endif /* ndef S_IFLNK */
2213 if ((x & Mono_Posix_FilePermissions_S_IFMT) == Mono_Posix_FilePermissions_S_IFMT)
2216 #else /* def S_IFMT */
2217 {errno = EINVAL; return -1;}
2218 #endif /* ndef S_IFMT */
2219 if ((x & Mono_Posix_FilePermissions_S_IFREG) == Mono_Posix_FilePermissions_S_IFREG)
2222 #else /* def S_IFREG */
2223 {errno = EINVAL; return -1;}
2224 #endif /* ndef S_IFREG */
2225 if ((x & Mono_Posix_FilePermissions_S_IFSOCK) == Mono_Posix_FilePermissions_S_IFSOCK)
2228 #else /* def S_IFSOCK */
2229 {errno = EINVAL; return -1;}
2230 #endif /* ndef S_IFSOCK */
2231 if ((x & Mono_Posix_FilePermissions_S_IRGRP) == Mono_Posix_FilePermissions_S_IRGRP)
2234 #else /* def S_IRGRP */
2235 {errno = EINVAL; return -1;}
2236 #endif /* ndef S_IRGRP */
2237 if ((x & Mono_Posix_FilePermissions_S_IROTH) == Mono_Posix_FilePermissions_S_IROTH)
2240 #else /* def S_IROTH */
2241 {errno = EINVAL; return -1;}
2242 #endif /* ndef S_IROTH */
2243 if ((x & Mono_Posix_FilePermissions_S_IRUSR) == Mono_Posix_FilePermissions_S_IRUSR)
2246 #else /* def S_IRUSR */
2247 {errno = EINVAL; return -1;}
2248 #endif /* ndef S_IRUSR */
2249 if ((x & Mono_Posix_FilePermissions_S_IRWXG) == Mono_Posix_FilePermissions_S_IRWXG)
2252 #else /* def S_IRWXG */
2253 {errno = EINVAL; return -1;}
2254 #endif /* ndef S_IRWXG */
2255 if ((x & Mono_Posix_FilePermissions_S_IRWXO) == Mono_Posix_FilePermissions_S_IRWXO)
2258 #else /* def S_IRWXO */
2259 {errno = EINVAL; return -1;}
2260 #endif /* ndef S_IRWXO */
2261 if ((x & Mono_Posix_FilePermissions_S_IRWXU) == Mono_Posix_FilePermissions_S_IRWXU)
2264 #else /* def S_IRWXU */
2265 {errno = EINVAL; return -1;}
2266 #endif /* ndef S_IRWXU */
2267 if ((x & Mono_Posix_FilePermissions_S_ISGID) == Mono_Posix_FilePermissions_S_ISGID)
2270 #else /* def S_ISGID */
2271 {errno = EINVAL; return -1;}
2272 #endif /* ndef S_ISGID */
2273 if ((x & Mono_Posix_FilePermissions_S_ISUID) == Mono_Posix_FilePermissions_S_ISUID)
2276 #else /* def S_ISUID */
2277 {errno = EINVAL; return -1;}
2278 #endif /* ndef S_ISUID */
2279 if ((x & Mono_Posix_FilePermissions_S_ISVTX) == Mono_Posix_FilePermissions_S_ISVTX)
2282 #else /* def S_ISVTX */
2283 {errno = EINVAL; return -1;}
2284 #endif /* ndef S_ISVTX */
2285 if ((x & Mono_Posix_FilePermissions_S_IWGRP) == Mono_Posix_FilePermissions_S_IWGRP)
2288 #else /* def S_IWGRP */
2289 {errno = EINVAL; return -1;}
2290 #endif /* ndef S_IWGRP */
2291 if ((x & Mono_Posix_FilePermissions_S_IWOTH) == Mono_Posix_FilePermissions_S_IWOTH)
2294 #else /* def S_IWOTH */
2295 {errno = EINVAL; return -1;}
2296 #endif /* ndef S_IWOTH */
2297 if ((x & Mono_Posix_FilePermissions_S_IWUSR) == Mono_Posix_FilePermissions_S_IWUSR)
2300 #else /* def S_IWUSR */
2301 {errno = EINVAL; return -1;}
2302 #endif /* ndef S_IWUSR */
2303 if ((x & Mono_Posix_FilePermissions_S_IXGRP) == Mono_Posix_FilePermissions_S_IXGRP)
2306 #else /* def S_IXGRP */
2307 {errno = EINVAL; return -1;}
2308 #endif /* ndef S_IXGRP */
2309 if ((x & Mono_Posix_FilePermissions_S_IXOTH) == Mono_Posix_FilePermissions_S_IXOTH)
2312 #else /* def S_IXOTH */
2313 {errno = EINVAL; return -1;}
2314 #endif /* ndef S_IXOTH */
2315 if ((x & Mono_Posix_FilePermissions_S_IXUSR) == Mono_Posix_FilePermissions_S_IXUSR)
2318 #else /* def S_IXUSR */
2319 {errno = EINVAL; return -1;}
2320 #endif /* ndef S_IXUSR */
2326 int Mono_Posix_ToFilePermissions (unsigned int x, unsigned int *r)
2332 if ((x & ACCESSPERMS) == ACCESSPERMS)
2333 *r |= Mono_Posix_FilePermissions_ACCESSPERMS;
2334 #endif /* ndef ACCESSPERMS */
2336 if ((x & ALLPERMS) == ALLPERMS)
2337 *r |= Mono_Posix_FilePermissions_ALLPERMS;
2338 #endif /* ndef ALLPERMS */
2340 if ((x & DEFFILEMODE) == DEFFILEMODE)
2341 *r |= Mono_Posix_FilePermissions_DEFFILEMODE;
2342 #endif /* ndef DEFFILEMODE */
2344 if ((x & S_IFBLK) == S_IFBLK)
2345 *r |= Mono_Posix_FilePermissions_S_IFBLK;
2346 #endif /* ndef S_IFBLK */
2348 if ((x & S_IFCHR) == S_IFCHR)
2349 *r |= Mono_Posix_FilePermissions_S_IFCHR;
2350 #endif /* ndef S_IFCHR */
2352 if ((x & S_IFDIR) == S_IFDIR)
2353 *r |= Mono_Posix_FilePermissions_S_IFDIR;
2354 #endif /* ndef S_IFDIR */
2356 if ((x & S_IFIFO) == S_IFIFO)
2357 *r |= Mono_Posix_FilePermissions_S_IFIFO;
2358 #endif /* ndef S_IFIFO */
2360 if ((x & S_IFLNK) == S_IFLNK)
2361 *r |= Mono_Posix_FilePermissions_S_IFLNK;
2362 #endif /* ndef S_IFLNK */
2364 if ((x & S_IFMT) == S_IFMT)
2365 *r |= Mono_Posix_FilePermissions_S_IFMT;
2366 #endif /* ndef S_IFMT */
2368 if ((x & S_IFREG) == S_IFREG)
2369 *r |= Mono_Posix_FilePermissions_S_IFREG;
2370 #endif /* ndef S_IFREG */
2372 if ((x & S_IFSOCK) == S_IFSOCK)
2373 *r |= Mono_Posix_FilePermissions_S_IFSOCK;
2374 #endif /* ndef S_IFSOCK */
2376 if ((x & S_IRGRP) == S_IRGRP)
2377 *r |= Mono_Posix_FilePermissions_S_IRGRP;
2378 #endif /* ndef S_IRGRP */
2380 if ((x & S_IROTH) == S_IROTH)
2381 *r |= Mono_Posix_FilePermissions_S_IROTH;
2382 #endif /* ndef S_IROTH */
2384 if ((x & S_IRUSR) == S_IRUSR)
2385 *r |= Mono_Posix_FilePermissions_S_IRUSR;
2386 #endif /* ndef S_IRUSR */
2388 if ((x & S_IRWXG) == S_IRWXG)
2389 *r |= Mono_Posix_FilePermissions_S_IRWXG;
2390 #endif /* ndef S_IRWXG */
2392 if ((x & S_IRWXO) == S_IRWXO)
2393 *r |= Mono_Posix_FilePermissions_S_IRWXO;
2394 #endif /* ndef S_IRWXO */
2396 if ((x & S_IRWXU) == S_IRWXU)
2397 *r |= Mono_Posix_FilePermissions_S_IRWXU;
2398 #endif /* ndef S_IRWXU */
2400 if ((x & S_ISGID) == S_ISGID)
2401 *r |= Mono_Posix_FilePermissions_S_ISGID;
2402 #endif /* ndef S_ISGID */
2404 if ((x & S_ISUID) == S_ISUID)
2405 *r |= Mono_Posix_FilePermissions_S_ISUID;
2406 #endif /* ndef S_ISUID */
2408 if ((x & S_ISVTX) == S_ISVTX)
2409 *r |= Mono_Posix_FilePermissions_S_ISVTX;
2410 #endif /* ndef S_ISVTX */
2412 if ((x & S_IWGRP) == S_IWGRP)
2413 *r |= Mono_Posix_FilePermissions_S_IWGRP;
2414 #endif /* ndef S_IWGRP */
2416 if ((x & S_IWOTH) == S_IWOTH)
2417 *r |= Mono_Posix_FilePermissions_S_IWOTH;
2418 #endif /* ndef S_IWOTH */
2420 if ((x & S_IWUSR) == S_IWUSR)
2421 *r |= Mono_Posix_FilePermissions_S_IWUSR;
2422 #endif /* ndef S_IWUSR */
2424 if ((x & S_IXGRP) == S_IXGRP)
2425 *r |= Mono_Posix_FilePermissions_S_IXGRP;
2426 #endif /* ndef S_IXGRP */
2428 if ((x & S_IXOTH) == S_IXOTH)
2429 *r |= Mono_Posix_FilePermissions_S_IXOTH;
2430 #endif /* ndef S_IXOTH */
2432 if ((x & S_IXUSR) == S_IXUSR)
2433 *r |= Mono_Posix_FilePermissions_S_IXUSR;
2434 #endif /* ndef S_IXUSR */
2438 int Mono_Posix_FromLockType (short x, short *r)
2441 if (x == Mono_Posix_LockType_F_RDLCK)
2443 {*r = F_RDLCK; return 0;}
2444 #else /* def F_RDLCK */
2445 {errno = EINVAL; return -1;}
2446 #endif /* ndef F_RDLCK */
2447 if (x == Mono_Posix_LockType_F_UNLCK)
2449 {*r = F_UNLCK; return 0;}
2450 #else /* def F_UNLCK */
2451 {errno = EINVAL; return -1;}
2452 #endif /* ndef F_UNLCK */
2453 if (x == Mono_Posix_LockType_F_WRLCK)
2455 {*r = F_WRLCK; return 0;}
2456 #else /* def F_WRLCK */
2457 {errno = EINVAL; return -1;}
2458 #endif /* ndef F_WRLCK */
2461 errno = EINVAL; return -1;
2464 int Mono_Posix_ToLockType (short x, short *r)
2471 {*r = Mono_Posix_LockType_F_RDLCK; return 0;}
2472 #endif /* ndef F_RDLCK */
2475 {*r = Mono_Posix_LockType_F_UNLCK; return 0;}
2476 #endif /* ndef F_UNLCK */
2479 {*r = Mono_Posix_LockType_F_WRLCK; return 0;}
2480 #endif /* ndef F_WRLCK */
2481 errno = EINVAL; return -1;
2484 int Mono_Posix_FromLockfCommand (int x, int *r)
2487 if (x == Mono_Posix_LockfCommand_F_LOCK)
2489 {*r = F_LOCK; return 0;}
2490 #else /* def F_LOCK */
2491 {errno = EINVAL; return -1;}
2492 #endif /* ndef F_LOCK */
2493 if (x == Mono_Posix_LockfCommand_F_TEST)
2495 {*r = F_TEST; return 0;}
2496 #else /* def F_TEST */
2497 {errno = EINVAL; return -1;}
2498 #endif /* ndef F_TEST */
2499 if (x == Mono_Posix_LockfCommand_F_TLOCK)
2501 {*r = F_TLOCK; return 0;}
2502 #else /* def F_TLOCK */
2503 {errno = EINVAL; return -1;}
2504 #endif /* ndef F_TLOCK */
2505 if (x == Mono_Posix_LockfCommand_F_ULOCK)
2507 {*r = F_ULOCK; return 0;}
2508 #else /* def F_ULOCK */
2509 {errno = EINVAL; return -1;}
2510 #endif /* ndef F_ULOCK */
2513 errno = EINVAL; return -1;
2516 int Mono_Posix_ToLockfCommand (int x, int *r)
2523 {*r = Mono_Posix_LockfCommand_F_LOCK; return 0;}
2524 #endif /* ndef F_LOCK */
2527 {*r = Mono_Posix_LockfCommand_F_TEST; return 0;}
2528 #endif /* ndef F_TEST */
2531 {*r = Mono_Posix_LockfCommand_F_TLOCK; return 0;}
2532 #endif /* ndef F_TLOCK */
2535 {*r = Mono_Posix_LockfCommand_F_ULOCK; return 0;}
2536 #endif /* ndef F_ULOCK */
2537 errno = EINVAL; return -1;
2540 int Mono_Posix_FromMlockallFlags (int x, int *r)
2543 if ((x & Mono_Posix_MlockallFlags_MCL_CURRENT) == Mono_Posix_MlockallFlags_MCL_CURRENT)
2546 #else /* def MCL_CURRENT */
2547 {errno = EINVAL; return -1;}
2548 #endif /* ndef MCL_CURRENT */
2549 if ((x & Mono_Posix_MlockallFlags_MCL_FUTURE) == Mono_Posix_MlockallFlags_MCL_FUTURE)
2552 #else /* def MCL_FUTURE */
2553 {errno = EINVAL; return -1;}
2554 #endif /* ndef MCL_FUTURE */
2560 int Mono_Posix_ToMlockallFlags (int x, int *r)
2566 if ((x & MCL_CURRENT) == MCL_CURRENT)
2567 *r |= Mono_Posix_MlockallFlags_MCL_CURRENT;
2568 #endif /* ndef MCL_CURRENT */
2570 if ((x & MCL_FUTURE) == MCL_FUTURE)
2571 *r |= Mono_Posix_MlockallFlags_MCL_FUTURE;
2572 #endif /* ndef MCL_FUTURE */
2576 int Mono_Posix_FromMmapFlags (int x, int *r)
2579 if ((x & Mono_Posix_MmapFlags_MAP_ANON) == Mono_Posix_MmapFlags_MAP_ANON)
2582 #else /* def MAP_ANON */
2583 {errno = EINVAL; return -1;}
2584 #endif /* ndef MAP_ANON */
2585 if ((x & Mono_Posix_MmapFlags_MAP_ANONYMOUS) == Mono_Posix_MmapFlags_MAP_ANONYMOUS)
2586 #ifdef MAP_ANONYMOUS
2587 *r |= MAP_ANONYMOUS;
2588 #else /* def MAP_ANONYMOUS */
2589 {errno = EINVAL; return -1;}
2590 #endif /* ndef MAP_ANONYMOUS */
2591 if ((x & Mono_Posix_MmapFlags_MAP_DENYWRITE) == Mono_Posix_MmapFlags_MAP_DENYWRITE)
2592 #ifdef MAP_DENYWRITE
2593 *r |= MAP_DENYWRITE;
2594 #else /* def MAP_DENYWRITE */
2595 {errno = EINVAL; return -1;}
2596 #endif /* ndef MAP_DENYWRITE */
2597 if ((x & Mono_Posix_MmapFlags_MAP_EXECUTABLE) == Mono_Posix_MmapFlags_MAP_EXECUTABLE)
2598 #ifdef MAP_EXECUTABLE
2599 *r |= MAP_EXECUTABLE;
2600 #else /* def MAP_EXECUTABLE */
2601 {errno = EINVAL; return -1;}
2602 #endif /* ndef MAP_EXECUTABLE */
2603 if ((x & Mono_Posix_MmapFlags_MAP_FILE) == Mono_Posix_MmapFlags_MAP_FILE)
2606 #else /* def MAP_FILE */
2607 {errno = EINVAL; return -1;}
2608 #endif /* ndef MAP_FILE */
2609 if ((x & Mono_Posix_MmapFlags_MAP_FIXED) == Mono_Posix_MmapFlags_MAP_FIXED)
2612 #else /* def MAP_FIXED */
2613 {errno = EINVAL; return -1;}
2614 #endif /* ndef MAP_FIXED */
2615 if ((x & Mono_Posix_MmapFlags_MAP_GROWSDOWN) == Mono_Posix_MmapFlags_MAP_GROWSDOWN)
2616 #ifdef MAP_GROWSDOWN
2617 *r |= MAP_GROWSDOWN;
2618 #else /* def MAP_GROWSDOWN */
2619 {errno = EINVAL; return -1;}
2620 #endif /* ndef MAP_GROWSDOWN */
2621 if ((x & Mono_Posix_MmapFlags_MAP_LOCKED) == Mono_Posix_MmapFlags_MAP_LOCKED)
2624 #else /* def MAP_LOCKED */
2625 {errno = EINVAL; return -1;}
2626 #endif /* ndef MAP_LOCKED */
2627 if ((x & Mono_Posix_MmapFlags_MAP_NONBLOCK) == Mono_Posix_MmapFlags_MAP_NONBLOCK)
2630 #else /* def MAP_NONBLOCK */
2631 {errno = EINVAL; return -1;}
2632 #endif /* ndef MAP_NONBLOCK */
2633 if ((x & Mono_Posix_MmapFlags_MAP_NORESERVE) == Mono_Posix_MmapFlags_MAP_NORESERVE)
2634 #ifdef MAP_NORESERVE
2635 *r |= MAP_NORESERVE;
2636 #else /* def MAP_NORESERVE */
2637 {errno = EINVAL; return -1;}
2638 #endif /* ndef MAP_NORESERVE */
2639 if ((x & Mono_Posix_MmapFlags_MAP_POPULATE) == Mono_Posix_MmapFlags_MAP_POPULATE)
2642 #else /* def MAP_POPULATE */
2643 {errno = EINVAL; return -1;}
2644 #endif /* ndef MAP_POPULATE */
2645 if ((x & Mono_Posix_MmapFlags_MAP_PRIVATE) == Mono_Posix_MmapFlags_MAP_PRIVATE)
2648 #else /* def MAP_PRIVATE */
2649 {errno = EINVAL; return -1;}
2650 #endif /* ndef MAP_PRIVATE */
2651 if ((x & Mono_Posix_MmapFlags_MAP_SHARED) == Mono_Posix_MmapFlags_MAP_SHARED)
2654 #else /* def MAP_SHARED */
2655 {errno = EINVAL; return -1;}
2656 #endif /* ndef MAP_SHARED */
2657 if ((x & Mono_Posix_MmapFlags_MAP_TYPE) == Mono_Posix_MmapFlags_MAP_TYPE)
2660 #else /* def MAP_TYPE */
2661 {errno = EINVAL; return -1;}
2662 #endif /* ndef MAP_TYPE */
2668 int Mono_Posix_ToMmapFlags (int x, int *r)
2674 if ((x & MAP_ANON) == MAP_ANON)
2675 *r |= Mono_Posix_MmapFlags_MAP_ANON;
2676 #endif /* ndef MAP_ANON */
2677 #ifdef MAP_ANONYMOUS
2678 if ((x & MAP_ANONYMOUS) == MAP_ANONYMOUS)
2679 *r |= Mono_Posix_MmapFlags_MAP_ANONYMOUS;
2680 #endif /* ndef MAP_ANONYMOUS */
2681 #ifdef MAP_DENYWRITE
2682 if ((x & MAP_DENYWRITE) == MAP_DENYWRITE)
2683 *r |= Mono_Posix_MmapFlags_MAP_DENYWRITE;
2684 #endif /* ndef MAP_DENYWRITE */
2685 #ifdef MAP_EXECUTABLE
2686 if ((x & MAP_EXECUTABLE) == MAP_EXECUTABLE)
2687 *r |= Mono_Posix_MmapFlags_MAP_EXECUTABLE;
2688 #endif /* ndef MAP_EXECUTABLE */
2690 if ((x & MAP_FILE) == MAP_FILE)
2691 *r |= Mono_Posix_MmapFlags_MAP_FILE;
2692 #endif /* ndef MAP_FILE */
2694 if ((x & MAP_FIXED) == MAP_FIXED)
2695 *r |= Mono_Posix_MmapFlags_MAP_FIXED;
2696 #endif /* ndef MAP_FIXED */
2697 #ifdef MAP_GROWSDOWN
2698 if ((x & MAP_GROWSDOWN) == MAP_GROWSDOWN)
2699 *r |= Mono_Posix_MmapFlags_MAP_GROWSDOWN;
2700 #endif /* ndef MAP_GROWSDOWN */
2702 if ((x & MAP_LOCKED) == MAP_LOCKED)
2703 *r |= Mono_Posix_MmapFlags_MAP_LOCKED;
2704 #endif /* ndef MAP_LOCKED */
2706 if ((x & MAP_NONBLOCK) == MAP_NONBLOCK)
2707 *r |= Mono_Posix_MmapFlags_MAP_NONBLOCK;
2708 #endif /* ndef MAP_NONBLOCK */
2709 #ifdef MAP_NORESERVE
2710 if ((x & MAP_NORESERVE) == MAP_NORESERVE)
2711 *r |= Mono_Posix_MmapFlags_MAP_NORESERVE;
2712 #endif /* ndef MAP_NORESERVE */
2714 if ((x & MAP_POPULATE) == MAP_POPULATE)
2715 *r |= Mono_Posix_MmapFlags_MAP_POPULATE;
2716 #endif /* ndef MAP_POPULATE */
2718 if ((x & MAP_PRIVATE) == MAP_PRIVATE)
2719 *r |= Mono_Posix_MmapFlags_MAP_PRIVATE;
2720 #endif /* ndef MAP_PRIVATE */
2722 if ((x & MAP_SHARED) == MAP_SHARED)
2723 *r |= Mono_Posix_MmapFlags_MAP_SHARED;
2724 #endif /* ndef MAP_SHARED */
2726 if ((x & MAP_TYPE) == MAP_TYPE)
2727 *r |= Mono_Posix_MmapFlags_MAP_TYPE;
2728 #endif /* ndef MAP_TYPE */
2732 int Mono_Posix_FromMmapProts (int x, int *r)
2735 if ((x & Mono_Posix_MmapProts_PROT_EXEC) == Mono_Posix_MmapProts_PROT_EXEC)
2738 #else /* def PROT_EXEC */
2739 {errno = EINVAL; return -1;}
2740 #endif /* ndef PROT_EXEC */
2741 if ((x & Mono_Posix_MmapProts_PROT_GROWSDOWN) == Mono_Posix_MmapProts_PROT_GROWSDOWN)
2742 #ifdef PROT_GROWSDOWN
2743 *r |= PROT_GROWSDOWN;
2744 #else /* def PROT_GROWSDOWN */
2745 {errno = EINVAL; return -1;}
2746 #endif /* ndef PROT_GROWSDOWN */
2747 if ((x & Mono_Posix_MmapProts_PROT_GROWSUP) == Mono_Posix_MmapProts_PROT_GROWSUP)
2750 #else /* def PROT_GROWSUP */
2751 {errno = EINVAL; return -1;}
2752 #endif /* ndef PROT_GROWSUP */
2753 if ((x & Mono_Posix_MmapProts_PROT_NONE) == Mono_Posix_MmapProts_PROT_NONE)
2756 #else /* def PROT_NONE */
2757 {errno = EINVAL; return -1;}
2758 #endif /* ndef PROT_NONE */
2759 if ((x & Mono_Posix_MmapProts_PROT_READ) == Mono_Posix_MmapProts_PROT_READ)
2762 #else /* def PROT_READ */
2763 {errno = EINVAL; return -1;}
2764 #endif /* ndef PROT_READ */
2765 if ((x & Mono_Posix_MmapProts_PROT_WRITE) == Mono_Posix_MmapProts_PROT_WRITE)
2768 #else /* def PROT_WRITE */
2769 {errno = EINVAL; return -1;}
2770 #endif /* ndef PROT_WRITE */
2776 int Mono_Posix_ToMmapProts (int x, int *r)
2782 if ((x & PROT_EXEC) == PROT_EXEC)
2783 *r |= Mono_Posix_MmapProts_PROT_EXEC;
2784 #endif /* ndef PROT_EXEC */
2785 #ifdef PROT_GROWSDOWN
2786 if ((x & PROT_GROWSDOWN) == PROT_GROWSDOWN)
2787 *r |= Mono_Posix_MmapProts_PROT_GROWSDOWN;
2788 #endif /* ndef PROT_GROWSDOWN */
2790 if ((x & PROT_GROWSUP) == PROT_GROWSUP)
2791 *r |= Mono_Posix_MmapProts_PROT_GROWSUP;
2792 #endif /* ndef PROT_GROWSUP */
2794 if ((x & PROT_NONE) == PROT_NONE)
2795 *r |= Mono_Posix_MmapProts_PROT_NONE;
2796 #endif /* ndef PROT_NONE */
2798 if ((x & PROT_READ) == PROT_READ)
2799 *r |= Mono_Posix_MmapProts_PROT_READ;
2800 #endif /* ndef PROT_READ */
2802 if ((x & PROT_WRITE) == PROT_WRITE)
2803 *r |= Mono_Posix_MmapProts_PROT_WRITE;
2804 #endif /* ndef PROT_WRITE */
2808 int Mono_Posix_FromMountFlags (guint64 x, guint64 *r)
2811 if ((x & Mono_Posix_MountFlags_ST_APPEND) == Mono_Posix_MountFlags_ST_APPEND)
2814 #else /* def ST_APPEND */
2815 {errno = EINVAL; return -1;}
2816 #endif /* ndef ST_APPEND */
2817 if ((x & Mono_Posix_MountFlags_ST_IMMUTABLE) == Mono_Posix_MountFlags_ST_IMMUTABLE)
2820 #else /* def ST_IMMUTABLE */
2821 {errno = EINVAL; return -1;}
2822 #endif /* ndef ST_IMMUTABLE */
2823 if ((x & Mono_Posix_MountFlags_ST_MANDLOCK) == Mono_Posix_MountFlags_ST_MANDLOCK)
2826 #else /* def ST_MANDLOCK */
2827 {errno = EINVAL; return -1;}
2828 #endif /* ndef ST_MANDLOCK */
2829 if ((x & Mono_Posix_MountFlags_ST_NOATIME) == Mono_Posix_MountFlags_ST_NOATIME)
2832 #else /* def ST_NOATIME */
2833 {errno = EINVAL; return -1;}
2834 #endif /* ndef ST_NOATIME */
2835 if ((x & Mono_Posix_MountFlags_ST_NODEV) == Mono_Posix_MountFlags_ST_NODEV)
2838 #else /* def ST_NODEV */
2839 {errno = EINVAL; return -1;}
2840 #endif /* ndef ST_NODEV */
2841 if ((x & Mono_Posix_MountFlags_ST_NODIRATIME) == Mono_Posix_MountFlags_ST_NODIRATIME)
2842 #ifdef ST_NODIRATIME
2843 *r |= ST_NODIRATIME;
2844 #else /* def ST_NODIRATIME */
2845 {errno = EINVAL; return -1;}
2846 #endif /* ndef ST_NODIRATIME */
2847 if ((x & Mono_Posix_MountFlags_ST_NOSUID) == Mono_Posix_MountFlags_ST_NOSUID)
2850 #else /* def ST_NOSUID */
2851 {errno = EINVAL; return -1;}
2852 #endif /* ndef ST_NOSUID */
2853 if ((x & Mono_Posix_MountFlags_ST_RDONLY) == Mono_Posix_MountFlags_ST_RDONLY)
2856 #else /* def ST_RDONLY */
2857 {errno = EINVAL; return -1;}
2858 #endif /* ndef ST_RDONLY */
2859 if ((x & Mono_Posix_MountFlags_ST_SYNCHRONOUS) == Mono_Posix_MountFlags_ST_SYNCHRONOUS)
2860 #ifdef ST_SYNCHRONOUS
2861 *r |= ST_SYNCHRONOUS;
2862 #else /* def ST_SYNCHRONOUS */
2863 {errno = EINVAL; return -1;}
2864 #endif /* ndef ST_SYNCHRONOUS */
2865 if ((x & Mono_Posix_MountFlags_ST_WRITE) == Mono_Posix_MountFlags_ST_WRITE)
2868 #else /* def ST_WRITE */
2869 {errno = EINVAL; return -1;}
2870 #endif /* ndef ST_WRITE */
2876 int Mono_Posix_ToMountFlags (guint64 x, guint64 *r)
2882 if ((x & ST_APPEND) == ST_APPEND)
2883 *r |= Mono_Posix_MountFlags_ST_APPEND;
2884 #endif /* ndef ST_APPEND */
2886 if ((x & ST_IMMUTABLE) == ST_IMMUTABLE)
2887 *r |= Mono_Posix_MountFlags_ST_IMMUTABLE;
2888 #endif /* ndef ST_IMMUTABLE */
2890 if ((x & ST_MANDLOCK) == ST_MANDLOCK)
2891 *r |= Mono_Posix_MountFlags_ST_MANDLOCK;
2892 #endif /* ndef ST_MANDLOCK */
2894 if ((x & ST_NOATIME) == ST_NOATIME)
2895 *r |= Mono_Posix_MountFlags_ST_NOATIME;
2896 #endif /* ndef ST_NOATIME */
2898 if ((x & ST_NODEV) == ST_NODEV)
2899 *r |= Mono_Posix_MountFlags_ST_NODEV;
2900 #endif /* ndef ST_NODEV */
2901 #ifdef ST_NODIRATIME
2902 if ((x & ST_NODIRATIME) == ST_NODIRATIME)
2903 *r |= Mono_Posix_MountFlags_ST_NODIRATIME;
2904 #endif /* ndef ST_NODIRATIME */
2906 if ((x & ST_NOSUID) == ST_NOSUID)
2907 *r |= Mono_Posix_MountFlags_ST_NOSUID;
2908 #endif /* ndef ST_NOSUID */
2910 if ((x & ST_RDONLY) == ST_RDONLY)
2911 *r |= Mono_Posix_MountFlags_ST_RDONLY;
2912 #endif /* ndef ST_RDONLY */
2913 #ifdef ST_SYNCHRONOUS
2914 if ((x & ST_SYNCHRONOUS) == ST_SYNCHRONOUS)
2915 *r |= Mono_Posix_MountFlags_ST_SYNCHRONOUS;
2916 #endif /* ndef ST_SYNCHRONOUS */
2918 if ((x & ST_WRITE) == ST_WRITE)
2919 *r |= Mono_Posix_MountFlags_ST_WRITE;
2920 #endif /* ndef ST_WRITE */
2924 int Mono_Posix_FromMremapFlags (guint64 x, guint64 *r)
2927 if ((x & Mono_Posix_MremapFlags_MREMAP_MAYMOVE) == Mono_Posix_MremapFlags_MREMAP_MAYMOVE)
2928 #ifdef MREMAP_MAYMOVE
2929 *r |= MREMAP_MAYMOVE;
2930 #else /* def MREMAP_MAYMOVE */
2931 {errno = EINVAL; return -1;}
2932 #endif /* ndef MREMAP_MAYMOVE */
2938 int Mono_Posix_ToMremapFlags (guint64 x, guint64 *r)
2943 #ifdef MREMAP_MAYMOVE
2944 if ((x & MREMAP_MAYMOVE) == MREMAP_MAYMOVE)
2945 *r |= Mono_Posix_MremapFlags_MREMAP_MAYMOVE;
2946 #endif /* ndef MREMAP_MAYMOVE */
2950 int Mono_Posix_FromMsyncFlags (int x, int *r)
2953 if ((x & Mono_Posix_MsyncFlags_MS_ASYNC) == Mono_Posix_MsyncFlags_MS_ASYNC)
2956 #else /* def MS_ASYNC */
2957 {errno = EINVAL; return -1;}
2958 #endif /* ndef MS_ASYNC */
2959 if ((x & Mono_Posix_MsyncFlags_MS_INVALIDATE) == Mono_Posix_MsyncFlags_MS_INVALIDATE)
2960 #ifdef MS_INVALIDATE
2961 *r |= MS_INVALIDATE;
2962 #else /* def MS_INVALIDATE */
2963 {errno = EINVAL; return -1;}
2964 #endif /* ndef MS_INVALIDATE */
2965 if ((x & Mono_Posix_MsyncFlags_MS_SYNC) == Mono_Posix_MsyncFlags_MS_SYNC)
2968 #else /* def MS_SYNC */
2969 {errno = EINVAL; return -1;}
2970 #endif /* ndef MS_SYNC */
2976 int Mono_Posix_ToMsyncFlags (int x, int *r)
2982 if ((x & MS_ASYNC) == MS_ASYNC)
2983 *r |= Mono_Posix_MsyncFlags_MS_ASYNC;
2984 #endif /* ndef MS_ASYNC */
2985 #ifdef MS_INVALIDATE
2986 if ((x & MS_INVALIDATE) == MS_INVALIDATE)
2987 *r |= Mono_Posix_MsyncFlags_MS_INVALIDATE;
2988 #endif /* ndef MS_INVALIDATE */
2990 if ((x & MS_SYNC) == MS_SYNC)
2991 *r |= Mono_Posix_MsyncFlags_MS_SYNC;
2992 #endif /* ndef MS_SYNC */
2996 int Mono_Posix_FromOpenFlags (int x, int *r)
2999 if ((x & Mono_Posix_OpenFlags_O_APPEND) == Mono_Posix_OpenFlags_O_APPEND)
3002 #else /* def O_APPEND */
3003 {errno = EINVAL; return -1;}
3004 #endif /* ndef O_APPEND */
3005 if ((x & Mono_Posix_OpenFlags_O_ASYNC) == Mono_Posix_OpenFlags_O_ASYNC)
3008 #else /* def O_ASYNC */
3009 {errno = EINVAL; return -1;}
3010 #endif /* ndef O_ASYNC */
3011 if ((x & Mono_Posix_OpenFlags_O_CREAT) == Mono_Posix_OpenFlags_O_CREAT)
3014 #else /* def O_CREAT */
3015 {errno = EINVAL; return -1;}
3016 #endif /* ndef O_CREAT */
3017 if ((x & Mono_Posix_OpenFlags_O_DIRECT) == Mono_Posix_OpenFlags_O_DIRECT)
3020 #else /* def O_DIRECT */
3021 {errno = EINVAL; return -1;}
3022 #endif /* ndef O_DIRECT */
3023 if ((x & Mono_Posix_OpenFlags_O_DIRECTORY) == Mono_Posix_OpenFlags_O_DIRECTORY)
3026 #else /* def O_DIRECTORY */
3027 {errno = EINVAL; return -1;}
3028 #endif /* ndef O_DIRECTORY */
3029 if ((x & Mono_Posix_OpenFlags_O_EXCL) == Mono_Posix_OpenFlags_O_EXCL)
3032 #else /* def O_EXCL */
3033 {errno = EINVAL; return -1;}
3034 #endif /* ndef O_EXCL */
3035 if ((x & Mono_Posix_OpenFlags_O_LARGEFILE) == Mono_Posix_OpenFlags_O_LARGEFILE)
3038 #else /* def O_LARGEFILE */
3039 {errno = EINVAL; return -1;}
3040 #endif /* ndef O_LARGEFILE */
3041 if ((x & Mono_Posix_OpenFlags_O_NOCTTY) == Mono_Posix_OpenFlags_O_NOCTTY)
3044 #else /* def O_NOCTTY */
3045 {errno = EINVAL; return -1;}
3046 #endif /* ndef O_NOCTTY */
3047 if ((x & Mono_Posix_OpenFlags_O_NOFOLLOW) == Mono_Posix_OpenFlags_O_NOFOLLOW)
3050 #else /* def O_NOFOLLOW */
3051 {errno = EINVAL; return -1;}
3052 #endif /* ndef O_NOFOLLOW */
3053 if ((x & Mono_Posix_OpenFlags_O_NONBLOCK) == Mono_Posix_OpenFlags_O_NONBLOCK)
3056 #else /* def O_NONBLOCK */
3057 {errno = EINVAL; return -1;}
3058 #endif /* ndef O_NONBLOCK */
3059 if ((x & Mono_Posix_OpenFlags_O_RDONLY) == Mono_Posix_OpenFlags_O_RDONLY)
3062 #else /* def O_RDONLY */
3063 {errno = EINVAL; return -1;}
3064 #endif /* ndef O_RDONLY */
3065 if ((x & Mono_Posix_OpenFlags_O_RDWR) == Mono_Posix_OpenFlags_O_RDWR)
3068 #else /* def O_RDWR */
3069 {errno = EINVAL; return -1;}
3070 #endif /* ndef O_RDWR */
3071 if ((x & Mono_Posix_OpenFlags_O_SYNC) == Mono_Posix_OpenFlags_O_SYNC)
3074 #else /* def O_SYNC */
3075 {errno = EINVAL; return -1;}
3076 #endif /* ndef O_SYNC */
3077 if ((x & Mono_Posix_OpenFlags_O_TRUNC) == Mono_Posix_OpenFlags_O_TRUNC)
3080 #else /* def O_TRUNC */
3081 {errno = EINVAL; return -1;}
3082 #endif /* ndef O_TRUNC */
3083 if ((x & Mono_Posix_OpenFlags_O_WRONLY) == Mono_Posix_OpenFlags_O_WRONLY)
3086 #else /* def O_WRONLY */
3087 {errno = EINVAL; return -1;}
3088 #endif /* ndef O_WRONLY */
3094 int Mono_Posix_ToOpenFlags (int x, int *r)
3100 if ((x & O_APPEND) == O_APPEND)
3101 *r |= Mono_Posix_OpenFlags_O_APPEND;
3102 #endif /* ndef O_APPEND */
3104 if ((x & O_ASYNC) == O_ASYNC)
3105 *r |= Mono_Posix_OpenFlags_O_ASYNC;
3106 #endif /* ndef O_ASYNC */
3108 if ((x & O_CREAT) == O_CREAT)
3109 *r |= Mono_Posix_OpenFlags_O_CREAT;
3110 #endif /* ndef O_CREAT */
3112 if ((x & O_DIRECT) == O_DIRECT)
3113 *r |= Mono_Posix_OpenFlags_O_DIRECT;
3114 #endif /* ndef O_DIRECT */
3116 if ((x & O_DIRECTORY) == O_DIRECTORY)
3117 *r |= Mono_Posix_OpenFlags_O_DIRECTORY;
3118 #endif /* ndef O_DIRECTORY */
3120 if ((x & O_EXCL) == O_EXCL)
3121 *r |= Mono_Posix_OpenFlags_O_EXCL;
3122 #endif /* ndef O_EXCL */
3124 if ((x & O_LARGEFILE) == O_LARGEFILE)
3125 *r |= Mono_Posix_OpenFlags_O_LARGEFILE;
3126 #endif /* ndef O_LARGEFILE */
3128 if ((x & O_NOCTTY) == O_NOCTTY)
3129 *r |= Mono_Posix_OpenFlags_O_NOCTTY;
3130 #endif /* ndef O_NOCTTY */
3132 if ((x & O_NOFOLLOW) == O_NOFOLLOW)
3133 *r |= Mono_Posix_OpenFlags_O_NOFOLLOW;
3134 #endif /* ndef O_NOFOLLOW */
3136 if ((x & O_NONBLOCK) == O_NONBLOCK)
3137 *r |= Mono_Posix_OpenFlags_O_NONBLOCK;
3138 #endif /* ndef O_NONBLOCK */
3140 if ((x & O_RDONLY) == O_RDONLY)
3141 *r |= Mono_Posix_OpenFlags_O_RDONLY;
3142 #endif /* ndef O_RDONLY */
3144 if ((x & O_RDWR) == O_RDWR)
3145 *r |= Mono_Posix_OpenFlags_O_RDWR;
3146 #endif /* ndef O_RDWR */
3148 if ((x & O_SYNC) == O_SYNC)
3149 *r |= Mono_Posix_OpenFlags_O_SYNC;
3150 #endif /* ndef O_SYNC */
3152 if ((x & O_TRUNC) == O_TRUNC)
3153 *r |= Mono_Posix_OpenFlags_O_TRUNC;
3154 #endif /* ndef O_TRUNC */
3156 if ((x & O_WRONLY) == O_WRONLY)
3157 *r |= Mono_Posix_OpenFlags_O_WRONLY;
3158 #endif /* ndef O_WRONLY */
3162 int Mono_Posix_FromPathconfName (int x, int *r)
3165 if (x == Mono_Posix_PathconfName__PC_2_SYMLINKS)
3166 #ifdef _PC_2_SYMLINKS
3167 {*r = _PC_2_SYMLINKS; return 0;}
3168 #else /* def _PC_2_SYMLINKS */
3169 {errno = EINVAL; return -1;}
3170 #endif /* ndef _PC_2_SYMLINKS */
3171 if (x == Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN)
3172 #ifdef _PC_ALLOC_SIZE_MIN
3173 {*r = _PC_ALLOC_SIZE_MIN; return 0;}
3174 #else /* def _PC_ALLOC_SIZE_MIN */
3175 {errno = EINVAL; return -1;}
3176 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3177 if (x == Mono_Posix_PathconfName__PC_ASYNC_IO)
3179 {*r = _PC_ASYNC_IO; return 0;}
3180 #else /* def _PC_ASYNC_IO */
3181 {errno = EINVAL; return -1;}
3182 #endif /* ndef _PC_ASYNC_IO */
3183 if (x == Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED)
3184 #ifdef _PC_CHOWN_RESTRICTED
3185 {*r = _PC_CHOWN_RESTRICTED; return 0;}
3186 #else /* def _PC_CHOWN_RESTRICTED */
3187 {errno = EINVAL; return -1;}
3188 #endif /* ndef _PC_CHOWN_RESTRICTED */
3189 if (x == Mono_Posix_PathconfName__PC_FILESIZEBITS)
3190 #ifdef _PC_FILESIZEBITS
3191 {*r = _PC_FILESIZEBITS; return 0;}
3192 #else /* def _PC_FILESIZEBITS */
3193 {errno = EINVAL; return -1;}
3194 #endif /* ndef _PC_FILESIZEBITS */
3195 if (x == Mono_Posix_PathconfName__PC_LINK_MAX)
3197 {*r = _PC_LINK_MAX; return 0;}
3198 #else /* def _PC_LINK_MAX */
3199 {errno = EINVAL; return -1;}
3200 #endif /* ndef _PC_LINK_MAX */
3201 if (x == Mono_Posix_PathconfName__PC_MAX_CANON)
3202 #ifdef _PC_MAX_CANON
3203 {*r = _PC_MAX_CANON; return 0;}
3204 #else /* def _PC_MAX_CANON */
3205 {errno = EINVAL; return -1;}
3206 #endif /* ndef _PC_MAX_CANON */
3207 if (x == Mono_Posix_PathconfName__PC_MAX_INPUT)
3208 #ifdef _PC_MAX_INPUT
3209 {*r = _PC_MAX_INPUT; return 0;}
3210 #else /* def _PC_MAX_INPUT */
3211 {errno = EINVAL; return -1;}
3212 #endif /* ndef _PC_MAX_INPUT */
3213 if (x == Mono_Posix_PathconfName__PC_NAME_MAX)
3215 {*r = _PC_NAME_MAX; return 0;}
3216 #else /* def _PC_NAME_MAX */
3217 {errno = EINVAL; return -1;}
3218 #endif /* ndef _PC_NAME_MAX */
3219 if (x == Mono_Posix_PathconfName__PC_NO_TRUNC)
3221 {*r = _PC_NO_TRUNC; return 0;}
3222 #else /* def _PC_NO_TRUNC */
3223 {errno = EINVAL; return -1;}
3224 #endif /* ndef _PC_NO_TRUNC */
3225 if (x == Mono_Posix_PathconfName__PC_PATH_MAX)
3227 {*r = _PC_PATH_MAX; return 0;}
3228 #else /* def _PC_PATH_MAX */
3229 {errno = EINVAL; return -1;}
3230 #endif /* ndef _PC_PATH_MAX */
3231 if (x == Mono_Posix_PathconfName__PC_PIPE_BUF)
3233 {*r = _PC_PIPE_BUF; return 0;}
3234 #else /* def _PC_PIPE_BUF */
3235 {errno = EINVAL; return -1;}
3236 #endif /* ndef _PC_PIPE_BUF */
3237 if (x == Mono_Posix_PathconfName__PC_PRIO_IO)
3239 {*r = _PC_PRIO_IO; return 0;}
3240 #else /* def _PC_PRIO_IO */
3241 {errno = EINVAL; return -1;}
3242 #endif /* ndef _PC_PRIO_IO */
3243 if (x == Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE)
3244 #ifdef _PC_REC_INCR_XFER_SIZE
3245 {*r = _PC_REC_INCR_XFER_SIZE; return 0;}
3246 #else /* def _PC_REC_INCR_XFER_SIZE */
3247 {errno = EINVAL; return -1;}
3248 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3249 if (x == Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE)
3250 #ifdef _PC_REC_MAX_XFER_SIZE
3251 {*r = _PC_REC_MAX_XFER_SIZE; return 0;}
3252 #else /* def _PC_REC_MAX_XFER_SIZE */
3253 {errno = EINVAL; return -1;}
3254 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3255 if (x == Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE)
3256 #ifdef _PC_REC_MIN_XFER_SIZE
3257 {*r = _PC_REC_MIN_XFER_SIZE; return 0;}
3258 #else /* def _PC_REC_MIN_XFER_SIZE */
3259 {errno = EINVAL; return -1;}
3260 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3261 if (x == Mono_Posix_PathconfName__PC_REC_XFER_ALIGN)
3262 #ifdef _PC_REC_XFER_ALIGN
3263 {*r = _PC_REC_XFER_ALIGN; return 0;}
3264 #else /* def _PC_REC_XFER_ALIGN */
3265 {errno = EINVAL; return -1;}
3266 #endif /* ndef _PC_REC_XFER_ALIGN */
3267 if (x == Mono_Posix_PathconfName__PC_SOCK_MAXBUF)
3268 #ifdef _PC_SOCK_MAXBUF
3269 {*r = _PC_SOCK_MAXBUF; return 0;}
3270 #else /* def _PC_SOCK_MAXBUF */
3271 {errno = EINVAL; return -1;}
3272 #endif /* ndef _PC_SOCK_MAXBUF */
3273 if (x == Mono_Posix_PathconfName__PC_SYMLINK_MAX)
3274 #ifdef _PC_SYMLINK_MAX
3275 {*r = _PC_SYMLINK_MAX; return 0;}
3276 #else /* def _PC_SYMLINK_MAX */
3277 {errno = EINVAL; return -1;}
3278 #endif /* ndef _PC_SYMLINK_MAX */
3279 if (x == Mono_Posix_PathconfName__PC_SYNC_IO)
3281 {*r = _PC_SYNC_IO; return 0;}
3282 #else /* def _PC_SYNC_IO */
3283 {errno = EINVAL; return -1;}
3284 #endif /* ndef _PC_SYNC_IO */
3285 if (x == Mono_Posix_PathconfName__PC_VDISABLE)
3287 {*r = _PC_VDISABLE; return 0;}
3288 #else /* def _PC_VDISABLE */
3289 {errno = EINVAL; return -1;}
3290 #endif /* ndef _PC_VDISABLE */
3293 errno = EINVAL; return -1;
3296 int Mono_Posix_ToPathconfName (int x, int *r)
3301 #ifdef _PC_2_SYMLINKS
3302 if (x == _PC_2_SYMLINKS)
3303 {*r = Mono_Posix_PathconfName__PC_2_SYMLINKS; return 0;}
3304 #endif /* ndef _PC_2_SYMLINKS */
3305 #ifdef _PC_ALLOC_SIZE_MIN
3306 if (x == _PC_ALLOC_SIZE_MIN)
3307 {*r = Mono_Posix_PathconfName__PC_ALLOC_SIZE_MIN; return 0;}
3308 #endif /* ndef _PC_ALLOC_SIZE_MIN */
3310 if (x == _PC_ASYNC_IO)
3311 {*r = Mono_Posix_PathconfName__PC_ASYNC_IO; return 0;}
3312 #endif /* ndef _PC_ASYNC_IO */
3313 #ifdef _PC_CHOWN_RESTRICTED
3314 if (x == _PC_CHOWN_RESTRICTED)
3315 {*r = Mono_Posix_PathconfName__PC_CHOWN_RESTRICTED; return 0;}
3316 #endif /* ndef _PC_CHOWN_RESTRICTED */
3317 #ifdef _PC_FILESIZEBITS
3318 if (x == _PC_FILESIZEBITS)
3319 {*r = Mono_Posix_PathconfName__PC_FILESIZEBITS; return 0;}
3320 #endif /* ndef _PC_FILESIZEBITS */
3322 if (x == _PC_LINK_MAX)
3323 {*r = Mono_Posix_PathconfName__PC_LINK_MAX; return 0;}
3324 #endif /* ndef _PC_LINK_MAX */
3325 #ifdef _PC_MAX_CANON
3326 if (x == _PC_MAX_CANON)
3327 {*r = Mono_Posix_PathconfName__PC_MAX_CANON; return 0;}
3328 #endif /* ndef _PC_MAX_CANON */
3329 #ifdef _PC_MAX_INPUT
3330 if (x == _PC_MAX_INPUT)
3331 {*r = Mono_Posix_PathconfName__PC_MAX_INPUT; return 0;}
3332 #endif /* ndef _PC_MAX_INPUT */
3334 if (x == _PC_NAME_MAX)
3335 {*r = Mono_Posix_PathconfName__PC_NAME_MAX; return 0;}
3336 #endif /* ndef _PC_NAME_MAX */
3338 if (x == _PC_NO_TRUNC)
3339 {*r = Mono_Posix_PathconfName__PC_NO_TRUNC; return 0;}
3340 #endif /* ndef _PC_NO_TRUNC */
3342 if (x == _PC_PATH_MAX)
3343 {*r = Mono_Posix_PathconfName__PC_PATH_MAX; return 0;}
3344 #endif /* ndef _PC_PATH_MAX */
3346 if (x == _PC_PIPE_BUF)
3347 {*r = Mono_Posix_PathconfName__PC_PIPE_BUF; return 0;}
3348 #endif /* ndef _PC_PIPE_BUF */
3350 if (x == _PC_PRIO_IO)
3351 {*r = Mono_Posix_PathconfName__PC_PRIO_IO; return 0;}
3352 #endif /* ndef _PC_PRIO_IO */
3353 #ifdef _PC_REC_INCR_XFER_SIZE
3354 if (x == _PC_REC_INCR_XFER_SIZE)
3355 {*r = Mono_Posix_PathconfName__PC_REC_INCR_XFER_SIZE; return 0;}
3356 #endif /* ndef _PC_REC_INCR_XFER_SIZE */
3357 #ifdef _PC_REC_MAX_XFER_SIZE
3358 if (x == _PC_REC_MAX_XFER_SIZE)
3359 {*r = Mono_Posix_PathconfName__PC_REC_MAX_XFER_SIZE; return 0;}
3360 #endif /* ndef _PC_REC_MAX_XFER_SIZE */
3361 #ifdef _PC_REC_MIN_XFER_SIZE
3362 if (x == _PC_REC_MIN_XFER_SIZE)
3363 {*r = Mono_Posix_PathconfName__PC_REC_MIN_XFER_SIZE; return 0;}
3364 #endif /* ndef _PC_REC_MIN_XFER_SIZE */
3365 #ifdef _PC_REC_XFER_ALIGN
3366 if (x == _PC_REC_XFER_ALIGN)
3367 {*r = Mono_Posix_PathconfName__PC_REC_XFER_ALIGN; return 0;}
3368 #endif /* ndef _PC_REC_XFER_ALIGN */
3369 #ifdef _PC_SOCK_MAXBUF
3370 if (x == _PC_SOCK_MAXBUF)
3371 {*r = Mono_Posix_PathconfName__PC_SOCK_MAXBUF; return 0;}
3372 #endif /* ndef _PC_SOCK_MAXBUF */
3373 #ifdef _PC_SYMLINK_MAX
3374 if (x == _PC_SYMLINK_MAX)
3375 {*r = Mono_Posix_PathconfName__PC_SYMLINK_MAX; return 0;}
3376 #endif /* ndef _PC_SYMLINK_MAX */
3378 if (x == _PC_SYNC_IO)
3379 {*r = Mono_Posix_PathconfName__PC_SYNC_IO; return 0;}
3380 #endif /* ndef _PC_SYNC_IO */
3382 if (x == _PC_VDISABLE)
3383 {*r = Mono_Posix_PathconfName__PC_VDISABLE; return 0;}
3384 #endif /* ndef _PC_VDISABLE */
3385 errno = EINVAL; return -1;
3388 int Mono_Posix_FromPollEvents (short x, short *r)
3391 if ((x & Mono_Posix_PollEvents_POLLERR) == Mono_Posix_PollEvents_POLLERR)
3394 #else /* def POLLERR */
3395 {errno = EINVAL; return -1;}
3396 #endif /* ndef POLLERR */
3397 if ((x & Mono_Posix_PollEvents_POLLHUP) == Mono_Posix_PollEvents_POLLHUP)
3400 #else /* def POLLHUP */
3401 {errno = EINVAL; return -1;}
3402 #endif /* ndef POLLHUP */
3403 if ((x & Mono_Posix_PollEvents_POLLIN) == Mono_Posix_PollEvents_POLLIN)
3406 #else /* def POLLIN */
3407 {errno = EINVAL; return -1;}
3408 #endif /* ndef POLLIN */
3409 if ((x & Mono_Posix_PollEvents_POLLNVAL) == Mono_Posix_PollEvents_POLLNVAL)
3412 #else /* def POLLNVAL */
3413 {errno = EINVAL; return -1;}
3414 #endif /* ndef POLLNVAL */
3415 if ((x & Mono_Posix_PollEvents_POLLOUT) == Mono_Posix_PollEvents_POLLOUT)
3418 #else /* def POLLOUT */
3419 {errno = EINVAL; return -1;}
3420 #endif /* ndef POLLOUT */
3421 if ((x & Mono_Posix_PollEvents_POLLPRI) == Mono_Posix_PollEvents_POLLPRI)
3424 #else /* def POLLPRI */
3425 {errno = EINVAL; return -1;}
3426 #endif /* ndef POLLPRI */
3427 if ((x & Mono_Posix_PollEvents_POLLRDBAND) == Mono_Posix_PollEvents_POLLRDBAND)
3430 #else /* def POLLRDBAND */
3431 {errno = EINVAL; return -1;}
3432 #endif /* ndef POLLRDBAND */
3433 if ((x & Mono_Posix_PollEvents_POLLRDNORM) == Mono_Posix_PollEvents_POLLRDNORM)
3436 #else /* def POLLRDNORM */
3437 {errno = EINVAL; return -1;}
3438 #endif /* ndef POLLRDNORM */
3439 if ((x & Mono_Posix_PollEvents_POLLWRBAND) == Mono_Posix_PollEvents_POLLWRBAND)
3442 #else /* def POLLWRBAND */
3443 {errno = EINVAL; return -1;}
3444 #endif /* ndef POLLWRBAND */
3445 if ((x & Mono_Posix_PollEvents_POLLWRNORM) == Mono_Posix_PollEvents_POLLWRNORM)
3448 #else /* def POLLWRNORM */
3449 {errno = EINVAL; return -1;}
3450 #endif /* ndef POLLWRNORM */
3456 int Mono_Posix_ToPollEvents (short x, short *r)
3462 if ((x & POLLERR) == POLLERR)
3463 *r |= Mono_Posix_PollEvents_POLLERR;
3464 #endif /* ndef POLLERR */
3466 if ((x & POLLHUP) == POLLHUP)
3467 *r |= Mono_Posix_PollEvents_POLLHUP;
3468 #endif /* ndef POLLHUP */
3470 if ((x & POLLIN) == POLLIN)
3471 *r |= Mono_Posix_PollEvents_POLLIN;
3472 #endif /* ndef POLLIN */
3474 if ((x & POLLNVAL) == POLLNVAL)
3475 *r |= Mono_Posix_PollEvents_POLLNVAL;
3476 #endif /* ndef POLLNVAL */
3478 if ((x & POLLOUT) == POLLOUT)
3479 *r |= Mono_Posix_PollEvents_POLLOUT;
3480 #endif /* ndef POLLOUT */
3482 if ((x & POLLPRI) == POLLPRI)
3483 *r |= Mono_Posix_PollEvents_POLLPRI;
3484 #endif /* ndef POLLPRI */
3486 if ((x & POLLRDBAND) == POLLRDBAND)
3487 *r |= Mono_Posix_PollEvents_POLLRDBAND;
3488 #endif /* ndef POLLRDBAND */
3490 if ((x & POLLRDNORM) == POLLRDNORM)
3491 *r |= Mono_Posix_PollEvents_POLLRDNORM;
3492 #endif /* ndef POLLRDNORM */
3494 if ((x & POLLWRBAND) == POLLWRBAND)
3495 *r |= Mono_Posix_PollEvents_POLLWRBAND;
3496 #endif /* ndef POLLWRBAND */
3498 if ((x & POLLWRNORM) == POLLWRNORM)
3499 *r |= Mono_Posix_PollEvents_POLLWRNORM;
3500 #endif /* ndef POLLWRNORM */
3505 Mono_Posix_FromPollfd (struct Mono_Posix_Pollfd *from, struct pollfd *to)
3507 _cnm_return_val_if_overflow (int, from->fd, -1);
3509 memset (to, 0, sizeof(*to));
3512 if (Mono_Posix_FromPollEvents (from->events, &to->events) != 0) {
3515 if (Mono_Posix_FromPollEvents (from->revents, &to->revents) != 0) {
3524 Mono_Posix_ToPollfd (struct pollfd *from, struct Mono_Posix_Pollfd *to)
3526 _cnm_return_val_if_overflow (int, from->fd, -1);
3528 memset (to, 0, sizeof(*to));
3531 if (Mono_Posix_ToPollEvents (from->events, &to->events) != 0) {
3534 if (Mono_Posix_ToPollEvents (from->revents, &to->revents) != 0) {
3542 int Mono_Posix_FromPosixFadviseAdvice (int x, int *r)
3545 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED)
3546 #ifdef POSIX_FADV_DONTNEED
3547 {*r = POSIX_FADV_DONTNEED; return 0;}
3548 #else /* def POSIX_FADV_DONTNEED */
3549 {errno = EINVAL; return -1;}
3550 #endif /* ndef POSIX_FADV_DONTNEED */
3551 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE)
3552 #ifdef POSIX_FADV_NOREUSE
3553 {*r = POSIX_FADV_NOREUSE; return 0;}
3554 #else /* def POSIX_FADV_NOREUSE */
3555 {errno = EINVAL; return -1;}
3556 #endif /* ndef POSIX_FADV_NOREUSE */
3557 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL)
3558 #ifdef POSIX_FADV_NORMAL
3559 {*r = POSIX_FADV_NORMAL; return 0;}
3560 #else /* def POSIX_FADV_NORMAL */
3561 {errno = EINVAL; return -1;}
3562 #endif /* ndef POSIX_FADV_NORMAL */
3563 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM)
3564 #ifdef POSIX_FADV_RANDOM
3565 {*r = POSIX_FADV_RANDOM; return 0;}
3566 #else /* def POSIX_FADV_RANDOM */
3567 {errno = EINVAL; return -1;}
3568 #endif /* ndef POSIX_FADV_RANDOM */
3569 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL)
3570 #ifdef POSIX_FADV_SEQUENTIAL
3571 {*r = POSIX_FADV_SEQUENTIAL; return 0;}
3572 #else /* def POSIX_FADV_SEQUENTIAL */
3573 {errno = EINVAL; return -1;}
3574 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3575 if (x == Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED)
3576 #ifdef POSIX_FADV_WILLNEED
3577 {*r = POSIX_FADV_WILLNEED; return 0;}
3578 #else /* def POSIX_FADV_WILLNEED */
3579 {errno = EINVAL; return -1;}
3580 #endif /* ndef POSIX_FADV_WILLNEED */
3583 errno = EINVAL; return -1;
3586 int Mono_Posix_ToPosixFadviseAdvice (int x, int *r)
3591 #ifdef POSIX_FADV_DONTNEED
3592 if (x == POSIX_FADV_DONTNEED)
3593 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_DONTNEED; return 0;}
3594 #endif /* ndef POSIX_FADV_DONTNEED */
3595 #ifdef POSIX_FADV_NOREUSE
3596 if (x == POSIX_FADV_NOREUSE)
3597 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NOREUSE; return 0;}
3598 #endif /* ndef POSIX_FADV_NOREUSE */
3599 #ifdef POSIX_FADV_NORMAL
3600 if (x == POSIX_FADV_NORMAL)
3601 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_NORMAL; return 0;}
3602 #endif /* ndef POSIX_FADV_NORMAL */
3603 #ifdef POSIX_FADV_RANDOM
3604 if (x == POSIX_FADV_RANDOM)
3605 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_RANDOM; return 0;}
3606 #endif /* ndef POSIX_FADV_RANDOM */
3607 #ifdef POSIX_FADV_SEQUENTIAL
3608 if (x == POSIX_FADV_SEQUENTIAL)
3609 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_SEQUENTIAL; return 0;}
3610 #endif /* ndef POSIX_FADV_SEQUENTIAL */
3611 #ifdef POSIX_FADV_WILLNEED
3612 if (x == POSIX_FADV_WILLNEED)
3613 {*r = Mono_Posix_PosixFadviseAdvice_POSIX_FADV_WILLNEED; return 0;}
3614 #endif /* ndef POSIX_FADV_WILLNEED */
3615 errno = EINVAL; return -1;
3618 int Mono_Posix_FromPosixMadviseAdvice (int x, int *r)
3621 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED)
3622 #ifdef POSIX_MADV_DONTNEED
3623 {*r = POSIX_MADV_DONTNEED; return 0;}
3624 #else /* def POSIX_MADV_DONTNEED */
3625 {errno = EINVAL; return -1;}
3626 #endif /* ndef POSIX_MADV_DONTNEED */
3627 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL)
3628 #ifdef POSIX_MADV_NORMAL
3629 {*r = POSIX_MADV_NORMAL; return 0;}
3630 #else /* def POSIX_MADV_NORMAL */
3631 {errno = EINVAL; return -1;}
3632 #endif /* ndef POSIX_MADV_NORMAL */
3633 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM)
3634 #ifdef POSIX_MADV_RANDOM
3635 {*r = POSIX_MADV_RANDOM; return 0;}
3636 #else /* def POSIX_MADV_RANDOM */
3637 {errno = EINVAL; return -1;}
3638 #endif /* ndef POSIX_MADV_RANDOM */
3639 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL)
3640 #ifdef POSIX_MADV_SEQUENTIAL
3641 {*r = POSIX_MADV_SEQUENTIAL; return 0;}
3642 #else /* def POSIX_MADV_SEQUENTIAL */
3643 {errno = EINVAL; return -1;}
3644 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3645 if (x == Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED)
3646 #ifdef POSIX_MADV_WILLNEED
3647 {*r = POSIX_MADV_WILLNEED; return 0;}
3648 #else /* def POSIX_MADV_WILLNEED */
3649 {errno = EINVAL; return -1;}
3650 #endif /* ndef POSIX_MADV_WILLNEED */
3653 errno = EINVAL; return -1;
3656 int Mono_Posix_ToPosixMadviseAdvice (int x, int *r)
3661 #ifdef POSIX_MADV_DONTNEED
3662 if (x == POSIX_MADV_DONTNEED)
3663 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_DONTNEED; return 0;}
3664 #endif /* ndef POSIX_MADV_DONTNEED */
3665 #ifdef POSIX_MADV_NORMAL
3666 if (x == POSIX_MADV_NORMAL)
3667 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_NORMAL; return 0;}
3668 #endif /* ndef POSIX_MADV_NORMAL */
3669 #ifdef POSIX_MADV_RANDOM
3670 if (x == POSIX_MADV_RANDOM)
3671 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_RANDOM; return 0;}
3672 #endif /* ndef POSIX_MADV_RANDOM */
3673 #ifdef POSIX_MADV_SEQUENTIAL
3674 if (x == POSIX_MADV_SEQUENTIAL)
3675 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_SEQUENTIAL; return 0;}
3676 #endif /* ndef POSIX_MADV_SEQUENTIAL */
3677 #ifdef POSIX_MADV_WILLNEED
3678 if (x == POSIX_MADV_WILLNEED)
3679 {*r = Mono_Posix_PosixMadviseAdvice_POSIX_MADV_WILLNEED; return 0;}
3680 #endif /* ndef POSIX_MADV_WILLNEED */
3681 errno = EINVAL; return -1;
3684 int Mono_Posix_FromSeekFlags (short x, short *r)
3687 if (x == Mono_Posix_SeekFlags_L_INCR)
3689 {*r = L_INCR; return 0;}
3690 #else /* def L_INCR */
3691 {errno = EINVAL; return -1;}
3692 #endif /* ndef L_INCR */
3693 if (x == Mono_Posix_SeekFlags_L_SET)
3695 {*r = L_SET; return 0;}
3696 #else /* def L_SET */
3697 {errno = EINVAL; return -1;}
3698 #endif /* ndef L_SET */
3699 if (x == Mono_Posix_SeekFlags_L_XTND)
3701 {*r = L_XTND; return 0;}
3702 #else /* def L_XTND */
3703 {errno = EINVAL; return -1;}
3704 #endif /* ndef L_XTND */
3705 if (x == Mono_Posix_SeekFlags_SEEK_CUR)
3707 {*r = SEEK_CUR; return 0;}
3708 #else /* def SEEK_CUR */
3709 {errno = EINVAL; return -1;}
3710 #endif /* ndef SEEK_CUR */
3711 if (x == Mono_Posix_SeekFlags_SEEK_END)
3713 {*r = SEEK_END; return 0;}
3714 #else /* def SEEK_END */
3715 {errno = EINVAL; return -1;}
3716 #endif /* ndef SEEK_END */
3717 if (x == Mono_Posix_SeekFlags_SEEK_SET)
3719 {*r = SEEK_SET; return 0;}
3720 #else /* def SEEK_SET */
3721 {errno = EINVAL; return -1;}
3722 #endif /* ndef SEEK_SET */
3725 errno = EINVAL; return -1;
3728 int Mono_Posix_ToSeekFlags (short x, short *r)
3735 {*r = Mono_Posix_SeekFlags_L_INCR; return 0;}
3736 #endif /* ndef L_INCR */
3739 {*r = Mono_Posix_SeekFlags_L_SET; return 0;}
3740 #endif /* ndef L_SET */
3743 {*r = Mono_Posix_SeekFlags_L_XTND; return 0;}
3744 #endif /* ndef L_XTND */
3747 {*r = Mono_Posix_SeekFlags_SEEK_CUR; return 0;}
3748 #endif /* ndef SEEK_CUR */
3751 {*r = Mono_Posix_SeekFlags_SEEK_END; return 0;}
3752 #endif /* ndef SEEK_END */
3755 {*r = Mono_Posix_SeekFlags_SEEK_SET; return 0;}
3756 #endif /* ndef SEEK_SET */
3757 errno = EINVAL; return -1;
3760 int Mono_Posix_FromSignum (int x, int *r)
3763 if (x == Mono_Posix_Signum_SIGABRT)
3765 {*r = SIGABRT; return 0;}
3766 #else /* def SIGABRT */
3767 {errno = EINVAL; return -1;}
3768 #endif /* ndef SIGABRT */
3769 if (x == Mono_Posix_Signum_SIGALRM)
3771 {*r = SIGALRM; return 0;}
3772 #else /* def SIGALRM */
3773 {errno = EINVAL; return -1;}
3774 #endif /* ndef SIGALRM */
3775 if (x == Mono_Posix_Signum_SIGBUS)
3777 {*r = SIGBUS; return 0;}
3778 #else /* def SIGBUS */
3779 {errno = EINVAL; return -1;}
3780 #endif /* ndef SIGBUS */
3781 if (x == Mono_Posix_Signum_SIGCHLD)
3783 {*r = SIGCHLD; return 0;}
3784 #else /* def SIGCHLD */
3785 {errno = EINVAL; return -1;}
3786 #endif /* ndef SIGCHLD */
3787 if (x == Mono_Posix_Signum_SIGCLD)
3789 {*r = SIGCLD; return 0;}
3790 #else /* def SIGCLD */
3791 {errno = EINVAL; return -1;}
3792 #endif /* ndef SIGCLD */
3793 if (x == Mono_Posix_Signum_SIGCONT)
3795 {*r = SIGCONT; return 0;}
3796 #else /* def SIGCONT */
3797 {errno = EINVAL; return -1;}
3798 #endif /* ndef SIGCONT */
3799 if (x == Mono_Posix_Signum_SIGFPE)
3801 {*r = SIGFPE; return 0;}
3802 #else /* def SIGFPE */
3803 {errno = EINVAL; return -1;}
3804 #endif /* ndef SIGFPE */
3805 if (x == Mono_Posix_Signum_SIGHUP)
3807 {*r = SIGHUP; return 0;}
3808 #else /* def SIGHUP */
3809 {errno = EINVAL; return -1;}
3810 #endif /* ndef SIGHUP */
3811 if (x == Mono_Posix_Signum_SIGILL)
3813 {*r = SIGILL; return 0;}
3814 #else /* def SIGILL */
3815 {errno = EINVAL; return -1;}
3816 #endif /* ndef SIGILL */
3817 if (x == Mono_Posix_Signum_SIGINT)
3819 {*r = SIGINT; return 0;}
3820 #else /* def SIGINT */
3821 {errno = EINVAL; return -1;}
3822 #endif /* ndef SIGINT */
3823 if (x == Mono_Posix_Signum_SIGIO)
3825 {*r = SIGIO; return 0;}
3826 #else /* def SIGIO */
3827 {errno = EINVAL; return -1;}
3828 #endif /* ndef SIGIO */
3829 if (x == Mono_Posix_Signum_SIGIOT)
3831 {*r = SIGIOT; return 0;}
3832 #else /* def SIGIOT */
3833 {errno = EINVAL; return -1;}
3834 #endif /* ndef SIGIOT */
3835 if (x == Mono_Posix_Signum_SIGKILL)
3837 {*r = SIGKILL; return 0;}
3838 #else /* def SIGKILL */
3839 {errno = EINVAL; return -1;}
3840 #endif /* ndef SIGKILL */
3841 if (x == Mono_Posix_Signum_SIGPIPE)
3843 {*r = SIGPIPE; return 0;}
3844 #else /* def SIGPIPE */
3845 {errno = EINVAL; return -1;}
3846 #endif /* ndef SIGPIPE */
3847 if (x == Mono_Posix_Signum_SIGPOLL)
3849 {*r = SIGPOLL; return 0;}
3850 #else /* def SIGPOLL */
3851 {errno = EINVAL; return -1;}
3852 #endif /* ndef SIGPOLL */
3853 if (x == Mono_Posix_Signum_SIGPROF)
3855 {*r = SIGPROF; return 0;}
3856 #else /* def SIGPROF */
3857 {errno = EINVAL; return -1;}
3858 #endif /* ndef SIGPROF */
3859 if (x == Mono_Posix_Signum_SIGPWR)
3861 {*r = SIGPWR; return 0;}
3862 #else /* def SIGPWR */
3863 {errno = EINVAL; return -1;}
3864 #endif /* ndef SIGPWR */
3865 if (x == Mono_Posix_Signum_SIGQUIT)
3867 {*r = SIGQUIT; return 0;}
3868 #else /* def SIGQUIT */
3869 {errno = EINVAL; return -1;}
3870 #endif /* ndef SIGQUIT */
3871 if (x == Mono_Posix_Signum_SIGSEGV)
3873 {*r = SIGSEGV; return 0;}
3874 #else /* def SIGSEGV */
3875 {errno = EINVAL; return -1;}
3876 #endif /* ndef SIGSEGV */
3877 if (x == Mono_Posix_Signum_SIGSTKFLT)
3879 {*r = SIGSTKFLT; return 0;}
3880 #else /* def SIGSTKFLT */
3881 {errno = EINVAL; return -1;}
3882 #endif /* ndef SIGSTKFLT */
3883 if (x == Mono_Posix_Signum_SIGSTOP)
3885 {*r = SIGSTOP; return 0;}
3886 #else /* def SIGSTOP */
3887 {errno = EINVAL; return -1;}
3888 #endif /* ndef SIGSTOP */
3889 if (x == Mono_Posix_Signum_SIGSYS)
3891 {*r = SIGSYS; return 0;}
3892 #else /* def SIGSYS */
3893 {errno = EINVAL; return -1;}
3894 #endif /* ndef SIGSYS */
3895 if (x == Mono_Posix_Signum_SIGTERM)
3897 {*r = SIGTERM; return 0;}
3898 #else /* def SIGTERM */
3899 {errno = EINVAL; return -1;}
3900 #endif /* ndef SIGTERM */
3901 if (x == Mono_Posix_Signum_SIGTRAP)
3903 {*r = SIGTRAP; return 0;}
3904 #else /* def SIGTRAP */
3905 {errno = EINVAL; return -1;}
3906 #endif /* ndef SIGTRAP */
3907 if (x == Mono_Posix_Signum_SIGTSTP)
3909 {*r = SIGTSTP; return 0;}
3910 #else /* def SIGTSTP */
3911 {errno = EINVAL; return -1;}
3912 #endif /* ndef SIGTSTP */
3913 if (x == Mono_Posix_Signum_SIGTTIN)
3915 {*r = SIGTTIN; return 0;}
3916 #else /* def SIGTTIN */
3917 {errno = EINVAL; return -1;}
3918 #endif /* ndef SIGTTIN */
3919 if (x == Mono_Posix_Signum_SIGTTOU)
3921 {*r = SIGTTOU; return 0;}
3922 #else /* def SIGTTOU */
3923 {errno = EINVAL; return -1;}
3924 #endif /* ndef SIGTTOU */
3925 if (x == Mono_Posix_Signum_SIGUNUSED)
3927 {*r = SIGUNUSED; return 0;}
3928 #else /* def SIGUNUSED */
3929 {errno = EINVAL; return -1;}
3930 #endif /* ndef SIGUNUSED */
3931 if (x == Mono_Posix_Signum_SIGURG)
3933 {*r = SIGURG; return 0;}
3934 #else /* def SIGURG */
3935 {errno = EINVAL; return -1;}
3936 #endif /* ndef SIGURG */
3937 if (x == Mono_Posix_Signum_SIGUSR1)
3939 {*r = SIGUSR1; return 0;}
3940 #else /* def SIGUSR1 */
3941 {errno = EINVAL; return -1;}
3942 #endif /* ndef SIGUSR1 */
3943 if (x == Mono_Posix_Signum_SIGUSR2)
3945 {*r = SIGUSR2; return 0;}
3946 #else /* def SIGUSR2 */
3947 {errno = EINVAL; return -1;}
3948 #endif /* ndef SIGUSR2 */
3949 if (x == Mono_Posix_Signum_SIGVTALRM)
3951 {*r = SIGVTALRM; return 0;}
3952 #else /* def SIGVTALRM */
3953 {errno = EINVAL; return -1;}
3954 #endif /* ndef SIGVTALRM */
3955 if (x == Mono_Posix_Signum_SIGWINCH)
3957 {*r = SIGWINCH; return 0;}
3958 #else /* def SIGWINCH */
3959 {errno = EINVAL; return -1;}
3960 #endif /* ndef SIGWINCH */
3961 if (x == Mono_Posix_Signum_SIGXCPU)
3963 {*r = SIGXCPU; return 0;}
3964 #else /* def SIGXCPU */
3965 {errno = EINVAL; return -1;}
3966 #endif /* ndef SIGXCPU */
3967 if (x == Mono_Posix_Signum_SIGXFSZ)
3969 {*r = SIGXFSZ; return 0;}
3970 #else /* def SIGXFSZ */
3971 {errno = EINVAL; return -1;}
3972 #endif /* ndef SIGXFSZ */
3975 errno = EINVAL; return -1;
3978 int Mono_Posix_ToSignum (int x, int *r)
3985 {*r = Mono_Posix_Signum_SIGABRT; return 0;}
3986 #endif /* ndef SIGABRT */
3989 {*r = Mono_Posix_Signum_SIGALRM; return 0;}
3990 #endif /* ndef SIGALRM */
3993 {*r = Mono_Posix_Signum_SIGBUS; return 0;}
3994 #endif /* ndef SIGBUS */
3997 {*r = Mono_Posix_Signum_SIGCHLD; return 0;}
3998 #endif /* ndef SIGCHLD */
4001 {*r = Mono_Posix_Signum_SIGCLD; return 0;}
4002 #endif /* ndef SIGCLD */
4005 {*r = Mono_Posix_Signum_SIGCONT; return 0;}
4006 #endif /* ndef SIGCONT */
4009 {*r = Mono_Posix_Signum_SIGFPE; return 0;}
4010 #endif /* ndef SIGFPE */
4013 {*r = Mono_Posix_Signum_SIGHUP; return 0;}
4014 #endif /* ndef SIGHUP */
4017 {*r = Mono_Posix_Signum_SIGILL; return 0;}
4018 #endif /* ndef SIGILL */
4021 {*r = Mono_Posix_Signum_SIGINT; return 0;}
4022 #endif /* ndef SIGINT */
4025 {*r = Mono_Posix_Signum_SIGIO; return 0;}
4026 #endif /* ndef SIGIO */
4029 {*r = Mono_Posix_Signum_SIGIOT; return 0;}
4030 #endif /* ndef SIGIOT */
4033 {*r = Mono_Posix_Signum_SIGKILL; return 0;}
4034 #endif /* ndef SIGKILL */
4037 {*r = Mono_Posix_Signum_SIGPIPE; return 0;}
4038 #endif /* ndef SIGPIPE */
4041 {*r = Mono_Posix_Signum_SIGPOLL; return 0;}
4042 #endif /* ndef SIGPOLL */
4045 {*r = Mono_Posix_Signum_SIGPROF; return 0;}
4046 #endif /* ndef SIGPROF */
4049 {*r = Mono_Posix_Signum_SIGPWR; return 0;}
4050 #endif /* ndef SIGPWR */
4053 {*r = Mono_Posix_Signum_SIGQUIT; return 0;}
4054 #endif /* ndef SIGQUIT */
4057 {*r = Mono_Posix_Signum_SIGSEGV; return 0;}
4058 #endif /* ndef SIGSEGV */
4061 {*r = Mono_Posix_Signum_SIGSTKFLT; return 0;}
4062 #endif /* ndef SIGSTKFLT */
4065 {*r = Mono_Posix_Signum_SIGSTOP; return 0;}
4066 #endif /* ndef SIGSTOP */
4069 {*r = Mono_Posix_Signum_SIGSYS; return 0;}
4070 #endif /* ndef SIGSYS */
4073 {*r = Mono_Posix_Signum_SIGTERM; return 0;}
4074 #endif /* ndef SIGTERM */
4077 {*r = Mono_Posix_Signum_SIGTRAP; return 0;}
4078 #endif /* ndef SIGTRAP */
4081 {*r = Mono_Posix_Signum_SIGTSTP; return 0;}
4082 #endif /* ndef SIGTSTP */
4085 {*r = Mono_Posix_Signum_SIGTTIN; return 0;}
4086 #endif /* ndef SIGTTIN */
4089 {*r = Mono_Posix_Signum_SIGTTOU; return 0;}
4090 #endif /* ndef SIGTTOU */
4093 {*r = Mono_Posix_Signum_SIGUNUSED; return 0;}
4094 #endif /* ndef SIGUNUSED */
4097 {*r = Mono_Posix_Signum_SIGURG; return 0;}
4098 #endif /* ndef SIGURG */
4101 {*r = Mono_Posix_Signum_SIGUSR1; return 0;}
4102 #endif /* ndef SIGUSR1 */
4105 {*r = Mono_Posix_Signum_SIGUSR2; return 0;}
4106 #endif /* ndef SIGUSR2 */
4109 {*r = Mono_Posix_Signum_SIGVTALRM; return 0;}
4110 #endif /* ndef SIGVTALRM */
4113 {*r = Mono_Posix_Signum_SIGWINCH; return 0;}
4114 #endif /* ndef SIGWINCH */
4117 {*r = Mono_Posix_Signum_SIGXCPU; return 0;}
4118 #endif /* ndef SIGXCPU */
4121 {*r = Mono_Posix_Signum_SIGXFSZ; return 0;}
4122 #endif /* ndef SIGXFSZ */
4123 errno = EINVAL; return -1;
4127 Mono_Posix_FromStat (struct Mono_Posix_Stat *from, struct stat *to)
4129 _cnm_return_val_if_overflow (dev_t, from->st_dev, -1);
4130 _cnm_return_val_if_overflow (ino_t, from->st_ino, -1);
4131 _cnm_return_val_if_overflow (nlink_t, from->st_nlink, -1);
4132 _cnm_return_val_if_overflow (uid_t, from->st_uid, -1);
4133 _cnm_return_val_if_overflow (gid_t, from->st_gid, -1);
4134 _cnm_return_val_if_overflow (dev_t, from->st_rdev, -1);
4135 _cnm_return_val_if_overflow (off_t, from->st_size, -1);
4136 _cnm_return_val_if_overflow (blksize_t, from->st_blksize, -1);
4137 _cnm_return_val_if_overflow (blkcnt_t, from->st_blocks, -1);
4138 _cnm_return_val_if_overflow (time_t, from->st_atime_, -1);
4139 _cnm_return_val_if_overflow (time_t, from->st_mtime_, -1);
4140 _cnm_return_val_if_overflow (time_t, from->st_ctime_, -1);
4142 memset (to, 0, sizeof(*to));
4144 to->st_dev = from->st_dev;
4145 to->st_ino = from->st_ino;
4146 if (Mono_Posix_FromFilePermissions (from->st_mode, &to->st_mode) != 0) {
4149 to->st_nlink = from->st_nlink;
4150 to->st_uid = from->st_uid;
4151 to->st_gid = from->st_gid;
4152 to->st_rdev = from->st_rdev;
4153 to->st_size = from->st_size;
4154 to->st_blksize = from->st_blksize;
4155 to->st_blocks = from->st_blocks;
4156 to->st_atime = from->st_atime_;
4157 to->st_mtime = from->st_mtime_;
4158 to->st_ctime = from->st_ctime_;
4165 Mono_Posix_ToStat (struct stat *from, struct Mono_Posix_Stat *to)
4167 _cnm_return_val_if_overflow (guint64, from->st_dev, -1);
4168 _cnm_return_val_if_overflow (guint64, from->st_ino, -1);
4169 _cnm_return_val_if_overflow (guint64, from->st_nlink, -1);
4170 _cnm_return_val_if_overflow (unsigned int, from->st_uid, -1);
4171 _cnm_return_val_if_overflow (unsigned int, from->st_gid, -1);
4172 _cnm_return_val_if_overflow (guint64, from->st_rdev, -1);
4173 _cnm_return_val_if_overflow (gint64, from->st_size, -1);
4174 _cnm_return_val_if_overflow (gint64, from->st_blksize, -1);
4175 _cnm_return_val_if_overflow (gint64, from->st_blocks, -1);
4176 _cnm_return_val_if_overflow (gint64, from->st_atime, -1);
4177 _cnm_return_val_if_overflow (gint64, from->st_mtime, -1);
4178 _cnm_return_val_if_overflow (gint64, from->st_ctime, -1);
4180 memset (to, 0, sizeof(*to));
4182 to->st_dev = from->st_dev;
4183 to->st_ino = from->st_ino;
4184 if (Mono_Posix_ToFilePermissions (from->st_mode, &to->st_mode) != 0) {
4187 to->st_nlink = from->st_nlink;
4188 to->st_uid = from->st_uid;
4189 to->st_gid = from->st_gid;
4190 to->st_rdev = from->st_rdev;
4191 to->st_size = from->st_size;
4192 to->st_blksize = from->st_blksize;
4193 to->st_blocks = from->st_blocks;
4194 to->st_atime_ = from->st_atime;
4195 to->st_mtime_ = from->st_mtime;
4196 to->st_ctime_ = from->st_ctime;
4202 int Mono_Posix_FromSysconfName (int x, int *r)
4205 if (x == Mono_Posix_SysconfName__SC_2_CHAR_TERM)
4206 #ifdef _SC_2_CHAR_TERM
4207 {*r = _SC_2_CHAR_TERM; return 0;}
4208 #else /* def _SC_2_CHAR_TERM */
4209 {errno = EINVAL; return -1;}
4210 #endif /* ndef _SC_2_CHAR_TERM */
4211 if (x == Mono_Posix_SysconfName__SC_2_C_BIND)
4213 {*r = _SC_2_C_BIND; return 0;}
4214 #else /* def _SC_2_C_BIND */
4215 {errno = EINVAL; return -1;}
4216 #endif /* ndef _SC_2_C_BIND */
4217 if (x == Mono_Posix_SysconfName__SC_2_C_DEV)
4219 {*r = _SC_2_C_DEV; return 0;}
4220 #else /* def _SC_2_C_DEV */
4221 {errno = EINVAL; return -1;}
4222 #endif /* ndef _SC_2_C_DEV */
4223 if (x == Mono_Posix_SysconfName__SC_2_C_VERSION)
4224 #ifdef _SC_2_C_VERSION
4225 {*r = _SC_2_C_VERSION; return 0;}
4226 #else /* def _SC_2_C_VERSION */
4227 {errno = EINVAL; return -1;}
4228 #endif /* ndef _SC_2_C_VERSION */
4229 if (x == Mono_Posix_SysconfName__SC_2_FORT_DEV)
4230 #ifdef _SC_2_FORT_DEV
4231 {*r = _SC_2_FORT_DEV; return 0;}
4232 #else /* def _SC_2_FORT_DEV */
4233 {errno = EINVAL; return -1;}
4234 #endif /* ndef _SC_2_FORT_DEV */
4235 if (x == Mono_Posix_SysconfName__SC_2_FORT_RUN)
4236 #ifdef _SC_2_FORT_RUN
4237 {*r = _SC_2_FORT_RUN; return 0;}
4238 #else /* def _SC_2_FORT_RUN */
4239 {errno = EINVAL; return -1;}
4240 #endif /* ndef _SC_2_FORT_RUN */
4241 if (x == Mono_Posix_SysconfName__SC_2_LOCALEDEF)
4242 #ifdef _SC_2_LOCALEDEF
4243 {*r = _SC_2_LOCALEDEF; return 0;}
4244 #else /* def _SC_2_LOCALEDEF */
4245 {errno = EINVAL; return -1;}
4246 #endif /* ndef _SC_2_LOCALEDEF */
4247 if (x == Mono_Posix_SysconfName__SC_2_PBS)
4249 {*r = _SC_2_PBS; return 0;}
4250 #else /* def _SC_2_PBS */
4251 {errno = EINVAL; return -1;}
4252 #endif /* ndef _SC_2_PBS */
4253 if (x == Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING)
4254 #ifdef _SC_2_PBS_ACCOUNTING
4255 {*r = _SC_2_PBS_ACCOUNTING; return 0;}
4256 #else /* def _SC_2_PBS_ACCOUNTING */
4257 {errno = EINVAL; return -1;}
4258 #endif /* ndef _SC_2_PBS_ACCOUNTING */
4259 if (x == Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT)
4260 #ifdef _SC_2_PBS_CHECKPOINT
4261 {*r = _SC_2_PBS_CHECKPOINT; return 0;}
4262 #else /* def _SC_2_PBS_CHECKPOINT */
4263 {errno = EINVAL; return -1;}
4264 #endif /* ndef _SC_2_PBS_CHECKPOINT */
4265 if (x == Mono_Posix_SysconfName__SC_2_PBS_LOCATE)
4266 #ifdef _SC_2_PBS_LOCATE
4267 {*r = _SC_2_PBS_LOCATE; return 0;}
4268 #else /* def _SC_2_PBS_LOCATE */
4269 {errno = EINVAL; return -1;}
4270 #endif /* ndef _SC_2_PBS_LOCATE */
4271 if (x == Mono_Posix_SysconfName__SC_2_PBS_MESSAGE)
4272 #ifdef _SC_2_PBS_MESSAGE
4273 {*r = _SC_2_PBS_MESSAGE; return 0;}
4274 #else /* def _SC_2_PBS_MESSAGE */
4275 {errno = EINVAL; return -1;}
4276 #endif /* ndef _SC_2_PBS_MESSAGE */
4277 if (x == Mono_Posix_SysconfName__SC_2_PBS_TRACK)
4278 #ifdef _SC_2_PBS_TRACK
4279 {*r = _SC_2_PBS_TRACK; return 0;}
4280 #else /* def _SC_2_PBS_TRACK */
4281 {errno = EINVAL; return -1;}
4282 #endif /* ndef _SC_2_PBS_TRACK */
4283 if (x == Mono_Posix_SysconfName__SC_2_SW_DEV)
4285 {*r = _SC_2_SW_DEV; return 0;}
4286 #else /* def _SC_2_SW_DEV */
4287 {errno = EINVAL; return -1;}
4288 #endif /* ndef _SC_2_SW_DEV */
4289 if (x == Mono_Posix_SysconfName__SC_2_UPE)
4291 {*r = _SC_2_UPE; return 0;}
4292 #else /* def _SC_2_UPE */
4293 {errno = EINVAL; return -1;}
4294 #endif /* ndef _SC_2_UPE */
4295 if (x == Mono_Posix_SysconfName__SC_2_VERSION)
4296 #ifdef _SC_2_VERSION
4297 {*r = _SC_2_VERSION; return 0;}
4298 #else /* def _SC_2_VERSION */
4299 {errno = EINVAL; return -1;}
4300 #endif /* ndef _SC_2_VERSION */
4301 if (x == Mono_Posix_SysconfName__SC_ADVISORY_INFO)
4302 #ifdef _SC_ADVISORY_INFO
4303 {*r = _SC_ADVISORY_INFO; return 0;}
4304 #else /* def _SC_ADVISORY_INFO */
4305 {errno = EINVAL; return -1;}
4306 #endif /* ndef _SC_ADVISORY_INFO */
4307 if (x == Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX)
4308 #ifdef _SC_AIO_LISTIO_MAX
4309 {*r = _SC_AIO_LISTIO_MAX; return 0;}
4310 #else /* def _SC_AIO_LISTIO_MAX */
4311 {errno = EINVAL; return -1;}
4312 #endif /* ndef _SC_AIO_LISTIO_MAX */
4313 if (x == Mono_Posix_SysconfName__SC_AIO_MAX)
4315 {*r = _SC_AIO_MAX; return 0;}
4316 #else /* def _SC_AIO_MAX */
4317 {errno = EINVAL; return -1;}
4318 #endif /* ndef _SC_AIO_MAX */
4319 if (x == Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX)
4320 #ifdef _SC_AIO_PRIO_DELTA_MAX
4321 {*r = _SC_AIO_PRIO_DELTA_MAX; return 0;}
4322 #else /* def _SC_AIO_PRIO_DELTA_MAX */
4323 {errno = EINVAL; return -1;}
4324 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
4325 if (x == Mono_Posix_SysconfName__SC_ARG_MAX)
4327 {*r = _SC_ARG_MAX; return 0;}
4328 #else /* def _SC_ARG_MAX */
4329 {errno = EINVAL; return -1;}
4330 #endif /* ndef _SC_ARG_MAX */
4331 if (x == Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO)
4332 #ifdef _SC_ASYNCHRONOUS_IO
4333 {*r = _SC_ASYNCHRONOUS_IO; return 0;}
4334 #else /* def _SC_ASYNCHRONOUS_IO */
4335 {errno = EINVAL; return -1;}
4336 #endif /* ndef _SC_ASYNCHRONOUS_IO */
4337 if (x == Mono_Posix_SysconfName__SC_ATEXIT_MAX)
4338 #ifdef _SC_ATEXIT_MAX
4339 {*r = _SC_ATEXIT_MAX; return 0;}
4340 #else /* def _SC_ATEXIT_MAX */
4341 {errno = EINVAL; return -1;}
4342 #endif /* ndef _SC_ATEXIT_MAX */
4343 if (x == Mono_Posix_SysconfName__SC_AVPHYS_PAGES)
4344 #ifdef _SC_AVPHYS_PAGES
4345 {*r = _SC_AVPHYS_PAGES; return 0;}
4346 #else /* def _SC_AVPHYS_PAGES */
4347 {errno = EINVAL; return -1;}
4348 #endif /* ndef _SC_AVPHYS_PAGES */
4349 if (x == Mono_Posix_SysconfName__SC_BARRIERS)
4351 {*r = _SC_BARRIERS; return 0;}
4352 #else /* def _SC_BARRIERS */
4353 {errno = EINVAL; return -1;}
4354 #endif /* ndef _SC_BARRIERS */
4355 if (x == Mono_Posix_SysconfName__SC_BASE)
4357 {*r = _SC_BASE; return 0;}
4358 #else /* def _SC_BASE */
4359 {errno = EINVAL; return -1;}
4360 #endif /* ndef _SC_BASE */
4361 if (x == Mono_Posix_SysconfName__SC_BC_BASE_MAX)
4362 #ifdef _SC_BC_BASE_MAX
4363 {*r = _SC_BC_BASE_MAX; return 0;}
4364 #else /* def _SC_BC_BASE_MAX */
4365 {errno = EINVAL; return -1;}
4366 #endif /* ndef _SC_BC_BASE_MAX */
4367 if (x == Mono_Posix_SysconfName__SC_BC_DIM_MAX)
4368 #ifdef _SC_BC_DIM_MAX
4369 {*r = _SC_BC_DIM_MAX; return 0;}
4370 #else /* def _SC_BC_DIM_MAX */
4371 {errno = EINVAL; return -1;}
4372 #endif /* ndef _SC_BC_DIM_MAX */
4373 if (x == Mono_Posix_SysconfName__SC_BC_SCALE_MAX)
4374 #ifdef _SC_BC_SCALE_MAX
4375 {*r = _SC_BC_SCALE_MAX; return 0;}
4376 #else /* def _SC_BC_SCALE_MAX */
4377 {errno = EINVAL; return -1;}
4378 #endif /* ndef _SC_BC_SCALE_MAX */
4379 if (x == Mono_Posix_SysconfName__SC_BC_STRING_MAX)
4380 #ifdef _SC_BC_STRING_MAX
4381 {*r = _SC_BC_STRING_MAX; return 0;}
4382 #else /* def _SC_BC_STRING_MAX */
4383 {errno = EINVAL; return -1;}
4384 #endif /* ndef _SC_BC_STRING_MAX */
4385 if (x == Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX)
4386 #ifdef _SC_CHARCLASS_NAME_MAX
4387 {*r = _SC_CHARCLASS_NAME_MAX; return 0;}
4388 #else /* def _SC_CHARCLASS_NAME_MAX */
4389 {errno = EINVAL; return -1;}
4390 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
4391 if (x == Mono_Posix_SysconfName__SC_CHAR_BIT)
4393 {*r = _SC_CHAR_BIT; return 0;}
4394 #else /* def _SC_CHAR_BIT */
4395 {errno = EINVAL; return -1;}
4396 #endif /* ndef _SC_CHAR_BIT */
4397 if (x == Mono_Posix_SysconfName__SC_CHAR_MAX)
4399 {*r = _SC_CHAR_MAX; return 0;}
4400 #else /* def _SC_CHAR_MAX */
4401 {errno = EINVAL; return -1;}
4402 #endif /* ndef _SC_CHAR_MAX */
4403 if (x == Mono_Posix_SysconfName__SC_CHAR_MIN)
4405 {*r = _SC_CHAR_MIN; return 0;}
4406 #else /* def _SC_CHAR_MIN */
4407 {errno = EINVAL; return -1;}
4408 #endif /* ndef _SC_CHAR_MIN */
4409 if (x == Mono_Posix_SysconfName__SC_CHILD_MAX)
4410 #ifdef _SC_CHILD_MAX
4411 {*r = _SC_CHILD_MAX; return 0;}
4412 #else /* def _SC_CHILD_MAX */
4413 {errno = EINVAL; return -1;}
4414 #endif /* ndef _SC_CHILD_MAX */
4415 if (x == Mono_Posix_SysconfName__SC_CLK_TCK)
4417 {*r = _SC_CLK_TCK; return 0;}
4418 #else /* def _SC_CLK_TCK */
4419 {errno = EINVAL; return -1;}
4420 #endif /* ndef _SC_CLK_TCK */
4421 if (x == Mono_Posix_SysconfName__SC_CLOCK_SELECTION)
4422 #ifdef _SC_CLOCK_SELECTION
4423 {*r = _SC_CLOCK_SELECTION; return 0;}
4424 #else /* def _SC_CLOCK_SELECTION */
4425 {errno = EINVAL; return -1;}
4426 #endif /* ndef _SC_CLOCK_SELECTION */
4427 if (x == Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX)
4428 #ifdef _SC_COLL_WEIGHTS_MAX
4429 {*r = _SC_COLL_WEIGHTS_MAX; return 0;}
4430 #else /* def _SC_COLL_WEIGHTS_MAX */
4431 {errno = EINVAL; return -1;}
4432 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
4433 if (x == Mono_Posix_SysconfName__SC_CPUTIME)
4435 {*r = _SC_CPUTIME; return 0;}
4436 #else /* def _SC_CPUTIME */
4437 {errno = EINVAL; return -1;}
4438 #endif /* ndef _SC_CPUTIME */
4439 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT)
4440 #ifdef _SC_C_LANG_SUPPORT
4441 {*r = _SC_C_LANG_SUPPORT; return 0;}
4442 #else /* def _SC_C_LANG_SUPPORT */
4443 {errno = EINVAL; return -1;}
4444 #endif /* ndef _SC_C_LANG_SUPPORT */
4445 if (x == Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R)
4446 #ifdef _SC_C_LANG_SUPPORT_R
4447 {*r = _SC_C_LANG_SUPPORT_R; return 0;}
4448 #else /* def _SC_C_LANG_SUPPORT_R */
4449 {errno = EINVAL; return -1;}
4450 #endif /* ndef _SC_C_LANG_SUPPORT_R */
4451 if (x == Mono_Posix_SysconfName__SC_DELAYTIMER_MAX)
4452 #ifdef _SC_DELAYTIMER_MAX
4453 {*r = _SC_DELAYTIMER_MAX; return 0;}
4454 #else /* def _SC_DELAYTIMER_MAX */
4455 {errno = EINVAL; return -1;}
4456 #endif /* ndef _SC_DELAYTIMER_MAX */
4457 if (x == Mono_Posix_SysconfName__SC_DEVICE_IO)
4458 #ifdef _SC_DEVICE_IO
4459 {*r = _SC_DEVICE_IO; return 0;}
4460 #else /* def _SC_DEVICE_IO */
4461 {errno = EINVAL; return -1;}
4462 #endif /* ndef _SC_DEVICE_IO */
4463 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC)
4464 #ifdef _SC_DEVICE_SPECIFIC
4465 {*r = _SC_DEVICE_SPECIFIC; return 0;}
4466 #else /* def _SC_DEVICE_SPECIFIC */
4467 {errno = EINVAL; return -1;}
4468 #endif /* ndef _SC_DEVICE_SPECIFIC */
4469 if (x == Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R)
4470 #ifdef _SC_DEVICE_SPECIFIC_R
4471 {*r = _SC_DEVICE_SPECIFIC_R; return 0;}
4472 #else /* def _SC_DEVICE_SPECIFIC_R */
4473 {errno = EINVAL; return -1;}
4474 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
4475 if (x == Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX)
4476 #ifdef _SC_EQUIV_CLASS_MAX
4477 {*r = _SC_EQUIV_CLASS_MAX; return 0;}
4478 #else /* def _SC_EQUIV_CLASS_MAX */
4479 {errno = EINVAL; return -1;}
4480 #endif /* ndef _SC_EQUIV_CLASS_MAX */
4481 if (x == Mono_Posix_SysconfName__SC_EXPR_NEST_MAX)
4482 #ifdef _SC_EXPR_NEST_MAX
4483 {*r = _SC_EXPR_NEST_MAX; return 0;}
4484 #else /* def _SC_EXPR_NEST_MAX */
4485 {errno = EINVAL; return -1;}
4486 #endif /* ndef _SC_EXPR_NEST_MAX */
4487 if (x == Mono_Posix_SysconfName__SC_FD_MGMT)
4489 {*r = _SC_FD_MGMT; return 0;}
4490 #else /* def _SC_FD_MGMT */
4491 {errno = EINVAL; return -1;}
4492 #endif /* ndef _SC_FD_MGMT */
4493 if (x == Mono_Posix_SysconfName__SC_FIFO)
4495 {*r = _SC_FIFO; return 0;}
4496 #else /* def _SC_FIFO */
4497 {errno = EINVAL; return -1;}
4498 #endif /* ndef _SC_FIFO */
4499 if (x == Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES)
4500 #ifdef _SC_FILE_ATTRIBUTES
4501 {*r = _SC_FILE_ATTRIBUTES; return 0;}
4502 #else /* def _SC_FILE_ATTRIBUTES */
4503 {errno = EINVAL; return -1;}
4504 #endif /* ndef _SC_FILE_ATTRIBUTES */
4505 if (x == Mono_Posix_SysconfName__SC_FILE_LOCKING)
4506 #ifdef _SC_FILE_LOCKING
4507 {*r = _SC_FILE_LOCKING; return 0;}
4508 #else /* def _SC_FILE_LOCKING */
4509 {errno = EINVAL; return -1;}
4510 #endif /* ndef _SC_FILE_LOCKING */
4511 if (x == Mono_Posix_SysconfName__SC_FILE_SYSTEM)
4512 #ifdef _SC_FILE_SYSTEM
4513 {*r = _SC_FILE_SYSTEM; return 0;}
4514 #else /* def _SC_FILE_SYSTEM */
4515 {errno = EINVAL; return -1;}
4516 #endif /* ndef _SC_FILE_SYSTEM */
4517 if (x == Mono_Posix_SysconfName__SC_FSYNC)
4519 {*r = _SC_FSYNC; return 0;}
4520 #else /* def _SC_FSYNC */
4521 {errno = EINVAL; return -1;}
4522 #endif /* ndef _SC_FSYNC */
4523 if (x == Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX)
4524 #ifdef _SC_GETGR_R_SIZE_MAX
4525 {*r = _SC_GETGR_R_SIZE_MAX; return 0;}
4526 #else /* def _SC_GETGR_R_SIZE_MAX */
4527 {errno = EINVAL; return -1;}
4528 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
4529 if (x == Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX)
4530 #ifdef _SC_GETPW_R_SIZE_MAX
4531 {*r = _SC_GETPW_R_SIZE_MAX; return 0;}
4532 #else /* def _SC_GETPW_R_SIZE_MAX */
4533 {errno = EINVAL; return -1;}
4534 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
4535 if (x == Mono_Posix_SysconfName__SC_HOST_NAME_MAX)
4536 #ifdef _SC_HOST_NAME_MAX
4537 {*r = _SC_HOST_NAME_MAX; return 0;}
4538 #else /* def _SC_HOST_NAME_MAX */
4539 {errno = EINVAL; return -1;}
4540 #endif /* ndef _SC_HOST_NAME_MAX */
4541 if (x == Mono_Posix_SysconfName__SC_INT_MAX)
4543 {*r = _SC_INT_MAX; return 0;}
4544 #else /* def _SC_INT_MAX */
4545 {errno = EINVAL; return -1;}
4546 #endif /* ndef _SC_INT_MAX */
4547 if (x == Mono_Posix_SysconfName__SC_INT_MIN)
4549 {*r = _SC_INT_MIN; return 0;}
4550 #else /* def _SC_INT_MIN */
4551 {errno = EINVAL; return -1;}
4552 #endif /* ndef _SC_INT_MIN */
4553 if (x == Mono_Posix_SysconfName__SC_IOV_MAX)
4555 {*r = _SC_IOV_MAX; return 0;}
4556 #else /* def _SC_IOV_MAX */
4557 {errno = EINVAL; return -1;}
4558 #endif /* ndef _SC_IOV_MAX */
4559 if (x == Mono_Posix_SysconfName__SC_JOB_CONTROL)
4560 #ifdef _SC_JOB_CONTROL
4561 {*r = _SC_JOB_CONTROL; return 0;}
4562 #else /* def _SC_JOB_CONTROL */
4563 {errno = EINVAL; return -1;}
4564 #endif /* ndef _SC_JOB_CONTROL */
4565 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC)
4566 #ifdef _SC_LEVEL1_DCACHE_ASSOC
4567 {*r = _SC_LEVEL1_DCACHE_ASSOC; return 0;}
4568 #else /* def _SC_LEVEL1_DCACHE_ASSOC */
4569 {errno = EINVAL; return -1;}
4570 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
4571 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE)
4572 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
4573 {*r = _SC_LEVEL1_DCACHE_LINESIZE; return 0;}
4574 #else /* def _SC_LEVEL1_DCACHE_LINESIZE */
4575 {errno = EINVAL; return -1;}
4576 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
4577 if (x == Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE)
4578 #ifdef _SC_LEVEL1_DCACHE_SIZE
4579 {*r = _SC_LEVEL1_DCACHE_SIZE; return 0;}
4580 #else /* def _SC_LEVEL1_DCACHE_SIZE */
4581 {errno = EINVAL; return -1;}
4582 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
4583 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC)
4584 #ifdef _SC_LEVEL1_ICACHE_ASSOC
4585 {*r = _SC_LEVEL1_ICACHE_ASSOC; return 0;}
4586 #else /* def _SC_LEVEL1_ICACHE_ASSOC */
4587 {errno = EINVAL; return -1;}
4588 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
4589 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE)
4590 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
4591 {*r = _SC_LEVEL1_ICACHE_LINESIZE; return 0;}
4592 #else /* def _SC_LEVEL1_ICACHE_LINESIZE */
4593 {errno = EINVAL; return -1;}
4594 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
4595 if (x == Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE)
4596 #ifdef _SC_LEVEL1_ICACHE_SIZE
4597 {*r = _SC_LEVEL1_ICACHE_SIZE; return 0;}
4598 #else /* def _SC_LEVEL1_ICACHE_SIZE */
4599 {errno = EINVAL; return -1;}
4600 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
4601 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC)
4602 #ifdef _SC_LEVEL2_CACHE_ASSOC
4603 {*r = _SC_LEVEL2_CACHE_ASSOC; return 0;}
4604 #else /* def _SC_LEVEL2_CACHE_ASSOC */
4605 {errno = EINVAL; return -1;}
4606 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
4607 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE)
4608 #ifdef _SC_LEVEL2_CACHE_LINESIZE
4609 {*r = _SC_LEVEL2_CACHE_LINESIZE; return 0;}
4610 #else /* def _SC_LEVEL2_CACHE_LINESIZE */
4611 {errno = EINVAL; return -1;}
4612 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
4613 if (x == Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE)
4614 #ifdef _SC_LEVEL2_CACHE_SIZE
4615 {*r = _SC_LEVEL2_CACHE_SIZE; return 0;}
4616 #else /* def _SC_LEVEL2_CACHE_SIZE */
4617 {errno = EINVAL; return -1;}
4618 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
4619 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC)
4620 #ifdef _SC_LEVEL3_CACHE_ASSOC
4621 {*r = _SC_LEVEL3_CACHE_ASSOC; return 0;}
4622 #else /* def _SC_LEVEL3_CACHE_ASSOC */
4623 {errno = EINVAL; return -1;}
4624 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
4625 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE)
4626 #ifdef _SC_LEVEL3_CACHE_LINESIZE
4627 {*r = _SC_LEVEL3_CACHE_LINESIZE; return 0;}
4628 #else /* def _SC_LEVEL3_CACHE_LINESIZE */
4629 {errno = EINVAL; return -1;}
4630 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
4631 if (x == Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE)
4632 #ifdef _SC_LEVEL3_CACHE_SIZE
4633 {*r = _SC_LEVEL3_CACHE_SIZE; return 0;}
4634 #else /* def _SC_LEVEL3_CACHE_SIZE */
4635 {errno = EINVAL; return -1;}
4636 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
4637 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC)
4638 #ifdef _SC_LEVEL4_CACHE_ASSOC
4639 {*r = _SC_LEVEL4_CACHE_ASSOC; return 0;}
4640 #else /* def _SC_LEVEL4_CACHE_ASSOC */
4641 {errno = EINVAL; return -1;}
4642 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
4643 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE)
4644 #ifdef _SC_LEVEL4_CACHE_LINESIZE
4645 {*r = _SC_LEVEL4_CACHE_LINESIZE; return 0;}
4646 #else /* def _SC_LEVEL4_CACHE_LINESIZE */
4647 {errno = EINVAL; return -1;}
4648 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
4649 if (x == Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE)
4650 #ifdef _SC_LEVEL4_CACHE_SIZE
4651 {*r = _SC_LEVEL4_CACHE_SIZE; return 0;}
4652 #else /* def _SC_LEVEL4_CACHE_SIZE */
4653 {errno = EINVAL; return -1;}
4654 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
4655 if (x == Mono_Posix_SysconfName__SC_LINE_MAX)
4657 {*r = _SC_LINE_MAX; return 0;}
4658 #else /* def _SC_LINE_MAX */
4659 {errno = EINVAL; return -1;}
4660 #endif /* ndef _SC_LINE_MAX */
4661 if (x == Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX)
4662 #ifdef _SC_LOGIN_NAME_MAX
4663 {*r = _SC_LOGIN_NAME_MAX; return 0;}
4664 #else /* def _SC_LOGIN_NAME_MAX */
4665 {errno = EINVAL; return -1;}
4666 #endif /* ndef _SC_LOGIN_NAME_MAX */
4667 if (x == Mono_Posix_SysconfName__SC_LONG_BIT)
4669 {*r = _SC_LONG_BIT; return 0;}
4670 #else /* def _SC_LONG_BIT */
4671 {errno = EINVAL; return -1;}
4672 #endif /* ndef _SC_LONG_BIT */
4673 if (x == Mono_Posix_SysconfName__SC_MAPPED_FILES)
4674 #ifdef _SC_MAPPED_FILES
4675 {*r = _SC_MAPPED_FILES; return 0;}
4676 #else /* def _SC_MAPPED_FILES */
4677 {errno = EINVAL; return -1;}
4678 #endif /* ndef _SC_MAPPED_FILES */
4679 if (x == Mono_Posix_SysconfName__SC_MB_LEN_MAX)
4680 #ifdef _SC_MB_LEN_MAX
4681 {*r = _SC_MB_LEN_MAX; return 0;}
4682 #else /* def _SC_MB_LEN_MAX */
4683 {errno = EINVAL; return -1;}
4684 #endif /* ndef _SC_MB_LEN_MAX */
4685 if (x == Mono_Posix_SysconfName__SC_MEMLOCK)
4687 {*r = _SC_MEMLOCK; return 0;}
4688 #else /* def _SC_MEMLOCK */
4689 {errno = EINVAL; return -1;}
4690 #endif /* ndef _SC_MEMLOCK */
4691 if (x == Mono_Posix_SysconfName__SC_MEMLOCK_RANGE)
4692 #ifdef _SC_MEMLOCK_RANGE
4693 {*r = _SC_MEMLOCK_RANGE; return 0;}
4694 #else /* def _SC_MEMLOCK_RANGE */
4695 {errno = EINVAL; return -1;}
4696 #endif /* ndef _SC_MEMLOCK_RANGE */
4697 if (x == Mono_Posix_SysconfName__SC_MEMORY_PROTECTION)
4698 #ifdef _SC_MEMORY_PROTECTION
4699 {*r = _SC_MEMORY_PROTECTION; return 0;}
4700 #else /* def _SC_MEMORY_PROTECTION */
4701 {errno = EINVAL; return -1;}
4702 #endif /* ndef _SC_MEMORY_PROTECTION */
4703 if (x == Mono_Posix_SysconfName__SC_MESSAGE_PASSING)
4704 #ifdef _SC_MESSAGE_PASSING
4705 {*r = _SC_MESSAGE_PASSING; return 0;}
4706 #else /* def _SC_MESSAGE_PASSING */
4707 {errno = EINVAL; return -1;}
4708 #endif /* ndef _SC_MESSAGE_PASSING */
4709 if (x == Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK)
4710 #ifdef _SC_MONOTONIC_CLOCK
4711 {*r = _SC_MONOTONIC_CLOCK; return 0;}
4712 #else /* def _SC_MONOTONIC_CLOCK */
4713 {errno = EINVAL; return -1;}
4714 #endif /* ndef _SC_MONOTONIC_CLOCK */
4715 if (x == Mono_Posix_SysconfName__SC_MQ_OPEN_MAX)
4716 #ifdef _SC_MQ_OPEN_MAX
4717 {*r = _SC_MQ_OPEN_MAX; return 0;}
4718 #else /* def _SC_MQ_OPEN_MAX */
4719 {errno = EINVAL; return -1;}
4720 #endif /* ndef _SC_MQ_OPEN_MAX */
4721 if (x == Mono_Posix_SysconfName__SC_MQ_PRIO_MAX)
4722 #ifdef _SC_MQ_PRIO_MAX
4723 {*r = _SC_MQ_PRIO_MAX; return 0;}
4724 #else /* def _SC_MQ_PRIO_MAX */
4725 {errno = EINVAL; return -1;}
4726 #endif /* ndef _SC_MQ_PRIO_MAX */
4727 if (x == Mono_Posix_SysconfName__SC_MULTI_PROCESS)
4728 #ifdef _SC_MULTI_PROCESS
4729 {*r = _SC_MULTI_PROCESS; return 0;}
4730 #else /* def _SC_MULTI_PROCESS */
4731 {errno = EINVAL; return -1;}
4732 #endif /* ndef _SC_MULTI_PROCESS */
4733 if (x == Mono_Posix_SysconfName__SC_NETWORKING)
4734 #ifdef _SC_NETWORKING
4735 {*r = _SC_NETWORKING; return 0;}
4736 #else /* def _SC_NETWORKING */
4737 {errno = EINVAL; return -1;}
4738 #endif /* ndef _SC_NETWORKING */
4739 if (x == Mono_Posix_SysconfName__SC_NGROUPS_MAX)
4740 #ifdef _SC_NGROUPS_MAX
4741 {*r = _SC_NGROUPS_MAX; return 0;}
4742 #else /* def _SC_NGROUPS_MAX */
4743 {errno = EINVAL; return -1;}
4744 #endif /* ndef _SC_NGROUPS_MAX */
4745 if (x == Mono_Posix_SysconfName__SC_NL_ARGMAX)
4746 #ifdef _SC_NL_ARGMAX
4747 {*r = _SC_NL_ARGMAX; return 0;}
4748 #else /* def _SC_NL_ARGMAX */
4749 {errno = EINVAL; return -1;}
4750 #endif /* ndef _SC_NL_ARGMAX */
4751 if (x == Mono_Posix_SysconfName__SC_NL_LANGMAX)
4752 #ifdef _SC_NL_LANGMAX
4753 {*r = _SC_NL_LANGMAX; return 0;}
4754 #else /* def _SC_NL_LANGMAX */
4755 {errno = EINVAL; return -1;}
4756 #endif /* ndef _SC_NL_LANGMAX */
4757 if (x == Mono_Posix_SysconfName__SC_NL_MSGMAX)
4758 #ifdef _SC_NL_MSGMAX
4759 {*r = _SC_NL_MSGMAX; return 0;}
4760 #else /* def _SC_NL_MSGMAX */
4761 {errno = EINVAL; return -1;}
4762 #endif /* ndef _SC_NL_MSGMAX */
4763 if (x == Mono_Posix_SysconfName__SC_NL_NMAX)
4765 {*r = _SC_NL_NMAX; return 0;}
4766 #else /* def _SC_NL_NMAX */
4767 {errno = EINVAL; return -1;}
4768 #endif /* ndef _SC_NL_NMAX */
4769 if (x == Mono_Posix_SysconfName__SC_NL_SETMAX)
4770 #ifdef _SC_NL_SETMAX
4771 {*r = _SC_NL_SETMAX; return 0;}
4772 #else /* def _SC_NL_SETMAX */
4773 {errno = EINVAL; return -1;}
4774 #endif /* ndef _SC_NL_SETMAX */
4775 if (x == Mono_Posix_SysconfName__SC_NL_TEXTMAX)
4776 #ifdef _SC_NL_TEXTMAX
4777 {*r = _SC_NL_TEXTMAX; return 0;}
4778 #else /* def _SC_NL_TEXTMAX */
4779 {errno = EINVAL; return -1;}
4780 #endif /* ndef _SC_NL_TEXTMAX */
4781 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_CONF)
4782 #ifdef _SC_NPROCESSORS_CONF
4783 {*r = _SC_NPROCESSORS_CONF; return 0;}
4784 #else /* def _SC_NPROCESSORS_CONF */
4785 {errno = EINVAL; return -1;}
4786 #endif /* ndef _SC_NPROCESSORS_CONF */
4787 if (x == Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN)
4788 #ifdef _SC_NPROCESSORS_ONLN
4789 {*r = _SC_NPROCESSORS_ONLN; return 0;}
4790 #else /* def _SC_NPROCESSORS_ONLN */
4791 {errno = EINVAL; return -1;}
4792 #endif /* ndef _SC_NPROCESSORS_ONLN */
4793 if (x == Mono_Posix_SysconfName__SC_NZERO)
4795 {*r = _SC_NZERO; return 0;}
4796 #else /* def _SC_NZERO */
4797 {errno = EINVAL; return -1;}
4798 #endif /* ndef _SC_NZERO */
4799 if (x == Mono_Posix_SysconfName__SC_OPEN_MAX)
4801 {*r = _SC_OPEN_MAX; return 0;}
4802 #else /* def _SC_OPEN_MAX */
4803 {errno = EINVAL; return -1;}
4804 #endif /* ndef _SC_OPEN_MAX */
4805 if (x == Mono_Posix_SysconfName__SC_PAGESIZE)
4807 {*r = _SC_PAGESIZE; return 0;}
4808 #else /* def _SC_PAGESIZE */
4809 {errno = EINVAL; return -1;}
4810 #endif /* ndef _SC_PAGESIZE */
4811 if (x == Mono_Posix_SysconfName__SC_PASS_MAX)
4813 {*r = _SC_PASS_MAX; return 0;}
4814 #else /* def _SC_PASS_MAX */
4815 {errno = EINVAL; return -1;}
4816 #endif /* ndef _SC_PASS_MAX */
4817 if (x == Mono_Posix_SysconfName__SC_PHYS_PAGES)
4818 #ifdef _SC_PHYS_PAGES
4819 {*r = _SC_PHYS_PAGES; return 0;}
4820 #else /* def _SC_PHYS_PAGES */
4821 {errno = EINVAL; return -1;}
4822 #endif /* ndef _SC_PHYS_PAGES */
4823 if (x == Mono_Posix_SysconfName__SC_PII)
4825 {*r = _SC_PII; return 0;}
4826 #else /* def _SC_PII */
4827 {errno = EINVAL; return -1;}
4828 #endif /* ndef _SC_PII */
4829 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET)
4830 #ifdef _SC_PII_INTERNET
4831 {*r = _SC_PII_INTERNET; return 0;}
4832 #else /* def _SC_PII_INTERNET */
4833 {errno = EINVAL; return -1;}
4834 #endif /* ndef _SC_PII_INTERNET */
4835 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM)
4836 #ifdef _SC_PII_INTERNET_DGRAM
4837 {*r = _SC_PII_INTERNET_DGRAM; return 0;}
4838 #else /* def _SC_PII_INTERNET_DGRAM */
4839 {errno = EINVAL; return -1;}
4840 #endif /* ndef _SC_PII_INTERNET_DGRAM */
4841 if (x == Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM)
4842 #ifdef _SC_PII_INTERNET_STREAM
4843 {*r = _SC_PII_INTERNET_STREAM; return 0;}
4844 #else /* def _SC_PII_INTERNET_STREAM */
4845 {errno = EINVAL; return -1;}
4846 #endif /* ndef _SC_PII_INTERNET_STREAM */
4847 if (x == Mono_Posix_SysconfName__SC_PII_OSI)
4849 {*r = _SC_PII_OSI; return 0;}
4850 #else /* def _SC_PII_OSI */
4851 {errno = EINVAL; return -1;}
4852 #endif /* ndef _SC_PII_OSI */
4853 if (x == Mono_Posix_SysconfName__SC_PII_OSI_CLTS)
4854 #ifdef _SC_PII_OSI_CLTS
4855 {*r = _SC_PII_OSI_CLTS; return 0;}
4856 #else /* def _SC_PII_OSI_CLTS */
4857 {errno = EINVAL; return -1;}
4858 #endif /* ndef _SC_PII_OSI_CLTS */
4859 if (x == Mono_Posix_SysconfName__SC_PII_OSI_COTS)
4860 #ifdef _SC_PII_OSI_COTS
4861 {*r = _SC_PII_OSI_COTS; return 0;}
4862 #else /* def _SC_PII_OSI_COTS */
4863 {errno = EINVAL; return -1;}
4864 #endif /* ndef _SC_PII_OSI_COTS */
4865 if (x == Mono_Posix_SysconfName__SC_PII_OSI_M)
4866 #ifdef _SC_PII_OSI_M
4867 {*r = _SC_PII_OSI_M; return 0;}
4868 #else /* def _SC_PII_OSI_M */
4869 {errno = EINVAL; return -1;}
4870 #endif /* ndef _SC_PII_OSI_M */
4871 if (x == Mono_Posix_SysconfName__SC_PII_SOCKET)
4872 #ifdef _SC_PII_SOCKET
4873 {*r = _SC_PII_SOCKET; return 0;}
4874 #else /* def _SC_PII_SOCKET */
4875 {errno = EINVAL; return -1;}
4876 #endif /* ndef _SC_PII_SOCKET */
4877 if (x == Mono_Posix_SysconfName__SC_PII_XTI)
4879 {*r = _SC_PII_XTI; return 0;}
4880 #else /* def _SC_PII_XTI */
4881 {errno = EINVAL; return -1;}
4882 #endif /* ndef _SC_PII_XTI */
4883 if (x == Mono_Posix_SysconfName__SC_PIPE)
4885 {*r = _SC_PIPE; return 0;}
4886 #else /* def _SC_PIPE */
4887 {errno = EINVAL; return -1;}
4888 #endif /* ndef _SC_PIPE */
4889 if (x == Mono_Posix_SysconfName__SC_POLL)
4891 {*r = _SC_POLL; return 0;}
4892 #else /* def _SC_POLL */
4893 {errno = EINVAL; return -1;}
4894 #endif /* ndef _SC_POLL */
4895 if (x == Mono_Posix_SysconfName__SC_PRIORITIZED_IO)
4896 #ifdef _SC_PRIORITIZED_IO
4897 {*r = _SC_PRIORITIZED_IO; return 0;}
4898 #else /* def _SC_PRIORITIZED_IO */
4899 {errno = EINVAL; return -1;}
4900 #endif /* ndef _SC_PRIORITIZED_IO */
4901 if (x == Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING)
4902 #ifdef _SC_PRIORITY_SCHEDULING
4903 {*r = _SC_PRIORITY_SCHEDULING; return 0;}
4904 #else /* def _SC_PRIORITY_SCHEDULING */
4905 {errno = EINVAL; return -1;}
4906 #endif /* ndef _SC_PRIORITY_SCHEDULING */
4907 if (x == Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS)
4908 #ifdef _SC_READER_WRITER_LOCKS
4909 {*r = _SC_READER_WRITER_LOCKS; return 0;}
4910 #else /* def _SC_READER_WRITER_LOCKS */
4911 {errno = EINVAL; return -1;}
4912 #endif /* ndef _SC_READER_WRITER_LOCKS */
4913 if (x == Mono_Posix_SysconfName__SC_REALTIME_SIGNALS)
4914 #ifdef _SC_REALTIME_SIGNALS
4915 {*r = _SC_REALTIME_SIGNALS; return 0;}
4916 #else /* def _SC_REALTIME_SIGNALS */
4917 {errno = EINVAL; return -1;}
4918 #endif /* ndef _SC_REALTIME_SIGNALS */
4919 if (x == Mono_Posix_SysconfName__SC_REGEXP)
4921 {*r = _SC_REGEXP; return 0;}
4922 #else /* def _SC_REGEXP */
4923 {errno = EINVAL; return -1;}
4924 #endif /* ndef _SC_REGEXP */
4925 if (x == Mono_Posix_SysconfName__SC_REGEX_VERSION)
4926 #ifdef _SC_REGEX_VERSION
4927 {*r = _SC_REGEX_VERSION; return 0;}
4928 #else /* def _SC_REGEX_VERSION */
4929 {errno = EINVAL; return -1;}
4930 #endif /* ndef _SC_REGEX_VERSION */
4931 if (x == Mono_Posix_SysconfName__SC_RE_DUP_MAX)
4932 #ifdef _SC_RE_DUP_MAX
4933 {*r = _SC_RE_DUP_MAX; return 0;}
4934 #else /* def _SC_RE_DUP_MAX */
4935 {errno = EINVAL; return -1;}
4936 #endif /* ndef _SC_RE_DUP_MAX */
4937 if (x == Mono_Posix_SysconfName__SC_RTSIG_MAX)
4938 #ifdef _SC_RTSIG_MAX
4939 {*r = _SC_RTSIG_MAX; return 0;}
4940 #else /* def _SC_RTSIG_MAX */
4941 {errno = EINVAL; return -1;}
4942 #endif /* ndef _SC_RTSIG_MAX */
4943 if (x == Mono_Posix_SysconfName__SC_SAVED_IDS)
4944 #ifdef _SC_SAVED_IDS
4945 {*r = _SC_SAVED_IDS; return 0;}
4946 #else /* def _SC_SAVED_IDS */
4947 {errno = EINVAL; return -1;}
4948 #endif /* ndef _SC_SAVED_IDS */
4949 if (x == Mono_Posix_SysconfName__SC_SCHAR_MAX)
4950 #ifdef _SC_SCHAR_MAX
4951 {*r = _SC_SCHAR_MAX; return 0;}
4952 #else /* def _SC_SCHAR_MAX */
4953 {errno = EINVAL; return -1;}
4954 #endif /* ndef _SC_SCHAR_MAX */
4955 if (x == Mono_Posix_SysconfName__SC_SCHAR_MIN)
4956 #ifdef _SC_SCHAR_MIN
4957 {*r = _SC_SCHAR_MIN; return 0;}
4958 #else /* def _SC_SCHAR_MIN */
4959 {errno = EINVAL; return -1;}
4960 #endif /* ndef _SC_SCHAR_MIN */
4961 if (x == Mono_Posix_SysconfName__SC_SELECT)
4963 {*r = _SC_SELECT; return 0;}
4964 #else /* def _SC_SELECT */
4965 {errno = EINVAL; return -1;}
4966 #endif /* ndef _SC_SELECT */
4967 if (x == Mono_Posix_SysconfName__SC_SEMAPHORES)
4968 #ifdef _SC_SEMAPHORES
4969 {*r = _SC_SEMAPHORES; return 0;}
4970 #else /* def _SC_SEMAPHORES */
4971 {errno = EINVAL; return -1;}
4972 #endif /* ndef _SC_SEMAPHORES */
4973 if (x == Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX)
4974 #ifdef _SC_SEM_NSEMS_MAX
4975 {*r = _SC_SEM_NSEMS_MAX; return 0;}
4976 #else /* def _SC_SEM_NSEMS_MAX */
4977 {errno = EINVAL; return -1;}
4978 #endif /* ndef _SC_SEM_NSEMS_MAX */
4979 if (x == Mono_Posix_SysconfName__SC_SEM_VALUE_MAX)
4980 #ifdef _SC_SEM_VALUE_MAX
4981 {*r = _SC_SEM_VALUE_MAX; return 0;}
4982 #else /* def _SC_SEM_VALUE_MAX */
4983 {errno = EINVAL; return -1;}
4984 #endif /* ndef _SC_SEM_VALUE_MAX */
4985 if (x == Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS)
4986 #ifdef _SC_SHARED_MEMORY_OBJECTS
4987 {*r = _SC_SHARED_MEMORY_OBJECTS; return 0;}
4988 #else /* def _SC_SHARED_MEMORY_OBJECTS */
4989 {errno = EINVAL; return -1;}
4990 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
4991 if (x == Mono_Posix_SysconfName__SC_SHELL)
4993 {*r = _SC_SHELL; return 0;}
4994 #else /* def _SC_SHELL */
4995 {errno = EINVAL; return -1;}
4996 #endif /* ndef _SC_SHELL */
4997 if (x == Mono_Posix_SysconfName__SC_SHRT_MAX)
4999 {*r = _SC_SHRT_MAX; return 0;}
5000 #else /* def _SC_SHRT_MAX */
5001 {errno = EINVAL; return -1;}
5002 #endif /* ndef _SC_SHRT_MAX */
5003 if (x == Mono_Posix_SysconfName__SC_SHRT_MIN)
5005 {*r = _SC_SHRT_MIN; return 0;}
5006 #else /* def _SC_SHRT_MIN */
5007 {errno = EINVAL; return -1;}
5008 #endif /* ndef _SC_SHRT_MIN */
5009 if (x == Mono_Posix_SysconfName__SC_SIGNALS)
5011 {*r = _SC_SIGNALS; return 0;}
5012 #else /* def _SC_SIGNALS */
5013 {errno = EINVAL; return -1;}
5014 #endif /* ndef _SC_SIGNALS */
5015 if (x == Mono_Posix_SysconfName__SC_SIGQUEUE_MAX)
5016 #ifdef _SC_SIGQUEUE_MAX
5017 {*r = _SC_SIGQUEUE_MAX; return 0;}
5018 #else /* def _SC_SIGQUEUE_MAX */
5019 {errno = EINVAL; return -1;}
5020 #endif /* ndef _SC_SIGQUEUE_MAX */
5021 if (x == Mono_Posix_SysconfName__SC_SINGLE_PROCESS)
5022 #ifdef _SC_SINGLE_PROCESS
5023 {*r = _SC_SINGLE_PROCESS; return 0;}
5024 #else /* def _SC_SINGLE_PROCESS */
5025 {errno = EINVAL; return -1;}
5026 #endif /* ndef _SC_SINGLE_PROCESS */
5027 if (x == Mono_Posix_SysconfName__SC_SPAWN)
5029 {*r = _SC_SPAWN; return 0;}
5030 #else /* def _SC_SPAWN */
5031 {errno = EINVAL; return -1;}
5032 #endif /* ndef _SC_SPAWN */
5033 if (x == Mono_Posix_SysconfName__SC_SPIN_LOCKS)
5034 #ifdef _SC_SPIN_LOCKS
5035 {*r = _SC_SPIN_LOCKS; return 0;}
5036 #else /* def _SC_SPIN_LOCKS */
5037 {errno = EINVAL; return -1;}
5038 #endif /* ndef _SC_SPIN_LOCKS */
5039 if (x == Mono_Posix_SysconfName__SC_SPORADIC_SERVER)
5040 #ifdef _SC_SPORADIC_SERVER
5041 {*r = _SC_SPORADIC_SERVER; return 0;}
5042 #else /* def _SC_SPORADIC_SERVER */
5043 {errno = EINVAL; return -1;}
5044 #endif /* ndef _SC_SPORADIC_SERVER */
5045 if (x == Mono_Posix_SysconfName__SC_SSIZE_MAX)
5046 #ifdef _SC_SSIZE_MAX
5047 {*r = _SC_SSIZE_MAX; return 0;}
5048 #else /* def _SC_SSIZE_MAX */
5049 {errno = EINVAL; return -1;}
5050 #endif /* ndef _SC_SSIZE_MAX */
5051 if (x == Mono_Posix_SysconfName__SC_STREAMS)
5053 {*r = _SC_STREAMS; return 0;}
5054 #else /* def _SC_STREAMS */
5055 {errno = EINVAL; return -1;}
5056 #endif /* ndef _SC_STREAMS */
5057 if (x == Mono_Posix_SysconfName__SC_STREAM_MAX)
5058 #ifdef _SC_STREAM_MAX
5059 {*r = _SC_STREAM_MAX; return 0;}
5060 #else /* def _SC_STREAM_MAX */
5061 {errno = EINVAL; return -1;}
5062 #endif /* ndef _SC_STREAM_MAX */
5063 if (x == Mono_Posix_SysconfName__SC_SYMLOOP_MAX)
5064 #ifdef _SC_SYMLOOP_MAX
5065 {*r = _SC_SYMLOOP_MAX; return 0;}
5066 #else /* def _SC_SYMLOOP_MAX */
5067 {errno = EINVAL; return -1;}
5068 #endif /* ndef _SC_SYMLOOP_MAX */
5069 if (x == Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO)
5070 #ifdef _SC_SYNCHRONIZED_IO
5071 {*r = _SC_SYNCHRONIZED_IO; return 0;}
5072 #else /* def _SC_SYNCHRONIZED_IO */
5073 {errno = EINVAL; return -1;}
5074 #endif /* ndef _SC_SYNCHRONIZED_IO */
5075 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE)
5076 #ifdef _SC_SYSTEM_DATABASE
5077 {*r = _SC_SYSTEM_DATABASE; return 0;}
5078 #else /* def _SC_SYSTEM_DATABASE */
5079 {errno = EINVAL; return -1;}
5080 #endif /* ndef _SC_SYSTEM_DATABASE */
5081 if (x == Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R)
5082 #ifdef _SC_SYSTEM_DATABASE_R
5083 {*r = _SC_SYSTEM_DATABASE_R; return 0;}
5084 #else /* def _SC_SYSTEM_DATABASE_R */
5085 {errno = EINVAL; return -1;}
5086 #endif /* ndef _SC_SYSTEM_DATABASE_R */
5087 if (x == Mono_Posix_SysconfName__SC_THREADS)
5089 {*r = _SC_THREADS; return 0;}
5090 #else /* def _SC_THREADS */
5091 {errno = EINVAL; return -1;}
5092 #endif /* ndef _SC_THREADS */
5093 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR)
5094 #ifdef _SC_THREAD_ATTR_STACKADDR
5095 {*r = _SC_THREAD_ATTR_STACKADDR; return 0;}
5096 #else /* def _SC_THREAD_ATTR_STACKADDR */
5097 {errno = EINVAL; return -1;}
5098 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
5099 if (x == Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE)
5100 #ifdef _SC_THREAD_ATTR_STACKSIZE
5101 {*r = _SC_THREAD_ATTR_STACKSIZE; return 0;}
5102 #else /* def _SC_THREAD_ATTR_STACKSIZE */
5103 {errno = EINVAL; return -1;}
5104 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
5105 if (x == Mono_Posix_SysconfName__SC_THREAD_CPUTIME)
5106 #ifdef _SC_THREAD_CPUTIME
5107 {*r = _SC_THREAD_CPUTIME; return 0;}
5108 #else /* def _SC_THREAD_CPUTIME */
5109 {errno = EINVAL; return -1;}
5110 #endif /* ndef _SC_THREAD_CPUTIME */
5111 if (x == Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS)
5112 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
5113 {*r = _SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
5114 #else /* def _SC_THREAD_DESTRUCTOR_ITERATIONS */
5115 {errno = EINVAL; return -1;}
5116 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
5117 if (x == Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX)
5118 #ifdef _SC_THREAD_KEYS_MAX
5119 {*r = _SC_THREAD_KEYS_MAX; return 0;}
5120 #else /* def _SC_THREAD_KEYS_MAX */
5121 {errno = EINVAL; return -1;}
5122 #endif /* ndef _SC_THREAD_KEYS_MAX */
5123 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING)
5124 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
5125 {*r = _SC_THREAD_PRIORITY_SCHEDULING; return 0;}
5126 #else /* def _SC_THREAD_PRIORITY_SCHEDULING */
5127 {errno = EINVAL; return -1;}
5128 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
5129 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT)
5130 #ifdef _SC_THREAD_PRIO_INHERIT
5131 {*r = _SC_THREAD_PRIO_INHERIT; return 0;}
5132 #else /* def _SC_THREAD_PRIO_INHERIT */
5133 {errno = EINVAL; return -1;}
5134 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
5135 if (x == Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT)
5136 #ifdef _SC_THREAD_PRIO_PROTECT
5137 {*r = _SC_THREAD_PRIO_PROTECT; return 0;}
5138 #else /* def _SC_THREAD_PRIO_PROTECT */
5139 {errno = EINVAL; return -1;}
5140 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
5141 if (x == Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED)
5142 #ifdef _SC_THREAD_PROCESS_SHARED
5143 {*r = _SC_THREAD_PROCESS_SHARED; return 0;}
5144 #else /* def _SC_THREAD_PROCESS_SHARED */
5145 {errno = EINVAL; return -1;}
5146 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
5147 if (x == Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS)
5148 #ifdef _SC_THREAD_SAFE_FUNCTIONS
5149 {*r = _SC_THREAD_SAFE_FUNCTIONS; return 0;}
5150 #else /* def _SC_THREAD_SAFE_FUNCTIONS */
5151 {errno = EINVAL; return -1;}
5152 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
5153 if (x == Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER)
5154 #ifdef _SC_THREAD_SPORADIC_SERVER
5155 {*r = _SC_THREAD_SPORADIC_SERVER; return 0;}
5156 #else /* def _SC_THREAD_SPORADIC_SERVER */
5157 {errno = EINVAL; return -1;}
5158 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
5159 if (x == Mono_Posix_SysconfName__SC_THREAD_STACK_MIN)
5160 #ifdef _SC_THREAD_STACK_MIN
5161 {*r = _SC_THREAD_STACK_MIN; return 0;}
5162 #else /* def _SC_THREAD_STACK_MIN */
5163 {errno = EINVAL; return -1;}
5164 #endif /* ndef _SC_THREAD_STACK_MIN */
5165 if (x == Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX)
5166 #ifdef _SC_THREAD_THREADS_MAX
5167 {*r = _SC_THREAD_THREADS_MAX; return 0;}
5168 #else /* def _SC_THREAD_THREADS_MAX */
5169 {errno = EINVAL; return -1;}
5170 #endif /* ndef _SC_THREAD_THREADS_MAX */
5171 if (x == Mono_Posix_SysconfName__SC_TIMEOUTS)
5173 {*r = _SC_TIMEOUTS; return 0;}
5174 #else /* def _SC_TIMEOUTS */
5175 {errno = EINVAL; return -1;}
5176 #endif /* ndef _SC_TIMEOUTS */
5177 if (x == Mono_Posix_SysconfName__SC_TIMERS)
5179 {*r = _SC_TIMERS; return 0;}
5180 #else /* def _SC_TIMERS */
5181 {errno = EINVAL; return -1;}
5182 #endif /* ndef _SC_TIMERS */
5183 if (x == Mono_Posix_SysconfName__SC_TIMER_MAX)
5184 #ifdef _SC_TIMER_MAX
5185 {*r = _SC_TIMER_MAX; return 0;}
5186 #else /* def _SC_TIMER_MAX */
5187 {errno = EINVAL; return -1;}
5188 #endif /* ndef _SC_TIMER_MAX */
5189 if (x == Mono_Posix_SysconfName__SC_TRACE)
5191 {*r = _SC_TRACE; return 0;}
5192 #else /* def _SC_TRACE */
5193 {errno = EINVAL; return -1;}
5194 #endif /* ndef _SC_TRACE */
5195 if (x == Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER)
5196 #ifdef _SC_TRACE_EVENT_FILTER
5197 {*r = _SC_TRACE_EVENT_FILTER; return 0;}
5198 #else /* def _SC_TRACE_EVENT_FILTER */
5199 {errno = EINVAL; return -1;}
5200 #endif /* ndef _SC_TRACE_EVENT_FILTER */
5201 if (x == Mono_Posix_SysconfName__SC_TRACE_INHERIT)
5202 #ifdef _SC_TRACE_INHERIT
5203 {*r = _SC_TRACE_INHERIT; return 0;}
5204 #else /* def _SC_TRACE_INHERIT */
5205 {errno = EINVAL; return -1;}
5206 #endif /* ndef _SC_TRACE_INHERIT */
5207 if (x == Mono_Posix_SysconfName__SC_TRACE_LOG)
5208 #ifdef _SC_TRACE_LOG
5209 {*r = _SC_TRACE_LOG; return 0;}
5210 #else /* def _SC_TRACE_LOG */
5211 {errno = EINVAL; return -1;}
5212 #endif /* ndef _SC_TRACE_LOG */
5213 if (x == Mono_Posix_SysconfName__SC_TTY_NAME_MAX)
5214 #ifdef _SC_TTY_NAME_MAX
5215 {*r = _SC_TTY_NAME_MAX; return 0;}
5216 #else /* def _SC_TTY_NAME_MAX */
5217 {errno = EINVAL; return -1;}
5218 #endif /* ndef _SC_TTY_NAME_MAX */
5219 if (x == Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS)
5220 #ifdef _SC_TYPED_MEMORY_OBJECTS
5221 {*r = _SC_TYPED_MEMORY_OBJECTS; return 0;}
5222 #else /* def _SC_TYPED_MEMORY_OBJECTS */
5223 {errno = EINVAL; return -1;}
5224 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
5225 if (x == Mono_Posix_SysconfName__SC_TZNAME_MAX)
5226 #ifdef _SC_TZNAME_MAX
5227 {*r = _SC_TZNAME_MAX; return 0;}
5228 #else /* def _SC_TZNAME_MAX */
5229 {errno = EINVAL; return -1;}
5230 #endif /* ndef _SC_TZNAME_MAX */
5231 if (x == Mono_Posix_SysconfName__SC_T_IOV_MAX)
5232 #ifdef _SC_T_IOV_MAX
5233 {*r = _SC_T_IOV_MAX; return 0;}
5234 #else /* def _SC_T_IOV_MAX */
5235 {errno = EINVAL; return -1;}
5236 #endif /* ndef _SC_T_IOV_MAX */
5237 if (x == Mono_Posix_SysconfName__SC_UCHAR_MAX)
5238 #ifdef _SC_UCHAR_MAX
5239 {*r = _SC_UCHAR_MAX; return 0;}
5240 #else /* def _SC_UCHAR_MAX */
5241 {errno = EINVAL; return -1;}
5242 #endif /* ndef _SC_UCHAR_MAX */
5243 if (x == Mono_Posix_SysconfName__SC_UINT_MAX)
5245 {*r = _SC_UINT_MAX; return 0;}
5246 #else /* def _SC_UINT_MAX */
5247 {errno = EINVAL; return -1;}
5248 #endif /* ndef _SC_UINT_MAX */
5249 if (x == Mono_Posix_SysconfName__SC_UIO_MAXIOV)
5250 #ifdef _SC_UIO_MAXIOV
5251 {*r = _SC_UIO_MAXIOV; return 0;}
5252 #else /* def _SC_UIO_MAXIOV */
5253 {errno = EINVAL; return -1;}
5254 #endif /* ndef _SC_UIO_MAXIOV */
5255 if (x == Mono_Posix_SysconfName__SC_ULONG_MAX)
5256 #ifdef _SC_ULONG_MAX
5257 {*r = _SC_ULONG_MAX; return 0;}
5258 #else /* def _SC_ULONG_MAX */
5259 {errno = EINVAL; return -1;}
5260 #endif /* ndef _SC_ULONG_MAX */
5261 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS)
5262 #ifdef _SC_USER_GROUPS
5263 {*r = _SC_USER_GROUPS; return 0;}
5264 #else /* def _SC_USER_GROUPS */
5265 {errno = EINVAL; return -1;}
5266 #endif /* ndef _SC_USER_GROUPS */
5267 if (x == Mono_Posix_SysconfName__SC_USER_GROUPS_R)
5268 #ifdef _SC_USER_GROUPS_R
5269 {*r = _SC_USER_GROUPS_R; return 0;}
5270 #else /* def _SC_USER_GROUPS_R */
5271 {errno = EINVAL; return -1;}
5272 #endif /* ndef _SC_USER_GROUPS_R */
5273 if (x == Mono_Posix_SysconfName__SC_USHRT_MAX)
5274 #ifdef _SC_USHRT_MAX
5275 {*r = _SC_USHRT_MAX; return 0;}
5276 #else /* def _SC_USHRT_MAX */
5277 {errno = EINVAL; return -1;}
5278 #endif /* ndef _SC_USHRT_MAX */
5279 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFF32)
5280 #ifdef _SC_V6_ILP32_OFF32
5281 {*r = _SC_V6_ILP32_OFF32; return 0;}
5282 #else /* def _SC_V6_ILP32_OFF32 */
5283 {errno = EINVAL; return -1;}
5284 #endif /* ndef _SC_V6_ILP32_OFF32 */
5285 if (x == Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG)
5286 #ifdef _SC_V6_ILP32_OFFBIG
5287 {*r = _SC_V6_ILP32_OFFBIG; return 0;}
5288 #else /* def _SC_V6_ILP32_OFFBIG */
5289 {errno = EINVAL; return -1;}
5290 #endif /* ndef _SC_V6_ILP32_OFFBIG */
5291 if (x == Mono_Posix_SysconfName__SC_V6_LP64_OFF64)
5292 #ifdef _SC_V6_LP64_OFF64
5293 {*r = _SC_V6_LP64_OFF64; return 0;}
5294 #else /* def _SC_V6_LP64_OFF64 */
5295 {errno = EINVAL; return -1;}
5296 #endif /* ndef _SC_V6_LP64_OFF64 */
5297 if (x == Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG)
5298 #ifdef _SC_V6_LPBIG_OFFBIG
5299 {*r = _SC_V6_LPBIG_OFFBIG; return 0;}
5300 #else /* def _SC_V6_LPBIG_OFFBIG */
5301 {errno = EINVAL; return -1;}
5302 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
5303 if (x == Mono_Posix_SysconfName__SC_VERSION)
5305 {*r = _SC_VERSION; return 0;}
5306 #else /* def _SC_VERSION */
5307 {errno = EINVAL; return -1;}
5308 #endif /* ndef _SC_VERSION */
5309 if (x == Mono_Posix_SysconfName__SC_WORD_BIT)
5311 {*r = _SC_WORD_BIT; return 0;}
5312 #else /* def _SC_WORD_BIT */
5313 {errno = EINVAL; return -1;}
5314 #endif /* ndef _SC_WORD_BIT */
5315 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32)
5316 #ifdef _SC_XBS5_ILP32_OFF32
5317 {*r = _SC_XBS5_ILP32_OFF32; return 0;}
5318 #else /* def _SC_XBS5_ILP32_OFF32 */
5319 {errno = EINVAL; return -1;}
5320 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
5321 if (x == Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG)
5322 #ifdef _SC_XBS5_ILP32_OFFBIG
5323 {*r = _SC_XBS5_ILP32_OFFBIG; return 0;}
5324 #else /* def _SC_XBS5_ILP32_OFFBIG */
5325 {errno = EINVAL; return -1;}
5326 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
5327 if (x == Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64)
5328 #ifdef _SC_XBS5_LP64_OFF64
5329 {*r = _SC_XBS5_LP64_OFF64; return 0;}
5330 #else /* def _SC_XBS5_LP64_OFF64 */
5331 {errno = EINVAL; return -1;}
5332 #endif /* ndef _SC_XBS5_LP64_OFF64 */
5333 if (x == Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG)
5334 #ifdef _SC_XBS5_LPBIG_OFFBIG
5335 {*r = _SC_XBS5_LPBIG_OFFBIG; return 0;}
5336 #else /* def _SC_XBS5_LPBIG_OFFBIG */
5337 {errno = EINVAL; return -1;}
5338 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
5339 if (x == Mono_Posix_SysconfName__SC_XOPEN_CRYPT)
5340 #ifdef _SC_XOPEN_CRYPT
5341 {*r = _SC_XOPEN_CRYPT; return 0;}
5342 #else /* def _SC_XOPEN_CRYPT */
5343 {errno = EINVAL; return -1;}
5344 #endif /* ndef _SC_XOPEN_CRYPT */
5345 if (x == Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N)
5346 #ifdef _SC_XOPEN_ENH_I18N
5347 {*r = _SC_XOPEN_ENH_I18N; return 0;}
5348 #else /* def _SC_XOPEN_ENH_I18N */
5349 {errno = EINVAL; return -1;}
5350 #endif /* ndef _SC_XOPEN_ENH_I18N */
5351 if (x == Mono_Posix_SysconfName__SC_XOPEN_LEGACY)
5352 #ifdef _SC_XOPEN_LEGACY
5353 {*r = _SC_XOPEN_LEGACY; return 0;}
5354 #else /* def _SC_XOPEN_LEGACY */
5355 {errno = EINVAL; return -1;}
5356 #endif /* ndef _SC_XOPEN_LEGACY */
5357 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME)
5358 #ifdef _SC_XOPEN_REALTIME
5359 {*r = _SC_XOPEN_REALTIME; return 0;}
5360 #else /* def _SC_XOPEN_REALTIME */
5361 {errno = EINVAL; return -1;}
5362 #endif /* ndef _SC_XOPEN_REALTIME */
5363 if (x == Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS)
5364 #ifdef _SC_XOPEN_REALTIME_THREADS
5365 {*r = _SC_XOPEN_REALTIME_THREADS; return 0;}
5366 #else /* def _SC_XOPEN_REALTIME_THREADS */
5367 {errno = EINVAL; return -1;}
5368 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
5369 if (x == Mono_Posix_SysconfName__SC_XOPEN_SHM)
5370 #ifdef _SC_XOPEN_SHM
5371 {*r = _SC_XOPEN_SHM; return 0;}
5372 #else /* def _SC_XOPEN_SHM */
5373 {errno = EINVAL; return -1;}
5374 #endif /* ndef _SC_XOPEN_SHM */
5375 if (x == Mono_Posix_SysconfName__SC_XOPEN_UNIX)
5376 #ifdef _SC_XOPEN_UNIX
5377 {*r = _SC_XOPEN_UNIX; return 0;}
5378 #else /* def _SC_XOPEN_UNIX */
5379 {errno = EINVAL; return -1;}
5380 #endif /* ndef _SC_XOPEN_UNIX */
5381 if (x == Mono_Posix_SysconfName__SC_XOPEN_VERSION)
5382 #ifdef _SC_XOPEN_VERSION
5383 {*r = _SC_XOPEN_VERSION; return 0;}
5384 #else /* def _SC_XOPEN_VERSION */
5385 {errno = EINVAL; return -1;}
5386 #endif /* ndef _SC_XOPEN_VERSION */
5387 if (x == Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION)
5388 #ifdef _SC_XOPEN_XCU_VERSION
5389 {*r = _SC_XOPEN_XCU_VERSION; return 0;}
5390 #else /* def _SC_XOPEN_XCU_VERSION */
5391 {errno = EINVAL; return -1;}
5392 #endif /* ndef _SC_XOPEN_XCU_VERSION */
5393 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG2)
5394 #ifdef _SC_XOPEN_XPG2
5395 {*r = _SC_XOPEN_XPG2; return 0;}
5396 #else /* def _SC_XOPEN_XPG2 */
5397 {errno = EINVAL; return -1;}
5398 #endif /* ndef _SC_XOPEN_XPG2 */
5399 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG3)
5400 #ifdef _SC_XOPEN_XPG3
5401 {*r = _SC_XOPEN_XPG3; return 0;}
5402 #else /* def _SC_XOPEN_XPG3 */
5403 {errno = EINVAL; return -1;}
5404 #endif /* ndef _SC_XOPEN_XPG3 */
5405 if (x == Mono_Posix_SysconfName__SC_XOPEN_XPG4)
5406 #ifdef _SC_XOPEN_XPG4
5407 {*r = _SC_XOPEN_XPG4; return 0;}
5408 #else /* def _SC_XOPEN_XPG4 */
5409 {errno = EINVAL; return -1;}
5410 #endif /* ndef _SC_XOPEN_XPG4 */
5413 errno = EINVAL; return -1;
5416 int Mono_Posix_ToSysconfName (int x, int *r)
5421 #ifdef _SC_2_CHAR_TERM
5422 if (x == _SC_2_CHAR_TERM)
5423 {*r = Mono_Posix_SysconfName__SC_2_CHAR_TERM; return 0;}
5424 #endif /* ndef _SC_2_CHAR_TERM */
5426 if (x == _SC_2_C_BIND)
5427 {*r = Mono_Posix_SysconfName__SC_2_C_BIND; return 0;}
5428 #endif /* ndef _SC_2_C_BIND */
5430 if (x == _SC_2_C_DEV)
5431 {*r = Mono_Posix_SysconfName__SC_2_C_DEV; return 0;}
5432 #endif /* ndef _SC_2_C_DEV */
5433 #ifdef _SC_2_C_VERSION
5434 if (x == _SC_2_C_VERSION)
5435 {*r = Mono_Posix_SysconfName__SC_2_C_VERSION; return 0;}
5436 #endif /* ndef _SC_2_C_VERSION */
5437 #ifdef _SC_2_FORT_DEV
5438 if (x == _SC_2_FORT_DEV)
5439 {*r = Mono_Posix_SysconfName__SC_2_FORT_DEV; return 0;}
5440 #endif /* ndef _SC_2_FORT_DEV */
5441 #ifdef _SC_2_FORT_RUN
5442 if (x == _SC_2_FORT_RUN)
5443 {*r = Mono_Posix_SysconfName__SC_2_FORT_RUN; return 0;}
5444 #endif /* ndef _SC_2_FORT_RUN */
5445 #ifdef _SC_2_LOCALEDEF
5446 if (x == _SC_2_LOCALEDEF)
5447 {*r = Mono_Posix_SysconfName__SC_2_LOCALEDEF; return 0;}
5448 #endif /* ndef _SC_2_LOCALEDEF */
5451 {*r = Mono_Posix_SysconfName__SC_2_PBS; return 0;}
5452 #endif /* ndef _SC_2_PBS */
5453 #ifdef _SC_2_PBS_ACCOUNTING
5454 if (x == _SC_2_PBS_ACCOUNTING)
5455 {*r = Mono_Posix_SysconfName__SC_2_PBS_ACCOUNTING; return 0;}
5456 #endif /* ndef _SC_2_PBS_ACCOUNTING */
5457 #ifdef _SC_2_PBS_CHECKPOINT
5458 if (x == _SC_2_PBS_CHECKPOINT)
5459 {*r = Mono_Posix_SysconfName__SC_2_PBS_CHECKPOINT; return 0;}
5460 #endif /* ndef _SC_2_PBS_CHECKPOINT */
5461 #ifdef _SC_2_PBS_LOCATE
5462 if (x == _SC_2_PBS_LOCATE)
5463 {*r = Mono_Posix_SysconfName__SC_2_PBS_LOCATE; return 0;}
5464 #endif /* ndef _SC_2_PBS_LOCATE */
5465 #ifdef _SC_2_PBS_MESSAGE
5466 if (x == _SC_2_PBS_MESSAGE)
5467 {*r = Mono_Posix_SysconfName__SC_2_PBS_MESSAGE; return 0;}
5468 #endif /* ndef _SC_2_PBS_MESSAGE */
5469 #ifdef _SC_2_PBS_TRACK
5470 if (x == _SC_2_PBS_TRACK)
5471 {*r = Mono_Posix_SysconfName__SC_2_PBS_TRACK; return 0;}
5472 #endif /* ndef _SC_2_PBS_TRACK */
5474 if (x == _SC_2_SW_DEV)
5475 {*r = Mono_Posix_SysconfName__SC_2_SW_DEV; return 0;}
5476 #endif /* ndef _SC_2_SW_DEV */
5479 {*r = Mono_Posix_SysconfName__SC_2_UPE; return 0;}
5480 #endif /* ndef _SC_2_UPE */
5481 #ifdef _SC_2_VERSION
5482 if (x == _SC_2_VERSION)
5483 {*r = Mono_Posix_SysconfName__SC_2_VERSION; return 0;}
5484 #endif /* ndef _SC_2_VERSION */
5485 #ifdef _SC_ADVISORY_INFO
5486 if (x == _SC_ADVISORY_INFO)
5487 {*r = Mono_Posix_SysconfName__SC_ADVISORY_INFO; return 0;}
5488 #endif /* ndef _SC_ADVISORY_INFO */
5489 #ifdef _SC_AIO_LISTIO_MAX
5490 if (x == _SC_AIO_LISTIO_MAX)
5491 {*r = Mono_Posix_SysconfName__SC_AIO_LISTIO_MAX; return 0;}
5492 #endif /* ndef _SC_AIO_LISTIO_MAX */
5494 if (x == _SC_AIO_MAX)
5495 {*r = Mono_Posix_SysconfName__SC_AIO_MAX; return 0;}
5496 #endif /* ndef _SC_AIO_MAX */
5497 #ifdef _SC_AIO_PRIO_DELTA_MAX
5498 if (x == _SC_AIO_PRIO_DELTA_MAX)
5499 {*r = Mono_Posix_SysconfName__SC_AIO_PRIO_DELTA_MAX; return 0;}
5500 #endif /* ndef _SC_AIO_PRIO_DELTA_MAX */
5502 if (x == _SC_ARG_MAX)
5503 {*r = Mono_Posix_SysconfName__SC_ARG_MAX; return 0;}
5504 #endif /* ndef _SC_ARG_MAX */
5505 #ifdef _SC_ASYNCHRONOUS_IO
5506 if (x == _SC_ASYNCHRONOUS_IO)
5507 {*r = Mono_Posix_SysconfName__SC_ASYNCHRONOUS_IO; return 0;}
5508 #endif /* ndef _SC_ASYNCHRONOUS_IO */
5509 #ifdef _SC_ATEXIT_MAX
5510 if (x == _SC_ATEXIT_MAX)
5511 {*r = Mono_Posix_SysconfName__SC_ATEXIT_MAX; return 0;}
5512 #endif /* ndef _SC_ATEXIT_MAX */
5513 #ifdef _SC_AVPHYS_PAGES
5514 if (x == _SC_AVPHYS_PAGES)
5515 {*r = Mono_Posix_SysconfName__SC_AVPHYS_PAGES; return 0;}
5516 #endif /* ndef _SC_AVPHYS_PAGES */
5518 if (x == _SC_BARRIERS)
5519 {*r = Mono_Posix_SysconfName__SC_BARRIERS; return 0;}
5520 #endif /* ndef _SC_BARRIERS */
5523 {*r = Mono_Posix_SysconfName__SC_BASE; return 0;}
5524 #endif /* ndef _SC_BASE */
5525 #ifdef _SC_BC_BASE_MAX
5526 if (x == _SC_BC_BASE_MAX)
5527 {*r = Mono_Posix_SysconfName__SC_BC_BASE_MAX; return 0;}
5528 #endif /* ndef _SC_BC_BASE_MAX */
5529 #ifdef _SC_BC_DIM_MAX
5530 if (x == _SC_BC_DIM_MAX)
5531 {*r = Mono_Posix_SysconfName__SC_BC_DIM_MAX; return 0;}
5532 #endif /* ndef _SC_BC_DIM_MAX */
5533 #ifdef _SC_BC_SCALE_MAX
5534 if (x == _SC_BC_SCALE_MAX)
5535 {*r = Mono_Posix_SysconfName__SC_BC_SCALE_MAX; return 0;}
5536 #endif /* ndef _SC_BC_SCALE_MAX */
5537 #ifdef _SC_BC_STRING_MAX
5538 if (x == _SC_BC_STRING_MAX)
5539 {*r = Mono_Posix_SysconfName__SC_BC_STRING_MAX; return 0;}
5540 #endif /* ndef _SC_BC_STRING_MAX */
5541 #ifdef _SC_CHARCLASS_NAME_MAX
5542 if (x == _SC_CHARCLASS_NAME_MAX)
5543 {*r = Mono_Posix_SysconfName__SC_CHARCLASS_NAME_MAX; return 0;}
5544 #endif /* ndef _SC_CHARCLASS_NAME_MAX */
5546 if (x == _SC_CHAR_BIT)
5547 {*r = Mono_Posix_SysconfName__SC_CHAR_BIT; return 0;}
5548 #endif /* ndef _SC_CHAR_BIT */
5550 if (x == _SC_CHAR_MAX)
5551 {*r = Mono_Posix_SysconfName__SC_CHAR_MAX; return 0;}
5552 #endif /* ndef _SC_CHAR_MAX */
5554 if (x == _SC_CHAR_MIN)
5555 {*r = Mono_Posix_SysconfName__SC_CHAR_MIN; return 0;}
5556 #endif /* ndef _SC_CHAR_MIN */
5557 #ifdef _SC_CHILD_MAX
5558 if (x == _SC_CHILD_MAX)
5559 {*r = Mono_Posix_SysconfName__SC_CHILD_MAX; return 0;}
5560 #endif /* ndef _SC_CHILD_MAX */
5562 if (x == _SC_CLK_TCK)
5563 {*r = Mono_Posix_SysconfName__SC_CLK_TCK; return 0;}
5564 #endif /* ndef _SC_CLK_TCK */
5565 #ifdef _SC_CLOCK_SELECTION
5566 if (x == _SC_CLOCK_SELECTION)
5567 {*r = Mono_Posix_SysconfName__SC_CLOCK_SELECTION; return 0;}
5568 #endif /* ndef _SC_CLOCK_SELECTION */
5569 #ifdef _SC_COLL_WEIGHTS_MAX
5570 if (x == _SC_COLL_WEIGHTS_MAX)
5571 {*r = Mono_Posix_SysconfName__SC_COLL_WEIGHTS_MAX; return 0;}
5572 #endif /* ndef _SC_COLL_WEIGHTS_MAX */
5574 if (x == _SC_CPUTIME)
5575 {*r = Mono_Posix_SysconfName__SC_CPUTIME; return 0;}
5576 #endif /* ndef _SC_CPUTIME */
5577 #ifdef _SC_C_LANG_SUPPORT
5578 if (x == _SC_C_LANG_SUPPORT)
5579 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT; return 0;}
5580 #endif /* ndef _SC_C_LANG_SUPPORT */
5581 #ifdef _SC_C_LANG_SUPPORT_R
5582 if (x == _SC_C_LANG_SUPPORT_R)
5583 {*r = Mono_Posix_SysconfName__SC_C_LANG_SUPPORT_R; return 0;}
5584 #endif /* ndef _SC_C_LANG_SUPPORT_R */
5585 #ifdef _SC_DELAYTIMER_MAX
5586 if (x == _SC_DELAYTIMER_MAX)
5587 {*r = Mono_Posix_SysconfName__SC_DELAYTIMER_MAX; return 0;}
5588 #endif /* ndef _SC_DELAYTIMER_MAX */
5589 #ifdef _SC_DEVICE_IO
5590 if (x == _SC_DEVICE_IO)
5591 {*r = Mono_Posix_SysconfName__SC_DEVICE_IO; return 0;}
5592 #endif /* ndef _SC_DEVICE_IO */
5593 #ifdef _SC_DEVICE_SPECIFIC
5594 if (x == _SC_DEVICE_SPECIFIC)
5595 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC; return 0;}
5596 #endif /* ndef _SC_DEVICE_SPECIFIC */
5597 #ifdef _SC_DEVICE_SPECIFIC_R
5598 if (x == _SC_DEVICE_SPECIFIC_R)
5599 {*r = Mono_Posix_SysconfName__SC_DEVICE_SPECIFIC_R; return 0;}
5600 #endif /* ndef _SC_DEVICE_SPECIFIC_R */
5601 #ifdef _SC_EQUIV_CLASS_MAX
5602 if (x == _SC_EQUIV_CLASS_MAX)
5603 {*r = Mono_Posix_SysconfName__SC_EQUIV_CLASS_MAX; return 0;}
5604 #endif /* ndef _SC_EQUIV_CLASS_MAX */
5605 #ifdef _SC_EXPR_NEST_MAX
5606 if (x == _SC_EXPR_NEST_MAX)
5607 {*r = Mono_Posix_SysconfName__SC_EXPR_NEST_MAX; return 0;}
5608 #endif /* ndef _SC_EXPR_NEST_MAX */
5610 if (x == _SC_FD_MGMT)
5611 {*r = Mono_Posix_SysconfName__SC_FD_MGMT; return 0;}
5612 #endif /* ndef _SC_FD_MGMT */
5615 {*r = Mono_Posix_SysconfName__SC_FIFO; return 0;}
5616 #endif /* ndef _SC_FIFO */
5617 #ifdef _SC_FILE_ATTRIBUTES
5618 if (x == _SC_FILE_ATTRIBUTES)
5619 {*r = Mono_Posix_SysconfName__SC_FILE_ATTRIBUTES; return 0;}
5620 #endif /* ndef _SC_FILE_ATTRIBUTES */
5621 #ifdef _SC_FILE_LOCKING
5622 if (x == _SC_FILE_LOCKING)
5623 {*r = Mono_Posix_SysconfName__SC_FILE_LOCKING; return 0;}
5624 #endif /* ndef _SC_FILE_LOCKING */
5625 #ifdef _SC_FILE_SYSTEM
5626 if (x == _SC_FILE_SYSTEM)
5627 {*r = Mono_Posix_SysconfName__SC_FILE_SYSTEM; return 0;}
5628 #endif /* ndef _SC_FILE_SYSTEM */
5631 {*r = Mono_Posix_SysconfName__SC_FSYNC; return 0;}
5632 #endif /* ndef _SC_FSYNC */
5633 #ifdef _SC_GETGR_R_SIZE_MAX
5634 if (x == _SC_GETGR_R_SIZE_MAX)
5635 {*r = Mono_Posix_SysconfName__SC_GETGR_R_SIZE_MAX; return 0;}
5636 #endif /* ndef _SC_GETGR_R_SIZE_MAX */
5637 #ifdef _SC_GETPW_R_SIZE_MAX
5638 if (x == _SC_GETPW_R_SIZE_MAX)
5639 {*r = Mono_Posix_SysconfName__SC_GETPW_R_SIZE_MAX; return 0;}
5640 #endif /* ndef _SC_GETPW_R_SIZE_MAX */
5641 #ifdef _SC_HOST_NAME_MAX
5642 if (x == _SC_HOST_NAME_MAX)
5643 {*r = Mono_Posix_SysconfName__SC_HOST_NAME_MAX; return 0;}
5644 #endif /* ndef _SC_HOST_NAME_MAX */
5646 if (x == _SC_INT_MAX)
5647 {*r = Mono_Posix_SysconfName__SC_INT_MAX; return 0;}
5648 #endif /* ndef _SC_INT_MAX */
5650 if (x == _SC_INT_MIN)
5651 {*r = Mono_Posix_SysconfName__SC_INT_MIN; return 0;}
5652 #endif /* ndef _SC_INT_MIN */
5654 if (x == _SC_IOV_MAX)
5655 {*r = Mono_Posix_SysconfName__SC_IOV_MAX; return 0;}
5656 #endif /* ndef _SC_IOV_MAX */
5657 #ifdef _SC_JOB_CONTROL
5658 if (x == _SC_JOB_CONTROL)
5659 {*r = Mono_Posix_SysconfName__SC_JOB_CONTROL; return 0;}
5660 #endif /* ndef _SC_JOB_CONTROL */
5661 #ifdef _SC_LEVEL1_DCACHE_ASSOC
5662 if (x == _SC_LEVEL1_DCACHE_ASSOC)
5663 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_ASSOC; return 0;}
5664 #endif /* ndef _SC_LEVEL1_DCACHE_ASSOC */
5665 #ifdef _SC_LEVEL1_DCACHE_LINESIZE
5666 if (x == _SC_LEVEL1_DCACHE_LINESIZE)
5667 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_LINESIZE; return 0;}
5668 #endif /* ndef _SC_LEVEL1_DCACHE_LINESIZE */
5669 #ifdef _SC_LEVEL1_DCACHE_SIZE
5670 if (x == _SC_LEVEL1_DCACHE_SIZE)
5671 {*r = Mono_Posix_SysconfName__SC_LEVEL1_DCACHE_SIZE; return 0;}
5672 #endif /* ndef _SC_LEVEL1_DCACHE_SIZE */
5673 #ifdef _SC_LEVEL1_ICACHE_ASSOC
5674 if (x == _SC_LEVEL1_ICACHE_ASSOC)
5675 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_ASSOC; return 0;}
5676 #endif /* ndef _SC_LEVEL1_ICACHE_ASSOC */
5677 #ifdef _SC_LEVEL1_ICACHE_LINESIZE
5678 if (x == _SC_LEVEL1_ICACHE_LINESIZE)
5679 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_LINESIZE; return 0;}
5680 #endif /* ndef _SC_LEVEL1_ICACHE_LINESIZE */
5681 #ifdef _SC_LEVEL1_ICACHE_SIZE
5682 if (x == _SC_LEVEL1_ICACHE_SIZE)
5683 {*r = Mono_Posix_SysconfName__SC_LEVEL1_ICACHE_SIZE; return 0;}
5684 #endif /* ndef _SC_LEVEL1_ICACHE_SIZE */
5685 #ifdef _SC_LEVEL2_CACHE_ASSOC
5686 if (x == _SC_LEVEL2_CACHE_ASSOC)
5687 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_ASSOC; return 0;}
5688 #endif /* ndef _SC_LEVEL2_CACHE_ASSOC */
5689 #ifdef _SC_LEVEL2_CACHE_LINESIZE
5690 if (x == _SC_LEVEL2_CACHE_LINESIZE)
5691 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_LINESIZE; return 0;}
5692 #endif /* ndef _SC_LEVEL2_CACHE_LINESIZE */
5693 #ifdef _SC_LEVEL2_CACHE_SIZE
5694 if (x == _SC_LEVEL2_CACHE_SIZE)
5695 {*r = Mono_Posix_SysconfName__SC_LEVEL2_CACHE_SIZE; return 0;}
5696 #endif /* ndef _SC_LEVEL2_CACHE_SIZE */
5697 #ifdef _SC_LEVEL3_CACHE_ASSOC
5698 if (x == _SC_LEVEL3_CACHE_ASSOC)
5699 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_ASSOC; return 0;}
5700 #endif /* ndef _SC_LEVEL3_CACHE_ASSOC */
5701 #ifdef _SC_LEVEL3_CACHE_LINESIZE
5702 if (x == _SC_LEVEL3_CACHE_LINESIZE)
5703 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_LINESIZE; return 0;}
5704 #endif /* ndef _SC_LEVEL3_CACHE_LINESIZE */
5705 #ifdef _SC_LEVEL3_CACHE_SIZE
5706 if (x == _SC_LEVEL3_CACHE_SIZE)
5707 {*r = Mono_Posix_SysconfName__SC_LEVEL3_CACHE_SIZE; return 0;}
5708 #endif /* ndef _SC_LEVEL3_CACHE_SIZE */
5709 #ifdef _SC_LEVEL4_CACHE_ASSOC
5710 if (x == _SC_LEVEL4_CACHE_ASSOC)
5711 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_ASSOC; return 0;}
5712 #endif /* ndef _SC_LEVEL4_CACHE_ASSOC */
5713 #ifdef _SC_LEVEL4_CACHE_LINESIZE
5714 if (x == _SC_LEVEL4_CACHE_LINESIZE)
5715 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_LINESIZE; return 0;}
5716 #endif /* ndef _SC_LEVEL4_CACHE_LINESIZE */
5717 #ifdef _SC_LEVEL4_CACHE_SIZE
5718 if (x == _SC_LEVEL4_CACHE_SIZE)
5719 {*r = Mono_Posix_SysconfName__SC_LEVEL4_CACHE_SIZE; return 0;}
5720 #endif /* ndef _SC_LEVEL4_CACHE_SIZE */
5722 if (x == _SC_LINE_MAX)
5723 {*r = Mono_Posix_SysconfName__SC_LINE_MAX; return 0;}
5724 #endif /* ndef _SC_LINE_MAX */
5725 #ifdef _SC_LOGIN_NAME_MAX
5726 if (x == _SC_LOGIN_NAME_MAX)
5727 {*r = Mono_Posix_SysconfName__SC_LOGIN_NAME_MAX; return 0;}
5728 #endif /* ndef _SC_LOGIN_NAME_MAX */
5730 if (x == _SC_LONG_BIT)
5731 {*r = Mono_Posix_SysconfName__SC_LONG_BIT; return 0;}
5732 #endif /* ndef _SC_LONG_BIT */
5733 #ifdef _SC_MAPPED_FILES
5734 if (x == _SC_MAPPED_FILES)
5735 {*r = Mono_Posix_SysconfName__SC_MAPPED_FILES; return 0;}
5736 #endif /* ndef _SC_MAPPED_FILES */
5737 #ifdef _SC_MB_LEN_MAX
5738 if (x == _SC_MB_LEN_MAX)
5739 {*r = Mono_Posix_SysconfName__SC_MB_LEN_MAX; return 0;}
5740 #endif /* ndef _SC_MB_LEN_MAX */
5742 if (x == _SC_MEMLOCK)
5743 {*r = Mono_Posix_SysconfName__SC_MEMLOCK; return 0;}
5744 #endif /* ndef _SC_MEMLOCK */
5745 #ifdef _SC_MEMLOCK_RANGE
5746 if (x == _SC_MEMLOCK_RANGE)
5747 {*r = Mono_Posix_SysconfName__SC_MEMLOCK_RANGE; return 0;}
5748 #endif /* ndef _SC_MEMLOCK_RANGE */
5749 #ifdef _SC_MEMORY_PROTECTION
5750 if (x == _SC_MEMORY_PROTECTION)
5751 {*r = Mono_Posix_SysconfName__SC_MEMORY_PROTECTION; return 0;}
5752 #endif /* ndef _SC_MEMORY_PROTECTION */
5753 #ifdef _SC_MESSAGE_PASSING
5754 if (x == _SC_MESSAGE_PASSING)
5755 {*r = Mono_Posix_SysconfName__SC_MESSAGE_PASSING; return 0;}
5756 #endif /* ndef _SC_MESSAGE_PASSING */
5757 #ifdef _SC_MONOTONIC_CLOCK
5758 if (x == _SC_MONOTONIC_CLOCK)
5759 {*r = Mono_Posix_SysconfName__SC_MONOTONIC_CLOCK; return 0;}
5760 #endif /* ndef _SC_MONOTONIC_CLOCK */
5761 #ifdef _SC_MQ_OPEN_MAX
5762 if (x == _SC_MQ_OPEN_MAX)
5763 {*r = Mono_Posix_SysconfName__SC_MQ_OPEN_MAX; return 0;}
5764 #endif /* ndef _SC_MQ_OPEN_MAX */
5765 #ifdef _SC_MQ_PRIO_MAX
5766 if (x == _SC_MQ_PRIO_MAX)
5767 {*r = Mono_Posix_SysconfName__SC_MQ_PRIO_MAX; return 0;}
5768 #endif /* ndef _SC_MQ_PRIO_MAX */
5769 #ifdef _SC_MULTI_PROCESS
5770 if (x == _SC_MULTI_PROCESS)
5771 {*r = Mono_Posix_SysconfName__SC_MULTI_PROCESS; return 0;}
5772 #endif /* ndef _SC_MULTI_PROCESS */
5773 #ifdef _SC_NETWORKING
5774 if (x == _SC_NETWORKING)
5775 {*r = Mono_Posix_SysconfName__SC_NETWORKING; return 0;}
5776 #endif /* ndef _SC_NETWORKING */
5777 #ifdef _SC_NGROUPS_MAX
5778 if (x == _SC_NGROUPS_MAX)
5779 {*r = Mono_Posix_SysconfName__SC_NGROUPS_MAX; return 0;}
5780 #endif /* ndef _SC_NGROUPS_MAX */
5781 #ifdef _SC_NL_ARGMAX
5782 if (x == _SC_NL_ARGMAX)
5783 {*r = Mono_Posix_SysconfName__SC_NL_ARGMAX; return 0;}
5784 #endif /* ndef _SC_NL_ARGMAX */
5785 #ifdef _SC_NL_LANGMAX
5786 if (x == _SC_NL_LANGMAX)
5787 {*r = Mono_Posix_SysconfName__SC_NL_LANGMAX; return 0;}
5788 #endif /* ndef _SC_NL_LANGMAX */
5789 #ifdef _SC_NL_MSGMAX
5790 if (x == _SC_NL_MSGMAX)
5791 {*r = Mono_Posix_SysconfName__SC_NL_MSGMAX; return 0;}
5792 #endif /* ndef _SC_NL_MSGMAX */
5794 if (x == _SC_NL_NMAX)
5795 {*r = Mono_Posix_SysconfName__SC_NL_NMAX; return 0;}
5796 #endif /* ndef _SC_NL_NMAX */
5797 #ifdef _SC_NL_SETMAX
5798 if (x == _SC_NL_SETMAX)
5799 {*r = Mono_Posix_SysconfName__SC_NL_SETMAX; return 0;}
5800 #endif /* ndef _SC_NL_SETMAX */
5801 #ifdef _SC_NL_TEXTMAX
5802 if (x == _SC_NL_TEXTMAX)
5803 {*r = Mono_Posix_SysconfName__SC_NL_TEXTMAX; return 0;}
5804 #endif /* ndef _SC_NL_TEXTMAX */
5805 #ifdef _SC_NPROCESSORS_CONF
5806 if (x == _SC_NPROCESSORS_CONF)
5807 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_CONF; return 0;}
5808 #endif /* ndef _SC_NPROCESSORS_CONF */
5809 #ifdef _SC_NPROCESSORS_ONLN
5810 if (x == _SC_NPROCESSORS_ONLN)
5811 {*r = Mono_Posix_SysconfName__SC_NPROCESSORS_ONLN; return 0;}
5812 #endif /* ndef _SC_NPROCESSORS_ONLN */
5815 {*r = Mono_Posix_SysconfName__SC_NZERO; return 0;}
5816 #endif /* ndef _SC_NZERO */
5818 if (x == _SC_OPEN_MAX)
5819 {*r = Mono_Posix_SysconfName__SC_OPEN_MAX; return 0;}
5820 #endif /* ndef _SC_OPEN_MAX */
5822 if (x == _SC_PAGESIZE)
5823 {*r = Mono_Posix_SysconfName__SC_PAGESIZE; return 0;}
5824 #endif /* ndef _SC_PAGESIZE */
5826 if (x == _SC_PASS_MAX)
5827 {*r = Mono_Posix_SysconfName__SC_PASS_MAX; return 0;}
5828 #endif /* ndef _SC_PASS_MAX */
5829 #ifdef _SC_PHYS_PAGES
5830 if (x == _SC_PHYS_PAGES)
5831 {*r = Mono_Posix_SysconfName__SC_PHYS_PAGES; return 0;}
5832 #endif /* ndef _SC_PHYS_PAGES */
5835 {*r = Mono_Posix_SysconfName__SC_PII; return 0;}
5836 #endif /* ndef _SC_PII */
5837 #ifdef _SC_PII_INTERNET
5838 if (x == _SC_PII_INTERNET)
5839 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET; return 0;}
5840 #endif /* ndef _SC_PII_INTERNET */
5841 #ifdef _SC_PII_INTERNET_DGRAM
5842 if (x == _SC_PII_INTERNET_DGRAM)
5843 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_DGRAM; return 0;}
5844 #endif /* ndef _SC_PII_INTERNET_DGRAM */
5845 #ifdef _SC_PII_INTERNET_STREAM
5846 if (x == _SC_PII_INTERNET_STREAM)
5847 {*r = Mono_Posix_SysconfName__SC_PII_INTERNET_STREAM; return 0;}
5848 #endif /* ndef _SC_PII_INTERNET_STREAM */
5850 if (x == _SC_PII_OSI)
5851 {*r = Mono_Posix_SysconfName__SC_PII_OSI; return 0;}
5852 #endif /* ndef _SC_PII_OSI */
5853 #ifdef _SC_PII_OSI_CLTS
5854 if (x == _SC_PII_OSI_CLTS)
5855 {*r = Mono_Posix_SysconfName__SC_PII_OSI_CLTS; return 0;}
5856 #endif /* ndef _SC_PII_OSI_CLTS */
5857 #ifdef _SC_PII_OSI_COTS
5858 if (x == _SC_PII_OSI_COTS)
5859 {*r = Mono_Posix_SysconfName__SC_PII_OSI_COTS; return 0;}
5860 #endif /* ndef _SC_PII_OSI_COTS */
5861 #ifdef _SC_PII_OSI_M
5862 if (x == _SC_PII_OSI_M)
5863 {*r = Mono_Posix_SysconfName__SC_PII_OSI_M; return 0;}
5864 #endif /* ndef _SC_PII_OSI_M */
5865 #ifdef _SC_PII_SOCKET
5866 if (x == _SC_PII_SOCKET)
5867 {*r = Mono_Posix_SysconfName__SC_PII_SOCKET; return 0;}
5868 #endif /* ndef _SC_PII_SOCKET */
5870 if (x == _SC_PII_XTI)
5871 {*r = Mono_Posix_SysconfName__SC_PII_XTI; return 0;}
5872 #endif /* ndef _SC_PII_XTI */
5875 {*r = Mono_Posix_SysconfName__SC_PIPE; return 0;}
5876 #endif /* ndef _SC_PIPE */
5879 {*r = Mono_Posix_SysconfName__SC_POLL; return 0;}
5880 #endif /* ndef _SC_POLL */
5881 #ifdef _SC_PRIORITIZED_IO
5882 if (x == _SC_PRIORITIZED_IO)
5883 {*r = Mono_Posix_SysconfName__SC_PRIORITIZED_IO; return 0;}
5884 #endif /* ndef _SC_PRIORITIZED_IO */
5885 #ifdef _SC_PRIORITY_SCHEDULING
5886 if (x == _SC_PRIORITY_SCHEDULING)
5887 {*r = Mono_Posix_SysconfName__SC_PRIORITY_SCHEDULING; return 0;}
5888 #endif /* ndef _SC_PRIORITY_SCHEDULING */
5889 #ifdef _SC_READER_WRITER_LOCKS
5890 if (x == _SC_READER_WRITER_LOCKS)
5891 {*r = Mono_Posix_SysconfName__SC_READER_WRITER_LOCKS; return 0;}
5892 #endif /* ndef _SC_READER_WRITER_LOCKS */
5893 #ifdef _SC_REALTIME_SIGNALS
5894 if (x == _SC_REALTIME_SIGNALS)
5895 {*r = Mono_Posix_SysconfName__SC_REALTIME_SIGNALS; return 0;}
5896 #endif /* ndef _SC_REALTIME_SIGNALS */
5898 if (x == _SC_REGEXP)
5899 {*r = Mono_Posix_SysconfName__SC_REGEXP; return 0;}
5900 #endif /* ndef _SC_REGEXP */
5901 #ifdef _SC_REGEX_VERSION
5902 if (x == _SC_REGEX_VERSION)
5903 {*r = Mono_Posix_SysconfName__SC_REGEX_VERSION; return 0;}
5904 #endif /* ndef _SC_REGEX_VERSION */
5905 #ifdef _SC_RE_DUP_MAX
5906 if (x == _SC_RE_DUP_MAX)
5907 {*r = Mono_Posix_SysconfName__SC_RE_DUP_MAX; return 0;}
5908 #endif /* ndef _SC_RE_DUP_MAX */
5909 #ifdef _SC_RTSIG_MAX
5910 if (x == _SC_RTSIG_MAX)
5911 {*r = Mono_Posix_SysconfName__SC_RTSIG_MAX; return 0;}
5912 #endif /* ndef _SC_RTSIG_MAX */
5913 #ifdef _SC_SAVED_IDS
5914 if (x == _SC_SAVED_IDS)
5915 {*r = Mono_Posix_SysconfName__SC_SAVED_IDS; return 0;}
5916 #endif /* ndef _SC_SAVED_IDS */
5917 #ifdef _SC_SCHAR_MAX
5918 if (x == _SC_SCHAR_MAX)
5919 {*r = Mono_Posix_SysconfName__SC_SCHAR_MAX; return 0;}
5920 #endif /* ndef _SC_SCHAR_MAX */
5921 #ifdef _SC_SCHAR_MIN
5922 if (x == _SC_SCHAR_MIN)
5923 {*r = Mono_Posix_SysconfName__SC_SCHAR_MIN; return 0;}
5924 #endif /* ndef _SC_SCHAR_MIN */
5926 if (x == _SC_SELECT)
5927 {*r = Mono_Posix_SysconfName__SC_SELECT; return 0;}
5928 #endif /* ndef _SC_SELECT */
5929 #ifdef _SC_SEMAPHORES
5930 if (x == _SC_SEMAPHORES)
5931 {*r = Mono_Posix_SysconfName__SC_SEMAPHORES; return 0;}
5932 #endif /* ndef _SC_SEMAPHORES */
5933 #ifdef _SC_SEM_NSEMS_MAX
5934 if (x == _SC_SEM_NSEMS_MAX)
5935 {*r = Mono_Posix_SysconfName__SC_SEM_NSEMS_MAX; return 0;}
5936 #endif /* ndef _SC_SEM_NSEMS_MAX */
5937 #ifdef _SC_SEM_VALUE_MAX
5938 if (x == _SC_SEM_VALUE_MAX)
5939 {*r = Mono_Posix_SysconfName__SC_SEM_VALUE_MAX; return 0;}
5940 #endif /* ndef _SC_SEM_VALUE_MAX */
5941 #ifdef _SC_SHARED_MEMORY_OBJECTS
5942 if (x == _SC_SHARED_MEMORY_OBJECTS)
5943 {*r = Mono_Posix_SysconfName__SC_SHARED_MEMORY_OBJECTS; return 0;}
5944 #endif /* ndef _SC_SHARED_MEMORY_OBJECTS */
5947 {*r = Mono_Posix_SysconfName__SC_SHELL; return 0;}
5948 #endif /* ndef _SC_SHELL */
5950 if (x == _SC_SHRT_MAX)
5951 {*r = Mono_Posix_SysconfName__SC_SHRT_MAX; return 0;}
5952 #endif /* ndef _SC_SHRT_MAX */
5954 if (x == _SC_SHRT_MIN)
5955 {*r = Mono_Posix_SysconfName__SC_SHRT_MIN; return 0;}
5956 #endif /* ndef _SC_SHRT_MIN */
5958 if (x == _SC_SIGNALS)
5959 {*r = Mono_Posix_SysconfName__SC_SIGNALS; return 0;}
5960 #endif /* ndef _SC_SIGNALS */
5961 #ifdef _SC_SIGQUEUE_MAX
5962 if (x == _SC_SIGQUEUE_MAX)
5963 {*r = Mono_Posix_SysconfName__SC_SIGQUEUE_MAX; return 0;}
5964 #endif /* ndef _SC_SIGQUEUE_MAX */
5965 #ifdef _SC_SINGLE_PROCESS
5966 if (x == _SC_SINGLE_PROCESS)
5967 {*r = Mono_Posix_SysconfName__SC_SINGLE_PROCESS; return 0;}
5968 #endif /* ndef _SC_SINGLE_PROCESS */
5971 {*r = Mono_Posix_SysconfName__SC_SPAWN; return 0;}
5972 #endif /* ndef _SC_SPAWN */
5973 #ifdef _SC_SPIN_LOCKS
5974 if (x == _SC_SPIN_LOCKS)
5975 {*r = Mono_Posix_SysconfName__SC_SPIN_LOCKS; return 0;}
5976 #endif /* ndef _SC_SPIN_LOCKS */
5977 #ifdef _SC_SPORADIC_SERVER
5978 if (x == _SC_SPORADIC_SERVER)
5979 {*r = Mono_Posix_SysconfName__SC_SPORADIC_SERVER; return 0;}
5980 #endif /* ndef _SC_SPORADIC_SERVER */
5981 #ifdef _SC_SSIZE_MAX
5982 if (x == _SC_SSIZE_MAX)
5983 {*r = Mono_Posix_SysconfName__SC_SSIZE_MAX; return 0;}
5984 #endif /* ndef _SC_SSIZE_MAX */
5986 if (x == _SC_STREAMS)
5987 {*r = Mono_Posix_SysconfName__SC_STREAMS; return 0;}
5988 #endif /* ndef _SC_STREAMS */
5989 #ifdef _SC_STREAM_MAX
5990 if (x == _SC_STREAM_MAX)
5991 {*r = Mono_Posix_SysconfName__SC_STREAM_MAX; return 0;}
5992 #endif /* ndef _SC_STREAM_MAX */
5993 #ifdef _SC_SYMLOOP_MAX
5994 if (x == _SC_SYMLOOP_MAX)
5995 {*r = Mono_Posix_SysconfName__SC_SYMLOOP_MAX; return 0;}
5996 #endif /* ndef _SC_SYMLOOP_MAX */
5997 #ifdef _SC_SYNCHRONIZED_IO
5998 if (x == _SC_SYNCHRONIZED_IO)
5999 {*r = Mono_Posix_SysconfName__SC_SYNCHRONIZED_IO; return 0;}
6000 #endif /* ndef _SC_SYNCHRONIZED_IO */
6001 #ifdef _SC_SYSTEM_DATABASE
6002 if (x == _SC_SYSTEM_DATABASE)
6003 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE; return 0;}
6004 #endif /* ndef _SC_SYSTEM_DATABASE */
6005 #ifdef _SC_SYSTEM_DATABASE_R
6006 if (x == _SC_SYSTEM_DATABASE_R)
6007 {*r = Mono_Posix_SysconfName__SC_SYSTEM_DATABASE_R; return 0;}
6008 #endif /* ndef _SC_SYSTEM_DATABASE_R */
6010 if (x == _SC_THREADS)
6011 {*r = Mono_Posix_SysconfName__SC_THREADS; return 0;}
6012 #endif /* ndef _SC_THREADS */
6013 #ifdef _SC_THREAD_ATTR_STACKADDR
6014 if (x == _SC_THREAD_ATTR_STACKADDR)
6015 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKADDR; return 0;}
6016 #endif /* ndef _SC_THREAD_ATTR_STACKADDR */
6017 #ifdef _SC_THREAD_ATTR_STACKSIZE
6018 if (x == _SC_THREAD_ATTR_STACKSIZE)
6019 {*r = Mono_Posix_SysconfName__SC_THREAD_ATTR_STACKSIZE; return 0;}
6020 #endif /* ndef _SC_THREAD_ATTR_STACKSIZE */
6021 #ifdef _SC_THREAD_CPUTIME
6022 if (x == _SC_THREAD_CPUTIME)
6023 {*r = Mono_Posix_SysconfName__SC_THREAD_CPUTIME; return 0;}
6024 #endif /* ndef _SC_THREAD_CPUTIME */
6025 #ifdef _SC_THREAD_DESTRUCTOR_ITERATIONS
6026 if (x == _SC_THREAD_DESTRUCTOR_ITERATIONS)
6027 {*r = Mono_Posix_SysconfName__SC_THREAD_DESTRUCTOR_ITERATIONS; return 0;}
6028 #endif /* ndef _SC_THREAD_DESTRUCTOR_ITERATIONS */
6029 #ifdef _SC_THREAD_KEYS_MAX
6030 if (x == _SC_THREAD_KEYS_MAX)
6031 {*r = Mono_Posix_SysconfName__SC_THREAD_KEYS_MAX; return 0;}
6032 #endif /* ndef _SC_THREAD_KEYS_MAX */
6033 #ifdef _SC_THREAD_PRIORITY_SCHEDULING
6034 if (x == _SC_THREAD_PRIORITY_SCHEDULING)
6035 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIORITY_SCHEDULING; return 0;}
6036 #endif /* ndef _SC_THREAD_PRIORITY_SCHEDULING */
6037 #ifdef _SC_THREAD_PRIO_INHERIT
6038 if (x == _SC_THREAD_PRIO_INHERIT)
6039 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_INHERIT; return 0;}
6040 #endif /* ndef _SC_THREAD_PRIO_INHERIT */
6041 #ifdef _SC_THREAD_PRIO_PROTECT
6042 if (x == _SC_THREAD_PRIO_PROTECT)
6043 {*r = Mono_Posix_SysconfName__SC_THREAD_PRIO_PROTECT; return 0;}
6044 #endif /* ndef _SC_THREAD_PRIO_PROTECT */
6045 #ifdef _SC_THREAD_PROCESS_SHARED
6046 if (x == _SC_THREAD_PROCESS_SHARED)
6047 {*r = Mono_Posix_SysconfName__SC_THREAD_PROCESS_SHARED; return 0;}
6048 #endif /* ndef _SC_THREAD_PROCESS_SHARED */
6049 #ifdef _SC_THREAD_SAFE_FUNCTIONS
6050 if (x == _SC_THREAD_SAFE_FUNCTIONS)
6051 {*r = Mono_Posix_SysconfName__SC_THREAD_SAFE_FUNCTIONS; return 0;}
6052 #endif /* ndef _SC_THREAD_SAFE_FUNCTIONS */
6053 #ifdef _SC_THREAD_SPORADIC_SERVER
6054 if (x == _SC_THREAD_SPORADIC_SERVER)
6055 {*r = Mono_Posix_SysconfName__SC_THREAD_SPORADIC_SERVER; return 0;}
6056 #endif /* ndef _SC_THREAD_SPORADIC_SERVER */
6057 #ifdef _SC_THREAD_STACK_MIN
6058 if (x == _SC_THREAD_STACK_MIN)
6059 {*r = Mono_Posix_SysconfName__SC_THREAD_STACK_MIN; return 0;}
6060 #endif /* ndef _SC_THREAD_STACK_MIN */
6061 #ifdef _SC_THREAD_THREADS_MAX
6062 if (x == _SC_THREAD_THREADS_MAX)
6063 {*r = Mono_Posix_SysconfName__SC_THREAD_THREADS_MAX; return 0;}
6064 #endif /* ndef _SC_THREAD_THREADS_MAX */
6066 if (x == _SC_TIMEOUTS)
6067 {*r = Mono_Posix_SysconfName__SC_TIMEOUTS; return 0;}
6068 #endif /* ndef _SC_TIMEOUTS */
6070 if (x == _SC_TIMERS)
6071 {*r = Mono_Posix_SysconfName__SC_TIMERS; return 0;}
6072 #endif /* ndef _SC_TIMERS */
6073 #ifdef _SC_TIMER_MAX
6074 if (x == _SC_TIMER_MAX)
6075 {*r = Mono_Posix_SysconfName__SC_TIMER_MAX; return 0;}
6076 #endif /* ndef _SC_TIMER_MAX */
6079 {*r = Mono_Posix_SysconfName__SC_TRACE; return 0;}
6080 #endif /* ndef _SC_TRACE */
6081 #ifdef _SC_TRACE_EVENT_FILTER
6082 if (x == _SC_TRACE_EVENT_FILTER)
6083 {*r = Mono_Posix_SysconfName__SC_TRACE_EVENT_FILTER; return 0;}
6084 #endif /* ndef _SC_TRACE_EVENT_FILTER */
6085 #ifdef _SC_TRACE_INHERIT
6086 if (x == _SC_TRACE_INHERIT)
6087 {*r = Mono_Posix_SysconfName__SC_TRACE_INHERIT; return 0;}
6088 #endif /* ndef _SC_TRACE_INHERIT */
6089 #ifdef _SC_TRACE_LOG
6090 if (x == _SC_TRACE_LOG)
6091 {*r = Mono_Posix_SysconfName__SC_TRACE_LOG; return 0;}
6092 #endif /* ndef _SC_TRACE_LOG */
6093 #ifdef _SC_TTY_NAME_MAX
6094 if (x == _SC_TTY_NAME_MAX)
6095 {*r = Mono_Posix_SysconfName__SC_TTY_NAME_MAX; return 0;}
6096 #endif /* ndef _SC_TTY_NAME_MAX */
6097 #ifdef _SC_TYPED_MEMORY_OBJECTS
6098 if (x == _SC_TYPED_MEMORY_OBJECTS)
6099 {*r = Mono_Posix_SysconfName__SC_TYPED_MEMORY_OBJECTS; return 0;}
6100 #endif /* ndef _SC_TYPED_MEMORY_OBJECTS */
6101 #ifdef _SC_TZNAME_MAX
6102 if (x == _SC_TZNAME_MAX)
6103 {*r = Mono_Posix_SysconfName__SC_TZNAME_MAX; return 0;}
6104 #endif /* ndef _SC_TZNAME_MAX */
6105 #ifdef _SC_T_IOV_MAX
6106 if (x == _SC_T_IOV_MAX)
6107 {*r = Mono_Posix_SysconfName__SC_T_IOV_MAX; return 0;}
6108 #endif /* ndef _SC_T_IOV_MAX */
6109 #ifdef _SC_UCHAR_MAX
6110 if (x == _SC_UCHAR_MAX)
6111 {*r = Mono_Posix_SysconfName__SC_UCHAR_MAX; return 0;}
6112 #endif /* ndef _SC_UCHAR_MAX */
6114 if (x == _SC_UINT_MAX)
6115 {*r = Mono_Posix_SysconfName__SC_UINT_MAX; return 0;}
6116 #endif /* ndef _SC_UINT_MAX */
6117 #ifdef _SC_UIO_MAXIOV
6118 if (x == _SC_UIO_MAXIOV)
6119 {*r = Mono_Posix_SysconfName__SC_UIO_MAXIOV; return 0;}
6120 #endif /* ndef _SC_UIO_MAXIOV */
6121 #ifdef _SC_ULONG_MAX
6122 if (x == _SC_ULONG_MAX)
6123 {*r = Mono_Posix_SysconfName__SC_ULONG_MAX; return 0;}
6124 #endif /* ndef _SC_ULONG_MAX */
6125 #ifdef _SC_USER_GROUPS
6126 if (x == _SC_USER_GROUPS)
6127 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS; return 0;}
6128 #endif /* ndef _SC_USER_GROUPS */
6129 #ifdef _SC_USER_GROUPS_R
6130 if (x == _SC_USER_GROUPS_R)
6131 {*r = Mono_Posix_SysconfName__SC_USER_GROUPS_R; return 0;}
6132 #endif /* ndef _SC_USER_GROUPS_R */
6133 #ifdef _SC_USHRT_MAX
6134 if (x == _SC_USHRT_MAX)
6135 {*r = Mono_Posix_SysconfName__SC_USHRT_MAX; return 0;}
6136 #endif /* ndef _SC_USHRT_MAX */
6137 #ifdef _SC_V6_ILP32_OFF32
6138 if (x == _SC_V6_ILP32_OFF32)
6139 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFF32; return 0;}
6140 #endif /* ndef _SC_V6_ILP32_OFF32 */
6141 #ifdef _SC_V6_ILP32_OFFBIG
6142 if (x == _SC_V6_ILP32_OFFBIG)
6143 {*r = Mono_Posix_SysconfName__SC_V6_ILP32_OFFBIG; return 0;}
6144 #endif /* ndef _SC_V6_ILP32_OFFBIG */
6145 #ifdef _SC_V6_LP64_OFF64
6146 if (x == _SC_V6_LP64_OFF64)
6147 {*r = Mono_Posix_SysconfName__SC_V6_LP64_OFF64; return 0;}
6148 #endif /* ndef _SC_V6_LP64_OFF64 */
6149 #ifdef _SC_V6_LPBIG_OFFBIG
6150 if (x == _SC_V6_LPBIG_OFFBIG)
6151 {*r = Mono_Posix_SysconfName__SC_V6_LPBIG_OFFBIG; return 0;}
6152 #endif /* ndef _SC_V6_LPBIG_OFFBIG */
6154 if (x == _SC_VERSION)
6155 {*r = Mono_Posix_SysconfName__SC_VERSION; return 0;}
6156 #endif /* ndef _SC_VERSION */
6158 if (x == _SC_WORD_BIT)
6159 {*r = Mono_Posix_SysconfName__SC_WORD_BIT; return 0;}
6160 #endif /* ndef _SC_WORD_BIT */
6161 #ifdef _SC_XBS5_ILP32_OFF32
6162 if (x == _SC_XBS5_ILP32_OFF32)
6163 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFF32; return 0;}
6164 #endif /* ndef _SC_XBS5_ILP32_OFF32 */
6165 #ifdef _SC_XBS5_ILP32_OFFBIG
6166 if (x == _SC_XBS5_ILP32_OFFBIG)
6167 {*r = Mono_Posix_SysconfName__SC_XBS5_ILP32_OFFBIG; return 0;}
6168 #endif /* ndef _SC_XBS5_ILP32_OFFBIG */
6169 #ifdef _SC_XBS5_LP64_OFF64
6170 if (x == _SC_XBS5_LP64_OFF64)
6171 {*r = Mono_Posix_SysconfName__SC_XBS5_LP64_OFF64; return 0;}
6172 #endif /* ndef _SC_XBS5_LP64_OFF64 */
6173 #ifdef _SC_XBS5_LPBIG_OFFBIG
6174 if (x == _SC_XBS5_LPBIG_OFFBIG)
6175 {*r = Mono_Posix_SysconfName__SC_XBS5_LPBIG_OFFBIG; return 0;}
6176 #endif /* ndef _SC_XBS5_LPBIG_OFFBIG */
6177 #ifdef _SC_XOPEN_CRYPT
6178 if (x == _SC_XOPEN_CRYPT)
6179 {*r = Mono_Posix_SysconfName__SC_XOPEN_CRYPT; return 0;}
6180 #endif /* ndef _SC_XOPEN_CRYPT */
6181 #ifdef _SC_XOPEN_ENH_I18N
6182 if (x == _SC_XOPEN_ENH_I18N)
6183 {*r = Mono_Posix_SysconfName__SC_XOPEN_ENH_I18N; return 0;}
6184 #endif /* ndef _SC_XOPEN_ENH_I18N */
6185 #ifdef _SC_XOPEN_LEGACY
6186 if (x == _SC_XOPEN_LEGACY)
6187 {*r = Mono_Posix_SysconfName__SC_XOPEN_LEGACY; return 0;}
6188 #endif /* ndef _SC_XOPEN_LEGACY */
6189 #ifdef _SC_XOPEN_REALTIME
6190 if (x == _SC_XOPEN_REALTIME)
6191 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME; return 0;}
6192 #endif /* ndef _SC_XOPEN_REALTIME */
6193 #ifdef _SC_XOPEN_REALTIME_THREADS
6194 if (x == _SC_XOPEN_REALTIME_THREADS)
6195 {*r = Mono_Posix_SysconfName__SC_XOPEN_REALTIME_THREADS; return 0;}
6196 #endif /* ndef _SC_XOPEN_REALTIME_THREADS */
6197 #ifdef _SC_XOPEN_SHM
6198 if (x == _SC_XOPEN_SHM)
6199 {*r = Mono_Posix_SysconfName__SC_XOPEN_SHM; return 0;}
6200 #endif /* ndef _SC_XOPEN_SHM */
6201 #ifdef _SC_XOPEN_UNIX
6202 if (x == _SC_XOPEN_UNIX)
6203 {*r = Mono_Posix_SysconfName__SC_XOPEN_UNIX; return 0;}
6204 #endif /* ndef _SC_XOPEN_UNIX */
6205 #ifdef _SC_XOPEN_VERSION
6206 if (x == _SC_XOPEN_VERSION)
6207 {*r = Mono_Posix_SysconfName__SC_XOPEN_VERSION; return 0;}
6208 #endif /* ndef _SC_XOPEN_VERSION */
6209 #ifdef _SC_XOPEN_XCU_VERSION
6210 if (x == _SC_XOPEN_XCU_VERSION)
6211 {*r = Mono_Posix_SysconfName__SC_XOPEN_XCU_VERSION; return 0;}
6212 #endif /* ndef _SC_XOPEN_XCU_VERSION */
6213 #ifdef _SC_XOPEN_XPG2
6214 if (x == _SC_XOPEN_XPG2)
6215 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG2; return 0;}
6216 #endif /* ndef _SC_XOPEN_XPG2 */
6217 #ifdef _SC_XOPEN_XPG3
6218 if (x == _SC_XOPEN_XPG3)
6219 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG3; return 0;}
6220 #endif /* ndef _SC_XOPEN_XPG3 */
6221 #ifdef _SC_XOPEN_XPG4
6222 if (x == _SC_XOPEN_XPG4)
6223 {*r = Mono_Posix_SysconfName__SC_XOPEN_XPG4; return 0;}
6224 #endif /* ndef _SC_XOPEN_XPG4 */
6225 errno = EINVAL; return -1;
6228 int Mono_Posix_FromSyslogFacility (int x, int *r)
6231 if (x == Mono_Posix_SyslogFacility_LOG_AUTH)
6233 {*r = LOG_AUTH; return 0;}
6234 #else /* def LOG_AUTH */
6235 {errno = EINVAL; return -1;}
6236 #endif /* ndef LOG_AUTH */
6237 if (x == Mono_Posix_SyslogFacility_LOG_AUTHPRIV)
6239 {*r = LOG_AUTHPRIV; return 0;}
6240 #else /* def LOG_AUTHPRIV */
6241 {errno = EINVAL; return -1;}
6242 #endif /* ndef LOG_AUTHPRIV */
6243 if (x == Mono_Posix_SyslogFacility_LOG_CRON)
6245 {*r = LOG_CRON; return 0;}
6246 #else /* def LOG_CRON */
6247 {errno = EINVAL; return -1;}
6248 #endif /* ndef LOG_CRON */
6249 if (x == Mono_Posix_SyslogFacility_LOG_DAEMON)
6251 {*r = LOG_DAEMON; return 0;}
6252 #else /* def LOG_DAEMON */
6253 {errno = EINVAL; return -1;}
6254 #endif /* ndef LOG_DAEMON */
6255 if (x == Mono_Posix_SyslogFacility_LOG_FTP)
6257 {*r = LOG_FTP; return 0;}
6258 #else /* def LOG_FTP */
6259 {errno = EINVAL; return -1;}
6260 #endif /* ndef LOG_FTP */
6261 if (x == Mono_Posix_SyslogFacility_LOG_KERN)
6263 {*r = LOG_KERN; return 0;}
6264 #else /* def LOG_KERN */
6265 {errno = EINVAL; return -1;}
6266 #endif /* ndef LOG_KERN */
6267 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL0)
6269 {*r = LOG_LOCAL0; return 0;}
6270 #else /* def LOG_LOCAL0 */
6271 {errno = EINVAL; return -1;}
6272 #endif /* ndef LOG_LOCAL0 */
6273 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL1)
6275 {*r = LOG_LOCAL1; return 0;}
6276 #else /* def LOG_LOCAL1 */
6277 {errno = EINVAL; return -1;}
6278 #endif /* ndef LOG_LOCAL1 */
6279 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL2)
6281 {*r = LOG_LOCAL2; return 0;}
6282 #else /* def LOG_LOCAL2 */
6283 {errno = EINVAL; return -1;}
6284 #endif /* ndef LOG_LOCAL2 */
6285 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL3)
6287 {*r = LOG_LOCAL3; return 0;}
6288 #else /* def LOG_LOCAL3 */
6289 {errno = EINVAL; return -1;}
6290 #endif /* ndef LOG_LOCAL3 */
6291 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL4)
6293 {*r = LOG_LOCAL4; return 0;}
6294 #else /* def LOG_LOCAL4 */
6295 {errno = EINVAL; return -1;}
6296 #endif /* ndef LOG_LOCAL4 */
6297 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL5)
6299 {*r = LOG_LOCAL5; return 0;}
6300 #else /* def LOG_LOCAL5 */
6301 {errno = EINVAL; return -1;}
6302 #endif /* ndef LOG_LOCAL5 */
6303 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL6)
6305 {*r = LOG_LOCAL6; return 0;}
6306 #else /* def LOG_LOCAL6 */
6307 {errno = EINVAL; return -1;}
6308 #endif /* ndef LOG_LOCAL6 */
6309 if (x == Mono_Posix_SyslogFacility_LOG_LOCAL7)
6311 {*r = LOG_LOCAL7; return 0;}
6312 #else /* def LOG_LOCAL7 */
6313 {errno = EINVAL; return -1;}
6314 #endif /* ndef LOG_LOCAL7 */
6315 if (x == Mono_Posix_SyslogFacility_LOG_LPR)
6317 {*r = LOG_LPR; return 0;}
6318 #else /* def LOG_LPR */
6319 {errno = EINVAL; return -1;}
6320 #endif /* ndef LOG_LPR */
6321 if (x == Mono_Posix_SyslogFacility_LOG_MAIL)
6323 {*r = LOG_MAIL; return 0;}
6324 #else /* def LOG_MAIL */
6325 {errno = EINVAL; return -1;}
6326 #endif /* ndef LOG_MAIL */
6327 if (x == Mono_Posix_SyslogFacility_LOG_NEWS)
6329 {*r = LOG_NEWS; return 0;}
6330 #else /* def LOG_NEWS */
6331 {errno = EINVAL; return -1;}
6332 #endif /* ndef LOG_NEWS */
6333 if (x == Mono_Posix_SyslogFacility_LOG_SYSLOG)
6335 {*r = LOG_SYSLOG; return 0;}
6336 #else /* def LOG_SYSLOG */
6337 {errno = EINVAL; return -1;}
6338 #endif /* ndef LOG_SYSLOG */
6339 if (x == Mono_Posix_SyslogFacility_LOG_USER)
6341 {*r = LOG_USER; return 0;}
6342 #else /* def LOG_USER */
6343 {errno = EINVAL; return -1;}
6344 #endif /* ndef LOG_USER */
6345 if (x == Mono_Posix_SyslogFacility_LOG_UUCP)
6347 {*r = LOG_UUCP; return 0;}
6348 #else /* def LOG_UUCP */
6349 {errno = EINVAL; return -1;}
6350 #endif /* ndef LOG_UUCP */
6353 errno = EINVAL; return -1;
6356 int Mono_Posix_ToSyslogFacility (int x, int *r)
6363 {*r = Mono_Posix_SyslogFacility_LOG_AUTH; return 0;}
6364 #endif /* ndef LOG_AUTH */
6366 if (x == LOG_AUTHPRIV)
6367 {*r = Mono_Posix_SyslogFacility_LOG_AUTHPRIV; return 0;}
6368 #endif /* ndef LOG_AUTHPRIV */
6371 {*r = Mono_Posix_SyslogFacility_LOG_CRON; return 0;}
6372 #endif /* ndef LOG_CRON */
6374 if (x == LOG_DAEMON)
6375 {*r = Mono_Posix_SyslogFacility_LOG_DAEMON; return 0;}
6376 #endif /* ndef LOG_DAEMON */
6379 {*r = Mono_Posix_SyslogFacility_LOG_FTP; return 0;}
6380 #endif /* ndef LOG_FTP */
6383 {*r = Mono_Posix_SyslogFacility_LOG_KERN; return 0;}
6384 #endif /* ndef LOG_KERN */
6386 if (x == LOG_LOCAL0)
6387 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL0; return 0;}
6388 #endif /* ndef LOG_LOCAL0 */
6390 if (x == LOG_LOCAL1)
6391 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL1; return 0;}
6392 #endif /* ndef LOG_LOCAL1 */
6394 if (x == LOG_LOCAL2)
6395 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL2; return 0;}
6396 #endif /* ndef LOG_LOCAL2 */
6398 if (x == LOG_LOCAL3)
6399 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL3; return 0;}
6400 #endif /* ndef LOG_LOCAL3 */
6402 if (x == LOG_LOCAL4)
6403 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL4; return 0;}
6404 #endif /* ndef LOG_LOCAL4 */
6406 if (x == LOG_LOCAL5)
6407 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL5; return 0;}
6408 #endif /* ndef LOG_LOCAL5 */
6410 if (x == LOG_LOCAL6)
6411 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL6; return 0;}
6412 #endif /* ndef LOG_LOCAL6 */
6414 if (x == LOG_LOCAL7)
6415 {*r = Mono_Posix_SyslogFacility_LOG_LOCAL7; return 0;}
6416 #endif /* ndef LOG_LOCAL7 */
6419 {*r = Mono_Posix_SyslogFacility_LOG_LPR; return 0;}
6420 #endif /* ndef LOG_LPR */
6423 {*r = Mono_Posix_SyslogFacility_LOG_MAIL; return 0;}
6424 #endif /* ndef LOG_MAIL */
6427 {*r = Mono_Posix_SyslogFacility_LOG_NEWS; return 0;}
6428 #endif /* ndef LOG_NEWS */
6430 if (x == LOG_SYSLOG)
6431 {*r = Mono_Posix_SyslogFacility_LOG_SYSLOG; return 0;}
6432 #endif /* ndef LOG_SYSLOG */
6435 {*r = Mono_Posix_SyslogFacility_LOG_USER; return 0;}
6436 #endif /* ndef LOG_USER */
6439 {*r = Mono_Posix_SyslogFacility_LOG_UUCP; return 0;}
6440 #endif /* ndef LOG_UUCP */
6441 errno = EINVAL; return -1;
6444 int Mono_Posix_FromSyslogLevel (int x, int *r)
6447 if (x == Mono_Posix_SyslogLevel_LOG_ALERT)
6449 {*r = LOG_ALERT; return 0;}
6450 #else /* def LOG_ALERT */
6451 {errno = EINVAL; return -1;}
6452 #endif /* ndef LOG_ALERT */
6453 if (x == Mono_Posix_SyslogLevel_LOG_CRIT)
6455 {*r = LOG_CRIT; return 0;}
6456 #else /* def LOG_CRIT */
6457 {errno = EINVAL; return -1;}
6458 #endif /* ndef LOG_CRIT */
6459 if (x == Mono_Posix_SyslogLevel_LOG_DEBUG)
6461 {*r = LOG_DEBUG; return 0;}
6462 #else /* def LOG_DEBUG */
6463 {errno = EINVAL; return -1;}
6464 #endif /* ndef LOG_DEBUG */
6465 if (x == Mono_Posix_SyslogLevel_LOG_EMERG)
6467 {*r = LOG_EMERG; return 0;}
6468 #else /* def LOG_EMERG */
6469 {errno = EINVAL; return -1;}
6470 #endif /* ndef LOG_EMERG */
6471 if (x == Mono_Posix_SyslogLevel_LOG_ERR)
6473 {*r = LOG_ERR; return 0;}
6474 #else /* def LOG_ERR */
6475 {errno = EINVAL; return -1;}
6476 #endif /* ndef LOG_ERR */
6477 if (x == Mono_Posix_SyslogLevel_LOG_INFO)
6479 {*r = LOG_INFO; return 0;}
6480 #else /* def LOG_INFO */
6481 {errno = EINVAL; return -1;}
6482 #endif /* ndef LOG_INFO */
6483 if (x == Mono_Posix_SyslogLevel_LOG_NOTICE)
6485 {*r = LOG_NOTICE; return 0;}
6486 #else /* def LOG_NOTICE */
6487 {errno = EINVAL; return -1;}
6488 #endif /* ndef LOG_NOTICE */
6489 if (x == Mono_Posix_SyslogLevel_LOG_WARNING)
6491 {*r = LOG_WARNING; return 0;}
6492 #else /* def LOG_WARNING */
6493 {errno = EINVAL; return -1;}
6494 #endif /* ndef LOG_WARNING */
6497 errno = EINVAL; return -1;
6500 int Mono_Posix_ToSyslogLevel (int x, int *r)
6507 {*r = Mono_Posix_SyslogLevel_LOG_ALERT; return 0;}
6508 #endif /* ndef LOG_ALERT */
6511 {*r = Mono_Posix_SyslogLevel_LOG_CRIT; return 0;}
6512 #endif /* ndef LOG_CRIT */
6515 {*r = Mono_Posix_SyslogLevel_LOG_DEBUG; return 0;}
6516 #endif /* ndef LOG_DEBUG */
6519 {*r = Mono_Posix_SyslogLevel_LOG_EMERG; return 0;}
6520 #endif /* ndef LOG_EMERG */
6523 {*r = Mono_Posix_SyslogLevel_LOG_ERR; return 0;}
6524 #endif /* ndef LOG_ERR */
6527 {*r = Mono_Posix_SyslogLevel_LOG_INFO; return 0;}
6528 #endif /* ndef LOG_INFO */
6530 if (x == LOG_NOTICE)
6531 {*r = Mono_Posix_SyslogLevel_LOG_NOTICE; return 0;}
6532 #endif /* ndef LOG_NOTICE */
6534 if (x == LOG_WARNING)
6535 {*r = Mono_Posix_SyslogLevel_LOG_WARNING; return 0;}
6536 #endif /* ndef LOG_WARNING */
6537 errno = EINVAL; return -1;
6540 int Mono_Posix_FromSyslogOptions (int x, int *r)
6543 if ((x & Mono_Posix_SyslogOptions_LOG_CONS) == Mono_Posix_SyslogOptions_LOG_CONS)
6546 #else /* def LOG_CONS */
6547 {errno = EINVAL; return -1;}
6548 #endif /* ndef LOG_CONS */
6549 if ((x & Mono_Posix_SyslogOptions_LOG_NDELAY) == Mono_Posix_SyslogOptions_LOG_NDELAY)
6552 #else /* def LOG_NDELAY */
6553 {errno = EINVAL; return -1;}
6554 #endif /* ndef LOG_NDELAY */
6555 if ((x & Mono_Posix_SyslogOptions_LOG_NOWAIT) == Mono_Posix_SyslogOptions_LOG_NOWAIT)
6558 #else /* def LOG_NOWAIT */
6559 {errno = EINVAL; return -1;}
6560 #endif /* ndef LOG_NOWAIT */
6561 if ((x & Mono_Posix_SyslogOptions_LOG_ODELAY) == Mono_Posix_SyslogOptions_LOG_ODELAY)
6564 #else /* def LOG_ODELAY */
6565 {errno = EINVAL; return -1;}
6566 #endif /* ndef LOG_ODELAY */
6567 if ((x & Mono_Posix_SyslogOptions_LOG_PERROR) == Mono_Posix_SyslogOptions_LOG_PERROR)
6570 #else /* def LOG_PERROR */
6571 {errno = EINVAL; return -1;}
6572 #endif /* ndef LOG_PERROR */
6573 if ((x & Mono_Posix_SyslogOptions_LOG_PID) == Mono_Posix_SyslogOptions_LOG_PID)
6576 #else /* def LOG_PID */
6577 {errno = EINVAL; return -1;}
6578 #endif /* ndef LOG_PID */
6584 int Mono_Posix_ToSyslogOptions (int x, int *r)
6590 if ((x & LOG_CONS) == LOG_CONS)
6591 *r |= Mono_Posix_SyslogOptions_LOG_CONS;
6592 #endif /* ndef LOG_CONS */
6594 if ((x & LOG_NDELAY) == LOG_NDELAY)
6595 *r |= Mono_Posix_SyslogOptions_LOG_NDELAY;
6596 #endif /* ndef LOG_NDELAY */
6598 if ((x & LOG_NOWAIT) == LOG_NOWAIT)
6599 *r |= Mono_Posix_SyslogOptions_LOG_NOWAIT;
6600 #endif /* ndef LOG_NOWAIT */
6602 if ((x & LOG_ODELAY) == LOG_ODELAY)
6603 *r |= Mono_Posix_SyslogOptions_LOG_ODELAY;
6604 #endif /* ndef LOG_ODELAY */
6606 if ((x & LOG_PERROR) == LOG_PERROR)
6607 *r |= Mono_Posix_SyslogOptions_LOG_PERROR;
6608 #endif /* ndef LOG_PERROR */
6610 if ((x & LOG_PID) == LOG_PID)
6611 *r |= Mono_Posix_SyslogOptions_LOG_PID;
6612 #endif /* ndef LOG_PID */
6617 Mono_Posix_FromTimeval (struct Mono_Posix_Timeval *from, struct timeval *to)
6619 _cnm_return_val_if_overflow (time_t, from->tv_sec, -1);
6620 _cnm_return_val_if_overflow (suseconds_t, from->tv_usec, -1);
6622 memset (to, 0, sizeof(*to));
6624 to->tv_sec = from->tv_sec;
6625 to->tv_usec = from->tv_usec;
6632 Mono_Posix_ToTimeval (struct timeval *from, struct Mono_Posix_Timeval *to)
6634 _cnm_return_val_if_overflow (gint64, from->tv_sec, -1);
6635 _cnm_return_val_if_overflow (gint64, from->tv_usec, -1);
6637 memset (to, 0, sizeof(*to));
6639 to->tv_sec = from->tv_sec;
6640 to->tv_usec = from->tv_usec;
6647 Mono_Posix_FromTimezone (struct Mono_Posix_Timezone *from, struct timezone *to)
6649 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6650 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6652 memset (to, 0, sizeof(*to));
6654 to->tz_minuteswest = from->tz_minuteswest;
6655 to->tz_dsttime = from->tz_dsttime;
6662 Mono_Posix_ToTimezone (struct timezone *from, struct Mono_Posix_Timezone *to)
6664 _cnm_return_val_if_overflow (int, from->tz_minuteswest, -1);
6665 _cnm_return_val_if_overflow (int, from->tz_dsttime, -1);
6667 memset (to, 0, sizeof(*to));
6669 to->tz_minuteswest = from->tz_minuteswest;
6670 to->tz_dsttime = from->tz_dsttime;
6676 int Mono_Posix_FromWaitOptions (int x, int *r)
6679 if ((x & Mono_Posix_WaitOptions_WNOHANG) == Mono_Posix_WaitOptions_WNOHANG)
6682 #else /* def WNOHANG */
6683 {errno = EINVAL; return -1;}
6684 #endif /* ndef WNOHANG */
6685 if ((x & Mono_Posix_WaitOptions_WUNTRACED) == Mono_Posix_WaitOptions_WUNTRACED)
6688 #else /* def WUNTRACED */
6689 {errno = EINVAL; return -1;}
6690 #endif /* ndef WUNTRACED */
6696 int Mono_Posix_ToWaitOptions (int x, int *r)
6702 if ((x & WNOHANG) == WNOHANG)
6703 *r |= Mono_Posix_WaitOptions_WNOHANG;
6704 #endif /* ndef WNOHANG */
6706 if ((x & WUNTRACED) == WUNTRACED)
6707 *r |= Mono_Posix_WaitOptions_WUNTRACED;
6708 #endif /* ndef WUNTRACED */
6712 int Mono_Posix_FromXattrFlags (int x, int *r)
6715 if ((x & Mono_Posix_XattrFlags_XATTR_AUTO) == Mono_Posix_XattrFlags_XATTR_AUTO)
6718 #else /* def XATTR_AUTO */
6719 {errno = EINVAL; return -1;}
6720 #endif /* ndef XATTR_AUTO */
6721 if ((x & Mono_Posix_XattrFlags_XATTR_CREATE) == Mono_Posix_XattrFlags_XATTR_CREATE)
6724 #else /* def XATTR_CREATE */
6725 {errno = EINVAL; return -1;}
6726 #endif /* ndef XATTR_CREATE */
6727 if ((x & Mono_Posix_XattrFlags_XATTR_REPLACE) == Mono_Posix_XattrFlags_XATTR_REPLACE)
6728 #ifdef XATTR_REPLACE
6729 *r |= XATTR_REPLACE;
6730 #else /* def XATTR_REPLACE */
6731 {errno = EINVAL; return -1;}
6732 #endif /* ndef XATTR_REPLACE */
6738 int Mono_Posix_ToXattrFlags (int x, int *r)
6744 if ((x & XATTR_AUTO) == XATTR_AUTO)
6745 *r |= Mono_Posix_XattrFlags_XATTR_AUTO;
6746 #endif /* ndef XATTR_AUTO */
6748 if ((x & XATTR_CREATE) == XATTR_CREATE)
6749 *r |= Mono_Posix_XattrFlags_XATTR_CREATE;
6750 #endif /* ndef XATTR_CREATE */
6751 #ifdef XATTR_REPLACE
6752 if ((x & XATTR_REPLACE) == XATTR_REPLACE)
6753 *r |= Mono_Posix_XattrFlags_XATTR_REPLACE;
6754 #endif /* ndef XATTR_REPLACE */