Re: another random thought.

From: Evgeny Kotsuba <evgen__k@dont-contact.us>
Date: Mon, 18 Nov 2002 03:49:30 +0300

Hi,
On Sun, 17 Nov 2002 15:19:21 +0100 (CET)
  Henrik Nordstr?m <hno@marasystems.com> wrote:
>The max fd is hardcoded because the compiler wires this into a number
>of
>types used here and there in the Squid sources...
>
>The most notable type is fd_set.
Yes,
And it is a problem for me to make squid with IBM TCP 32 bit
stack, where fd_set.fd_array is not socket's bitmask and defines for
FD_CLR,FD_SET,FD_ZERO,FD_ISSET is quite different from its 16-bit
BSD-style defines.
Look:

typedef struct fd_set {
         u_short fd_count; /* how many are SET? */
         int fd_array[FD_SETSIZE]; /* an array of SOCKETs */
} fd_set;

#define FD_ZERO(set) (((fd_set *)(set))->fd_count=0)

The problem is that those defines and meaning of fd_array is used as
hardcoded in several places.

>
>There is not many references left, but there is some. Until all have
>been
>elemitated the upper fd limit will have to be hardcoded at compile
>time.
>

SY,
Evgeny Kotsuba
Received on Thu Nov 21 2002 - 12:04:37 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:18:48 MST