This is a discussion on Re: libbind / FD_SETSIZE question (on Windows) within the Bind Users forums, part of the DNS and Related Forums category; Danny, first of all, I haven't redefined FD_SETSIZE. I've only changed the value of highestFD in res_send.c ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Danny, first of all, I haven't redefined FD_SETSIZE. I've only changed the value of highestFD in res_send.c on Windows. Looking at res_send.c, I see that highestFD is only used to decide whether a socket descriptor is valid or not - if the descriptor is above highestFD, two of the functions fail and set errno to ENOTSOCK. This doesn't affect FD_SETSIZE in any way, or at least not in a way I can see - the consequences you're talking about might make sense if FD_SETSIZE were redefined. Danny Mayer wrote: >At 09:11 AM 1/26/2005, Stefan Puiu wrote: > > >>Does it look ok to you? I've used 0xFFFFFFFF as highestFD, since I'm not >>aware of a Windows #define for the maximum socket descriptor value. >> >> > >You really DON'T want to do this. FD_SETSIZE is used for a number of arrays. >You'd end up with a HUGE memory problem for arrays that are sparsely >populated. You really don't want to step through an array like that. >It's one of the reasons that socket-handling was totally redesign in BIND 9.3.0 >(and 9.2.4) for Windows. The overhead was outrageous. You need to understand >that FD_SETSIZE is used in different ways on Unix and may have different >uses depending on the assumptions made. > >Danny > > > > > |