From 449afdd9e8d38a5a479cc0320091fd315d2b4d4a Mon Sep 17 00:00:00 2001
From: Matthew Jordan <mjordan@digium.com>
Date: Thu, 29 Aug 2013 20:22:08 +0000
Subject: [PATCH] Revert r394939 due to (numerous) objections

The patch from ASTERISK-21965 was committed perhaps a bit too hastily. Walter
and Tzafrir have pointed out numerous issues with the approach and have
propsed an alternative in r/2757. Since it's not a time critical issue and
is not worth holding up the release of 12 for it, I've gone ahead and reverted
r394939 from 12/trunk and re-opened ASTERISK-21965.
........

Merged revisions 397938 from http://svn.asterisk.org/svn/asterisk/branches/12


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@397939 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 CHANGES                           | 12 +-------
 Makefile                          |  4 +--
 configs/safe_asterisk.conf.sample | 20 --------------
 contrib/scripts/safe_asterisk     | 46 ++++++++++++-------------------
 4 files changed, 20 insertions(+), 62 deletions(-)
 delete mode 100644 configs/safe_asterisk.conf.sample

diff --git a/CHANGES b/CHANGES
index 5e2dd28a6a..9a223fdd12 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1102,22 +1102,12 @@ Realtime/Database Scripts
 ------------------
  * Asterisk previously included example db schemas in the contrib/realtime/
    directory of the source tree.  This has been replaced by a set of database
-   migrations using the Alembic framework.  This allows you to use alembic to 
+   migrations using the Alembic framework.  This allows you to use alembic to
    initialize the database for you.  It will also serve as a database migration
    tool when upgrading Asterisk in the future.
 
    See contrib/ast-db-manage/README.md for more details.
 
-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.
-
 sip_to_res_pjsip.py
 -------------------
  * A new script has been added in the contrib/scripts/sip_to_res_pjsip folder.
diff --git a/Makefile b/Makefile
index ae043f2822..0cd66b2d4f 100644
--- a/Makefile
+++ b/Makefile
@@ -561,8 +561,8 @@ main-bininstall:
 bininstall: _all installdirs $(SUBDIRS_INSTALL) main-bininstall
 	$(INSTALL) -m 755 contrib/scripts/astgenkey "$(DESTDIR)$(ASTSBINDIR)/"
 	$(INSTALL) -m 755 contrib/scripts/autosupport "$(DESTDIR)$(ASTSBINDIR)/"
-	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)|;s|__ASTERISK_ETC_DIR__|$(ASTETCDIR)|;' > contrib/scripts/safe.tmp ; \
+	if [ ! -f "$(DESTDIR)$(ASTSBINDIR)/safe_asterisk" -a ! -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 ; \
 		$(INSTALL) -m 755 contrib/scripts/safe.tmp "$(DESTDIR)$(ASTSBINDIR)/safe_asterisk" ; \
 		rm -f contrib/scripts/safe.tmp ; \
 	fi
diff --git a/configs/safe_asterisk.conf.sample b/configs/safe_asterisk.conf.sample
deleted file mode 100644
index 9e560f3a59..0000000000
--- a/configs/safe_asterisk.conf.sample
+++ /dev/null
@@ -1,20 +0,0 @@
-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
-
diff --git a/contrib/scripts/safe_asterisk b/contrib/scripts/safe_asterisk
index 822e1c8cd1..2e661b4766 100644
--- a/contrib/scripts/safe_asterisk
+++ b/contrib/scripts/safe_asterisk
@@ -1,7 +1,6 @@
 #!/bin/sh
 # vim:textwidth=80:tabstop=4:shiftwidth=4:smartindent:autoindent
 
-ASTETCDIR=__ASTERISK_ETC_DIR__
 ASTSBINDIR=__ASTERISK_SBIN_DIR__
 ASTVARRUNDIR=__ASTERISK_VARRUN_DIR__
 ASTVARLOGDIR=__ASTERISK_LOG_DIR__
@@ -20,32 +19,23 @@ RUNDIR=${RUNDIR:-/tmp}
 SLEEPSECS=4
 ASTPIDFILE=${ASTVARRUNDIR}/asterisk.pid
 
-# Obtain parameters from the safe_asterisk.conf file in the
-# ASTETCDIR directory
+# comment this line out to have this script _not_ kill all mpg123 processes when
+# asterisk exits
+KILLALLMPG123=1
 
-kvalue=`grep ^KILLALLMPG123= $ASTETCDIR 2>/dev/null | cut -c 15`
-if test "x$kvalue" != "x" ; then
-    KILLALLMPG123=$kvalue
-else
-    KILLALLMPG123=0
-fi
+# run asterisk with this priority
+PRIORITY=0
 
-pvalue=`grep ^PRIORITY= $ASTETCDIR 2>/dev/null | cut -c 10`
-if test "x$pvalue" != "x" ; then
-    PRIORITY=$pvalue
-else
-    PRIORITY=0
-fi
+# set system filemax on supported OSes if this variable is set
+# SYSMAXFILES=262144
 
-svalue=`grep ^SYSMAXFILES= $ASTETCDIR 2>/dev/null | cut -c 13-21`
-if test "x$svalue" != "x" ; then
-    SYSMAXFILES=$svalue
-fi
+# Asterisk allows full permissions by default, so set a umask, if you want
+# restricted permissions.
+#UMASK=022
 
-mvalue=`grep ^MAXFILES= $ASTETCDIR 2>/dev/null | cut -c 10-15`
-if test "x$mvalue" != "x" ; then
-    MAXFILES=$mvalue
-fi
+# 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
 
 message() {
 	echo "$1" >&2
@@ -106,10 +96,8 @@ else
 
 fi
 
-
-uvalue=`grep ^UMASK= $ASTETCDIR 2>/dev/null | cut -c 7-10`
-if test "x$uvalue" != "x" ; then
-    umask $uvalue
+if test "x$UMASK" != "x"; then
+	umask $UMASK
 fi
 
 #
@@ -145,7 +133,7 @@ if test ! -d "${RUNDIR}" ; then
 	fi
 fi
 
-if test ! -w "${DUMPDROP}" ; then
+if test ! -w "${DUMPDROP}" ; then	
 	message "Cannot write to ${DUMPDROP}"
 	exit 1
 fi
@@ -169,7 +157,7 @@ fi
 
 run_asterisk()
 {
-	while :; do
+	while :; do 
 
 		if test "x$TTY" != "x" ; then
 			cd "${RUNDIR}"
-- 
GitLab