> In the long term we hope to get rid of the dependency on the built-time > limit, only relying on the ulimit when Squid is started. There still > remains a bit of work for this however (delay pools and a few other items > depends on the build time limit).
IIRC, you could replace the statically defined arrays based on MAXFD with a start-up initialised array based on whatever you detect ulimit to be. I can't imagine that'd be an intrusive patch and I can't remember anything that would clash with this when I was working on it. Yo'ud just have to replace the SQUID_MAXFD define with a variable or inline function thats assigned once early in main() then allocate the arrays for the squidfd struct and the delay pool stuff. It might be a good idea to finally rip out any use of fdset outside of the select() code. Hm! Yeah. src/delaypools.c still uses fdsets. Replacing delay_no_delay with a char array would fix that. I had a patch to do that but I don't remember why I didn't commit it, or why it wasn't thought of as a good idea. adrian
