wanpipe-3.3.12.tgz

This commit is contained in:
Harald Welte 2021-12-29 18:22:56 +01:00
parent f489816751
commit 0592e46fa9
34 changed files with 604 additions and 1492 deletions

View File

@ -1,24 +1,45 @@
------------------------------------------------------------------------------
WANPIPE TDM VOICE - IP/WAN Package
Linux Voice TDM/WAN Router Package
For more info visit: http://wiki.sangoma.com
------------------------------------------------------------------------------
Author: Nenad Corbic <ncorbic@sangoma.com>
Copyright (c) 1995-2008 Sangoma Technologies Inc.
------------------------------------------------------------------------------
* Wed Jul 14 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
For more info visit: http://wiki.sangoma.com
* Fri Aug 1 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.12
=====================================================================
- Compilation fix for 2.6.25 kernel
Introduced in 3.3.11 release
- Setup update
Added bri and zaptel installation modes.
-> ./Setup install #General installation
-> ./Setup zaptel #Zaptel based installation
-> ./Setup bri #SMG BRI installation
Streamlined Setup installation script
Added check for Asterisk directory when installing BRI
Added check for x86 in architecture
- Fixed Makefile build
- Updated README File
* Wed Jul 30 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
=====================================================================
- BRI to Analog Faxing Update
Improved faxing over SMG Gateway and Zaptel Analog.
This feature drasticly improves faxing peformance between
This feature drastically improves faxing performance between
BRI and Analog cards over Asterisk.
- BRI Update
Added overlap dailing support
Added support for BRI with 16 channel Echo Canceller.
Added overlap dialing support
Added support for BRI with 16 channel Echo Canceler.
Support for test start option, that only verifies configuration
files without applying changes.
Support for non-syslog logging.
@ -47,7 +68,7 @@ Copyright (c) 1995-2008 Sangoma Technologies Inc.
Added a check for buffer overflow in write function.
- New Octasic EC Image
Impoves faxing over Hardware Echo Canceller.
Improves faxing over Hardware Echo Canceler.
- BRI Bug fix on startup
The clock measuring function has limited and could fail on some machines.

View File

@ -73,6 +73,7 @@ ifneq (,$(wildcard $(ZAPDIR)/zaptel.h))
EXTRA_CFLGS+= -DSTANDALONE_ZAPATA -DBUILDING_TONEZONE
ZAP_OPTS= --zaptel-path=$(ZAPDIR)
ZAP_PROT=TDM
PROTS=DEF
else
ifneq (,$(wildcard $(ZAPDIR)/kernel/zaptel.h))
ZAPDIR=/usr/src/zaptel/kernel
@ -81,11 +82,13 @@ else
EXTRA_CFLGS+= -DSTANDALONE_ZAPATA -DBUILDING_TONEZONE
ZAP_OPTS= --zaptel-path=$(ZAPDIR)
ZAP_PROT=TDM
PROTS=DEF-TDM
else
ZAP_OPTS=
ZAP_PROT=
ZAPDIR_PRIV=
ENABLE_WANPIPEMON_ZAP=NO
PROTS=DEF
endif
endif
@ -117,7 +120,7 @@ all_bin_kmod: _checkzap _checksrc _cleanoldwanpipe _check_kver
rm -rf $(PWD)/ast_build_dir; \
fi
@mkdir -p $(PWD)/ast_build_dir
./Setup drivers --builddir=$(PWD)/ast_build_dir --with-linux=$(KDIR) $(ZAP_OPTS) --usr-cc=$(CC) --protocol=DEF-$(ZAP_PROT) --no-zaptel-compile --noautostart --arch=$(ARCH) --silent
./Setup drivers --builddir=$(PWD)/ast_build_dir --with-linux=$(KDIR) $(ZAP_OPTS) --usr-cc=$(CC) --protocol=$(PROTS) --no-zaptel-compile --noautostart --arch=$(ARCH) --silent
@eval "./patches/copy_modules.sh $(PWD)/ast_build_dir $(WAN_DIR)"

59
README
View File

@ -1,12 +1,57 @@
------------------------------------------------------------------------------
Linux WAN Router Utilities Package
------------------------------------------------------------------------------
Author: Nenad Corbic <ncorbic@sangoma.com>
Copyright (c) 1995-2006 Sangoma Technologies Inc.
------------------------------------------------------------------------------
For latest docs please visit Sangoma Wiki
Sangoma Wiki: http://wiki.sangoma.com
------------------------------------------------------------------------------
Copyright (c) 1995-2008 Sangoma Technologies Inc.
Installation
------------
./Setup install #General Installation (Most Flexible)
or
./Setup zaptel #Install for Asterisk/CallWeaver/Zaptel
or
./Setup bri #Install SMG BRI card for Asterisk/CallWeaver
Configuration
-------------
1) create configuration files for Zaptel and Asterisk/CallWeaver
-> /usr/sbin/wancfg_zaptel
2) create configuration files for SMG BRI/SS7, Zaptel and Asterisk/CallWeaver
-> /usr/sbin/wancfg_smg
3) create configuration files for TDM API (Default for FreeSwitch)
-> /usr/sbin/wancfg_tdmapi
2) create WANPIPE WAN/IP configuration files.
-> /usr/sbin/wancfg
Operation
---------
1) start,stop,restart individual/all devices and interfaces.
-> /usr/sbin/wanrouter
-> /usr/sbin/wanrouter [start|stop|restart|status|hwprobe|help]
2) debug line, protocol and driver problems.
-> /usr/sbin/wanpipemon
-> /usr/sbin/wanpipemon -p aft #Help
-> /usr/sbin/wanpipemon -g #GUI Debug Mode
-> /usr/sbin/wanpipemon -i w1g1 -c Ta #View T1/E1 Alarms
API Samples
------------
1) aid in WANPIPE API development
-> /etc/wanpipe/api

View File

