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

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

Full_Name: Hallvard B Furuseth
Version: HEAD
Submission from: (NULL) (
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