[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#6736) Listener info destroyed too early on shutdown



Full_Name: Hallvard B Furuseth
Version: HEAD
OS: 
URL: 
Submission from: (NULL) (129.240.6.233)
Submitted by: hallvard


On shutdown, slapd_daemon_task() calls close_listeners() which destroys
slap_listeners[] while other threads may be accessing it.  This is not
mutex-protected.  Valgrind reports freed data accesses in back-monitor
and slapd_listener() when they try to read the URLs in the listeners.

Giving HEAD a minimal fix: Stop listening but delay destruction.

If anyone feels like it, the new 'listening' flag probably can be used
more intelligently, e.g. by rearranging the use of it and some shutdown
flags.