Check for FD_SET overrun.
This commit is contained in:
parent
012b8a4111
commit
75bed0534a
@ -367,6 +367,8 @@ reread: errno = 0;
|
||||
bp = buf;
|
||||
|
||||
rewrite:
|
||||
if (rem >= FD_SETSIZE)
|
||||
errx(1, "descriptor too big");
|
||||
FD_ZERO(&rembits);
|
||||
FD_SET(rem, &rembits);
|
||||
nfds = rem + 1;
|
||||
@ -404,6 +406,8 @@ done:
|
||||
tvtimeout.tv_usec = 0;
|
||||
|
||||
(void)sigsetmask(omask);
|
||||
if (rfd2 >= FD_SETSIZE || rem >= FD_SETSIZE)
|
||||
errx(1, "descriptor too big");
|
||||
FD_ZERO(&readfrom);
|
||||
FD_SET(rfd2, &readfrom);
|
||||
FD_SET(rem, &readfrom);
|
||||
|
Loading…
x
Reference in New Issue
Block a user