getdtablesize() is implemented as a libc library function. The glibc version calls
getrlimit(2)
and returns the current
RLIMIT_NOFILE limit, or
OPEN_MAX when that fails.
The libc4 and libc5 versions return
OPEN_MAX (set to 256 since Linux 0.98.4).
SVr4, 4.4BSD (the
getdtablesize() function first appeared in 4.2BSD).
It is not specified in POSIX.1-2001;
portable applications should employ
sysconf(_SC_OPEN_MAX) instead of this call.