Hi List! Let me tell you about a little scenario. dhcpcd starts, calls resolvconf resolvconf then updates it's files and runs it's plugins - libc (nscd), dnsmasq and bind which restart via their init script if required. Each service (nscd, dnsmasq and bind) can be stopped and started easily.
Now, when dhcpcd receives a stop signal it runs resolvconf again, which it should by design. Quite happily it runs he plugins and restarts dnsmasq, bind and/or nscd so that the interface that dhcpcd handled doesn't publish its dns information anymore. However - if dhcpcd was stopped by a SIGTERM then the restarted services do get restarted and it seems to work, but the services (nscd, dnsmasq, bind) are unresponsive and can only be killed by a SIGKILL. Not good. Every other signal that causes a "stop" (SIGINT, SIGQUIT, etc) that can be trapped works just fine and services continue as they are. So why am I writing this email? Well, start-stop-daemon, by default, uses SIGTERM. Another example of this was my new openvpn scripts calling resolvconf when openvpn stopped causing the same behaviour as dhcpcd as described above. As more and more init scripts "stopping" can trigger other services to restart, it becomes very desirable for this not to happen. So I propose for the next baselayout release (1.12.0_pre17) to default start-stop-daemon calls to SIGINT for stop commands instead of the current SIGTERM. My testing on my boxes has no adverse effects so far. So ...... thoughts? Good or bad idea? Reasons and explanations welcome :) -- Roy Marples <[EMAIL PROTECTED]> Gentoo Linux Developer -- gentoo-dev@gentoo.org mailing list