summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/asterisk/files/1.6.2/asterisk.logrotate325
-rw-r--r--net-misc/asterisk/files/1.6.2/call_data.txt32
-rw-r--r--net-misc/asterisk/files/1.6.2/find_call_ids.sh17
-rw-r--r--net-misc/asterisk/files/1.6.2/find_call_sip_trace.sh21
-rw-r--r--net-misc/asterisk/files/1.6.2/sip_calc_auth25
-rw-r--r--net-misc/asterisk/files/1.8.0/asterisk.confd94
-rw-r--r--net-misc/asterisk/files/1.8.0/asterisk.initd7346
-rw-r--r--net-misc/asterisk/files/1.8.0/asterisk.initd8361
-rw-r--r--net-misc/asterisk/files/1.8.0/find_call_ids.sh68
-rw-r--r--net-misc/asterisk/files/1.8.0/find_call_sip_trace.sh76
10 files changed, 0 insertions, 1065 deletions
diff --git a/net-misc/asterisk/files/1.6.2/asterisk.logrotate3 b/net-misc/asterisk/files/1.6.2/asterisk.logrotate3
deleted file mode 100644
index 69296c99e66d..000000000000
--- a/net-misc/asterisk/files/1.6.2/asterisk.logrotate3
+++ /dev/null
@@ -1,25 +0,0 @@
-/var/log/asterisk/messages /var/log/asterisk/queue_log {
- missingok
- notifempty
-
- postrotate
- /usr/sbin/asterisk -rnx "logger reload" || /bin/true
- endscript
-}
-
-/var/log/asterisk/debug /var/log/asterisk/full {
- missingok
- notifempty
- daily
-
- postrotate
- /usr/sbin/asterisk -rnx "logger reload" || /bin/true
- endscript
-}
-
-/var/log/asterisk/cdr-csv/*.csv /var/log/asterisk/cdr-custom/*.csv {
- missingok
- notifempty
- weekly
- rotate 52
-}
diff --git a/net-misc/asterisk/files/1.6.2/call_data.txt b/net-misc/asterisk/files/1.6.2/call_data.txt
deleted file mode 100644
index ba9cbbba98b5..000000000000
--- a/net-misc/asterisk/files/1.6.2/call_data.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-It's sometimes useful to look at SIP conversations in retrospect. If you have
-a troublesome system, enable sip debug (in the CLI: sip set debug on), set up
-logger.conf to log it to some file and then you can use the two scripts here to
-extract the SIP converssations as seen by asterisk.
-
-find_call_ids.sh:
-
-This script will locate Call-ID values given an A and B number. Just invoke it with:
-
-find_call_ids.sh /path/to/log A-num B-num
-
-eg:
-
-find_call_ids.sh /var/log/asterisk/debug 102 105
-
-To find the Call-IDs for calls going from ext 102 to ext 105 (depends on your
-exact setup and the actual values being passed in the SIP INVITE packets)
-
-find_call_sip_trace.sh
-
-This script will extract a SIP conversation from the log for one or more
-Call-ID values. Invoke with:
-
-find_call_sip_trace.sh /path/to/log Call-ID [...]
-
-Eg:
-
-find_call_sip_trace.sh /var/log/asterisk/debug 12341665haf434qgrq3@192.168.0.5 123123@192.168.0.3
-
-This will find the SIP packets for those two conversations from the log
-(interleaving the packets in the order asterisk output them - useful for
-analysing the two SIP legs of the same call).
diff --git a/net-misc/asterisk/files/1.6.2/find_call_ids.sh b/net-misc/asterisk/files/1.6.2/find_call_ids.sh
deleted file mode 100644
index c4689bd1579d..000000000000
--- a/net-misc/asterisk/files/1.6.2/find_call_ids.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#! /bin/bash
-
-logfile=$1
-anum=$2
-bnum=$3
-
-function usage()
-{
- echo "USAGE: $1 logfile anum bnum"
- exit -1
-}
-
-[ -r "${logfile}" ] || usage $0
-[ -n "${anum}" ] || usage $0
-[ -n "${bnum}" ] || usage $0
-
-grep -B2 -P '^INVITE sip:'"${bnum}"'@.*\n(([^F].*|F[^r].*|Fr[^o].*|Fro[^m].*|From[^:]|From:.*<sip:'"${anum}"'@.*>.*)\r\n)+\r\n' "${logfile}" | awk '$4 ~ "^VERBOSE" { dt=$1" "$2" "$3 } $1=="Call-ID:" { if (cid != $2) { cid=$2; print dt" "cid; }}'
diff --git a/net-misc/asterisk/files/1.6.2/find_call_sip_trace.sh b/net-misc/asterisk/files/1.6.2/find_call_sip_trace.sh
deleted file mode 100644
index 5b2e69e517b4..000000000000
--- a/net-misc/asterisk/files/1.6.2/find_call_sip_trace.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#! /bin/bash
-
-logfile=$1
-callid=$2
-
-function usage()
-{
- echo "USAGE: $1 logfile Call-ID [Call-ID ...]"
- exit -1
-}
-
-[ -r "${logfile}" ] || usage $0
-[ -n "${callid}" ] || usage $0
-
-shift; shift;
-while [ $# -gt 0 ]; do
- callid="${callid}|$1"
- shift
-done
-
-dos2unix < "${logfile}" | grep -P '^.*\n<--- (SIP read|(Reliably )?(Ret|T)ransmitting) .*\n([^<\n].*\n)*Call-ID: ('"${callid//./\\.}"')\n((|[^<\n].*)\n)*<-+>$|^.* chan_sip.c: (Reliably )?(Ret|T)ransmitting .*\n([^-\n].*\n)*Call-ID: ('"${callid//./\\.}"')\n((|[^-\n].*)\n)*---$'
diff --git a/net-misc/asterisk/files/1.6.2/sip_calc_auth b/net-misc/asterisk/files/1.6.2/sip_calc_auth
deleted file mode 100644
index 3f050ada5738..000000000000
--- a/net-misc/asterisk/files/1.6.2/sip_calc_auth
+++ /dev/null
@@ -1,25 +0,0 @@
-#! /bin/bash
-
-[ $# -lt 7 ] && echo "USAGE: $0 username realm password method uri algorithm nonce" && exit 1
-
-un=$1
-realm=$2
-pw=$3
-method=$4
-uri=$5
-alg=$6
-nonce=$7
-
-echo "Using $un@$realm (secret $pw) for method $method to $uri with nonce $nonce (alg=$alg)"
-
-a1=$un:$realm:$pw
-a2=$method:$uri
-ha1=$(echo -n "$a1" | openssl $alg)
-ha2=$(echo -n "$a2" | openssl $alg)
-resp=$(echo -n "$ha1:$nonce:$ha2" | openssl $alg)
-
-echo "a1=$a1"
-echo "a2=$a2"
-echo "ha1=$ha1"
-echo "ha2=$ha2"
-echo "resp=$resp"
diff --git a/net-misc/asterisk/files/1.8.0/asterisk.confd b/net-misc/asterisk/files/1.8.0/asterisk.confd
deleted file mode 100644
index f826d46f245c..000000000000
--- a/net-misc/asterisk/files/1.8.0/asterisk.confd
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-#
-# Additional options for asterisk
-#
-# see "asterisk -h" for a list of options
-#
-ASTERISK_OPTS=""
-
-#
-# User and group to run asterisk as
-#
-# Value: double-colon separated list of user and group, or empty to run as root:
-#
-#
-# "asterisk:asterisk" to run as user "asterisk" and group "asterisk"
-#
-# "asterisk" to run as user "asterisk" and all groups that user "asterisk" is a member of
-#
-# ":asterisk" to run as user "root" and group "asterisk"
-#
-# "" to run as user "root" and group "root"
-#
-ASTERISK_USER="asterisk"
-
-#
-# Nicelevel
-#
-# Set the priority of the asterisk process
-#
-# Value: (highest) -20..19 (lowest)
-#
-#ASTERISK_NICE="19"
-
-# Send crash notifications emails to this address
-# (needs a working mail service and /usr/sbin/sendmail to do so (e.g. ssmtp))
-#
-# Value: Email address or empty to disable
-#
-#ASTERISK_NOTIFY_EMAIL="root"
-
-#
-# Send asterisk's output to this terminal
-#
-# Value: Full path to device node or a number
-#
-#ASTERISK_TTY="/dev/tty9"
-
-#
-# Start an asterisk console on the terminal specified by ASTERISK_TTY
-#
-# Warning! Use only for debugging, this is a potential security issue!
-#
-# Value: yes or no/empty
-#
-ASTERISK_CONSOLE="no"
-
-#
-# Maximum size of core files.
-#
-# Value: Size in bytes, unlimited for no limit or empty to disable.
-#
-ASTERISK_CORE_SIZE="unlimited"
-
-#
-# ASTERISK_CORE_DIR
-#
-# Value: Directory (will be created if non-existant), default is /tmp
-#
-ASTERISK_CORE_DIR="/var/lib/asterisk/coredump"
-
-#
-# Max number of filedescriptors
-#
-# Value: Number of descriptors
-#
-ASTERISK_MAX_FD="4096"
-
-#
-# Delay time before restarting asterisk after a crash.
-#
-# Value: Number of seconds to sleep after a crash before restarting.
-#
-ASTERISK_RESTART_DELAY=5
-
-#
-# Kill these tasks after asterisk crashed
-#
-# Warning! This will kill _ALL_ tasks with the specified names!
-#
-# Value: Space separated list of names in double quotes (e.g. "mpg123 mad")
-#
-#ASTERISK_CLEANUP_ON_CRASH="mpg123 asterisk-mpg123 mad"
diff --git a/net-misc/asterisk/files/1.8.0/asterisk.initd7 b/net-misc/asterisk/files/1.8.0/asterisk.initd7
deleted file mode 100644
index 0897919caac5..000000000000
--- a/net-misc/asterisk/files/1.8.0/asterisk.initd7
+++ /dev/null
@@ -1,346 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-extra_started_commands="forcestop reload"
-
-depend() {
- need net
- use nscd dns dahdi mysql postgresql slapd capi
-}
-
-is_running() {
- [ -r "${ast_rundir}/asterisk.pid" ] || return 1
- PID="$(cat "${ast_rundir}/asterisk.pid")"
- [ -d "/proc/${PID}" ] || return 1
- EXE="$(readlink -f /proc/${PID}/exe)"
- EXE="${EXE% (deleted)}" # in case asterisk got upgraded and we're still looking at an old one.
- [ "${EXE}" = /usr/sbin/asterisk ] || return 1 # pid got re-used for another process.
-
- # PID reported in pidfile is active, and is still an asterisk instance.
- return 0
-}
-
-# Sets up a few variables for us for use
-# ast_instancename: eg, asterisk when RC_SVCNAME=asterisk, or asterisk(foo) when asterisk.foo.
-# ast_rundir: directory to be used as run folder (pid and ctl files).
-# ast_spooldir:
-setup_svc_variables()
-{
- local t
-
- ast_instancename=asterisk
- ast_rundir=/var/run/${RC_SVCNAME}
- ast_logdir=/var/log/${RC_SVCNAME}
- ast_spooldir=/var/spool/${RC_SVCNAME}
- ast_confdir=/etc/${RC_SVCNAME/.//}
-
- if [ "${RC_SVCNAME}" != "asterisk" ]; then
- t="${RC_SVCNAME#asterisk.}"
- if [ "${RC_SVCNAME}" = "${t}" ]; then
- eerror "Invalid SVCNAME of ${RC_SVCNAME}, must be of the format asterisk.name."
- return 1
- fi
- ast_instancename+="(${t})"
- fi
-
- [ -n "${ASTERISK_RUNDIR}" ] && ast_rundir="${ASTERISK_RUNDIR}"
- [ -n "${ASTERISK_LOGDIR}" ] && ast_logdir="${ASTERISK_LOGDIR}"
- [ -n "${ASTERISK_SPOOLDIR}" ] && ast_spooldir="${ASTERISK_SPOOLDIR}"
- [ -n "${ASTERISK_CONFDIR}" ] && ast_confdir="${ASTERISK_CONFDIR}"
-
- return 0
-}
-
-asterisk_run_loop() {
- local result=0 signal=0
-
- echo "Initializing ${ast_instancename} wrapper"
- OPTS="$*"
-
- trap "rm -f '${ast_rundir}/wrapper_loop.running'" EXIT
- touch "${ast_rundir}/wrapper_loop.running"
-
- while [ -r "${ast_rundir}/wrapper_loop.running" ]; do
- if [ -n "${TTY}" ]; then
- /usr/bin/stty -F "${TTY}" sane
- ${NICE} /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" ${OPTS} >"${TTY}" 2>&1 <"${TTY}"
- result=$?
- else
- ${NICE} /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" ${OPTS} 2>&1 >/dev/null
- result=$?
- fi
-
- if [ "$result" -eq 0 ]; then
- echo "Asterisk terminated normally"
- break
- else
- if [ "$result" -gt 128 ]; then
- signal="$(expr "$result" - 128)"
- MSG="Asterisk terminated with Signal: $signal"
-
- CORE_TARGET="core-$(date "+%Y%m%d-%H%M%S")"
-
- local CORE_DUMPED=0
- if [ -f "${ASTERISK_CORE_DIR}/core" ]; then
- mv "${ASTERISK_CORE_DIR}/core" \
- "${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- CORE_DUMPED=1
-
- elif [ -f "${ASTERISK_CORE_DIR}/core.${PID}" ]; then
- mv "${ASTERISK_CORE_DIR}/core.${PID}" \
- "${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- CORE_DUMPED=1
-
- fi
-
- [ $CORE_DUMPED -eq 1 ] && \
- MSG="${MSG}\n\rCore dumped: ${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- else
- MSG="Asterisk terminated with return code: $result"
- fi
-
- # kill left-over tasks
- for X in ${ASTERISK_CLEANUP_ON_CRASH}; do
- kill -9 "$(pidof "${X}")";
- done
- fi
-
- [ -n "${TTY}" ] \
- && echo "${MSG}" >"${TTY}" \
- || echo "${MSG}"
-
-
- if [ -n "${ASTERISK_NOTIFY_EMAIL}" ] && \
- [ -x /usr/sbin/sendmail ]; then
- echo -e -n "Subject: Asterisk crashed\r\n${MSG}\r\n" |\
- /usr/sbin/sendmail "${ASTERISK_NOTIFY_EMAIL}"
- fi
- sleep "${ASTERISK_RESTART_DELAY}"
- echo "Restarting Asterisk..."
- done
-
- echo "Terminating wrapper loop."
- return 0
-}
-
-start() {
- local OPTS USER GROUP PID
- local tmp x
-
- local OPTS ARGS
-
- setup_svc_variables || return $?
-
- ebegin "Starting ${ast_instancename} PBX"
-
- eindent
-
- # filter (redundant) arguments
- OPTS="$(echo "${ASTERISK_OPTS}" | sed -re "s:-[cfF]::g")"
-
- # default options
- OPTS="${OPTS} -f" # don't fork / detach breaks wrapper script...
-
- # mangle yes/no options
- ASTERISK_CONSOLE="$(echo ${ASTERISK_CONSOLE} | tr '[:lower:]' '[:upper:]')"
- ASTERISK_WAITBOOTED="$(echo "${ASTERISK_WAITBOOTED}" | tr '[:lower:]' '[:upper:]')"
-
- ASTERISK_RESTART_DELAY="$(echo "${ASTERISK_RESTART_DELAY}" | sed -re 's/^([0-9]*).*/\1/')"
- [ -z "${ASTERISK_RESTART_DELAY}" ] && ASTERISK_RESTART_DELAY=5
-
- if [ -n "${ASTERISK_CORE_SIZE}" ] &&
- [ "${ASTERISK_CORE_SIZE}" != "0" ]; then
- ulimit -c ${ASTERISK_CORE_SIZE}
-
- if [ -n "${ASTERISK_CORE_DIR}" ] && \
- [ ! -d "${ASTERISK_CORE_DIR}" ]
- then
- mkdir -m750 -p "${ASTERISK_CORE_DIR}"
-
- if [ -n "${ASTERISK_USER}" ]; then
- chown -R "${ASTERISK_USER}" "${ASTERISK_CORE_DIR}"
- fi
- fi
- ASTERISK_CORE_DIR="${ASTERISK_CORE_DIR:-/tmp}"
-
- cd "${ASTERISK_CORE_DIR}"
- einfo "Core dump size : ${ASTERISK_CORE_SIZE}"
- einfo "Core dump location : ${ASTERISK_CORE_DIR}"
-
- OPTS="${OPTS} -g"
- fi
-
- if [ -n "${ASTERISK_MAX_FD}" ]; then
- ulimit -n ${ASTERISK_MAX_FD}
- einfo "Max open filedescriptors : ${ASTERISK_MAX_FD}"
- fi
-
- if [ -n "${ASTERISK_NICE}" ]; then
- if [ ${ASTERISK_NICE} -ge -20 ] && \
- [ ${ASTERISK_NICE} -le 19 ]; then
- einfo "Nice level : ${ASTERISK_NICE}"
- NICE="nice -n ${ASTERISK_NICE} --"
- else
- eerror "Nice value must be between -20 and 19"
- return 1
- fi
- else
- NICE=""
- fi
-
- if [ -n "${ASTERISK_NOTIFY_EMAIL}" ]; then
- if [ -x /usr/sbin/sendmail ]; then
- einfo "Email notifications go to : ${ASTERISK_NOTIFY_EMAIL}"
- else
- ewarn "Notifications disabled, /usr/sbin/sendmail doesn't exist or is not executable!"
- unset ASTERISK_NOTIFY_EMAIL
- fi
- fi
-
- if [ -n "${ASTERISK_TTY}" ]; then
- for x in ${ASTERISK_TTY} \
- /dev/tty${ASTERISK_TTY} \
- /dev/vc/${ASTERISK_TTY}
- do
- if [ -c "${x}" ]; then
- TTY="${x}"
- fi
- done
- [ -n "${TTY}" ] && \
- einfo "Messages are sent to : ${TTY}"
- fi
-
- if [ "${ASTERISK_CONSOLE}" = "YES" ] && [ -n "${TTY}" ]; then
- einfo "Starting Asterisk console : ${ASTERISK_CONSOLE}"
- OPTS="${OPTS} -c"
- fi
-
- if [ -n "${ASTERISK_USER}" ]; then
- USER="$(echo $ASTERISK_USER | sed 's/:.*//')"
- GROUP="$(echo $ASTERISK_USER | awk -F: '/.*:.*/ { print $2 }')"
- if [ -n "${USER}" ]; then
- if ! getent passwd "${USER}" &>/dev/null; then
- eerror "Requested to run asterisk as ${USER}, which doesn't exist."
- return 1
- fi
- OPTS="${OPTS} -U ${USER}"
- fi
- if [ -n "${GROUP}" ]; then
- if ! getent group "${GROUP}" &>/dev/null; then
- eerror "Requested to run asterisk with group ${USER}, which doesn't exist."
- return 1
- fi
- OPTS="${OPTS} -G ${GROUP}"
- GROUP=":${GROUP}" # make it look nice...
- fi
- checkpath -d -m 0755 -o ${USER}${GROUP} "${ast_logdir}" "${ast_rundir}" "${ast_spooldir}"
- find "${ast_logdir}" "${ast_rundir}" "${ast_spooldir}" ! -user "${USER}" | while read element; do
- ewarn "${USER} is not the owner of $element, or permissions are insufficient, fixing."
- chown ${USER} "${element}"
- chmod u+rX "${element}"
- done;
- einfo "Starting asterisk as : ${USER}${GROUP}"
- else
- checkpath -d -m 0755 -o root:root "${ast_logdir}" "${ast_rundir}"
- ewarn "Starting asterisk as root is not recommended."
- fi
-
- asterisk_run_loop ${OPTS} 2>&1 | logger -t "wrapper:${ast_instancename}" &
- result=$?
-
- if [ $result -eq 0 ]; then
- # 2 seconds should be enough for asterisk to start
- sleep 2
- is_running
- result=$?
-
- [ $result -eq 0 ] || wrapperstop
- fi
-
- eoutdent
- eend $result
-
- if [ $result -eq 0 -a "${ASTERISK_WAITBOOTED}" = "YES" ]; then
- ebegin "Waiting for ${ast_instancename} to fully boot"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core waitfullybooted" &>/dev/null
- eend $?
- fi
-
- return $result
-}
-
-wrapperstop() {
- # Accomodate system upgrades (so a previous version of the wrapper script that still uses a pid file may be running).
- if [ -r "${ast_rundir}/wrapper_loop.pid" ]; then
- ebegin "Killing wrapper script"
- kill "$(cat /var/run/asterisk/wrapper_loop.pid)"
- eend $?
- fi
-
- # The new one (due to "hardened" requirements) uses a simpler
- # flag to indicate running or shutting down.
- if [ -r "${ast_rundir}/wrapper_loop.running" ]; then
- ebegin "Signalling wrapper script to terminate"
- rm "${ast_rundir}/wrapper_loop.running"
- eend $?
- fi
-
- return 0
-}
-
-forcestop() {
- setup_svc_variables || return $?
-
- # Just to be sure - when we want to forcestop we should make it all tear down.
- wrapperstop
-
- ebegin "Stopping asterisk PBX"
- start-stop-daemon --stop --pidfile /var/run/asterisk/asterisk.pid
- eend $?
-}
-
-stop() {
- setup_svc_variables || return $?
-
- wrapperstop
-
- if ! is_running; then
- eerror "Asterisk is not running!"
- return 0
- fi
-
- ebegin "Stopping asterisk PBX gracefully"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core stop gracefully" &>/dev/null
- # Now we have to wait until asterisk has _really_ stopped.
- sleep 1
- if is_running; then
- einfon "Waiting for asterisk to shutdown ."
- local cnt=0
- while is_running; do
- cnt="$(expr $cnt + 1)"
- if [ $cnt -gt 60 ] ; then
- # Waited 120 seconds now. Fail.
- echo
- eend 1 "Failed."
- return
- fi
- sleep 2
- echo -n "."
- done
- echo
- fi
- eend 0
-}
-
-reload() {
- setup_svc_variables || return $?
-
- if is_running; then
- ebegin "Forcing asterisk to reload configuration"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "module reload" &>/dev/null
- eend $?
- else
- eerror "Asterisk is not running!"
- fi
-}
diff --git a/net-misc/asterisk/files/1.8.0/asterisk.initd8 b/net-misc/asterisk/files/1.8.0/asterisk.initd8
deleted file mode 100644
index 4419dda06883..000000000000
--- a/net-misc/asterisk/files/1.8.0/asterisk.initd8
+++ /dev/null
@@ -1,361 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-extra_started_commands="forcestop reload"
-extra_commands="checkperms"
-
-depend() {
- need net
- use nscd dns dahdi mysql postgresql slapd capi
-}
-
-is_running() {
- [ -r "${ast_rundir}/asterisk.pid" ] || return 1
- PID="$(cat "${ast_rundir}/asterisk.pid")"
- [ -d "/proc/${PID}" ] || return 1
- EXE="$(readlink -f /proc/${PID}/exe)"
- EXE="${EXE% (deleted)}" # in case asterisk got upgraded and we're still looking at an old one.
- [ "${EXE}" = /usr/sbin/asterisk ] || return 1 # pid got re-used for another process.
-
- # PID reported in pidfile is active, and is still an asterisk instance.
- return 0
-}
-
-# Sets up a few variables for us for use
-# ast_instancename: eg, asterisk when RC_SVCNAME=asterisk, or asterisk(foo) when asterisk.foo.
-# ast_rundir: directory to be used as run folder (pid and ctl files).
-# ast_spooldir:
-setup_svc_variables()
-{
- local t
-
- ast_instancename=asterisk
- ast_rundir=/var/run/${RC_SVCNAME}
- ast_logdir=/var/log/${RC_SVCNAME}
- ast_spooldir=/var/spool/${RC_SVCNAME}
- ast_confdir=/etc/${RC_SVCNAME/.//}
-
- if [ "${RC_SVCNAME}" != "asterisk" ]; then
- t="${RC_SVCNAME#asterisk.}"
- if [ "${RC_SVCNAME}" = "${t}" ]; then
- eerror "Invalid SVCNAME of ${RC_SVCNAME}, must be of the format asterisk.name."
- return 1
- fi
- ast_instancename+="(${t})"
- fi
-
- [ -n "${ASTERISK_RUNDIR}" ] && ast_rundir="${ASTERISK_RUNDIR}"
- [ -n "${ASTERISK_LOGDIR}" ] && ast_logdir="${ASTERISK_LOGDIR}"
- [ -n "${ASTERISK_SPOOLDIR}" ] && ast_spooldir="${ASTERISK_SPOOLDIR}"
- [ -n "${ASTERISK_CONFDIR}" ] && ast_confdir="${ASTERISK_CONFDIR}"
-
- if [ -n "${ASTERISK_USER}" ]; then
- ast_user="${ASTERISK_USER%%:*}"
- ast_group="${ASTERISK_USER#*:}"
- ast_group="${ast_group%%:*}"
- [ -z "${ast_user}" ] && ast_user=root
- [ -z "${ast_group}" ] && ast_group="$(getent group $(getent passwd "${ast_user}" | awk -F: '{ print $4 }') | sed -re 's/:.*//')"
- fi
-
- [ -z "${ast_user}" ] && ast_user=root
- [ -z "${ast_group}" ] && ast_group=root
-
- return 0
-}
-
-checkperms() {
- setup_svc_variables
-
- local path
- checkpath -d -m 0755 -o ${ast_user}:${ast_group} "${ast_logdir}" "${ast_rundir}" "${ast_spooldir}"
- for path in "${ast_rundir}" "${ast_spooldir}" "${ast_logdir}"; do
- ebegin "Checking ${path}"
- find "${path}" ! -user "${ast_user}" | while read element; do
- [[ "${element}" = *.gz ]] && continue # Skip logrotated files.
- ewarn "${ast_user} is not the owner of ${element}, or permissions are insufficient, fixing."
- chown ${ast_user} "${element}"
- chmod u+rwX "${element}"
- done;
- eend 0
- done
-}
-
-asterisk_run_loop() {
- local result=0 signal=0
-
- echo "Initializing ${ast_instancename} wrapper"
- OPTS="$*"
-
- trap "rm -f '${ast_rundir}/wrapper_loop.running'" EXIT
- touch "${ast_rundir}/wrapper_loop.running"
-
- while [ -r "${ast_rundir}/wrapper_loop.running" ]; do
- if [ -n "${TTY}" ]; then
- /usr/bin/stty -F "${TTY}" sane
- ${NICE} /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" ${OPTS} >"${TTY}" 2>&1 <"${TTY}"
- result=$?
- else
- ${NICE} /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" ${OPTS} 2>&1 >/dev/null
- result=$?
- fi
-
- if [ "$result" -eq 0 ]; then
- echo "Asterisk terminated normally"
- break
- else
- if [ "$result" -gt 128 ]; then
- signal="$(expr "$result" - 128)"
- MSG="Asterisk terminated with Signal: $signal"
-
- CORE_TARGET="core-$(date "+%Y%m%d-%H%M%S")"
-
- local CORE_DUMPED=0
- if [ -f "${ASTERISK_CORE_DIR}/core" ]; then
- mv "${ASTERISK_CORE_DIR}/core" \
- "${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- CORE_DUMPED=1
-
- elif [ -f "${ASTERISK_CORE_DIR}/core.${PID}" ]; then
- mv "${ASTERISK_CORE_DIR}/core.${PID}" \
- "${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- CORE_DUMPED=1
-
- fi
-
- [ $CORE_DUMPED -eq 1 ] && \
- MSG="${MSG}\n\rCore dumped: ${ASTERISK_CORE_DIR}/${CORE_TARGET}"
- else
- MSG="Asterisk terminated with return code: $result"
- fi
-
- # kill left-over tasks
- for X in ${ASTERISK_CLEANUP_ON_CRASH}; do
- kill -9 "$(pidof "${X}")";
- done
- fi
-
- [ -n "${TTY}" ] \
- && echo "${MSG}" >"${TTY}" \
- || echo "${MSG}"
-
-
- if [ -n "${ASTERISK_NOTIFY_EMAIL}" ] && \
- [ -x /usr/sbin/sendmail ]; then
- echo -e -n "Subject: Asterisk crashed\r\n${MSG}\r\n" |\
- /usr/sbin/sendmail "${ASTERISK_NOTIFY_EMAIL}"
- fi
- sleep "${ASTERISK_RESTART_DELAY}"
- echo "Restarting Asterisk..."
- done
-
- echo "Terminating wrapper loop."
- return 0
-}
-
-start() {
- local OPTS PID
- local tmp x
-
- local OPTS ARGS
-
- setup_svc_variables || return $?
-
- ebegin "Starting ${ast_instancename} PBX"
-
- eindent
-
- # filter (redundant) arguments
- OPTS="$(echo "${ASTERISK_OPTS}" | sed -re "s:-[cfF]::g")"
-
- # default options
- OPTS="${OPTS} -f" # don't fork / detach breaks wrapper script...
-
- # mangle yes/no options
- ASTERISK_CONSOLE="$(echo ${ASTERISK_CONSOLE} | tr '[:lower:]' '[:upper:]')"
- ASTERISK_WAITBOOTED="$(echo "${ASTERISK_WAITBOOTED}" | tr '[:lower:]' '[:upper:]')"
-
- ASTERISK_RESTART_DELAY="$(echo "${ASTERISK_RESTART_DELAY}" | sed -re 's/^([0-9]*).*/\1/')"
- [ -z "${ASTERISK_RESTART_DELAY}" ] && ASTERISK_RESTART_DELAY=5
-
- if [ -n "${ASTERISK_CORE_SIZE}" ] &&
- [ "${ASTERISK_CORE_SIZE}" != "0" ]; then
- ulimit -c ${ASTERISK_CORE_SIZE}
-
- if [ -n "${ASTERISK_CORE_DIR}" ] && \
- [ ! -d "${ASTERISK_CORE_DIR}" ]
- then
- checkpath -d -m 0755 -o ${ast_user}:${ast_group} "${ASTERISK_CORE_DIR}"
- fi
- ASTERISK_CORE_DIR="${ASTERISK_CORE_DIR:-/tmp}"
-
- cd "${ASTERISK_CORE_DIR}"
- einfo "Core dump size : ${ASTERISK_CORE_SIZE}"
- einfo "Core dump location : ${ASTERISK_CORE_DIR}"
-
- OPTS="${OPTS} -g"
- fi
-
- if [ -n "${ASTERISK_MAX_FD}" ]; then
- ulimit -n ${ASTERISK_MAX_FD}
- einfo "Max open filedescriptors : ${ASTERISK_MAX_FD}"
- fi
-
- if [ -n "${ASTERISK_NICE}" ]; then
- if [ ${ASTERISK_NICE} -ge -20 ] && \
- [ ${ASTERISK_NICE} -le 19 ]; then
- einfo "Nice level : ${ASTERISK_NICE}"
- NICE="nice -n ${ASTERISK_NICE} --"
- else
- eerror "Nice value must be between -20 and 19"
- return 1
- fi
- else
- NICE=""
- fi
-
- if [ -n "${ASTERISK_NOTIFY_EMAIL}" ]; then
- if [ -x /usr/sbin/sendmail ]; then
- einfo "Email notifications go to : ${ASTERISK_NOTIFY_EMAIL}"
- else
- ewarn "Notifications disabled, /usr/sbin/sendmail doesn't exist or is not executable!"
- unset ASTERISK_NOTIFY_EMAIL
- fi
- fi
-
- if [ -n "${ASTERISK_TTY}" ]; then
- for x in ${ASTERISK_TTY} \
- /dev/tty${ASTERISK_TTY} \
- /dev/vc/${ASTERISK_TTY}
- do
- if [ -c "${x}" ]; then
- TTY="${x}"
- fi
- done
- [ -n "${TTY}" ] && \
- einfo "Messages are sent to : ${TTY}"
- fi
-
- if [ "${ASTERISK_CONSOLE}" = "YES" ] && [ -n "${TTY}" ]; then
- einfo "Starting Asterisk console : ${ASTERISK_CONSOLE}"
- OPTS="${OPTS} -c"
- fi
-
- if ! getent passwd "${ast_user}" &>/dev/null; then
- eerror "Requested to run asterisk as ${ast_user}, which doesn't exist."
- return 1
- fi
- OPTS="${OPTS} -U ${ast_user}"
-
- if ! getent group "${ast_group}" &>/dev/null; then
- eerror "Requested to run asterisk with group ${ast_group}, which doesn't exist."
- return 1
- fi
- OPTS="${OPTS} -G ${ast_group}"
-
- if [ "${ast_user}" = root ]; then
- ewarn "Starting asterisk as root is not recommended (SERIOUS SECURITY CONSIDERATIONS)."
- elif [ "${ast_group}" = root ]; then
- ewarn "Starting asterisk with group root is not recommended (SERIOUS SECURITY CONSIDERATIONS)."
- fi
-
- checkpath -d -m 0755 -o "${ast_user}:${ast_group}" "${ast_logdir}" "${ast_rundir}"
- einfo "Starting asterisk as : ${ast_user}:${ast_group}"
- asterisk_run_loop ${OPTS} 2>&1 | logger -t "wrapper:${ast_instancename}" &
- result=$?
-
- if [ $result -eq 0 ]; then
- # 2 seconds should be enough for asterisk to start
- sleep 2
- is_running
- result=$?
-
- [ $result -eq 0 ] || wrapperstop
- fi
-
- eoutdent
- eend $result
-
- if [ $result -eq 0 -a "${ASTERISK_WAITBOOTED}" = "YES" ]; then
- ebegin "Waiting for ${ast_instancename} to fully boot"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core waitfullybooted" &>/dev/null
- eend $?
- fi
-
- return $result
-}
-
-wrapperstop() {
- # Accomodate system upgrades (so a previous version of the wrapper script that still uses a pid file may be running).
- if [ -r "${ast_rundir}/wrapper_loop.pid" ]; then
- ebegin "Killing wrapper script"
- kill "$(cat /var/run/asterisk/wrapper_loop.pid)"
- eend $?
- fi
-
- # The new one (due to "hardened" requirements) uses a simpler
- # flag to indicate running or shutting down.
- if [ -r "${ast_rundir}/wrapper_loop.running" ]; then
- ebegin "Signalling wrapper script to terminate"
- rm "${ast_rundir}/wrapper_loop.running"
- eend $?
- fi
-
- return 0
-}
-
-forcestop() {
- setup_svc_variables || return $?
-
- # Just to be sure - when we want to forcestop we should make it all tear down.
- wrapperstop
-
- ebegin "Stopping asterisk PBX"
- start-stop-daemon --stop --pidfile /var/run/asterisk/asterisk.pid
- eend $?
-}
-
-stop() {
- setup_svc_variables || return $?
-
- wrapperstop
-
- if ! is_running; then
- eerror "Asterisk is not running!"
- return 0
- fi
-
- ebegin "Stopping asterisk PBX gracefully"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core stop gracefully" &>/dev/null
- # Now we have to wait until asterisk has _really_ stopped.
- sleep 1
- if is_running; then
- einfon "Waiting for asterisk to shutdown ."
- local cnt=0
- while is_running; do
- cnt="$(expr $cnt + 1)"
- if [ $cnt -gt 60 ] ; then
- # Waited 120 seconds now. Fail.
- echo
- eend 1 "Failed."
- return
- fi
- sleep 2
- echo -n "."
- done
- echo
- fi
- eend 0
-}
-
-reload() {
- setup_svc_variables || return $?
-
- if is_running; then
- ebegin "Forcing asterisk to reload configuration"
- /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "module reload" &>/dev/null
- eend $?
- else
- eerror "Asterisk is not running!"
- fi
-}
diff --git a/net-misc/asterisk/files/1.8.0/find_call_ids.sh b/net-misc/asterisk/files/1.8.0/find_call_ids.sh
deleted file mode 100644
index 321f3dacd624..000000000000
--- a/net-misc/asterisk/files/1.8.0/find_call_ids.sh
+++ /dev/null
@@ -1,68 +0,0 @@
-#! /bin/bash
-
-logfile=$1
-anum=$2
-bnum=$3
-
-function usage()
-{
- echo "USAGE: $1 logfile anum bnum"
- exit -1
-}
-
-[ -r "${logfile}" ] || usage $0
-[ -n "${anum}" ] || usage $0
-[ -n "${bnum}" ] || usage $0
-
-#echo "Finding calls from '${anum}' to '${bnum}' in ${logfile}."
-
-# modes:
-# 0 - not processing an INVITE.
-# 1 - processing an INVITE.
-# 2 - from matched (processing).
-dos2unix < "${logfile}" | awk '
- BEGIN { mode = 0 }
- mode==0 && $4~"^VERBOSE" {
- dt=$1" "$2" "$3
- }
-
- mode==0 && $1=="INVITE" && $2 ~ "^sip:'"${bnum}"'@" {
- #print
-
- mode=1
-
- split($2, a, "[:@]")
- bnum=a[2]
- }
-
- mode==1 && $1=="From:" {
- #print
- if ($3 ~ "^<sip:'"${anum}"'@.*>") {
- mode=2
- split($3, a, "[:@]")
- anum=a[2]
- } else {
- #print "From does not match ... leaving block."
- mode = 0
- }
- }
-
- mode!=0 && $1=="Call-ID:" {
- callid=$2
-
- if (NF!=2) {
- print "WTF @ Call-ID header having NF!=2"
- }
- }
-
- mode==1 && $0=="" {
- #print "Leaving block (no match)"
- mode = 0
- }
-
- mode==2 && $0=="" {
- #print "Leaving block (match)"
- print dt " " anum " " bnum " " callid
- mode = 0
- }
-'
diff --git a/net-misc/asterisk/files/1.8.0/find_call_sip_trace.sh b/net-misc/asterisk/files/1.8.0/find_call_sip_trace.sh
deleted file mode 100644
index 06ae824def5c..000000000000
--- a/net-misc/asterisk/files/1.8.0/find_call_sip_trace.sh
+++ /dev/null
@@ -1,76 +0,0 @@
-#! /bin/bash
-
-logfile=$1
-callid=$2
-
-function usage()
-{
- echo "USAGE: $1 logfile Call-ID [Call-ID ...]"
- exit -1
-}
-
-[ -r "${logfile}" ] || usage $0
-[ -n "${callid}" ] || usage $0
-
-shift; shift;
-while [ $# -gt 0 ]; do
- callid="${callid}|$1"
- shift
-done
-
-# modes:
-# 0 - searching for SIP start block ...
-# 1 - transmit of sorts
-# 2 - receive
-
-dos2unix < "${logfile}" | awk '
- BEGIN { mode = 0 }
- mode==0 && $4~"^VERBOSE" {
- dt=$1" "$2" "$3
- }
-
- mode!=0 && $1 == "Call-ID:" {
- #print
-
- if ($2 ~ /('"${callid}"')/) {
- callidmatch=1
- } else {
- #print $2" does not match ^('"${callid}"')$"
- mode=0
- }
- }
-
- (mode==1 && $0=="---") || (mode==2 && $0=="<------------->") {
- if (callidmatch) {
- print dt" "sipmode"\n"pckt"---"
- }
-
- mode=0
- }
-
- mode!=0 {
- pckt = pckt $0 "\n"
- }
-
- mode==0 && $0 ~ "chan_sip[.]c: .*[tT]ransmitting" {
- #print
-
- if ($6 == "Retransmitting") {
- sipmode = $6" "$7" to "$NF
- } else {
- sipmode = "Transmitting to "$NF
- }
-
- mode=1
- pckt=""
- callidmatch=0
- }
-
- mode==0 && $0 ~ "SIP read from" {
- #print
- mode=2
- pckt=""
- callidmatch=0
- sipmode="Received from "$5":"
- }
-'