[zaptel-commits] tzafrir: branch tzafrir/zaphelper r1634 - in
/team/tzafrir/zaphelper: ./ exam...
zaptel-commits at lists.digium.com
zaptel-commits at lists.digium.com
Tue Nov 21 23:10:17 MST 2006
Author: tzafrir
Date: Wed Nov 22 00:10:17 2006
New Revision: 1634
URL: http://svn.digium.com/view/zaptel?view=rev&rev=1634
Log:
Start splitting zaptel.init into distro-specific scripts.
* examples/zaptel.debian.init is basically ready.
* examples/zaptel.{rh,suse}.init are copies of an older zaptel.init so far.
* new zaptel-helper functions:
- init_astribank to run all of the Astribank functions.
- fxotune_load to load fxotune.
* Fixed a typo with the default value of fxotune.
Added:
team/tzafrir/zaphelper/examples/
team/tzafrir/zaphelper/examples/zaptel.debian.init (with props)
team/tzafrir/zaphelper/examples/zaptel.rh.init (with props)
team/tzafrir/zaphelper/examples/zaptel.suse.init (with props)
Modified:
team/tzafrir/zaphelper/zaptel-helper
team/tzafrir/zaphelper/zaptel.init
Added: team/tzafrir/zaphelper/examples/zaptel.debian.init
URL: http://svn.digium.com/view/zaptel/team/tzafrir/zaphelper/examples/zaptel.debian.init?view=auto&rev=1634
==============================================================================
--- team/tzafrir/zaphelper/examples/zaptel.debian.init (added)
+++ team/tzafrir/zaphelper/examples/zaptel.debian.init Wed Nov 22 00:10:17 2006
@@ -1,0 +1,77 @@
+#!/bin/sh
+#
+# FIXME: make lsb-compliant.
+# zaptel This shell script takes care of loading and unloading \
+# Zapata Telephony interfaces
+# chkconfig: 2345 9 92
+# description: The zapata telephony drivers allow you to use your linux \
+# computer to accept incoming data and voice interfaces
+#
+# config: /etc/sysconfig/zaptel
+
+set -e
+
+# include it. Don't run it:
+ZAPHELPER_ONLY_INCLUDE=1
+
+ZAPHELPER_PATH=/sbin/zaptel-helper
+
+ZTCFG=/sbin/ztcfg
+ZAPCONF_FILE=/etc/zaptel.conf
+
+DESC="Zaptel telephony kernel driver"
+
+if [ -r /etc/default/zaptel ]; then . /etc/default/zaptel; fi
+
+if [ -r "$ZAPHELPER_PATH" ]; then . $ZAPHELPER_PATH; fi
+
+if [ ! -x $ZTCFG ] ; then
+ echo >&2 $NAME ":" $ZTCFG "fails test for exists and executable" ;
+ exit 0
+fi
+
+if [ ! -r $ZAPCONF_FILE ] ; then
+ echo >&2 $NAME ":" $ZAPCONF_FILE "fails test for exists and readable";
+ exit 0
+fi
+
+# See how we were called.
+case "$1" in
+start)
+ echo -n "$DESC:"
+
+ # Assumes that the modules were already modprobed
+
+ # Get the Astribank module loaded properly:
+ init_astribank
+
+ # wait for udev to generate /dev/zap/ctl before running ztcfg
+ wait_for_zapctl
+
+ # load ztdummy if there is no existing timing source.
+ # FIXME: we check that /dev/zap/ctl was generated, not that
+ # /dev/zap/pseudo was generated.
+ guarantee_timing_source
+
+ fxotune_load
+
+ $ZTCFG || echo -n "$ZTCFG failed. Check $ZAPCONF_FILE"
+ echo "$NAME."
+ ;;
+stop)
+ # FIXME: What should be done here?
+ ;;
+restart)
+ $0 stop
+ $0 start
+ ;;
+reload)
+ echo -n "Reloading ztcfg: "
+ $ZTCFG && echo -n "done"
+ echo "."
+ ;;
+*)
+ echo "Usage: zaptel {start|stop|restart|reload}"
+ exit 1
+esac
+
Propchange: team/tzafrir/zaphelper/examples/zaptel.debian.init
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: team/tzafrir/zaphelper/examples/zaptel.debian.init
------------------------------------------------------------------------------
svn:executable = *
Propchange: team/tzafrir/zaphelper/examples/zaptel.debian.init
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: team/tzafrir/zaphelper/examples/zaptel.debian.init
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: team/tzafrir/zaphelper/examples/zaptel.rh.init
URL: http://svn.digium.com/view/zaptel/team/tzafrir/zaphelper/examples/zaptel.rh.init?view=auto&rev=1634
==============================================================================
--- team/tzafrir/zaphelper/examples/zaptel.rh.init (added)
+++ team/tzafrir/zaphelper/examples/zaptel.rh.init Wed Nov 22 00:10:17 2006
@@ -1,0 +1,120 @@
+#!/bin/sh
+#
+# FIXME: make lsb-compliant.
+# zaptel This shell script takes care of loading and unloading \
+# Zapata Telephony interfaces
+# chkconfig: 2345 9 92
+# description: The zapata telephony drivers allow you to use your linux \
+# computer to accept incoming data and voice interfaces
+#
+# config: /etc/sysconfig/zaptel
+
+initdir=/etc/init.d
+
+# include it. Don't run it:
+ZAPHELPER_ONLY_INCLUDE=1
+
+ZAPHELPER_PATH=/sbin/zaptel-helper
+
+ZTCFG=/sbin/ztcfg
+
+#
+# Determine which kind of configuration we're using
+#
+system=redhat # assume redhat
+if [ -f /etc/debian_version ]; then
+ system=debian
+fi
+
+# Source function library.
+if [ $system = redhat ]; then
+ . $initdir/functions || exit 0
+fi
+
+# Source zaptel configuration.
+if [ $system = debian ]; then
+ set -e
+ if [ -r /etc/default/zaptel ]; then . /etc/default/zaptel; fi
+ LOCKFILE=/var/lock/zaptel # FIXME: not used with Debian.
+elif [ $system = redhat ]; then
+ [ -r /etc/sysconfig/zaptel ] && . /etc/sysconfig/zaptel
+ LOCKFILE=/var/lock/subsys/zaptel
+fi
+
+if [ -r "$ZAPHELPER_PATH" ]; then . $ZAPHELPER_PATH; fi
+
+if [ -z "${MODULES}" ]; then
+ # Populate defaults if not present
+ MODULES="tor2 wct4xxp wct1xxp wcte11xp wcfxo wctdm wctdm24xxp"
+fi
+
+# Check that telephony is up.
+[ "${TELEPHONY}" = "yes" ] || exit 0
+
+[ -f /sbin/ztcfg ] || exit 0
+
+[ -f /etc/zaptel.conf ] || exit 0
+
+RETVAL=0
+
+# See how we were called.
+case "$1" in
+start)
+ echo -n "Loading zaptel hardware modules:"
+ if [ "$system" = redhat ]; then
+ for mod in ${MODULES}; do
+ modprobe $mod
+ done
+ fi
+
+ # Get the Astribank module loaded properly:
+ wait_for_xpp
+ zap_reg_xpp
+ fix_asterisbank_sync
+
+ # wait for udev to generate /dev/zap/ctl before running ztcfg
+ wait_for_zapctl
+
+ # load ztdummy if there is no existing timing source.
+ # FIXME: we check that /dev/zap/ctl was generated, not that
+ # /dev/zap/pseudo was generated.
+ guarantee_timing_source
+
+ $ZTCFG
+
+ RETVAL=$?
+
+ [ $RETVAL -eq 0 ] && touch $LOCKFILE
+ ;;
+stop)
+ # Unload drivers
+ # FIXME: Not for Debian?
+ echo -n "Unloading zaptel hardware drivers:"
+ unload_modules
+ echo .
+
+ RETVAL=$?
+
+ [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
+ ;;
+restart)
+ $0 stop
+ $0 start
+ ;;
+reload)
+ if [ $system = debian ]; then
+ echo -n "Reloading ztcfg: "
+ $ZTCFG && echo -n "done"
+ echo "."
+ elif [ $system = redhat ]; then
+ action "Reloading ztcfg: " $ZTCFG
+ fi
+ RETVAL=$?
+ ;;
+*)
+ echo "Usage: zaptel {start|stop|restart|reload}"
+ exit 1
+esac
+
+exit $RETVAL
+
Propchange: team/tzafrir/zaphelper/examples/zaptel.rh.init
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: team/tzafrir/zaphelper/examples/zaptel.rh.init
------------------------------------------------------------------------------
svn:executable = *
Propchange: team/tzafrir/zaphelper/examples/zaptel.rh.init
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: team/tzafrir/zaphelper/examples/zaptel.rh.init
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: team/tzafrir/zaphelper/examples/zaptel.suse.init
URL: http://svn.digium.com/view/zaptel/team/tzafrir/zaphelper/examples/zaptel.suse.init?view=auto&rev=1634
==============================================================================
--- team/tzafrir/zaphelper/examples/zaptel.suse.init (added)
+++ team/tzafrir/zaphelper/examples/zaptel.suse.init Wed Nov 22 00:10:17 2006
@@ -1,0 +1,120 @@
+#!/bin/sh
+#
+# FIXME: make lsb-compliant.
+# zaptel This shell script takes care of loading and unloading \
+# Zapata Telephony interfaces
+# chkconfig: 2345 9 92
+# description: The zapata telephony drivers allow you to use your linux \
+# computer to accept incoming data and voice interfaces
+#
+# config: /etc/sysconfig/zaptel
+
+initdir=/etc/init.d
+
+# include it. Don't run it:
+ZAPHELPER_ONLY_INCLUDE=1
+
+ZAPHELPER_PATH=/sbin/zaptel-helper
+
+ZTCFG=/sbin/ztcfg
+
+#
+# Determine which kind of configuration we're using
+#
+system=redhat # assume redhat
+if [ -f /etc/debian_version ]; then
+ system=debian
+fi
+
+# Source function library.
+if [ $system = redhat ]; then
+ . $initdir/functions || exit 0
+fi
+
+# Source zaptel configuration.
+if [ $system = debian ]; then
+ set -e
+ if [ -r /etc/default/zaptel ]; then . /etc/default/zaptel; fi
+ LOCKFILE=/var/lock/zaptel # FIXME: not used with Debian.
+elif [ $system = redhat ]; then
+ [ -r /etc/sysconfig/zaptel ] && . /etc/sysconfig/zaptel
+ LOCKFILE=/var/lock/subsys/zaptel
+fi
+
+if [ -r "$ZAPHELPER_PATH" ]; then . $ZAPHELPER_PATH; fi
+
+if [ -z "${MODULES}" ]; then
+ # Populate defaults if not present
+ MODULES="tor2 wct4xxp wct1xxp wcte11xp wcfxo wctdm wctdm24xxp"
+fi
+
+# Check that telephony is up.
+[ "${TELEPHONY}" = "yes" ] || exit 0
+
+[ -f /sbin/ztcfg ] || exit 0
+
+[ -f /etc/zaptel.conf ] || exit 0
+
+RETVAL=0
+
+# See how we were called.
+case "$1" in
+start)
+ echo -n "Loading zaptel hardware modules:"
+ if [ "$system" = redhat ]; then
+ for mod in ${MODULES}; do
+ modprobe $mod
+ done
+ fi
+
+ # Get the Astribank module loaded properly:
+ wait_for_xpp
+ zap_reg_xpp
+ fix_asterisbank_sync
+
+ # wait for udev to generate /dev/zap/ctl before running ztcfg
+ wait_for_zapctl
+
+ # load ztdummy if there is no existing timing source.
+ # FIXME: we check that /dev/zap/ctl was generated, not that
+ # /dev/zap/pseudo was generated.
+ guarantee_timing_source
+
+ $ZTCFG
+
+ RETVAL=$?
+
+ [ $RETVAL -eq 0 ] && touch $LOCKFILE
+ ;;
+stop)
+ # Unload drivers
+ # FIXME: Not for Debian?
+ echo -n "Unloading zaptel hardware drivers:"
+ unload_modules
+ echo .
+
+ RETVAL=$?
+
+ [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
+ ;;
+restart)
+ $0 stop
+ $0 start
+ ;;
+reload)
+ if [ $system = debian ]; then
+ echo -n "Reloading ztcfg: "
+ $ZTCFG && echo -n "done"
+ echo "."
+ elif [ $system = redhat ]; then
+ action "Reloading ztcfg: " $ZTCFG
+ fi
+ RETVAL=$?
+ ;;
+*)
+ echo "Usage: zaptel {start|stop|restart|reload}"
+ exit 1
+esac
+
+exit $RETVAL
+
Propchange: team/tzafrir/zaphelper/examples/zaptel.suse.init
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: team/tzafrir/zaphelper/examples/zaptel.suse.init
------------------------------------------------------------------------------
svn:executable = *
Propchange: team/tzafrir/zaphelper/examples/zaptel.suse.init
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: team/tzafrir/zaphelper/examples/zaptel.suse.init
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: team/tzafrir/zaphelper/zaptel-helper
URL: http://svn.digium.com/view/zaptel/team/tzafrir/zaphelper/zaptel-helper?view=diff&rev=1634&r1=1633&r2=1634
==============================================================================
--- team/tzafrir/zaphelper/zaptel-helper (original)
+++ team/tzafrir/zaphelper/zaptel-helper Wed Nov 22 00:10:17 2006
@@ -9,7 +9,7 @@
# loading zaptel
DEVZAP_TIMEOUT=${DEVZAP_TIMEOUT:-20}
-# Zaptel modules we'll try
+# Zaptel modules we'll try when detecting zaptel hardware:
ALL_MODULES="${ALL_MODULES:-zaphfc qozap ztgsm wctdm wctdm24xxp wcfxo wcfxs pciradio tor2 torisa wct1xxp wct4xxp wcte11xp wanpipe wcusb xpp_usb}"
# Where do we write the list of modules we detected (if at all):
@@ -17,7 +17,8 @@
MODLIST_FILE_REDHAT=${MODLIST_FILE_REDHAT:-/etc/sysconfig/zaptel}
# The location of of the fxotune binary
-FXOTUNE=${FXOTUNE:/usr/sbin/fxotune}
+FXOTUNE="${FXOTUNE:-/usr/sbin/fxotune}"
+FXOTUNE_CONF="${FXOTUNE_CONF:-/etc/fxotune.conf}"
ZTCFG="${ZTCFG:-/sbin/ztcfg}"
@@ -66,6 +67,15 @@
error "No /dev/zap/ctl: cannot run ztcfg. Aborting."
fi
}
+
+# load the fxotune parameters
+# FIXME: /etc/fxotune.conf is a bad location for that file .
+# /etc/zaptel/fxotune.conf?
+fxotune_load() {
+ if [ -x "$FXOTUNE" ] && [ -r "FXOTUNE_CONF" ]; then
+ $FROTUNE -s
+ fi
+}
# If there is no zaptel timing source, load
# ztdummy. Other modules should have been loaded by
@@ -153,6 +163,12 @@
then
error "Updating XPP sync source failed (used XPP_SYNC='$XPP_SYNC')"
fi
+}
+
+init_astribank() {
+ wait_fox_xpp
+ zap_reg_xpp
+ fix_asterisbank_sync
}
# The current Debian start function.
Modified: team/tzafrir/zaphelper/zaptel.init
URL: http://svn.digium.com/view/zaptel/team/tzafrir/zaphelper/zaptel.init?view=diff&rev=1634&r1=1633&r2=1634
==============================================================================
--- team/tzafrir/zaphelper/zaptel.init (original)
+++ team/tzafrir/zaphelper/zaptel.init Wed Nov 22 00:10:17 2006
@@ -68,9 +68,7 @@
fi
# Get the Astribank module loaded properly:
- wait_for_xpp
- zap_reg_xpp
- fix_asterisbank_sync
+ init_astribank
# wait for udev to generate /dev/zap/ctl before running ztcfg
wait_for_zapctl
@@ -79,6 +77,8 @@
# FIXME: we check that /dev/zap/ctl was generated, not that
# /dev/zap/pseudo was generated.
guarantee_timing_source
+
+ fxotune_load
$ZTCFG
More information about the zaptel-commits
mailing list