]> granicus.if.org Git - pdns/commit
pdns: Kill all spawned processes
authorIgor Maravic <igor@spotify.com>
Thu, 19 Sep 2013 21:04:00 +0000 (23:04 +0200)
committerIgor Maravic <igor@spotify.com>
Tue, 8 Oct 2013 08:00:48 +0000 (10:00 +0200)
commitee443da2d3ca2f831bbc2347088498890417ec13
treed5afa3648df840a2aa05d63e579d4db2f877c3e8
parent82b6267672ab870d2432a81c229d59adb4960d2d
pdns: Kill all spawned processes

Pipe backend spawned processes can still be alive after the pdns_server-instance was killed.
If the children remain alive, sockets will not be released, and the pdns_server-instance can't be respawned.

To be sure that all the spawned processes are killed, we must kill by using the process GID.
To be able to do the soft reloads, pdns_server-instance is declared as process group lider.

Also, all forced kills must kill by GID, not by PID, so all the processes would properly die.

Signed-off-by: Igor Maravic <igor@spotify.com>
Signed-off-by: Alexey Lapitsky <alexey@spotify.com>
debian/init.d/pdns
pdns/pdns-recursor.init.d
pdns/receiver.cc