freebsd-src/lib/libc
Bill Paul ef8f52ad53 'Fix' for esoteric misfeature discovered while searching for another bug:
select() returns EINVAL if you try to feed it a value of FD_SETSIZE greater
that 256. You can apparently adjust this by specifying a larger value of
FD_SETSIZE when configuring your kernel. However, if you set the maximum
number of open file descriptors per process to some value greater than
the FD_SETSIZE value that select() expects, many selects() within the RPC
library code will be botched because _rpc_dtablesize() will return
invalid numbers. This is to say that it will return the upper descriptor
table size limit which can be much higher than 256. Unless select() is
prepared to expect this 'unusually' high value, it will fail. (A good
example of this can be seen with NIS enabled: if you type 'unlimit' at
the shell prompt and then run any command that does NIS calls, you'll
be bombarded with errors from clnttcp_create().)

A temporary fix for this is to clamp the value returned by _rpc_dtablesize()
at FD_SETSIZE (as defined in <sys/types.h> (256)). I suppose the Right
Thing would be to provide some mechanism for select() to dynamically
adjust itself to handle FD_SETSIZE values larger than 256, but it's a
bit late in the game for that. Hopefully 256 file descriptors will be enough
to keep RPC happy for now.
1995-04-04 05:53:22 +00:00
..
amd64 First round of changes to clean up the RCSID mess in libc: 1995-01-23 01:30:24 +00:00
compat-43 gethostid.2 is now gethostid.3. Instal the correct one. 1994-08-28 17:08:36 +00:00
db Added the mpool.3 manpage to the installed manpages. It is referred from the 1994-12-11 22:03:05 +00:00
gen getpwent.c: fix problem with emacs dumping core when NIS is enabled. Also 1995-04-04 05:36:16 +00:00
gmon Added support for kernel profiling to mcount.c 1994-09-15 16:00:41 +00:00
i386 First round of changes to clean up the RCSID mess in libc: 1995-01-23 01:30:24 +00:00
locale Update info about LC_COLLATE implementation 1995-03-26 18:57:19 +00:00
net Add ether_addr functions to libc. This seems to be the logical place 1995-04-02 01:31:17 +00:00
nls Fix manpage rule 1995-04-02 19:35:40 +00:00
quad BSD 4.4 Lite Lib Sources 1994-05-27 05:00:24 +00:00
regex First crack at making libc work with the new make macros. It compiles on 1994-08-05 01:19:12 +00:00
rpc 'Fix' for esoteric misfeature discovered while searching for another bug: 1995-04-04 05:53:22 +00:00
stdio Remove `|| flags & ALT == 0' which was an obscure no-op, not a 1995-03-12 13:53:51 +00:00
stdlib Fix a missing _hash() to prevent namespace pollution with the db/hash routines. 1995-03-28 08:41:02 +00:00
stdtime On snap 950210, format %s (print seconds from the epoch) is missing 1995-03-01 23:08:40 +00:00
string Don't build swab.o here. It gets built in libc/i386/string. Previously 1995-03-07 04:19:11 +00:00
sys Properly describe how to expand default limit of handled descriptors 1995-04-04 01:27:54 +00:00
xdr More directory cleanup after YP merge. 1994-08-07 22:21:14 +00:00
yp Fix xdr_ypmap_parms() so that it agrees with xdr_domainname(), xdr_peername() 1995-04-02 19:58:29 +00:00
Makefile Add nls include to Makefile. 1995-03-30 12:46:36 +00:00