Package: jabber
Version: 1.4.3-3.3
Severity: normal

hi,

this problem does not look specific to jabber, rather, looks like a bug in
the init.d/ scripts prototype, or in start-stop-daemon itself, since I've
got same troubles with other pkgs.
Nevertheless, I'm reporting it against the jabber pkg since it looks also
that the server fails to (really) shutdown:

# /etc/init.d/jabber restart
...
20080703T06:39:41: [notice] (-internal): shutting down server
20080703T06:39:45: [notice] (-internal): initializing server
20080703T06:39:45: [alert] (-internal): io_select unable to listen on 5222 
[(null)]: jabberd already running or invalid interface?
20080703T06:39:45: [alert] (-internal): io_select unable to listen on 5269 
[(null)]: jabberd already running or invalid interface?
...

and turns out that jabberd is still there; even after issuing a 'stop' alone:

# /etc/init.d/jabber stop
...
20080703T06:40:18: [notice] (-internal): shutting down server
...

# pidof jabberd
19175 19173

and

# ls /var/run/jabber/
(nothing)

so the init.d script completely fails to stop and detect the status of the 
daemon, yet it removes the pid file.

Like for other cases, here's the 'fix' I've applied to the init.d script
#--------------------------------------------------------------------------
--- /etc/init.d/jabber.orig     2008-07-03 09:11:56.000000000 +0200
+++ /etc/init.d/jabber  2008-07-03 09:19:47.000000000 +0200
@@ -66,6 +66,15 @@
       echo -n "Stopping $DESC: "
       start-stop-daemon -o --stop --quiet --pidfile $PID\
          --retry 5 --exec $DAEMON || ( echo -n "<Failed>" && exit 1 )
+      if pidof $DAEMON > /dev/null 2>&1; then
+       echo -n "nope, still running - sending SIGTERM ... "
+       killall $DAEMON || true; sleep 3
+       if pidof $DAEMON > /dev/null 2>&1; then
+         echo -n "nope again - trying SIGKILL ... "
+         killall -9 $DAEMON || true; sleep 2
+         pidof $DAEMON > /dev/null 2>&1 && exit 1 || true
+       fi 
+      fi
       echo "$NAME."
       if [ -d /etc/jabber/jabber.d ]; then
          run-parts --arg=$1 /etc/jabber/jabber.d
#--------------------------------------------------------------------------

which WFM - ie it really shuts down the server, at least as long as jabberd 
is not locked solid in 'D' state.


-- 
paolo



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to