@ -1,390 +0,0 @@
WANPIPE PACKAGE INSTALLATION/UN-INSTALLATION
============================================
Author: Nenad Corbic
For Lates Docs Please visit
http://wiki.sangoma.com
WANPIPE PACKAGES
================
Wanpipe SOURCE packages are located in:
ftp.sangoma.com/linux/current_wanpipe
Download the latest SOURCE wanpipe release
in ANY directory:
ex: cd /tmp
tar xvfz wanpipe-<version>.tgz
The tar will create the temporary
wanpipe/ directory.
WANPIPE SOURCE PACKAGE Installation
====================================
The 'Setup' script located in temporary wanpipe/
directory should be used to install/un-install
and re-configure all WANPIPE driver and utilities.
The Setup installation script contains numerous
options that can be used to customise wanpipe
installation. Run ./Setup without any arguments
for usage.
Run the Setup script from temporary wanpipe/ directory
(wanpipe directory was created by untaring the source package)
cd wanpipe/
./Setup install
The install option will do the following:
-------
1. Check that all WANPIPE files are accounted for.
2. Check/modify permissions on all WANPIPE files.
3. Prompt the user to Install/Upgrade WANPIPE
drivers into the Linux kernel source.
NOTE: The kernel source must be located
in /usr/src/linux.
Or the linux source directory
must be supplied with '--with-linux' argument.
It is always RECOMMENDED to upgrade/update
the kernel source tree with the latest
wanpipe source.
4. Prompt the user to re-compile all WANPIPE
kernel drivers and install them as modules
in the the current /lib/modules/<kernel-version>
directory.
Compilaton Options: Default or Custom
Default compilation:
option will compile the standard WANPIPE protocols
into the kernel device driver: Frame Relay, PPP, CHDLC
Multi-Port Frame Relay, Multi-Port PPP, and X25(API). "
Custom compilation:
option will offer a menu of all available WAN and
API protocols. The user will be able to enable
protocols individually or all at once,
as desired.
With this option, NO kernel recomilation is
necessary :)
5. Prompt the user to install bootstrap
scripts that will be used to start wanpipe
during boot up.
6. Setup the ENVIRONMENT configuration file that will
contain directory locations of WANPIPE configuration
interface and lock files.
7. Compile all WANPIPE utilities
8. Setup the WANPIPE working environment.
i.e. Install all binary files into
linux file tree.
/etc/wanpipe : config, library, sample
and firmware files.
/usr/sbin : user space, binary
utilites
/lib/modules/<uname-r> : wanpipe kernel
modules
/usr/share/doc/wanpipe : doc files
The last message in the 'Setup install' sequence will
inform you of the next step that you should take
in getting WANPIPE working.
o Read 'README-2.config' on how to configure wanpipe
device
o End of Installation
CUSTOMIZING WANPIPE SOURCE INSTALLATION
=========================================
Installation using the '--silent' option
--------------------------------------
The '--silent' option is available to install wanpipe
without any user interaction:
./Setup install --silent
All defaults will be used!
--------------------------
1. Configuration directory /etc/wanpipe
2. Start wanpipe on boot up
3. Recompile modules for the kenrel source
in /usr/src/linux
Installation using the --builddir option
--------------------------------------
When customising the wanpipe package, it is
useful to install the package into a
virtual directory so not to pollute the
current environment.
This way a user can tar up the temporary
directory and create a custom binary
WANPIPE package.
eg ./Setup install --builddir=/tmp/wanpipe_build
Note: the /tmp/wanpipe_build directory must
exist.
Installation using the --protocol option
--------------------------------------
Standard Wanpipe installatin will only
include MAINSTREAM WAN protocols when building
the kernel modules to cut down on kernel
module size.
Mainstream Protocols:
Frame Relay, PPP, CHDLC, X25, API stack
To enable NON Mainstream protocols specify
extra protocols with the --protocol option.
Non Mainstream Protocols:
BSC : API for Multipoint Bisync
BSCSTRM : API for Bisync Streaming
SS7 : API for Level2 SS7 protocol
EDU : API for Educational software
SDLC : API for SDLC protocol
POS : API for POS (S515/S509) card.
BITSTRM : API for Bitstreaming protocol
eg: ./Setup install --protocol=<List of Protocols>
<List of Protocols> = <PROT>-<PROT>-<PROT>
eg:
Compile in Bitstreaming protocol
./Setup install --protocol=BITSTRM
Compile in BitStreaming and POS and SDLC
./Setup install --protocol=BITSTRM-POS-SDLC
Building a custom RPM
---------------------
./Setup buildrpm <extra options>
All defaults will be used!
--------------------------
1. Configuration directory /etc/wanpipe
2. Start wanpipe on boot up
3. Recompile modules for the kernel source
locatd in /usr/src/linux direcotory,
or directory supplied with --with-linux=<abs path>
argument.
Note: <extra options> start with -- and are defined above.
i.e.
user the --protocol filed to add in extra protocols
into the wanpipe kernel modules.
Refer to README.rpmbuild
WANPIPE Kernel Driver Compile/Update
====================================
This option should be used to update the kernel
source tree with the latest wanpipe drivers
and to compile the wanpipe kernel modules
against the updated kernel source tree.
Run the Setup script in temporary wanpipe/ directory:
ex: cd wanpipe/
./Setup drivers
The drivers option will do the following:
-------
1. Prompt the user to Install/Upgrade Wanpipe
drivers into the Linux kernel source.
NOTE: The kernel source must be located
in /usr/src/linux
It is always RECOMMENDED to upgrade/update
the kernel source tree with the latest
wanpipe source.
2. Prompt the user to re-compile all WANPIPE
kernel drivers and install the as modules
in the the current /lib/modules/<kernel-version>
directory.
Compilaton Options: Default or Custom
Default compilation:
option will compile the standard WANPIPE protocols
into the kernel device driver: Frame Relay, PPP, CHDLC
Multi-Port Frame Relay, Multi-Port PPP, and X25(API). "
Custom compilation:
option will offer a menu of all available WAN and
API protocols. The user will be able to enable
protocols individually or all at once,
as desired.
WANPIPE Utilities Re-Compilation
=================================
This option will re-compile all WANPIPE utilities
in temporary wanpipe/ directory.
NOTE: If this is a first time install you MUST run
the install option: Setup install.
Run the Setup script in temporary wanpipe/ directory:
ex: cd wanpipe/
./Setup utility
The utility option will do the following:
-------
1. Compile all WANPIPE utilities
in temporary wanpipe/ directory
To install utilities into /usr/sbin
directory one must run:
./Setup inst
For more info about Setup command run
./Setup without any arguments for full usage
info.
WANPIPE Un-Install
==================
Run the Setup script in temporary wanpipe/ directory:
ex: cd wanpipe/
./Setup remove
The remove option will do the following:
------
1. Remove all boot strap WANPIPE scripts.
2. Remove all utilities from /usr/sbin,
/etc/wanpipe, /usr/share/doc/wanpipe
directories.
After the 'Setup remove' command, it is safe
to remove the whole temporary wanpipe/ directory.
ex:
rm -rf wanpipe/
WANPIPE RPM PACKAGE Installation
================================
Choosing an RPM:
--------------
o Determine the Linux Distribution:
cat /etc/issue
(eg: RedHat 7.1)
o Determine the Kernel image you are running:
uname -r
(eg: 2.4.2-2 : it is not an smp kernel)
(eg: 2.4.2-2smp : smp kernel)
o Determine the processor type
uname -m
(eg: i686)
o Based on the above information choose an RPM package.
wanpipe-<version>.<linux distrib>.<kernel ver>.<processor>.rpm
eg: ftp.sangoma.com/linux/RPM/redhat/7.1/i686/
wanpipe-2.2.4-3.rh71up.k242-2.i686.rpm
Installing RPM
----------
o List the contents of the rpm
rpm -qipl <wanpipe rpm name>
Make sure that the /lib/modules/<kernel name> directory
matches your current kernel modules directory.
i.e. the output of command 'uname -r' must match the above
<kernel name> directory.
o The rpm must be installed using the --force option, to
override the old modules.
rpm -i --force <wanpipe rpm name>
o Read 'README-2.config' on how to configure wanpipe
device
For further info, refer to WanpipeInstallation.pdf

View File

