Chris Elving writes:
> Due to the 32-bit ABI's stdio file descriptor limit, an interposer is
> being used to F_DUPFD non-stdio file descriptors to 256 and above. This
> mitigates a problem with 3rd party modules and plugins that use
> fopen(3C), et al. streams in processes such as Apache HTTP Server that
> open a large number of file descriptors. Unfortunately, using the
> interposer causes failures when a child process (e.g. CGI program)
> subsequently invokes telnet(1). If telnet passed the correct nfds value
> to select(3C), that failure would be eliminated.
Thanks! That's the key piece I was missing.
In that case, I suspect that closefrom() won't fix the problem, as the
socket() call will return a descriptor that's above the limit and run
into the problem again.
James Carlson, KISS Network <james.d.carlson at sun.com>
Sun Microsystems / 1 Network Drive 71.232W Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677