Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master grimoire by David Kowis (3097bccc10cedfd2a35958af859721b36fb014d6)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: David Kowis <scm AT mail.sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master grimoire by David Kowis (3097bccc10cedfd2a35958af859721b36fb014d6)
  • Date: Wed, 11 Oct 2006 18:10:16 -0500

GIT changes to master grimoire by David Kowis <dkowis AT raziel.shlrm.org>:

chat-im/jabberd/DEPENDS | 1
chat-im/jabberd/HISTORY | 5 ++
chat-im/jabberd/init.d/jabberd | 81
+++++++++++++++++++++++++++++------------
3 files changed, 63 insertions(+), 24 deletions(-)

New commits:
commit 3097bccc10cedfd2a35958af859721b36fb014d6
Author: David Kowis <dkowis AT shlrm.org>
Commit: David Kowis <dkowis AT raziel.shlrm.org>

jabberd

Rewrote entire jabberd init script to avoid needing daemon.
If we had a better init system that was capable of hanging on to processes
this wouldn't be necessary.

diff --git a/chat-im/jabberd/DEPENDS b/chat-im/jabberd/DEPENDS
index 3d5d9fe..547f91d 100755
--- a/chat-im/jabberd/DEPENDS
+++ b/chat-im/jabberd/DEPENDS
@@ -1,6 +1,5 @@
depends openssl &&
depends libidn &&
-depends daemon xs &&

optional_depends mysql \
'--enable-mysql' \
diff --git a/chat-im/jabberd/HISTORY b/chat-im/jabberd/HISTORY
index 2f68b31..6f1a83c 100644
--- a/chat-im/jabberd/HISTORY
+++ b/chat-im/jabberd/HISTORY
@@ -1,3 +1,8 @@
+2006-10-11 David Kowis <dkowis AT shlrm.org>
+ * init.d/jabberd: rewrote the entire thing to not need daemon anymore
+ Jabber is a PITA service :/
+ * DEPENDS: removed dependency on daemon
+
2006-09-21 Juuso Alasuutari <iuso AT sourcemage.org>
* DETAILS: [automated] Removed BUILD_API=2.

diff --git a/chat-im/jabberd/init.d/jabberd b/chat-im/jabberd/init.d/jabberd
index b899dba..470c514 100755
--- a/chat-im/jabberd/init.d/jabberd
+++ b/chat-im/jabberd/init.d/jabberd
@@ -1,30 +1,65 @@
#!/bin/bash

+PROGRAM=/usr/bin/jabberd
RUNLEVEL=3
NEEDS="+network +remote_fs"

. /etc/init.d/smgl_init

-case $1 in
- start) echo "Starting jabberd..."
- daemon -u jabber -n jabberd jabberd
- evaluate_retval
- ;;
-
- stop) echo "Stopping jabberd..."
- daemon -u jabber -n jabberd --stop
- evaluate_retval
- ;;
-
- restart) echo "Restarting jabberd..."
- daemon -u jabber -n jabberd --restart
- evaluate_retval
- ;;
-
- status) daemon -v -u jabber -n jabberd --running
- ;;
-
- *) echo "Usage: $0 {start|stop|restart|status}"
- exit 1
- ;;
-esac
+killAndWait() {
+ #$1 is pidfile to wait for
+ if [[ "$(ps -eaf | grep $(cat $1) | grep -v grep)" != "" ]]; then
+ kill $(cat $1)
+ while [[ "$(ps -eaf | grep $(cat $1) | grep -v grep)" != ""
]]; do
+ sleep 0.5
+ done
+ fi
+ # always have to remove the pid file, because jabberd doesn't clean up
+ # after itself
+ rm $1
+}
+
+start() {
+ echo "Starting jabberd..."
+ su -s /bin/bash jabber -c "$PROGRAM &"
+ evaluate_retval
+}
+
+stop() {
+ echo "Stopping jabberd..."
+ if [ -f /var/jabberd/pid/router.pid ] && [[
+ "$(ps -eaf | grep $(cat /var/jabberd/pid/router.pid) | grep
-v grep)" != "" ]]; then
+
+ killAndWait /var/jabberd/pid/router.pid
+
+ if [[ "$(ps -eaf | grep $(cat /var/jabberd/pid/*.pid) | grep
-v grep)" == "" ]]; then
+ echo "Jabber services not running but pidfiles
exists! Cleaning..."
+ rm /var/jabberd/pid/*.pid
+ else
+ killAndWait /var/jabberd/pid/router.pid
+ echo "Ensuring the rest of the server went down"
+ for foo in $(ls /var/jabberd/pid/*.pid); do
+ killAndWait $foo
+ done
+ fi
+ fi
+ #ps -eaf | grep $(cat pid/router.pid ) | grep -v grep
+}
+
+restart() {
+ stop
+ start
+}
+
+status() {
+ local JABBERPIDS=""
+ if [[ "$(ls /var/jabberd/pid)" != "" ]]; then
+ for foo in $(ls /var/jabberd/pid/*.pid); do
+ JABBERPIDS="$JABBERPIDS $(cat $foo)"
+ done
+ echo "Jabber services running at pids:$JABBERPIDS"
+ else
+ echo "Jabber services are not running"
+ fi
+}
+



  • [SM-Commit] GIT changes to master grimoire by David Kowis (3097bccc10cedfd2a35958af859721b36fb014d6), David Kowis, 10/11/2006

Archive powered by MHonArc 2.6.24.

Top of Page