Yes, you need to recompile slapd/daemon.c with an appropriate value #define'd for FD_SETSIZE. You probably need to explicitly #undef it first to remove the default value that glibc uses.It is Linux as it happens. We added
* hard nofile 4096
to /etc/security/limits.conf at the same time that we added
ulimit -n 4096
to the init.d script for ldap. All this did was to change the syslog error message from
daemon: accept(6) failed errno=24 (Too many open files)
to
daemon: 1024 beyond descriptor table size 1024
which to me smells like a recompilation is required. If there's another way I'd love to hear about it.
-- -- Howard Chu Chief Architect, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc OpenLDAP Core Team http://www.openldap.org/project/