[PATCH] select: don't overflow if (SELECT_STACK_ALLOC % sizeof(long) != 0)
authorMitchell Blank Jr <mitch@sfgoth.com>
Tue, 11 Apr 2006 05:54:08 +0000 (22:54 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 11 Apr 2006 13:18:41 +0000 (06:18 -0700)
commitb04eb6aa08ecc3e24df2f78ebc486011ebd74feb
tree8dbf6a2449f886f0db9c3082dabdf83d4c4f04f7
parenta9cdf410ca8f59b52bc7061a6751050010c7cc5b
[PATCH] select: don't overflow if (SELECT_STACK_ALLOC % sizeof(long) != 0)

If SELECT_STACK_ALLOC is not a multiple of sizeof(long) then stack_fds[]
would be shorter than SELECT_STACK_ALLOC bytes and could overflow later in
the function.  Fixed by simply rearranging the test later to work on
sizeof(stack_fds) Currently SELECT_STACK_ALLOC is 256 so this doesn't
happen, but it's nasty to have things like this hidden in the code.  What
if later someone decides to change SELECT_STACK_ALLOC to 300?

Signed-off-by: Mitchell Blank Jr <mitch@sfgoth.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/select.c