mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
Always install safe_asterisk; add configuration file support
This patch modifies the behavior of safe_asterisk in two ways: (1) It modifies the Asterisk Makefile such that safe_asterisk is always installed on a 'make install'. This was done as bugfixes in the safe_asterisk script were not applied in previous version of Asterisk without first removing the old version of the script. (2) In order to keep a newly installed version of safe_asterisk from impacting local modifications, a new config file - safe_asterisk.conf.sample - has been provided. Settings that were previously modified in safe_asterisk can be set there instead. (closes issue ASTERISK-21965) Reported by: Jeremy Kister patches: safe_asterisk.patch uploaded by jkister (License 6232) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
12
CHANGES
12
CHANGES
@@ -581,6 +581,18 @@ XMPP
|
|||||||
to be unavailable.
|
to be unavailable.
|
||||||
|
|
||||||
|
|
||||||
|
Scripts
|
||||||
|
------------------
|
||||||
|
|
||||||
|
safe_asterisk
|
||||||
|
------------------
|
||||||
|
* The safe_asterisk script will now install over previously installations.
|
||||||
|
In previous versions of Asterisk, once installed a 'make install' would
|
||||||
|
skip over safe_asterisk if it was already installed.
|
||||||
|
* Certain options in safe_asterisk can now be configured from the
|
||||||
|
safe_asterisk.conf file. A sample version of this is located in the
|
||||||
|
configs/ folder.
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
--- Functionality changes from Asterisk 10 to Asterisk 11 --------------------
|
--- Functionality changes from Asterisk 10 to Asterisk 11 --------------------
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
|
4
Makefile
4
Makefile
@@ -558,8 +558,8 @@ main-bininstall:
|
|||||||
bininstall: _all installdirs $(SUBDIRS_INSTALL) main-bininstall
|
bininstall: _all installdirs $(SUBDIRS_INSTALL) main-bininstall
|
||||||
$(INSTALL) -m 755 contrib/scripts/astgenkey "$(DESTDIR)$(ASTSBINDIR)/"
|
$(INSTALL) -m 755 contrib/scripts/astgenkey "$(DESTDIR)$(ASTSBINDIR)/"
|
||||||
$(INSTALL) -m 755 contrib/scripts/autosupport "$(DESTDIR)$(ASTSBINDIR)/"
|
$(INSTALL) -m 755 contrib/scripts/autosupport "$(DESTDIR)$(ASTSBINDIR)/"
|
||||||
if [ ! -f "$(DESTDIR)$(ASTSBINDIR)/safe_asterisk" -a ! -f /sbin/launchd ]; then \
|
if [ ! -f /sbin/launchd ]; then \
|
||||||
cat contrib/scripts/safe_asterisk | sed 's|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;s|__ASTERISK_LOG_DIR__|$(ASTLOGDIR)|;' > contrib/scripts/safe.tmp ; \
|
cat contrib/scripts/safe_asterisk | sed 's|__ASTERISK_SBIN_DIR__|$(ASTSBINDIR)|;s|__ASTERISK_VARRUN_DIR__|$(ASTVARRUNDIR)|;s|__ASTERISK_LOG_DIR__|$(ASTLOGDIR)|;s|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;' > contrib/scripts/safe.tmp ; \
|
||||||
$(INSTALL) -m 755 contrib/scripts/safe.tmp "$(DESTDIR)$(ASTSBINDIR)/safe_asterisk" ; \
|
$(INSTALL) -m 755 contrib/scripts/safe.tmp "$(DESTDIR)$(ASTSBINDIR)/safe_asterisk" ; \
|
||||||
rm -f contrib/scripts/safe.tmp ; \
|
rm -f contrib/scripts/safe.tmp ; \
|
||||||
fi
|
fi
|
||||||
|
20
configs/safe_asterisk.conf.sample
Normal file
20
configs/safe_asterisk.conf.sample
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
Used by safe_asterisk startup script
|
||||||
|
|
||||||
|
# comment this line out to have this script _not_ kill all mpg123 processes when
|
||||||
|
# asterisk exits
|
||||||
|
KILLALLMPG123=1
|
||||||
|
|
||||||
|
# run asterisk with this priority
|
||||||
|
PRIORITY=0
|
||||||
|
|
||||||
|
# set system filemax on supported OSes if this variable is set
|
||||||
|
# SYSMAXFILES=262144
|
||||||
|
|
||||||
|
# Asterisk allows full permissions by default, so set a umask, if you want
|
||||||
|
# restricted permissions.
|
||||||
|
# UMASK=022
|
||||||
|
|
||||||
|
# set max files open with ulimit. On linux systems, this will be automatically
|
||||||
|
# set to the system's maximum files open devided by two, if not set here.
|
||||||
|
# MAXFILES=32768
|
||||||
|
|
@@ -1,6 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# vim:textwidth=80:tabstop=4:shiftwidth=4:smartindent:autoindent
|
# vim:textwidth=80:tabstop=4:shiftwidth=4:smartindent:autoindent
|
||||||
|
|
||||||
|
ASTETCDIR=__ASTERISK_ETC_DIR__
|
||||||
ASTSBINDIR=__ASTERISK_SBIN_DIR__
|
ASTSBINDIR=__ASTERISK_SBIN_DIR__
|
||||||
ASTVARRUNDIR=__ASTERISK_VARRUN_DIR__
|
ASTVARRUNDIR=__ASTERISK_VARRUN_DIR__
|
||||||
ASTVARLOGDIR=__ASTERISK_LOG_DIR__
|
ASTVARLOGDIR=__ASTERISK_LOG_DIR__
|
||||||
@@ -19,23 +20,32 @@ RUNDIR=${RUNDIR:-/tmp}
|
|||||||
SLEEPSECS=4
|
SLEEPSECS=4
|
||||||
ASTPIDFILE=${ASTVARRUNDIR}/asterisk.pid
|
ASTPIDFILE=${ASTVARRUNDIR}/asterisk.pid
|
||||||
|
|
||||||
# comment this line out to have this script _not_ kill all mpg123 processes when
|
# Obtain parameters from the safe_asterisk.conf file in the
|
||||||
# asterisk exits
|
# ASTETCDIR directory
|
||||||
KILLALLMPG123=1
|
|
||||||
|
|
||||||
# run asterisk with this priority
|
kvalue=`grep ^KILLALLMPG123= $ASTETCDIR 2>/dev/null | cut -c 15`
|
||||||
PRIORITY=0
|
if test "x$kvalue" != "x" ; then
|
||||||
|
KILLALLMPG123=$kvalue
|
||||||
|
else
|
||||||
|
KILLALLMPG123=0
|
||||||
|
fi
|
||||||
|
|
||||||
# set system filemax on supported OSes if this variable is set
|
pvalue=`grep ^PRIORITY= $ASTETCDIR 2>/dev/null | cut -c 10`
|
||||||
# SYSMAXFILES=262144
|
if test "x$pvalue" != "x" ; then
|
||||||
|
PRIORITY=$pvalue
|
||||||
|
else
|
||||||
|
PRIORITY=0
|
||||||
|
fi
|
||||||
|
|
||||||
# Asterisk allows full permissions by default, so set a umask, if you want
|
svalue=`grep ^SYSMAXFILES= $ASTETCDIR 2>/dev/null | cut -c 13-21`
|
||||||
# restricted permissions.
|
if test "x$svalue" != "x" ; then
|
||||||
#UMASK=022
|
SYSMAXFILES=$svalue
|
||||||
|
fi
|
||||||
|
|
||||||
# set max files open with ulimit. On linux systems, this will be automatically
|
mvalue=`grep ^MAXFILES= $ASTETCDIR 2>/dev/null | cut -c 10-15`
|
||||||
# set to the system's maximum files open devided by two, if not set here.
|
if test "x$mvalue" != "x" ; then
|
||||||
# MAXFILES=32768
|
MAXFILES=$mvalue
|
||||||
|
fi
|
||||||
|
|
||||||
message() {
|
message() {
|
||||||
echo "$1" >&2
|
echo "$1" >&2
|
||||||
@@ -96,8 +106,10 @@ else
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test "x$UMASK" != "x"; then
|
|
||||||
umask $UMASK
|
uvalue=`grep ^UMASK= $ASTETCDIR 2>/dev/null | cut -c 7-10`
|
||||||
|
if test "x$uvalue" != "x" ; then
|
||||||
|
umask $uvalue
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -133,7 +145,7 @@ if test ! -d "${RUNDIR}" ; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test ! -w "${DUMPDROP}" ; then
|
if test ! -w "${DUMPDROP}" ; then
|
||||||
message "Cannot write to ${DUMPDROP}"
|
message "Cannot write to ${DUMPDROP}"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
@@ -157,7 +169,7 @@ fi
|
|||||||
|
|
||||||
run_asterisk()
|
run_asterisk()
|
||||||
{
|
{
|
||||||
while :; do
|
while :; do
|
||||||
|
|
||||||
if test "x$TTY" != "x" ; then
|
if test "x$TTY" != "x" ; then
|
||||||
cd "${RUNDIR}"
|
cd "${RUNDIR}"
|
||||||
|
Reference in New Issue
Block a user