mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
ast_coredumper: Fix output directory and variable precedence
The OUTPUTDIR variable in ast_debug_tools.conf.sample is now set to "/tmp" instead of "/some/directory". Variables set on the command line or that are already in the environment now take predecence over variables set in the config files. ASTERISK-27846 Reported by: Ted G Change-Id: Ie8baec52d531886bf5849ec1d59bb59dc87ad387
This commit is contained in:
@@ -24,7 +24,7 @@ COREDUMPS=(/tmp/core[-._]asterisk!(*.txt) /tmp/core[-._]$(hostname)!(*.txt))
|
||||
# For output from existing core files, the default is the
|
||||
# directory that the core file is found in. For core files
|
||||
# produced from a running process, the default is /tmp.
|
||||
OUTPUTDIR=/some/directory
|
||||
OUTPUTDIR=/tmp
|
||||
|
||||
# Date command for the "running" coredump and tarballs.
|
||||
# DATEFORMAT will be executed to get the timestamp.
|
||||
|
@@ -225,10 +225,28 @@ append_coredumps=false
|
||||
declare -a COREDUMPS
|
||||
declare -a ARGS_COREDUMPS
|
||||
|
||||
# Read config files from least important to most important
|
||||
[ -f /etc/asterisk/ast_debug_tools.conf ] && source /etc/asterisk/ast_debug_tools.conf
|
||||
[ -f ~/ast_debug_tools.conf ] && source ~/ast_debug_tools.conf
|
||||
[ -f ./ast_debug_tools.conf ] && source ./ast_debug_tools.conf
|
||||
# readconf reads a bash-sourceable file and sets variables
|
||||
# that havn't already been set. This allows variables set
|
||||
# on the command line or that are already in the environment
|
||||
# to take precedence over those read from the file.
|
||||
#
|
||||
# Setting the values can't be done in a subshell so you can't
|
||||
# just pipe the output of sed into the while.
|
||||
|
||||
readconf() {
|
||||
while read line ; do
|
||||
declare -n v=${line%%=*}
|
||||
[ -z "${v}" ] && eval $line || :
|
||||
done <<EOF
|
||||
$( sed -r -e "/\s*#/d" -e "/^\s*$/d" $1 )
|
||||
EOF
|
||||
}
|
||||
|
||||
# Read config files from most important to least important.
|
||||
# Variable set on the command line or environment always take precedence.
|
||||
[ -f ./ast_debug_tools.conf ] && readconf ./ast_debug_tools.conf
|
||||
[ -f ~/ast_debug_tools.conf ] && readconf ~/ast_debug_tools.conf
|
||||
[ -f /etc/asterisk/ast_debug_tools.conf ] && readconf /etc/asterisk/ast_debug_tools.conf
|
||||
|
||||
# For *BSD, the preferred gdb may be in /usr/local/bin so we
|
||||
# need to search for one that supports python.
|
||||
|
Reference in New Issue
Block a user