4 long mp_open_max(void) {
6 /* Try sysconf(_SC_OPEN_MAX) first, as it can be higher than OPEN_MAX.
7 * If that fails and the macro isn't defined, we fall back to an educated
8 * guess. There's no guarantee that our guess is adequate and the program
9 * will die with SIGSEGV if it isn't and the upper boundary is breached. */
13 if ((maxfd
= sysconf(_SC_OPEN_MAX
)) < 0) {
15 maxfd
= DEFAULT_MAXFD
; /* it's indeterminate */
17 die(STATE_UNKNOWN
, _("sysconf error for _SC_OPEN_MAX\n"));
19 #elif defined(OPEN_MAX)
21 #else /* sysconf macro unavailable, so guess (may be wildly inaccurate) */