jabberd/rc.jabberd

Sat, 24 Mar 2012 21:40:49 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 24 Mar 2012 21:40:49 +0100
changeset 414
fd611cde817f
parent 225
a01e65d97743
child 540
6becb64fe77d
permissions
-rw-r--r--

Introduce many changes to the buildconf and source code including:
(01) clean up, update, and partially update default config files,
(02) seems that Melware is unable to perform release engineering so
update chan_capi to new daily snapshot to solve echo problems,
(03) correct Asterisk inadequate hard coded gmime version check,
(04) force postgresql pthreads linkage to solve build problem,
(05) remove buggy hard coded LibXML configure definitions,
(06) remove local architecture specification to allow GCC
internal logic to determine proper CPU type instead,
(07) remove vendor sound install target causing uncontrolled
downloads and non RPM managed file installation,
(08) solve long outstanding bug in tcptls causing Asterisk
to ignore any intermediate CA certificate signatures,
(09) back out Digium engineering team's bright idea of replacing the
very portable and pervasive POSIX rand(1) with ast_random(), and
then not even implementing it causing all references to fail in
platforms not providing the very new POSIX.1-2008 mkdtemp(3)
function only distributed by BSD and some Linux,
(10) withdraw advanced linker symbol manipulations from SVR5 builds
until either Binutils supports hybrid versioned and anonymous
linker scripts or GCC stops hard coding versioned linker scripts,
(11) correct missing library linkage, some tailored to a specific OS,
(12) remove outdated logic for the no longer distributed gmime-config(1),
(13) remove local gmime buildconf hacks now that Asterisk has corrected
their own build configuration to almost portably support gmime,
(14) solve build problems relating to undetected LibXML paths,
(15) correct erroneous out of tree include definitions,
(16) improve some variable and comment naming,
(17) simplify sound language path hierarchy creation,
and correct australian english installation logic.

michael@224 1 #!@l_prefix@/bin/openpkg rc
michael@224 2 ##
michael@224 3 ## rc.jabberd -- Run-Commands
michael@224 4 ##
michael@224 5
michael@224 6 %config
michael@224 7 jabberd_enable="$openpkg_rc_def"
michael@224 8 jabberd_hostname=`hostname`
michael@225 9 jabberd_daemons="c2s router s2s sm"
michael@224 10 jabberd_cfgfile="@l_prefix@/etc/jabberd/jabberd.cfg"
michael@224 11 jabberd_log_prolog="true"
michael@224 12 jabberd_log_epilog="true"
michael@224 13 jabberd_log_numfiles="10"
michael@224 14 jabberd_log_minsize="1M"
michael@224 15 jabberd_log_complevel="9"
michael@224 16
michael@224 17 %common
michael@224 18 jabberd_signal () {
michael@224 19 local retcode=0
michael@224 20 local daemons=
michael@224 21 for daemons in $jabberd_daemons; do
michael@224 22 [ -f @l_prefix@/var/jabberd/pid/${daemons}.pid ] \
michael@224 23 && kill -$1 `cat @l_prefix@/var/jabberd/pid/${daemons}.pid`
michael@224 24 retcode=$(($retcode+$?))
michael@224 25 done
michael@224 26 return $retcode
michael@224 27 }
michael@224 28
michael@364 29 %status -u @l_susr@ -o
michael@224 30 jabberd_usable="unknown"
michael@224 31 jabberd_active="no"
michael@224 32 rcService jabberd enable yes && \
michael@224 33 jabberd_signal 0 && jabberd_active="yes"
michael@224 34 echo "jabberd_enable=\"$jabberd_enable\""
michael@224 35 echo "jabberd_usable=\"$jabberd_usable\""
michael@224 36 echo "jabberd_active=\"$jabberd_active\""
michael@224 37
michael@364 38 %start -u @l_susr@
michael@224 39 rcService jabberd enable yes || exit 0
michael@224 40 rcService jabberd active yes && exit 0
michael@224 41 @l_prefix@/bin/jabberd -b -c $jabberd_cfgfile
michael@224 42
michael@364 43 %stop -u @l_susr@
michael@224 44 rcService jabberd enable yes || exit 0
michael@224 45 rcService jabberd active no && exit 0
michael@224 46 jabberd_signal TERM
michael@224 47 sleep 2
michael@224 48 for daemons in $jabberd_daemons; do
michael@224 49 rm -f @l_prefix@/var/jabberd/pid/${daemons}.pid
michael@224 50 done
michael@224 51
michael@364 52 %restart -u @l_susr@
michael@224 53 rcService jabberd enable yes || exit 0
michael@224 54 rcService jabberd active no && exit 0
michael@224 55 rc jabberd stop
michael@224 56 sleep 2
michael@224 57 rc jabberd start
michael@224 58
michael@224 59 %daily -u @l_susr@
michael@224 60 rcService jabberd enable yes || exit 0
michael@224 61 logfiles=
michael@224 62 for daemons in $jabberd_daemons; do
michael@224 63 logfiles="$logfiles @l_prefix@/var/jabberd/log/$daemons.log"
michael@224 64 done
michael@224 65 shtool rotate -f \
michael@224 66 -n ${jabberd_log_numfiles} -s ${jabberd_log_minsize} -d \
michael@224 67 -z ${jabberd_log_complevel} -m 644 -o @l_susr@ -g @l_mgrp@ \
michael@224 68 -P "${jabberd_log_prolog}" \
michael@224 69 -E "${jabberd_log_epilog}; rc jabberd restart" \
michael@224 70 $logfiles
michael@224 71

mercurial