Howard Chu wrote: > [email protected] wrote: >> Full_Name: Hallvard B Furuseth >> Version: HEAD >> OS: >> URL: >> Submission from: (NULL) (129.240.6.233) >> Submitted by: hallvard >> >> >> In HEAD slapd/daemon.c, thanks to HEAD's multiple listener support: >> >> slap_listener() protects emfile with slap_daemon[0 ].sd_mutex, >> but slapd_remove() protects it with slap_daemon[id].sd_mutex. >> >> Maybe to compensate, slapd_remove() has code which checks if emfile >> is too big, but nothing checks if it is too small - which looks like >> slapd might never start listening again.
On 2nd thought - I don't see how the outcome you describe can occur. If emfile is non-zero, the list of listeners will be checked for a listener with non-zero mute status. If any are found, one is guaranteed to be unmuted. If none are found, emfile will be zeroed. In no case will slapd fail to unmute a listener. -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/
