diff --git a/debian/asterisk.init b/debian/asterisk.init index 33187ee..333c8cb 100755 --- a/debian/asterisk.init +++ b/debian/asterisk.init @@ -49,6 +49,11 @@ DEFAULTS=/etc/default/$NAME #AST_USER="asterisk" #AST_GROUP="asterisk" +PARAMS="" +CHDIR_PARM="" +AST_DUMPCORE="no" +AST_DUMPCORE_DIR="/var/spool/asterisk" # only used if AST_DUMPCORE != no + # do not start by default RUN_DAEMON=no @@ -74,6 +79,13 @@ if [ "$RUN_DAEMON" != "yes" ]; then exit 0 fi +if [ "$AST_DUMPCORE" != "no" ]; then + PARAMS="$PARAMS -g" + if [ -d "$AST_DUMPCORE_DIR" ]; then + CHDIR_PARM="--chdir $AST_DUMPCORE_DIR" + fi +fi + # Use the LSB standar functions for services management . /lib/lsb/init-functions @@ -90,14 +102,14 @@ case "$1" in fi log_begin_msg "Starting $DESC: $NAME" if [ $AST_USER ] ; then - ASTARGS="-U $AST_USER" + PARAMS="$PARAMS -U $AST_USER" fi if [ $AST_GROUP ] ; then - ASTARGS="$ASTARGS -G $AST_GROUP" + PARAMS="$PARAMS -G $AST_GROUP" fi - ASTARGS="$ASTARGS -n" + PARAMS="$PARAMS -n" # "start-stop-daemon --oknodo" returns 0 even if Asterisk was already running (as LSB expects): - start-stop-daemon --start --oknodo --exec $DAEMON -- $ASTARGS + start-stop-daemon --start --oknodo $CHDIR_PARM --exec $DAEMON -- $PARAMS log_end_msg $? ;; stop)