How sure is you about this?

A visual inspection of the glibc macros in both glibc-reveal nothing of
the kind. All simple byte arithmetics on the filedescriptor number..

The only thing I can see in the visual inspection is that things will
fail badly if the maxfd is not even divisible by 32, as in such case the
fd_set size will be short, possibly causing memory corruption if the
highest filedescriptors are in use, but just replacing the macros won't
solve this as the error is in the datatype definition.

Regards
Henrik

tor 2003-02-27 klockan 14.42 skrev [EMAIL PROTECTED]:
> adrian      2003/02/27 06:42:19 MST
> 
>   Modified files:        (Branch: SQUID_2_5)
>     src                  comm_select.c delay_pools.c squid.h 
>   Log:
>   The fd_set macros are used in the delay pools code - but the seem
>   to break on linux glibc on a busy cache.
>   
>   This patch replaces them with private copies of the macro _just_ for
>   the delay pools code (and not select()!), stolen from MacOS X 10.2.4.
>   The FD_SETSIZE has been replaced with SQUID_MAXFD.
>   
>   Bugzilla id: 555
>   
>   Also, run indent. This may cause larger diffs than I needed..
>   
>   Revision  Changes    Path
>   1.53.2.4  +8 -13     squid/src/comm_select.c
>   1.19.2.5  +9 -6      squid/src/delay_pools.c
>   1.216.2.4 +30 -11    squid/src/squid.h
-- 
Henrik Nordstrom <[EMAIL PROTECTED]>
MARA Systems AB, Sweden

Reply via email to