Fix a problem with select and high fds.
authorWerner Koch <wk@gnupg.org>
Mon, 19 Jan 2015 15:46:05 +0000 (16:46 +0100)
committerWerner Koch <wk@gnupg.org>
Mon, 19 Jan 2015 15:46:05 +0000 (16:46 +0100)
commit8adb5ff26062f717619aa816de8b27aa7d40d6c8
tree674aaf985dcfdc94789cdcd641095cddbd21685f
parented6287d2e1546ee0f4064675270da003f51e1b39
Fix a problem with select and high fds.

* cipher/rndlinux.c (rndlinux_gather_random): Check fd before using
FD_SET.
--

If on systems where the maximum number of fds may be dynamically
configured to a value of FD_MAXSIZE or higher and the RNG is first
used after more than FD_SETSIZE-1 descriptors are in use, we disable
the progress messages from the RNG.  A better solution would be too
use poll but that requires more tests.

The same problem exists in rndunix.c - however this rng is only used
on old Unices and I assume that they don't feature dynamically
configured maximum fd sizes.

(from Libgcrypt commit 9487099071af4478d2882e633a0ade805801d6fa)

This may fix
GnuPG-bug-id: 1818
cipher/rndlinux.c
cipher/rndunix.c