$OpenBSD: patch-contrib_scripts_safe_asterisk,v 1.9 2009/12/13 12:11:29 sthen Exp $
--- contrib/scripts/safe_asterisk.orig	Tue Dec 16 19:55:38 2008
+++ contrib/scripts/safe_asterisk	Fri Apr 24 15:01:35 2009
@@ -2,9 +2,9 @@
 # vim:textwidth=80:tabstop=4:shiftwidth=4:smartindent:autoindent
 
 CLIARGS="$*"				# Grab any args passed to safe_asterisk
-TTY=9						# TTY (if you want one) for Asterisk to run on
-CONSOLE=yes					# Whether or not you want a console
-#NOTIFY=ben@alkaloid.net	# Who to notify about crashes
+TTY=""						# TTY (if you want one) for Asterisk to run on
+CONSOLE=no					# Whether or not you want a console
+NOTIFY=root					# Who to notify about crashes
 #EXEC=/path/to/somescript	# Run this command if Asterisk crashes
 #LOGFILE=/path/to/logfile	# Where to place the normal logfile (disabled if blank)
 #SYSLOG=local0				# Which syslog facility to use (disabled if blank)
@@ -13,10 +13,11 @@ DUMPDROP=/tmp
 SLEEPSECS=4
 ASTSBINDIR=__ASTERISK_SBIN_DIR__
 ASTPIDFILE=__ASTERISK_VARRUN_DIR__/asterisk.pid
+VARRUNOWNER="_asterisk:wheel"	# chown __ASTERISK_VARRUN_DIR__ if it's created.
 
-# comment this line out to have this script _not_ kill all mpg123 processes when
+# uncomment this line to have this script kill all mpg123 processes when
 # asterisk exits
-KILLALLMPG123=1
+# KILLALLMPG123=1
 
 # run asterisk with this priority
 PRIORITY=0
@@ -32,7 +33,7 @@ PRIORITY=0
 # set to the system's maximum files open devided by two, if not set here.
 # MAXFILES=32768
 
-function message() {
+message() {
 	echo "$1" >&2
 	if [ "$SYSLOG" != "" ]; then
 	    logger -p "${SYSLOG}.warn" -t safe_asterisk[$$] "$1"
@@ -91,6 +92,12 @@ else
 	# set the process's filemax to whatever set above
 	ulimit -n $MAXFILES
 
+	varrundir=`dirname $ASTPIDFILE`
+	if [ ! -d $varrundir ]; then
+		mkdir -p $varrundir
+		[ -n "$VARRUNOWNER" ] && chown $VARRUNOWNER $varrundir
+		chmod 770 $varrundir
+	fi
 fi
 
 if test "x$UMASK" != "x"; then
@@ -192,7 +199,7 @@ run_asterisk()
 		sleep $SLEEPSECS
 		if [ $KILLALLMPG123 ]
 		then
-			killall -9 mpg123
+			pkill -9 mpg123
 		fi
 	done
 }