@ -1,381 +0,0 @@
Wanpipe Configuration
======================
For Latest Info please visit
http://wiki.sangoma.com
Before starting WANPIPE, a configuration file (wanpipeN.conf, where
N=1,2,3..etc.)must be created in /etc/wanpipe directory.
This file contains the line, hardware and interface definitions
for the WAN connection.
RELEASE 2.3.2 and on:
The new WANCFG utility has been release. It should
be used to configure standard WAN protocols like:
FR, PPP, CHDLC,
MULTILINK PPP (TTY), TDM_VOICE
HDLC API
ADSL
For both AFT and S514 series cards.
The old WANCFG utility has been renamed to wancfg_legacy.
This utility should be used for all API protocols like:
X25, SDLC, BITSTREAMING ...
The program /usr/sbin/wancfg should be used to create the
configuration file(s). It is a GUI, ncurses based,
configurator that contains all wanpipe options
as well as extended help information on each
option.
In case wancfg is not used, i.e. embedded systems, use
the sample configuration files located in
/etc/wanpipe/samples directory.
Things you should know before starting /usr/sbin/wancfg:
1. Protocol:
Frame Relay, MulitPort Frame Relay,
CHDLC, PPP, MultiPort PPP, ADSL, X25 ...
2. Protocol/IP Info:
Frame Relay: Type of Status Signaling (LMI,
ANSI, or Q.933
Number of DLCI to configure
DLCI numbers
IP info for each DLCI
CHDLC: IP info
PPP: IP info
X25: Maximum packet size
Number of SVCs/PVCs
IP info
ADSL: ATM encapsulation:
Bridged Ethernet LLC over ATM: (PPPoE)
Bridged Ethernet VC over ATM
Classical IP LLC over ATM
Router IP VC over ATM
PPP LLC over ATM
PPP VC over ATM: (PPPoA)
ATM configuration:
VPI and VCI
If not available use the auto
config option to autodetect
these values.
IP Info: (Not needed for PPPoE)
NOTE:
For PPPoE and PPPoA setup please refer to
APPENDIX A below.
ATM: ATM encapsulation:
Bridged Ethernet LLC over ATM: (PPPoE)
Bridged Ethernet VC over ATM
Classical IP LLC over ATM
Router IP VC over ATM
ATM configuration:
VPI and VCI
IP Info: (Not needed for PPPoE)
3. CSU/DSU Info:
T1/E1: Encoding
Framing
Active Channels/Baud Rate
56K: Internal or External Clocking
Internal clocking should only be used
in back to back situations.
Default: External
For the rest of this document, we will assume we are working with the
following ISP/Telco supplied data:
Protocol: Frame Relay
Prot Info:
Num of DLCI's = 2
DLCI=16 and 17
IP Info: DLCI 16
Local =201.1.1.1
PtoP =201.1.1.2
Netmask =255.255.255.0
Gateway =201.1.1.2 (i.e. this is the system
default gateway)
DLCI 17
Local =202.1.1.1
PtoP =202.1.1.2
Netmask =255.255.255.0
Gateway =N/A
WANCFG
======
IMPORTANT:
Use the "ADVANCED" sections only for non
standard configurations, otherwise leave
them default.
1. Start /usr/sbin/wancfg
2. Select Create opton
3. Select Card from Hardware Probe
4. Specify Hardware information:
T1/E1/V35
5. Specify Protocol
FR,PPP,CHDLC,TTY(Multilink PPP) ...
Frame Relay is by default configured
for Auto DLCI. Use the advanced sections
to change this.
6. Network Interface Setup
Specify Operation mode:
WANPIPE: IP mode proceed to specify IP addresss
API: Custom API mode, no IP addresses
Specify IP addresses:
7. Save and exit
For old WANCFG_LEGACY example refer to APPENDIX B below!
Troubleshooting the driver load process
=======================================
After a startup failure run wanrouter debug
option for more information and possible solutions:
wanrouter debug
Syntax Errors:
--------------
All wanpipe configuration file syntax errors are
reported in /var/log/wanrouter
wanrouter conflogs
Driver Messages:
----------------
All wanpipe driver events will be recorded in
/var/log/messages.
Thus if errors occur, first check /var/log/messages
to find out what exactly went wrong
with the drivers startup.
wanrouter messages
or
tail -f /var/log/messages
Once the device is started you should see a
"link connecting" message. This message
indicates that the card was been configured
successfully and that the link is trying to
connect.
Wanpipe Debugger:
-----------------
/usr/sbin/wanpipemon should be used to further debug
hardware, line and protocol problems.
/usr/sbin/wanpipemon -g
Sangoma Tech Support:
---------------------
When reporting problems to Sangoma Tech Support please
dump the current system debug information into
a temporary file and send it via email.
1. wanrouter debug if_name > sangoma_debug_file.txt
(where if_name is wanpipe interface name: eg wp1fr16)
2. Wait for 2-5 minutes
3. Stop the debug by pressing ENTER
4. Email sangoma_debug_file.txt to Sangoma Tech Support
Refer to README-4.debugging
APPENDIX A: ADSL PPPoE and PPPoA Configuration
==========
Refer to README.adsl
APPENDIX B: WANCFG_LEGACY (Old Configurator)
==========
1. Start /usr/sbin/wancfg
2. Select 'Create' option
3. Select a wanpipe device.
If this is a first device select wanpipe1
and hit <SELECT> button.
4. Choose a protocol
In this case choose Frame Relay and hit <BACK>
button.
5. Select Hardware Setup
Probing Hardware:
The top option is "Probe Hardware"
Select this option and press <ENTER>
Select a device. When selecting devices
note the PORT option. Usually PORT=PRI
would be used.
IMPORTANT:
~~~~~~~~~~
After the hardware probe section you will
notice that the next four fields have
been filled out. Thus, adapter type and
PCI info should be skipped.
All other options should normally be left as
DEFAULT unless you have special information.
Exit Hardware Setup
6. Network Interface Setup
The network interface set-up depends on the type of connection.
Instance Frame Relay supports many interfaces, each boud to
a DLCI. Thus, there are questions related to the number of
DLCIs and configuration information for each DLCI.
In the case of Point-to-Point protocols like PPP and CHDLC, there
is only one interface per physical port.
This example is Frame Relay with two DLCIs. The first input is:
"Please specify the number of DLCIs supported on this Frame Relay
connection"
Enter in number 2
For each network interface do the following:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DLCI Number:
Enter in the DLCI number. Note the default number
is always 16.
Interface Name:
The Interface name will also have default value.
You can leave it as is or change it. For instance,
you could change it to ?chicago? or ?toronto?.
IMPORTANT:
~~~~~~~~~
If you are using iptables you might want to change
the default interface name to something like "wan0".
Iptables and Ipchains don't like "_" in interface
name.
e.g.: 'iptables -o wp1_fr16 ...' will give you an error
Operation Mode:
WANPIPE is for IP Routing
BRIDGE is used to attach the network interface to
the kernel bridge
BRIDGE_NODE is used as a remote end of the line that is
connected to a bridge.
API is used for custom API applications.
Custom socket access to driver.
DLCI Protocol Setup:
In this section leave everything as default.
Unless the ISP has specified specific protocol
options such as CIR.
IP Setup:
Put in your IP info as supplied by ISP
Enable Default gateway for the first
interface.
Note: PointoPoint IP refers to the IP address of
the remote router that is connected at
the other end of the sync line.
7. Once all network interfaces are setup
keep hitting the <BACK> button until
Main Menu is reached.
Then select <EXIT> and save the config
file.
The new config file will be located in
/etc/wanpipe directory.
8. Start the device:
wanrouter start wanpipe1
Note: The card doesn't have to be connected to start the wanrouter.

View File

@ -1,331 +0,0 @@
Wanpipe Operation Manual
========================
For latest info please visit
http://wiki.sangoma.com
At the heart of WANPIPE operation is the 'wanrouter' operation
script. It is used to start/stop/restart and display
WANPIPE current status and environment.
'wanrouter' usage
=================
/usr/sbin/wanrouter <cr>
WANPIPE: WAN Router startup script
Usage: wanrouter: {options} <wanpipe#> <interface>
wanrouter start : Starts all devices specified in
/etc/wanpipe/wanrouter.rc WAN_DEVICES
wanrouter stop : Stops all devices specified in
/etc/wanpipe/wanrouter.rc WAN_DEVICES
wanrouter start wanpipe# : Start a single device
wanrouter stop wanpipe# : Stops a single device
(# can range from 1 to 16)
wanrouter restart : Restart all devices specified in
/etc/wanpipe/wanrouter.rc WAN_DEVICES
wanrouter restart wanpipe# : Restart a single device
(# can range from 1 to 16)
wanrouter start wanpipe# if_name : Start a single interface on device
wanrouter stop wanpipe# if_name : Stops a single interface on device
(# can range from 1 to 16)
wanrouter restart wanpipe# if_name : Restart a single interface on device
(# can range from 1 to 16)
wanrouter list : List all active devices
wanrouter modules : Show wanpipe kernel modules
wanrouter status : Display status for all active devices
wanrouter summary : Summary of config files in /etc/wanpipe
wanrouter hwprobe : Display wanpipe hardware probe info.
wanrouter debug : Check current wanpipe environment.
Wanpipe startup debugging. After a startup error
run this command to get a possible solution
i.e. wanrouter start; wanrouter debug;
wanrouter debug if_name : Display common debugging statistics
In case of line problems save to file, wait 2-5min
and send to Sangoma Tech Support
i.e. wanrouter debug wp1fr16 > debug_file;
wanrouter conflogs : Display wanpipe configuration syntax errors
i.e. /var/log/wanrouter
wanrouter messages : Display wanpipe kernel event messages
i.e. /var/log/messages
wanrouter version : wanpipe version information.
WANPIPE Environment Check
=========================
The wanrouter debug option will check current
wanpipe environment, make sure that kernel modules
do load, and that /var/log/messages and /var/log/wanrouter
logs do not show any errors. It will also try
to give possible solutions.
/usr/sbin/wanrouter debug
Make sure that the new WANPIPE kernel modules have
been installed correcty and that they can be loaded
into the kernel, and the hardware is detected.
/usr/sbin/wanrouter hwprobe
Check that a configuration file exists in /etc/wanpipe
directory.
/usr/sbin/wanrouter summary
Make sure that no WANPIPE devices are currently running
on the system
/usr/sbin/wanrouter list
WANPIPE Startup
===============
Please note that all kernel driver output messages are
located in /var/log/messages file.
Run 'tail -f /var/log/messages' in a separate console
window, to monitor WANPIPE start/stop and operation
messages.
To start/stop/restart WANPIPE devices listed in
/etc/wanpipe/wanrouter.rc file: (default is wanpipe1)
/usr/sbin/wanrouter start
/usr/sbin/wanrouter stop
/usr/sbin/wanrouter restart
To start/stop/restart single wanpipe device: (eg: wanpipe2)
This command is useful when running multiple devices
and would like to operate on a singe device.
/usr/sbin/wanrouter start wanpipe2
/usr/sbin/wanrouter stop wanpipe2
/usr/sbin/wanrouter restart wanpipe2
To start/stop/restart a single network interface from a
/etc/wanpipe/wanpipe1.conf configuration file:
This command is useful when adding an extra frame
relay DLCI. Also to reconfigure a single DLCI.
/usr/sbin/wanrouter start wanpipe2 wp2_fr18
/usr/sbin/wanrouter stop wanpipe2 wp2_fr18
/usr/sbin/wanrouter restart wanpipe2 wp2_fr18
To view current status and configuration of active
devices:
/usr/sbin/wanrouter status
Error Debugging
===============
After a failed wanrouter start command
run:
wanrouter debug
The debug option will identify an error and
offer solutions.
Configuration Syntax Errors:
All configuration file syntax errors, generated
during WANPIPE starup, will be displayed in:
/var/log/wanrouter
(eg: cat /var/log/wanrouter)
Kernel Driver Errors:
All device driver errors and events will be
displayed in:
/var/log/messages
(eg: tail -f /var/log/messages)
Line Errors and Driver Statistics
After a successful WANPIPE startup any extra
debugging, such as line tracing or CSU/DSU
debugging will be done using:
/usr/sbin/wanpipemon -g
For automated Line Error debugging run
/usr/sbin/wanrouter debug <if_name>
where <if_name> is wanpipe interface name.
Sangoma Tech Support:
---------------------
When reporting problems to Sangoma Tech Support please
dump the current system debug information into
a temporary file and send it via email.
1. wanrouter debug if_name > sangoma_debug_file.txt
(where if_name is wanpipe interface name: eg wp1fr16)
2. Wait for 2-5 minutes
3. Stop the debug by pressing ENTER
4. Email sangoma_debug_file.txt to Sangoma Tech Support
Pleae refer to README-4.debugging
Wanpipe Power User Operation
-----------------------------
Wanpipe package contents
========================
1. Wanpipe Kernel Drivers
The drivers are listed in order of
dependency.
sdladrv.o : Hardware Layer
wanrouter.o : Wanpipe Protocol Interface Layer
wanpipe_syncpp.o: Wanpipe PPP/CHDLC Protocol
wanpipe.o : Wanpipe multi-protocol layer
(Frame-Relay,PPP,CHDLC,...)
af_wanpipe.o : Wanpipe API socket layer
2. User space programs
Configuration (/usr/sbin)
wancfg : Wanpipe configuration tool
cfgft1 : Wanpipe FT1 config tool for
S508FT1 and S5143 cards
(For all other cards use wancfg)
Operation (/usr/sbin)
wanconfig : Wanpipe operation tool that
parses the config file and
executed config ioctl() calls to
the kernel driver.
(C program)
wanconfig -a /etc/wanpipe/wan_adsl.list card wanpipe1 up
wanrouter : Wanpipe operation script
used to start/stop/restart
Wanpipe drivers. The wanrouter
script uses the above wanconfig
to start wanpipe as well as
standard "ifconfig" to bring
all necessary interfaces up.
Debugging
wanpipemon : Wanpipe debugging application
used to debug the hardware, drivers
and sync line.
wanpipemon -g
Wanpipe Operation
=================
If a power user desn't want to use
the wanrouter master script. Here is the
break down of the wanpipe startup
sequence:
wanrouter start
1. Load Kernel Modules
insmod sdladrv.o
insmod wanrouter.o
insmod wanpipe_syncppp.o
insmod wanpipe.o
insmod af_wanpipe.o
or
modprobe af_wanpipe
2. Configure and Start Drivers
/usr/sbin/wanconfig -a /etc/wanpipe/wan_adsl.list card wanpipe1 up
3. Start up all network interfaces
ifconfig wan0 <local ip> pointopoint <remote ip> netmask 255.255.255.255
4. Confirmation
tail -f /var/log/messages
Check the events and driver statistics.
cat /proc/net/wanrouter/status
Check driver state

View File

@ -1,183 +0,0 @@
Wanpipe Debugging Manual
========================
For latest info please visit
http://wiki.sangoma.com
Automated Debugging:
--------------------
The wanrouter operation script can retrieve the
most common line error statistics that can
give the user a good idea of what is going on
with the line.
/usr/sbin/wanrouter debug if_name
or
/usr/sbin/wanrouter debug if_name > debug_file.txt
(where if_name is the name of wanpipe interface: eg: wp1fr16)
Sangoma Tech Support:
---------------------
When reporting problems to Sangoma Tech Support please
dump the current system debug information into
a temporary file and send it via email.
1. wanrouter debug wp1fr16 > sangoma_debug_file.txt
2. Wait for 2-5 minutes
3. Stop the debug by pressing ENTER
4. Email sangoma_debug_file.txt to Sangoma Tech Support
Wanpipe Debugger
----------------
At the heart of WANPIPE debugging is the 'wanpipemon'
debugging program. It is used to display line
traces, protocol statistics, hardware statistics
and configuration parameters.
/usr/sbin/wanpipemon -g
'wanpipemon' usage
==================
/usr/sbin/wanpipemon
Wanpipemon Verison 1.0
Copyright (C) 2002 - Sangoma Technologies
www.sangoma.com
This may be freely redistributed under the terms of the GNU GPL
Usage: (Options in {} brackets are optional)
#Command prompt Local debugging
wanpipemon -i <interface> -c <command> { -p <protocol> }
#Command prompt Remote debugging
wanpipemon -i <remote IP> -u <port> -c <command> { -p <protocol> }
#GUI interface
wanpipemon -g { -i <interface|IP> -u <port> -p <protocol> }
#Display usage for each protocol
wanpipemon -p [fr|ppp|chdlc|x25|adsl]
#Detailed usage for each option
wanpipemon -h
The 'wanpipemon' utility operates in two modes.
Local debugging:
The 'wanpipemon' utility is located on the same
machine as the WANPIPE card.
Thus, the wanpipemon utility needs only the
interface name (eg: wp1_fr16) to reach the driver.
/usr/sbin/wanpipemon -i wp1_fr16 -c xm
Remote debugging:
The 'wanpipemon' utility is located on a network
(LAN or WAN) and must use the UDP protocol to
reach the WANPIPE card.
In this case an IP and UDP addresses must be
specified, such that the packet will pass through
the WANPIPE driver!
Meaning a POINTOPOINT address must be used instead
of the LOCAL IP address.
The UDP port was specified in WANPIPE configuration
file. (Default=9000)
/usr/sbin/wanpipemon -i 201.1.1.2 -u 9000 -c xm
GUI Mode Operation
==================
The GUI mode is based on ncurses libraries, thus it
will work both in Terminal or Xwindows mode.
/usr/sbin/wanpipemon -g
Without any other arguments the GUI will offer a list
of network interfaces, for local debugging, or will
ask for an IP/UDP address, for remote debugging.
Use menu's to navigate through available commands.
Common Statistics
=================
Modem Status (-c xm):
(wanpipemon -i if_name -c xm)
Must be DCD=HIGH and CTS=HIGH if not there is
ether a cable problem or the sync line is
not turned ON.
Comm Error Stats (-c sc):
(wanpipemon -i if_name -c sc)
Check for CRC and Abort errors. If errors
are incrementing, there is a line issue.
Possible reasons: CSU/DSU misconfiguration
on local or remote side.
Noisy/Bad line.
Line trace (-c tr):
(wanpipemon -i if_name -c tr)
Make sure thare are incoming and outgoing frames.
If frames are outgoing and none incoming:
Frame relay: Check signalling (ANSI, LMI)
Make sure ISP uses IETF or CISCO
data encapsulation.
Other prot: Possible CRC errors in TX
direction. Contact your ISP.
If frames are both incoming and outgoing but
protocol is still down:
Run trace in Interpreted mode (-c ti) and
make sure that the incoming protocol is
indeed the one you are configured for.
Wanpipe Kernel Messages
/usr/sbin/wanrouter messages
or
tail -f /var/log/messages
All line/protocol events will be displayed in
the kernel logs.

View File

@ -1,87 +0,0 @@
WANPIPE OFFICIAL RELEASE CHANGE LOG
===================================
Author: Nenad Corbic <ncorbic@sangoma.com>
Wanpipe Linux Web Page:
-------------------
For latest docs please visit Sangoma Wiki
Sangoma Wiki: http://wiki.sangoma.com
MAJOR CHANGES
-------------
o The 2.3.4 release contains:
AFT A108 & A108D Drivers.
Updated TDMV Channelized Driver for Asterisk
with support for hardware echo cancellation.
TDM API Drivers.
Used to create custom TDM applications over
sangoma AFT devices.
Sangoma Signal Media Gateway:
SS7 Support for Asterisk
LIP Protocol Layer:
New protocols: ATM (AAL5), Frame Relay EEK
o The 2.3.3 release contains:
AFT A104 TDMV Channelized Driver for Asterisk
The A104 TDMV Driver uses the channelization feature
of the A104 Card, to DMA 8byte chunks directly
into Zaptel buffers.
AFT A104 TDMV DCHAN Feature
The DCHAN PRI has hardware HDLC support.
o The 2.3.2 release contains:
Stable TDMV Wanpipe drivers for Asterisk.
The TDMV drivers support both A102 and A104 cars.
Please read wanpipe/doc/README.asterisk
Stable TE3 Drivers for AFT A301 TE3 Unchannelized Card.
All WAN protocols are supported: Frame Relay, PPP, CHDLC..
Stable LIP Network Layer: Separates Wanpipe hardware from
the Network Protocols: Frame Relay, CHDLC,
PPP, LAPB API, XDLC API
o The 2.3.1 contains major structural driver changes.
The new Hardware Abstraction layer cleanly separates, the
physical layer from the driver/protocol layers.
Support for 2.6.X kernel.
o The 2.3.0 contains major structural driver changes
most notably the ADSL OS abstraction layer. ADLS drivers
can now be compiled against any custom kernel.
o From 2.2.6 release forward the new S514-7 Dual T/E1,
S514-8 Single TE1 and S518 ADSL cards are supproted.
o From 2.2.4 release forward the new S514-4 T/E1 and S514-5 56K
cards are supported.
o From 2.2.3 release forward ALL wanpipe modules
including API modules, can be recompiled from
./Setup installation script!
NO KERNEL RE-COMPILATION is necessary.
o From 2.2.3 release forward, wanpipe directory
architecture has been changed. New home directory
for wanpipe is /etc/wanpipe.
o All old releases are in ../old_releases/wanpipe directory.
o Custom RPMs can be build based on current kernel image
by using the ./Setup buildrpm command.
Read the README.rpmbuild.

407
Setup
View File

@ -369,11 +369,14 @@ welcome()
{
banner
if [ $zaptel_auto_install = "YES" ]; then
if [ "$bri_auto_install" = "YES" ]; then
welcome_default
elif [ $zaptel_auto_install = "YES" ]; then
welcome_zaptel
else
welcome_default
fi
@ -472,8 +475,8 @@ WANPIPE kernel modules:
1) Proceed to configure the WANPIPE drivers:
Asterisk/Zaptel: /usr/sbin/wancfg_zaptel
SMG SS7 or BRI : /usr/sbin/wancfg_smg
TDM API : /usr/sbin/wancfg_tdmapi
SMG SS7 : /usr/sbin/wancfg_smg
WAN Routing/API: /usr/sbin/wancfg
2) Use the /usr/sbin/wanrouter startup scrip to start and stop
the router. (eg: wanrouter start)
@ -685,6 +688,12 @@ prepare()
return 1
fi
fi
if [ "$SSMG_BRI" = "YES" ]; then
check_sctp_utility
find_ast_dirs
fi
pause
return 0
@ -761,8 +770,11 @@ update_wanpipe_drivers ()
if [ "$PKG_NAME" != "wanpipe-lite" ]; then
if [ -d "$SOURCEDIR/Documentation" ]; then
if [ -e $SOURCEDIR/Documentation/networking/wanpipe.txt ]; then
eval "cp -f README $SOURCEDIR/Documentation/networking/wanpipe.txt"
fi
if [ -e $SOURCEDIR/Documentation/networking/wan-router.txt ]; then
eval "cp -f README $SOURCEDIR/Documentation/networking/wan-router.txt"
fi
fi
@ -1083,7 +1095,7 @@ prompted during the install!
ENDOFTEXT
getyn "Would you like build wanpipe kernel drivers? [y]" || return 0
#getyn "Would you like build wanpipe kernel drivers? [y]" || return 0
banner
@ -1902,10 +1914,12 @@ compile_src ()
WANPIPE UTILITIES SETUP
WANPIPE utilities are used to:
1) create WANPIPE configuration files.
1) create configuration files: for Zaptel and Asterisk
/usr/sbin/wancfg_zaptel #Zaptel and Asterisk
/usr/sbin/wancfg_smg #BRI/SS7, Zaptel and Asterisk
/usr/sbin/wancfg_tdmapi #TDM API
2) create WANPIPE WAN/IP configuration files.
(/usr/sbin/wancfg)
2) create configuration files for Zaptel and Asterisk
(/usr/sbin/wancfg_zaptel)
3) start,stop,restart individual/all devices and interfaces.
(/usr/sbin/wanrouter)
4) debug line, protocol and driver problems.
@ -2198,11 +2212,16 @@ function check_for_af_wanpipe_updates()
if [ $KLVL -eq 11 ]; then
eval "grep sk_zapped $SOURCEDIR/include/net/sock.h > /dev/null 2> /dev/null"
if [ $? -ne 0 ]; then
AF_EXTRA_FLAGS="$AF_EXTRA_FLAGS -DAF_WANPIPE_2612_FORCE_UPDATE"
AF_EXTRA_FLAGS="$AF_EXTRA_FLAGS -DAF_WANPIPE_2612_FORCE_UPDATE "
fi
elif [ $KLVL -gt 11 ]; then
AF_EXTRA_FLAGS="$AF_EXTRA_FLAGS -DAF_WANPIPE_2612_FORCE_UPDATE"
AF_EXTRA_FLAGS="$AF_EXTRA_FLAGS -DAF_WANPIPE_2612_FORCE_UPDATE "
fi
eval "grep CONFIG_NET_NS $SOURCEDIR/include/net/sock.h > /dev/null 2> /dev/null"
if [ $? -eq 0 ]; then
AF_EXTRA_FLAGS="$AF_EXTRA_FLAGS -DLINUX_FEAT_CONFIG_NET_NS "
fi
fi
}
@ -3009,15 +3028,13 @@ if [ -z $NONINTERACTIVE ]; then
enable_protocols "AFT_TE1"
elif [ "$response" -eq 6 ]; then
check_sctp_utility
enable_protocols "AFT_TE1"
SSMG_BRI=YES
enable_protocols "AFT_TE1"
elif [ "$response" -eq 7 ]; then
check_sctp_utility
SSMG_BRI=YES
enable_protocols "AFT_TE1"
enable_protocols "TDM"
SSMG_BRI=YES
elif [ "$response" -eq 8 ]; then
enable_protocols "AFT_TE1"
@ -3029,16 +3046,32 @@ if [ -z $NONINTERACTIVE ]; then
fi
else
if [ "$PROTS" = "" ]; then
if [ $zaptel_auto_install = "YES" ]; then
if [ $bri_auto_install = "YES" ]; then
SSMG=YES
SSMG_BRI=YES
enable_protocols "BRI"
enable_protocols "AFT_TE1"
LIP_PROT=NO
LIP_LOAD=NO
elif [ $zaptel_auto_install = "YES" ]; then
enable_protocols "TDM"
enable_protocols "AFT_TE1"
LIP_PROT=NO
LIP_LOAD=NO
else
else
enable_protocols $DEFAULT_PROTOCOLS
fi
fi
fi
if [ "$SSMG_BRI" = "YES" ]; then
check_sctp_utility
find_ast_dirs
fi
return
}
@ -3120,7 +3153,7 @@ ENDOFTEXT
fi
echo
getyn "Proceed to build ${DISTR_NAME} kernel modules ? [y]" || return 0;
#getyn "Proceed to build ${DISTR_NAME} kernel modules ? [y]" || return 0;
if [ ! -d $DRIVER_TMP_DIR ]; then
eval "\mkdir -p $DRIVER_TMP_DIR > /dev/null"
@ -3268,7 +3301,7 @@ ENDOFTEXT
select_compilation_mode
display_compiled_protocols
#display_compiled_protocols
#Disply all supported protocols that will be compiled
#into the driver.
@ -3364,7 +3397,6 @@ ENDOFTEXT
CONFIG_SMP=NO;
fi
#Find out our processor type. This is needed to properly
#compile our modules.
echo -n "Checking current processor type ..."
@ -3398,6 +3430,8 @@ ENDOFTEXT
;;
i386*) LD_ELF="-m elf_i386"
;;
x86*) LD_ELF="-m elf_i386"
;;
ppc*)
;;
*)
@ -3625,7 +3659,7 @@ CFLAGS="$CC -Wp,-MD,.wanpipe.o.d -nostdinc -iwithprefix include -D__LINUX__ -Dli
echo
fi
cat <<ENDOFTEXT > $PROD_HOME/Compile_Setup.sh
cat <<ENDOFTEXT > $PROD_HOME/scripts/Compile_Setup.sh
#!/bin/sh
@ -3659,7 +3693,7 @@ ENDOFTEXT
tmp=${CFLAGS/$CC/}
cat <<ENDOFTEXT > $PROD_HOME/Compile.sh
cat <<ENDOFTEXT > $PROD_HOME/scripts/Compile.sh
#!/bin/sh
@ -3684,7 +3718,7 @@ WANPIPE_OBJS=
AF_EXTRA_FLAGS="-DCONFIG_PRODUCT_WANPIPE_SOCK_DATASCOPE"
check_for_af_wanpipe_updates
rm -f af_wanpipe_src.c
ln -s af_wanpipe.c af_wanpipe_src.c
build_kernel_module af_wanpipe "af_wanpipe_src af_wanpipe_datascope" "$AF_EXTRA_FLAGS"
@ -4545,12 +4579,17 @@ function install_chan_woomera()
return 0
}
function install_ssmg_bri()
function install_ssmg_ss7()
{
if [ $SSMG_BRI != "YES" ]; then
if [ $SSMG_SS7 != "YES" ]; then
return 0
fi
banner
check_sctp_utility
find_ast_dirs
SSMG="YES"
eval "install_ssmg"
@ -4569,9 +4608,57 @@ function install_ssmg_bri()
echo "Installing SMG Daemon..."
echo
if [ -z $ROOT ]; then
eval "./install -noss7"
eval "./install -pbxdir $AST_SOURCE_DIR"
else
eval "./install -noss7 -rootdir $ROOT"
eval "./install -rootdir $ROOT -pbxdir $AST_SOURCE_DIR"
fi
if [ $? -ne 0 ]; then
echo "-------------------------------------"
echo "Error: SMG Failed to install"
echo "Please Contact Sangoma Support!"
echo "-------------------------------------"
exit 1;
fi
echo
pause
}
function install_ssmg_bri()
{
if [ $SSMG_BRI != "YES" ]; then
return 0
fi
banner
check_sctp_utility
find_ast_dirs
SSMG="YES"
eval "install_ssmg"
if [ $? -ne 0 ]; then
echo "-------------------------------------"
echo "Error: SMG Libraries Failed to install"
echo "Please Contact Sangoma Support!"
echo "-------------------------------------"
exit 1;
fi
echo
cd $PROD_HOME/$SSMG_DIR
cd sangoma_mgd.trunk
echo "Installing SMG Daemon..."
echo
if [ -z $ROOT ]; then
eval "./install -noss7 -pbxdir $AST_SOURCE_DIR"
else
eval "./install -noss7 -rootdir $ROOT -pbxdir $AST_SOURCE_DIR"
fi
if [ $? -ne 0 ]; then
echo "-------------------------------------"
@ -4608,6 +4695,10 @@ function install_ssmg ()
return 0;
fi
if [ "$SSMG_INSTALLED" == "YES" ]; then
return 0;
fi
cd $PROD_HOME/$SSMG_DIR
banner
@ -4636,13 +4727,15 @@ function install_ssmg ()
if [ $SSMG_BRI != "YES" ]; then
install_smg_samples_ss7
fi
SSMG_INSTALLED=YES
return 0;
}
function install_smg_samples_bri()
{
getyn "Add Woomera config in Asterisk Extensions and Iax Conf"
getyn "Append sample config in Asterisk Extensions and Iax Conf"
if [ $? -ne 0 ]; then
return 0;
fi
@ -4671,8 +4764,6 @@ function install_smg_samples_bri()
fi
fi
pause
return 0
}
@ -5809,6 +5900,178 @@ function find_zap_dirs ()
}
function find_ast_dirs_invalid ()
{
echo
echo "Invalid Response $response"
echo
clear
find_ast_dirs "$1"
}
function find_ast_dirs ()
{
local cnt
local dir
local astdir_manual=0
local astdirs=$1
local astdirs1
if [ "$AST_PATH_OP" = "YES" ]; then
return;
fi
echo
echo "Looking for Asteris/CallWeaver directory in /usr/src ..."
echo "-------------------------------------------"
if [ "$astdirs" = "" ]; then
astdirs=`find /usr/src -maxdepth 2 -name 'asterisk*' | xargs `
if [ -d "/usr/src/asterisk" ]; then
astdirs="/usr/src/asterisk "$astdirs
fi
astdirs1=`find /usr/src -maxdepth 2 -name 'callweaver*' | xargs `
if [ -d "/usr/src/callweaver" ]; then
astdirs1="/usr/src/callweaver "$astdirs1
fi
astdirs="$astdirs $astdirs1"
fi
unset astdir_array;
if [ -f $PROD_HOME/zaptel/ast.path ]; then
astextradir=`cat $PROD_HOME/zaptel/ast.path`
fi
cnt=1
for dir in $astdirs
do
if [ ! -d $dir ]; then
continue
fi
if [ ! -f $dir/include/asterisk.h ] && [ ! -f $dir/include/callweaver.h ]; then
continue;
fi
if [ "$dir" = "/usr/src/asterisk" ] && [ $cnt -ne 1 ]; then
continue;
fi
if [ "$dir" = "/usr/src/callweaver" ] && [ $cnt -ne 1 ]; then
continue;
fi
astdir_array[$cnt]=$dir;
echo "$cnt : $dir "
cnt=$((cnt+1))
done
if [ $cnt -eq 1 ]; then
echo
echo "No asterisk/callweaver dirs found in /usr/src "
echo "Please use option \"m\" to enter asterisk/callweaver path"
echo
fi
echo "------------------------------------------ "
for dir in $astextradir
do
if [ ! -d $dir ]; then
continue
fi
if [ ! -f $dir/include/asterisk.h ] && [ ! -f $dir/include/callweaver.h ]; then
continue;
fi
astdir_array[$cnt]=$dir;
echo "$cnt : $dir (entered manually) "
cnt=$((cnt+1))
done
echo "------------------------------------------ "
echo "m : Enter Asterisk/CallWeaver path manually"
echo
# echo "d2: Download Latest 1.2"
# echo "d4: Download Latest 1.4"
echo "(ctrl-c to Exit)"
echo -n "Please select working Asterisk/CallWeaver directory [1-$((cnt-1))][m]: "
response=1
if [ -z $NONINTERACTIVE ] || [ $bri_auto_install = "YES" ]; then
read response
fi
if [ "$response" = "" ]; then
find_ast_dirs_invalid "$astdirs"
elif [ $response = "m" ]; then
echo
echo "Please enter Asterisk/CallWeaver dir: [Default: $AST_DFLT_INSTALL_DIR]"
echo -n "#> "
read response
if [ "$response" = "" ]; then
AST_INSTALL_DIR=$AST_DFLT_INSTALL_DIR
else
AST_INSTALL_DIR=$response
fi
astdir_manual=1
# elif [ $response = "q" ]; then
# find_ast_dir_quit=1
# return 1;
elif [ $response -gt 0 ] && [ $response -lt $cnt ]; then
AST_INSTALL_DIR=${astdir_array[$response]}
else
find_ast_dirs_invalid "$astdirs"
fi
AST_SOURCE_DIR=$AST_INSTALL_DIR
if [ ! -f $AST_SOURCE_DIR/include/asterisk.h ] && [ ! -f $AST_SOURCE_DIR/include/callweaver.h ]; then
echo
echo "Error: asterisk.h/callweaver.h not found in $AST_SOURCE_DIR"
echo
echo
astdir_manual=0
pause 1
clear
find_ast_dirs "$astdirs"
fi
if [ $find_ast_dir_quit -eq 1 ] ; then
AST_INSTALL_DIR=$AST_DFLT_INSTALL_DIR
return 1
fi
if [ $astdir_manual -eq 1 ]; then
eval "grep \"$AST_INSTALL_DIR\" $PROD_HOME/zaptel/ast.path 2> /dev/null > /dev/null "
if [ $? -ne 0 ]; then
echo "$AST_INSTALL_DIR" >> $PROD_HOME/zaptel/ast.path
fi
fi
AST_PATH_OP="YES";
return 0;
}
function tdmv_get_asterisk_source_path ()
{
echo
@ -5841,8 +6104,13 @@ function enable_protocols ()
local PROT_MATCH=NO
local PROTOCOL=$1
local ARG
ARG=${2:-NO}
if [ "$PROTOCOL" = "DEF" ]; then
PROTOCOL=$DEFAULT_PROTOCOLS
fi
echo "$PROTOCOL" | grep "BRI" > /dev/null
if [ $? -eq 0 ]; then
@ -6388,10 +6656,10 @@ ENDOFTEXT
if [ $PROT_MATCH = NO ]; then
echo
echo "Error: invalid --protocol option"
echo "Error: invalid --protocol option ($PROTOCOL)"
echo
echo "Available non-default protocols are: $AVAIL_PROTOCOLS";
echo "Example: ./Setup install --protocol=BITSTRM-BISYNC"
echo "Example: ./Setup install --protocol=DEF"
echo
return 1
fi
@ -6502,7 +6770,7 @@ function compile_aft_firmware_util()
function check_sctp_utility ()
{
clearscr
echo
echo -n "Checking for SCTP Utilities...."
if [ ! -e /usr/include/netinet/sctp.h ] && [ ! -e /usr/include/sctp.h ]; then
echo "Failed!"
@ -6656,7 +6924,7 @@ KERNEL_UNAME=`uname -r`
PKG_NAME=wanpipe
DISTR_NAME="WANPIPE"
PROD=wanrouter
PROD_VER=3.3.11
PROD_VER=3.3.12
PROD_HOME=`pwd`
META_CONF=$PROD_HOME/$PROD.rc
WAN_INTR_DIR=$PROD_HOME/interfaces
@ -6697,7 +6965,9 @@ WANCFG_ZAPTEL_CFG=NO
WANCFG_ZAPTEL=/usr/sbin/wancfg_zaptel
WANCFG_SMG=/usr/sbin/wancfg_smg
find_zap_dir_quit=0
find_ast_dir_quit=0
zaptel_auto_install="NO"
bri_auto_install="NO"
setup_install_quick="NO"
@ -6744,6 +7014,9 @@ ANNEXG_LOAD=NO
SCTP_LOAD=NO
ZAPTEL_DFLT_INSTALL_DIR="/usr/src/zaptel"
AST_DFLT_INSTALL_DIR="/usr/src/asterisk"
AST_SOURCE_DIR=$AST_DFLT_INSTALL_DIR
AST_PATH_OP="NO"
ZAPTEL_SOURCE_DIR=$ZAPTEL_DFLT_INSTALL_DIR
ZAPTEL_INSTALL_DIR=$ZAPTEL_DFLT_INSTALL_DIR
ZAPTEL_C_FILE="zaptel.c"
@ -6916,6 +7189,17 @@ if [ "$setup_cmd" = "zaptel" ]; then
#EXTRA_ARGS=" --protocol=TDM "
fi
if [ "$setup_cmd" = "bri" ]; then
setup_cmd="install"
zaptel_auto_install="YES"
bri_auto_install="YES"
SSMG=YES
SSMG_BRI=YES
#EXTRA_ARGS=" --protocol=AFT_TE1-BRI "
#EXTRA_ARGS=" --protocol=TDM "
fi
if [ "$setup_cmd" = "buildrpm" ]; then
EXTRA_ARGS=" --no-zaptel-compile "
fi
@ -7207,7 +7491,10 @@ if [ "$PKG_NAME" != "wanpipe-lite" ]; then
if [ "$setup_cmd" = "smgbri" ]; then
SSMG=YES
SSMG_BRI=YES
NONINTERACTIVE=1;
zaptel_auto_install="YES"
bri_auto_install="YES"
SSMG=YES
SSMG_BRI=YES
install_ssmg_bri;
exit;
fi
@ -7507,6 +7794,7 @@ fi
install_ssmg
install_ssmg_bri
clean_up
goodbye
@ -7515,16 +7803,56 @@ if [ $zaptel_auto_install = "YES" ]; then
NONINTERACTIVE=
fi
if [ -z $NONINTERACTIVE ] && [ "$WANCFG_ZAPTEL_CFG" = "YES" ] && [ -e $WANCFG_ZAPTEL ]; then
NONINTERACTIVE=
if [ -z $NONINTERACTIVE ]; then
if [ "$WANCFG_ZAPTEL_CFG" = "YES" ] && [ -e $WANCFG_ZAPTEL ]; then
echo
if [ $SSMG_BRI == "YES" ]; then
echo "Wanpipe / Zaptel & SMG BRI Configuration"
echo "========================================"
else
echo "Wanpipe / Zaptel Configuration"
echo "=============================="
fi
echo
echo "wancfg_zaptel configurator can create all wanpipe devices"
echo "for ZAPTEL as well as /etc/zaptel.conf file."
echo "Optionally: wancfg_zaptel can also create Asterisk zapata.conf"
if [ $SSMG_BRI == "YES" ]; then
echo "wancfg_smg configurator can create all wanpipe config files"
echo "for ZAPTEL as well as for SMG BRI."
else
echo "wancfg_zaptel configurator can create all wanpipe config files"
echo "for ZAPTEL including /etc/zaptel.conf file."
fi
echo "Optionally: the configurator can also create Asterisk zapata.conf"
echo "-----------------------------------------------------"
if [ $SSMG_BRI == "YES" ]; then
getyn "Would you like to configure wanpipe devices for ZAPTEL & BRI?"
else
getyn "Would you like to configure wanpipe devices for ZAPTEL?"
fi
if [ $? -eq 0 ]; then
if [ $SSMG_BRI == "YES" ]; then
eval "$WANCFG_SMG"
else
eval "$WANCFG_ZAPTEL"
fi
else
echo "Wanpipe Installation Complete"
echo "-----------------------------"
echo "Please proceed to configure wanpipe user /usr/sbin/wancfg"
echo
fi
elif [ "$SSMG_BRI" = "YES" ]; then
echo
echo "Wanpipe / SMG BRI Configuration"
echo "==============================="
echo
echo "wancfg_smg configurator can create all wanpipe devices"
echo "for BRI as well as BRI config file and Asterisk config files."
echo "-----------------------------------------------------"
getyn "Would you like to configure wanpipe devices for SMG BRI/Asterisk/CallWeaver?"
if [ $? -eq 0 ]; then
if [ $SSMG_BRI == "YES" ]; then
eval "$WANCFG_SMG"
@ -7538,4 +7866,5 @@ if [ -z $NONINTERACTIVE ] && [ "$WANCFG_ZAPTEL_CFG" = "YES" ] && [ -e $WANCFG_ZA
echo
fi
fi
fi

View File

@ -1,5 +1,5 @@
Package: wanpipe
Version: 3.3.11-0
Version: 3.3.12-0
Section: networking
Priority: optional
Architecture: all

View File

@ -1,11 +1,11 @@
WANPIPE PACKAGE INSTALLATION/UN-INSTALLATION
============================================
Author: Nenad Corbic
For Lates Docs Please visit
---------------------------------------------
http://wiki.sangoma.com
---------------------------------------------
@ -21,13 +21,13 @@ Wanpipe SOURCE packages are located in:
tar xvfz wanpipe-<version>.tgz
The tar will create the temporary
wanpipe/ directory.
wanpipe-<version>/ directory.
WANPIPE SOURCE PACKAGE Installation
====================================
The 'Setup' script located in temporary wanpipe/
The 'Setup' script located in temporary wanpipe-<version>/
directory should be used to install/un-install
and re-configure all WANPIPE driver and utilities.
@ -36,12 +36,12 @@ options that can be used to customise wanpipe
installation. Run ./Setup without any arguments
for usage.
Run the Setup script from temporary wanpipe/ directory
Run the Setup script from temporary wanpipe-<version>/ directory
(wanpipe directory was created by untaring the source package)
cd wanpipe/
./Setup install
or
./Setup zaptel #Compile for Zaptel/Asterisk
The install option will do the following:
-------
@ -52,37 +52,11 @@ The install option will do the following:
3. Prompt the user to Install/Upgrade WANPIPE
drivers into the Linux kernel source.
NOTE: The kernel source must be located
in /usr/src/linux.
Or the linux source directory
must be supplied with '--with-linux' argument.
It is always RECOMMENDED to upgrade/update
the kernel source tree with the latest
wanpipe source.
4. Prompt the user to re-compile all WANPIPE
kernel drivers and install them as modules
in the the current /lib/modules/<kernel-version>
directory.
Compilaton Options: Default or Custom
Default compilation:
option will compile the standard WANPIPE protocols
into the kernel device driver: Frame Relay, PPP, CHDLC
Multi-Port Frame Relay, Multi-Port PPP, and X25(API). "
Custom compilation:
option will offer a menu of all available WAN and
API protocols. The user will be able to enable
protocols individually or all at once,
as desired.
With this option, NO kernel recomilation is
necessary :)
5. Prompt the user to install bootstrap
scripts that will be used to start wanpipe
during boot up.
@ -234,9 +208,9 @@ source tree with the latest wanpipe drivers
and to compile the wanpipe kernel modules
against the updated kernel source tree.
Run the Setup script in temporary wanpipe/ directory:
Run the Setup script in temporary wanpipe-<version>/ directory:
ex: cd wanpipe/
ex: cd wanpipe-<version>/
./Setup drivers
@ -277,20 +251,20 @@ WANPIPE Utilities Re-Compilation
=================================
This option will re-compile all WANPIPE utilities
in temporary wanpipe/ directory.
in temporary wanpipe-<version>/ directory.
NOTE: If this is a first time install you MUST run
the install option: Setup install.
Run the Setup script in temporary wanpipe/ directory:
Run the Setup script in temporary directory:
ex: cd wanpipe/
ex: cd wanpipe-<version>/
./Setup utility
The utility option will do the following:
-------
1. Compile all WANPIPE utilities
in temporary wanpipe/ directory
in temporary wanpipe-<version>/ directory
To install utilities into /usr/sbin
directory one must run:
@ -308,9 +282,9 @@ info.
WANPIPE Un-Install
==================
Run the Setup script in temporary wanpipe/ directory:
Run the Setup script in temporary wanpipe-<version>/ directory:
ex: cd wanpipe/
ex: cd wanpipe-<version>/
./Setup remove
@ -322,10 +296,10 @@ The remove option will do the following:
directories.
After the 'Setup remove' command, it is safe
to remove the whole temporary wanpipe/ directory.
to remove the whole temporary wanpipe-<version>/ directory.
ex:
rm -rf wanpipe/
rm -rf wanpipe-<version>/

View File

@ -55,12 +55,23 @@
# define wan_dev_get_by_name(name) dev_get_by_name(&init_net,name)
# define wan_dev_get_by_index(idx) dev_get_by_index(&init_net,idx)
# define wan_init_net(name) init_net.name
# if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) || defined(LINUX_FEAT_CONFIG_NET_NS)
# define wan_sock_net(_x) sock_net(_x)
# else
static __inline struct net *wan_sock_net(const struct sock *sk)
{
return sk->sk_net;
}
# endif
#else
# define wan_dev_get_by_name(name) dev_get_by_name(name)
# define wan_dev_get_by_index(idx) dev_get_by_index(idx)
# define wan_init_net(name) name
#endif
typedef int (wan_get_info_t)(char *, char **, off_t, int);
#ifndef IRQF_SHARED

View File

@ -6,7 +6,7 @@
#define WANPIPE_COMPANY "Sangoma Technologies Inc"
/********** LINUX **********/
#define WANPIPE_VERSION "3.3.11"
#define WANPIPE_VERSION "3.3.12"
#define WANPIPE_SUB_VERSION "0"
#define WANPIPE_VERSION_BETA 1
#define WANPIPE_LITE_VERSION "1.1.1"

View File

@ -803,7 +803,7 @@ static struct sock *wanpipe_alloc_socket(struct sock *osk, void *net)
}
if (osk) {
net=sock_net(osk);
net=wan_sock_net(osk);
}
sk = sk_alloc((struct net*)net, PF_WANPIPE, GFP_ATOMIC, &packet_proto);

View File

@ -1,6 +1,6 @@
%define WANPIPE_VER wanpipe-modules
%define name %{WANPIPE_VER}
%define version 3.3.11
%define version 3.3.12
%define release 0
%define serial 1
%define MODULES_DIR /lib/modules
@ -51,17 +51,38 @@ echo "Wanpipe Modules located in %{MODULES_DIR}/%{KVERSION}"
%changelog
* Wed Jul 14 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
* Fri Aug 1 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.12
=====================================================================
- Compilation fix for 2.6.25 kernel
Introduced in 3.3.11 release
- Setup update
Added bri and zaptel installation modes.
-> ./Setup install #General installation
-> ./Setup zaptel #Zaptel based installation
-> ./Setup bri #SMG BRI installation
Streamlined Setup installation script
Added check for Asterisk directory when installing BRI
Added check for x86 in architecture
- Fixed Makefile build
- Updated README File
* Wed Jul 30 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
=====================================================================
- BRI to Analog Faxing Update
Improved faxing over SMG Gateway and Zaptel Analog.
This feature drasticly improves faxing peformance between
This feature drastically improves faxing performance between
BRI and Analog cards over Asterisk.
- BRI Update
Added overlap dailing support
Added support for BRI with 16 channel Echo Canceller.
Added overlap dialing support
Added support for BRI with 16 channel Echo Canceler.
Support for test start option, that only verifies configuration
files without applying changes.
Support for non-syslog logging.
@ -90,7 +111,7 @@ echo "Wanpipe Modules located in %{MODULES_DIR}/%{KVERSION}"
Added a check for buffer overflow in write function.
- New Octasic EC Image
Impoves faxing over Hardware Echo Canceller.
Improves faxing over Hardware Echo Canceler.
- BRI Bug fix on startup
The clock measuring function has limited and could fail on some machines.

View File

@ -1,7 +1,7 @@
%define KERNEL_VERSION %{?kern_ver}
%define WANPIPE_VER wanpipe-util
%define name %{WANPIPE_VER}
%define version 3.3.11
%define version 3.3.12
%define release 0
%define serial 1
%define ETC_DIR /etc
@ -328,17 +328,38 @@ enable_smg_log;
%changelog
* Wed Jul 14 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
* Fri Aug 1 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.12
=====================================================================
- Compilation fix for 2.6.25 kernel
Introduced in 3.3.11 release
- Setup update
Added bri and zaptel installation modes.
-> ./Setup install #General installation
-> ./Setup zaptel #Zaptel based installation
-> ./Setup bri #SMG BRI installation
Streamlined Setup installation script
Added check for Asterisk directory when installing BRI
Added check for x86 in architecture
- Fixed Makefile build
- Updated README File
* Wed Jul 30 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
=====================================================================
- BRI to Analog Faxing Update
Improved faxing over SMG Gateway and Zaptel Analog.
This feature drasticly improves faxing peformance between
This feature drastically improves faxing performance between
BRI and Analog cards over Asterisk.
- BRI Update
Added overlap dailing support
Added support for BRI with 16 channel Echo Canceller.
Added overlap dialing support
Added support for BRI with 16 channel Echo Canceler.
Support for test start option, that only verifies configuration
files without applying changes.
Support for non-syslog logging.
@ -367,7 +388,7 @@ enable_smg_log;
Added a check for buffer overflow in write function.
- New Octasic EC Image
Impoves faxing over Hardware Echo Canceller.
Improves faxing over Hardware Echo Canceler.
- BRI Bug fix on startup
The clock measuring function has limited and could fail on some machines.

View File

@ -1,7 +1,7 @@
%define KERNEL_VERSION %{?kern_ver}
%define WANPIPE_VER wanpipe
%define name %{WANPIPE_VER}
%define version 3.3.11
%define version 3.3.12
%define release 0
%define serial 1
%define UTILS_DIR /usr/sbin
@ -255,17 +255,38 @@ install_init;
%changelog
* Wed Jul 14 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
* Fri Aug 1 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.12
=====================================================================
- Compilation fix for 2.6.25 kernel
Introduced in 3.3.11 release
- Setup update
Added bri and zaptel installation modes.
-> ./Setup install #General installation
-> ./Setup zaptel #Zaptel based installation
-> ./Setup bri #SMG BRI installation
Streamlined Setup installation script
Added check for Asterisk directory when installing BRI
Added check for x86 in architecture
- Fixed Makefile build
- Updated README File
* Wed Jul 30 2008 Nenad Corbic <ncorbic@sangoma.com> - Beta - 3.3.11
=====================================================================
- BRI to Analog Faxing Update
Improved faxing over SMG Gateway and Zaptel Analog.
This feature drasticly improves faxing peformance between
This feature drastically improves faxing performance between
BRI and Analog cards over Asterisk.
- BRI Update
Added overlap dailing support
Added support for BRI with 16 channel Echo Canceller.
Added overlap dialing support
Added support for BRI with 16 channel Echo Canceler.
Support for test start option, that only verifies configuration
files without applying changes.
Support for non-syslog logging.
@ -294,7 +315,7 @@ install_init;
Added a check for buffer overflow in write function.
- New Octasic EC Image
Impoves faxing over Hardware Echo Canceller.
Improves faxing over Hardware Echo Canceler.
- BRI Bug fix on startup
The clock measuring function has limited and could fail on some machines.

View File

@ -2195,7 +2195,7 @@ init_global_params()
{
if [ $OSYSTEM = "Linux" ]; then
ROUTER_VERSION=3.3.11
ROUTER_VERSION=3.3.12
IFCONFIG_LIST=ifconfig
MODULE_STAT=lsmod
WAN_DRIVERS="wanpipe"

5
scripts/Compile.sh Normal file
View File

@ -0,0 +1,5 @@
#!/bin/sh
make CFLAGS=" -Wp,-MD,.wanpipe.o.d -nostdinc -iwithprefix include -D__LINUX__ -Dlinux -D__KERNEL__ -I/lib/modules/2.6.18-8.1.15.el5/build/include -DMODULE -DAF_WANPIPE_2612_FORCE_UPDATE -DWANPIPE_MOD_266_FORCE_UPDATE -m32 -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Wstrict-prototypes -Wundef -Werror-implicit-function-declaration -Os -pipe -msoft-float -fno-builtin-sprintf -fno-builtin-log2 -fno-builtin-puts -mpreferred-stack-boundary=2 -march=i686 -mtune=generic -mtune=generic -mregparm=3 -ffreestanding -I/lib/modules/2.6.18-8.1.15.el5/build/include/asm-i386/mach-generic -I/lib/modules/2.6.18-8.1.15.el5/build/include/asm-i386/mach-default -fomit-frame-pointer -g -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -D__KERNEL__ -Iinclude -include include/linux/autoconf.h " PROTOCOL_DEFINES="-DCONFIG_PRODUCT_WANPIPE_BASE -DCONFIG_PRODUCT_WANPIPE_FR -DCONFIG_PRODUCT_WANPIPE_CHDLC -DCONFIG_PRODUCT_WANPIPE_PPP -DCONFIG_PRODUCT_WANPIPE_X25 -DCONFIG_PRODUCT_WANPIPE_ADSL -DCONFIG_PRODUCT_WANPIPE_LIP_ATM -DCONFIG_PRODUCT_WANPIPE_ATM -DCONFIG_PRODUCT_WANPIPE_MULTFR -DCONFIG_PRODUCT_WANPIPE_MULTPROT -DCONFIG_PRODUCT_WANPIPE_AFT -DCONFIG_PRODUCT_WANPIPE_AFT_CORE -DCONFIG_PRODUCT_WANPIPE_AFT_TE1 -DCONFIG_PRODUCT_WANPIPE_AFT_56K -DCONFIG_PRODUCT_WANPIPE_AFT_RM -DCONFIG_PRODUCT_WANPIPE_CODEC_SLINEAR_LAW -DCONFIG_PRODUCT_WANPIPE_AFT_BRI -DCONFIG_PRODUCT_WANPIPE_AFT_SERIAL -DCONFIG_PRODUCT_WANPIPE_AFT_TE3 -DWANPIPE_USE_I_PRIVATE -DCONFIG_WANPIPE_HWEC "

29
scripts/Compile_Setup.sh Normal file
View File

@ -0,0 +1,29 @@
#!/bin/sh
if [ -e kdrvcmp ]; then
rm -rf kdrvcmp
fi
mkdir kdrvcmp
cd kdrvcmp
ln -s . common
ln -s . modinfo
mkdir tmp
mkdir mod
cp -f ../patches/kdrivers/src/net/* .
cp -f ../patches/kdrivers/src/wanrouter/* .
cp -f ../patches/kdrivers/src/lip/* .
cp -f ../patches/kdrivers/src/lip/bin/* .
cp -rf ../patches/kdrivers/include/* /usr/src/linux/include/linux
cp -rf ../patches/kdrivers/include/* /usr/include/linux
cp -f ../samples/Makefile .
cp -f ../Compile.sh .
chmod 755 Compile.sh
cd ..
echo "Compile Environmet Setup"

View File

@ -292,6 +292,10 @@ if [ -d chan_woomera.trunk ]; then
echo " Please provide the path to Asterik or CallWeaver source."
echo " Then re-run eg: ./install -pbxdir /usr/src/asterisk "
echo
getyn "Would you like to continue installation?"
if [ $? -ne 0 ]; then
exit 1;
fi
else
eval "make clean 2> /dev/null > /dev/null"
eval "make PBXDIR=$pbxdir"