author | Michael Krelin <hacker@klever.net> | 2007-04-22 23:23:39 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2007-04-22 23:23:39 (UTC) |
commit | d63aa3793906423bd3bffe6ab55578c162bfbbda (patch) (unidiff) | |
tree | 575b6dd5d44cf5166d42b62b59f7c0623c614fc6 /net-im/jabberd/files/jabberd-2.0.11.init | |
parent | 4243b8fe439f0f819b797d908345bd8ffc067ead (diff) | |
download | misc-d63aa3793906423bd3bffe6ab55578c162bfbbda.zip misc-d63aa3793906423bd3bffe6ab55578c162bfbbda.tar.gz misc-d63aa3793906423bd3bffe6ab55578c162bfbbda.tar.bz2 |
net-im/jabberd: imported from portage
Diffstat (limited to 'net-im/jabberd/files/jabberd-2.0.11.init') (more/less context) (ignore whitespace changes)
-rw-r--r-- | net-im/jabberd/files/jabberd-2.0.11.init | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/net-im/jabberd/files/jabberd-2.0.11.init b/net-im/jabberd/files/jabberd-2.0.11.init new file mode 100644 index 0000000..fee8d2e --- a/dev/null +++ b/net-im/jabberd/files/jabberd-2.0.11.init | |||
@@ -0,0 +1,80 @@ | |||
1 | #!/sbin/runscript | ||
2 | # Copyright 1999-2005 Gentoo Foundation | ||
3 | # Distributed under the terms of the GNU General Public License v2 | ||
4 | # $Header: /var/cvsroot/gentoo-x86/net-im/jabberd/files/jabberd-2.0.11.init,v 1.3 2007/01/09 10:38:59 nelchael Exp $ | ||
5 | |||
6 | depend() { | ||
7 | need net | ||
8 | use mysql postgresql slapd | ||
9 | provide jabber-server | ||
10 | } | ||
11 | |||
12 | function stopJabberServices() { | ||
13 | |||
14 | eindent | ||
15 | for pidfile in /var/run/jabber/*.pid; do | ||
16 | if [[ -f "${pidfile}" ]]; then | ||
17 | service=$(basename ${pidfile/.pid/}) | ||
18 | ebegin "Stopping ${service}" | ||
19 | start-stop-daemon \ | ||
20 | --stop \ | ||
21 | --pidfile ${pidfile} | ||
22 | eend $? | ||
23 | fi | ||
24 | done | ||
25 | eoutdent | ||
26 | |||
27 | } | ||
28 | |||
29 | start() { | ||
30 | |||
31 | einfo "Starting Jabber Server ..." | ||
32 | local services=$(grep -v ^# /etc/jabber/jabberd.cfg | grep '..*' | awk '{print $1 ":" $2}') | ||
33 | local tempPidHack=/var/run/jabber/start_stop_daemon.pid | ||
34 | eindent | ||
35 | for service in ${services}; do | ||
36 | |||
37 | cfgfile=${service/*:/} | ||
38 | service=${service/:*/} | ||
39 | if [[ ! -f "${cfgfile}" ]]; then | ||
40 | if [[ -f "/etc/jabber/${service}.xml" ]]; then | ||
41 | cfgfile="/etc/jabber/${service}.xml" | ||
42 | else | ||
43 | eerror "Can't find: ${cfgfile} or default /etc/jabber/${service}.xml" | ||
44 | stopJabberServices | ||
45 | return 1 | ||
46 | fi | ||
47 | fi | ||
48 | |||
49 | executable=/usr/bin/${service} | ||
50 | |||
51 | if [[ ! -f "${executable}" ]]; then | ||
52 | eerror "Can't find executable: ${executable}" | ||
53 | stopJabberServices | ||
54 | return 1 | ||
55 | fi | ||
56 | |||
57 | rm -f ${tempPidHack} &> /dev/null | ||
58 | ebegin "Starting ${service} (${cfgfile})" | ||
59 | start-stop-daemon \ | ||
60 | --background \ | ||
61 | --start \ | ||
62 | --chuid jabber:jabber \ | ||
63 | --exec /usr/bin/${service} \ | ||
64 | --pid ${tempPidHack} \ | ||
65 | --make-pidfile \ | ||
66 | -- -c ${cfgfile} | ||
67 | eend $? | ||
68 | rm -f ${tempPidHack} &> /dev/null | ||
69 | |||
70 | done | ||
71 | eoutdent | ||
72 | |||
73 | } | ||
74 | |||
75 | stop() { | ||
76 | |||
77 | einfo "Stopping Jabber Server" | ||
78 | stopJabberServices | ||
79 | |||
80 | } | ||