Index: Makefile =================================================================== --- Makefile (revision 236433) +++ Makefile (working copy) @@ -817,10 +817,12 @@ if [ -f /etc/redhat-release -o -f /etc/fedora-release ]; then \ cat contrib/init.d/rc.redhat.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/rc.d/init.d/asterisk ;\ chmod 755 $(DESTDIR)/etc/rc.d/init.d/asterisk;\ + if [ ! -f /etc/sysconfig/asterisk ]; then install -m 644 contrib/init.d/etc_default_asterisk /etc/sysconfig/asterisk ; fi ;\ if [ -z "$(DESTDIR)" ]; then /sbin/chkconfig --add asterisk; fi; \ elif [ -f /etc/debian_version ]; then \ cat contrib/init.d/rc.debian.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/init.d/asterisk ;\ chmod 755 $(DESTDIR)/etc/init.d/asterisk;\ + if [ ! -f /etc/default/asterisk ]; then install -m 644 contrib/init.d/etc_default_asterisk /etc/default/asterisk ; fi ;\ if [ -z "$(DESTDIR)" ]; then /usr/sbin/update-rc.d asterisk defaults 50 91; fi; \ elif [ -f /etc/gentoo-release ]; then \ cat contrib/init.d/rc.gentoo.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/init.d/asterisk ;\ @@ -829,10 +831,12 @@ elif [ -f /etc/mandrake-release -o -f /etc/mandriva-release ]; then \ cat contrib/init.d/rc.mandriva.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/rc.d/init.d/asterisk ;\ chmod 755 $(DESTDIR)/etc/rc.d/init.d/asterisk;\ + if [ ! -f /etc/sysconfig/asterisk ]; then install -m 644 contrib/init.d/etc_default_asterisk /etc/sysconfig/asterisk ; fi ;\ if [ -z "$(DESTDIR)" ]; then /sbin/chkconfig --add asterisk; fi; \ elif [ -f /etc/SuSE-release -o -f /etc/novell-release ]; then \ cat contrib/init.d/rc.suse.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/init.d/asterisk ;\ chmod 755 $(DESTDIR)/etc/init.d/asterisk;\ + if [ ! -f /etc/sysconfig/asterisk ]; then install -m 644 contrib/init.d/etc_default_asterisk /etc/sysconfig/asterisk ; fi ;\ if [ -z "$(DESTDIR)" ]; then /sbin/chkconfig --add asterisk; fi; \ elif [ -f /etc/arch-release -o -f /etc/arch-release ]; then \ cat contrib/init.d/rc.archlinux.asterisk | sed 's|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;s|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;' > $(DESTDIR)/etc/rc.d/asterisk ;\ Index: contrib/init.d/etc_default_asterisk =================================================================== --- contrib/init.d/etc_default_asterisk (revision 0) +++ contrib/init.d/etc_default_asterisk (revision 0) @@ -0,0 +1,42 @@ +# Startup configuration for the Asterisk daemon + +# Uncomment the following and set them to the user/groups that you +# want to run Asterisk as. NOTE: this requires substantial work to +# be sure that Asterisk's environment has permission to write the +# files required for its operation, including logs, its comm +# socket, the asterisk database, etc. +#AST_USER="asterisk" +#AST_GROUP="asterisk" + +# If you DON'T want Asterisk to start up with terminal colors, comment +# this out. +COLOR=yes + +# If you want Asterisk to run with a non-default configuration file, +# uncomment the following option, and set the value appropriately. +#ALTCONF=/etc/asterisk/asterisk.conf + +# In the case of a crash, Asterisk may create a core file. Uncomment +# if you want this behavior. +#COREDUMP=yes + +# Asterisk may establish a maximum load average for the system. This +# may be useful to prevent a flood of calls from taking down the system. +#MAXLOAD=4 + +# Or, if you'd prefer, you can limit the maximum number of calls. +#MAXCALLS=1000 + +# Default console verbosity. This may be raised or lowered on the console. +#VERBOSITY=3 + +# Enable internal timing if the DAHDI timer is available. The default +# behaviour is that outbound packets are phase locked to inbound packets. +# Enabling this option causes them to be locked to the internal DAHDI +# timer instead. +#INTERNALTIMING=yes + +# Start all recordings into a temporary directory, before moving them to +# their final location. +#TEMPRECORDINGLOCATION=yes + Property changes on: contrib/init.d/etc_default_asterisk ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:keywords + Date Author Id Revision Yankee Added: svn:eol-style + native Index: contrib/init.d/rc.suse.asterisk =================================================================== --- contrib/init.d/rc.suse.asterisk (revision 236433) +++ contrib/init.d/rc.suse.asterisk (working copy) @@ -59,6 +59,15 @@ #AST_USER="asterisk" #AST_GROUP="asterisk" +# Allow configuration overrides in /etc/sysconfig/asterisk +CONFIG0=`readlink $0` +if [ "$CONFIG0" = "" ]; then + CONFIGFILE=/etc/sysconfig/`basename $0` +else + CONFIGFILE=/etc/sysconfig/`basename $CONFIG0` +fi +[ -r $CONFIGFILE ] && . $CONFIGFILE + RETVAL=0 start() { @@ -82,7 +91,35 @@ if [ $AST_GROUP ] ; then ASTARGS="`echo $ASTARGS` -G $AST_GROUP" fi - $DAEMON $ASTARGS + if [ $ALTCONF ]; then + ASTARGS="$ASTARGS -C $ALTCONF" + fi + if [ "x$COREDUMP" = "xyes" ]; then + ASTARGS="$ASTARGS -g" + fi + if [ $MAXLOAD -gt 0 ]; then + ASTARGS="$ASTARGS -L $MAXLOAD" + fi + if [ $MAXCALLS -gt 0 ]; then + ASTARGS="$ASTARGS -M $MAXCALLS" + fi + if [ $VERBOSITY -gt 0 ]; then + for i in `seq 1 $VERBOSITY`; do + ASTARGS="$ASTARGS -v" + done + fi + if [ "x$INTERNALTIMING" = "xyes" ]; then + ASTARGS="$ASTARGS -I" + fi + if [ "x$TEMPRECORDINGLOCATION" = "xyes" -o "x$TMPRECORDINGLOCATION" = "xyes" ]; then + ASTARGS="$ASTARGS -t" + fi + if [ "x$COLOR" = "xyes" ]; then + export TERM=linux + sh -c "$DAEMON $ASTARGS -c" >/dev/null &1 & + else + $DAEMON $ASTARGS + fi RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/asterisk echo Index: contrib/init.d/rc.mandriva.asterisk =================================================================== --- contrib/init.d/rc.mandriva.asterisk (revision 236433) +++ contrib/init.d/rc.mandriva.asterisk (working copy) @@ -37,7 +37,7 @@ fi # Put overrides in /etc/sysconfig/asterisk -[ -f $CONFIGFILE ] && . $CONFIGFILE +[ -r $CONFIGFILE ] && . $CONFIGFILE LD_LIBRARY_PATH=$OPENH323DIR/lib:$PWLIBDIR/lib export OPENH323DIR PWLIBDIR LD_LIBRARY_PATH Index: contrib/init.d/rc.debian.asterisk =================================================================== --- contrib/init.d/rc.debian.asterisk (revision 236434) +++ contrib/init.d/rc.debian.asterisk (working copy) @@ -38,21 +38,6 @@ # Description: the Asterisk Open Source PBX ### END INIT INFO -# Uncomment this ONLY if you know what you are doing. -# export LD_ASSUME_KERNEL=2.4.1 - -# Uncomment the following and set them to the user/groups that you -# want to run Asterisk as. NOTE: this requires substantial work to -# be sure that Asterisk's environment has permission to write the -# files required for its operation, including logs, its comm -# socket, the asterisk database, etc. -#AST_USER="asterisk" -#AST_GROUP="asterisk" - -# If you DON'T want Asterisk to start up with terminal colors, comment -# this out. -COLOR=yes - set -e if ! [ -x $DAEMON ] ; then @@ -68,6 +53,15 @@ # Use the LSB standar functions for services management . /lib/lsb/init-functions +# Allow configuration overrides in /etc/default/asterisk +CONFIG0=`readlink $0` +if [ "$CONFIG0" = "" ]; then + CONFIGFILE=/etc/default/`basename $0` +else + CONFIGFILE=/etc/default/`basename $CONFIG0` +fi +[ -r $CONFIGFILE ] && . $CONFIGFILE + case "$1" in start) # Check if Asterisk is already running. If it is, then bug out, because @@ -91,6 +85,29 @@ ASTARGS="$ASTARGS -G $AST_GROUP" chgrp $AST_GROUP $ASTVARRUNDIR fi + if [ $ALTCONF ]; then + ASTARGS="$ASTARGS -C \"$ALTCONF\"" + fi + if [ "x$COREDUMP" = "xyes" ]; then + ASTARGS="$ASTARGS -g" + fi + if [ $MAXLOAD -gt 0 ]; then + ASTARGS="$ASTARGS -L $MAXLOAD" + fi + if [ $MAXCALLS -gt 0 ]; then + ASTARGS="$ASTARGS -M $MAXCALLS" + fi + if [ $VERBOSITY -gt 0 ]; then + for i in `seq 1 $VERBOSITY`; do + ASTARGS="$ASTARGS -v" + done + fi + if [ "x$INTERNALTIMING" = "xyes" ]; then + ASTARGS="$ASTARGS -I" + fi + if [ "x$TEMPRECORDINGLOCATION" = "xyes" -o "x$TMPRECORDINGLOCATION" = "xyes" ]; then + ASTARGS="$ASTARGS -t" + fi # "start-stop-daemon --oknodo" returns 0 even if Asterisk was already running (as LSB expects): if test "x$COLOR" = "xyes" ; then export TERM=linux Index: contrib/init.d/rc.redhat.asterisk =================================================================== --- contrib/init.d/rc.redhat.asterisk (revision 236433) +++ contrib/init.d/rc.redhat.asterisk (working copy) @@ -26,14 +26,6 @@ # Installation directory AST_SBIN=/usr/sbin -# Uncomment the following and set them to the user/groups that you -# want to run Asterisk as. NOTE: this requires substantial work to -# be sure that Asterisk's environment has permission to write the -# files required for its operation, including logs, its comm -# socket, the asterisk database, etc. -#AST_USER="asterisk" -#AST_GROUP="asterisk" - # Source function library. . /etc/rc.d/init.d/functions @@ -47,9 +39,6 @@ exit 0 fi -# Uncomment this ONLY if you know what you are doing. -# export LD_ASSUME_KERNEL=2.4.1 - # Full path to asterisk binary DAEMON=$AST_SBIN/asterisk @@ -63,7 +52,7 @@ else CONFIGFILE=/etc/sysconfig/`basename $CONFIG0` fi -[ -x $CONFIGFILE ] && . $CONFIGFILE +[ -r $CONFIGFILE ] && . $CONFIGFILE RETVAL=0 @@ -89,8 +78,35 @@ fi if [ $AST_CONFIG ]; then ASTARGS="$ASTARGS -C $AST_CONFIG/asterisk.conf" + elif [ $ALTCONF ]; then + ASTARGS="$ASTARGS -C $ALTCONF" fi - daemon $DAEMON $ASTARGS + if [ "x$COREDUMP" = "xyes" ]; then + ASTARGS="$ASTARGS -g" + fi + if [ $MAXLOAD -gt 0 ]; then + ASTARGS="$ASTARGS -L $MAXLOAD" + fi + if [ $MAXCALLS -gt 0 ]; then + ASTARGS="$ASTARGS -M $MAXCALLS" + fi + if [ $VERBOSITY -gt 0 ]; then + for i in `seq 1 $VERBOSITY`; do + ASTARGS="$ASTARGS -v" + done + fi + if [ "x$INTERNALTIMING" = "xyes" ]; then + ASTARGS="$ASTARGS -I" + fi + if [ "x$TEMPRECORDINGLOCATION" = "xyes" -o "x$TMPRECORDINGLOCATION" = "xyes" ]; then + ASTARGS="$ASTARGS -t" + fi + if [ "x$COLOR" = "xyes" ]; then + export TERM=linux + daemon sh -c "$DAEMON $ASTARGS -c" >/dev/null &1 & + else + daemon $DAEMON $ASTARGS + fi RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/asterisk echo