|  | ------------------------------------------------------------------------------ | 
|  | Linux WAN Router Utilities Package | 
|  | ------------------------------------------------------------------------------ | 
|  | Version 2.2.1 | 
|  | Mar 28, 2001 | 
|  | Author: Nenad Corbic <ncorbic@sangoma.com> | 
|  | Copyright (c) 1995-2001 Sangoma Technologies Inc. | 
|  | ------------------------------------------------------------------------------ | 
|  |  | 
|  | INTRODUCTION | 
|  |  | 
|  | Wide Area Networks (WANs) are used to interconnect Local Area Networks (LANs) | 
|  | and/or stand-alone hosts over vast distances with data transfer rates | 
|  | significantly higher than those achievable with commonly used dial-up | 
|  | connections. | 
|  |  | 
|  | Usually an external device called `WAN router' sitting on your local network | 
|  | or connected to your machine's serial port provides physical connection to | 
|  | WAN.  Although router's job may be as simple as taking your local network | 
|  | traffic, converting it to WAN format and piping it through the WAN link, these | 
|  | devices are notoriously expensive, with prices as much as 2 - 5 times higher | 
|  | then the price of a typical PC box. | 
|  |  | 
|  | Alternatively, considering robustness and multitasking capabilities of Linux, | 
|  | an internal router can be built (most routers use some sort of stripped down | 
|  | Unix-like operating system anyway). With a number of relatively inexpensive WAN | 
|  | interface cards available on the market, a perfectly usable router can be | 
|  | built for less than half a price of an external router.  Yet a Linux box | 
|  | acting as a router can still be used for other purposes, such as fire-walling, | 
|  | running FTP, WWW or DNS server, etc. | 
|  |  | 
|  | This kernel module introduces the notion of a WAN Link Driver (WLD) to Linux | 
|  | operating system and provides generic hardware-independent services for such | 
|  | drivers.  Why can existing Linux network device interface not be used for | 
|  | this purpose?  Well, it can.  However, there are a few key differences between | 
|  | a typical network interface (e.g. Ethernet) and a WAN link. | 
|  |  | 
|  | Many WAN protocols, such as X.25 and frame relay, allow for multiple logical | 
|  | connections (known as `virtual circuits' in X.25 terminology) over a single | 
|  | physical link.  Each such virtual circuit may (and almost always does) lead | 
|  | to a different geographical location and, therefore, different network.  As a | 
|  | result, it is the virtual circuit, not the physical link, that represents a | 
|  | route and, therefore, a network interface in Linux terms. | 
|  |  | 
|  | To further complicate things, virtual circuits are usually volatile in nature | 
|  | (excluding so called `permanent' virtual circuits or PVCs).  With almost no | 
|  | time required to set up and tear down a virtual circuit, it is highly desirable | 
|  | to implement on-demand connections in order to minimize network charges.  So | 
|  | unlike a typical network driver, the WAN driver must be able to handle multiple | 
|  | network interfaces and cope as multiple virtual circuits come into existence | 
|  | and go away dynamically. | 
|  |  | 
|  | Last, but not least, WAN configuration is much more complex than that of say | 
|  | Ethernet and may well amount to several dozens of parameters.  Some of them | 
|  | are "link-wide"  while others are virtual circuit-specific.  The same holds | 
|  | true for WAN statistics which is by far more extensive and extremely useful | 
|  | when troubleshooting WAN connections.  Extending the ifconfig utility to suit | 
|  | these needs may be possible, but does not seem quite reasonable.  Therefore, a | 
|  | WAN configuration utility and corresponding application programmer's interface | 
|  | is needed for this purpose. | 
|  |  | 
|  | Most of these problems are taken care of by this module.  Its goal is to | 
|  | provide a user with more-or-less standard look and feel for all WAN devices and | 
|  | assist a WAN device driver writer by providing common services, such as: | 
|  |  | 
|  | o User-level interface via /proc file system | 
|  | o Centralized configuration | 
|  | o Device management (setup, shutdown, etc.) | 
|  | o Network interface management (dynamic creation/destruction) | 
|  | o Protocol encapsulation/decapsulation | 
|  |  | 
|  | To ba able to use the Linux WAN Router you will also need a WAN Tools package | 
|  | available from | 
|  |  | 
|  | ftp.sangoma.com/pub/linux/current_wanpipe/wanpipe-X.Y.Z.tgz | 
|  |  | 
|  | where vX.Y.Z represent the wanpipe version number. | 
|  |  | 
|  | For technical questions and/or comments please e-mail to ncorbic@sangoma.com. | 
|  | For general inquiries please contact Sangoma Technologies Inc. by | 
|  |  | 
|  | Hotline:	1-800-388-2475	(USA and Canada, toll free) | 
|  | Phone:		(905) 474-1990  ext: 106 | 
|  | Fax:		(905) 474-9223 | 
|  | E-mail:		dm@sangoma.com	(David Mandelstam) | 
|  | WWW:		http://www.sangoma.com | 
|  |  | 
|  |  | 
|  | INSTALLATION | 
|  |  | 
|  | Please read the WanpipeForLinux.pdf manual on how to | 
|  | install the WANPIPE tools and drivers properly. | 
|  |  | 
|  |  | 
|  | After installing wanpipe package: /usr/local/wanrouter/doc. | 
|  | On the ftp.sangoma.com : /linux/current_wanpipe/doc | 
|  |  | 
|  |  | 
|  | COPYRIGHT AND LICENSING INFORMATION | 
|  |  | 
|  | This program is free software; you can redistribute it and/or modify it under | 
|  | the terms of the GNU General Public License as published by the Free Software | 
|  | Foundation; either version 2, or (at your option) any later version. | 
|  |  | 
|  | This program is distributed in the hope that it will be useful, but WITHOUT | 
|  | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | 
|  | FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. | 
|  |  | 
|  | You should have received a copy of the GNU General Public License along with | 
|  | this program; if not, write to the Free Software Foundation, Inc., 675 Mass | 
|  | Ave, Cambridge, MA 02139, USA. | 
|  |  | 
|  |  | 
|  |  | 
|  | ACKNOWLEDGEMENTS | 
|  |  | 
|  | This product is based on the WANPIPE(tm) Multiprotocol WAN Router developed | 
|  | by Sangoma Technologies Inc. for Linux 2.0.x and 2.2.x.  Success of the WANPIPE | 
|  | together with the next major release of Linux kernel in summer 1996 commanded | 
|  | adequate changes to the WANPIPE code to take full advantage of new Linux | 
|  | features. | 
|  |  | 
|  | Instead of continuing developing proprietary interface tied to Sangoma WAN | 
|  | cards, we decided to separate all hardware-independent code into a separate | 
|  | module and defined two levels of interfaces - one for user-level applications | 
|  | and another for kernel-level WAN drivers.  WANPIPE is now implemented as a | 
|  | WAN driver compliant with the WAN Link Driver interface.  Also a general | 
|  | purpose WAN configuration utility and a set of shell scripts was developed to | 
|  | support WAN router at the user level. | 
|  |  | 
|  | Many useful ideas concerning hardware-independent interface implementation | 
|  | were given by Mike McLagan <mike.mclagan@linux.org> and his implementation | 
|  | of the Frame Relay router and drivers for Sangoma cards (dlci/sdla). | 
|  |  | 
|  | With the new implementation of the APIs being incorporated into the WANPIPE, | 
|  | a special thank goes to Alan Cox in providing insight into BSD sockets. | 
|  |  | 
|  | Special thanks to all the WANPIPE users who performed field-testing, reported | 
|  | bugs and made valuable comments and suggestions that help us to improve this | 
|  | product. | 
|  |  | 
|  |  | 
|  |  | 
|  | NEW IN THIS RELEASE | 
|  |  | 
|  | o Updated the WANCFG utility | 
|  | Calls the pppconfig to configure the PPPD | 
|  | for async connections. | 
|  |  | 
|  | o Added the PPPCONFIG utility | 
|  | Used to configure the PPPD daemon for the | 
|  | WANPIPE Async PPP and standard serial port. | 
|  | The wancfg calls the pppconfig to configure | 
|  | the pppd. | 
|  |  | 
|  | o Fixed the PCI autodetect feature. | 
|  | The SLOT 0 was used as an autodetect option | 
|  | however, some high end PC's slot numbers start | 
|  | from 0. | 
|  |  | 
|  | o This release has been tested with the new backupd | 
|  | daemon release. | 
|  |  | 
|  |  | 
|  | PRODUCT COMPONENTS AND RELATED FILES | 
|  |  | 
|  | /etc: (or user defined) | 
|  | wanpipe1.conf	default router configuration file | 
|  |  | 
|  | /lib/modules/X.Y.Z/misc: | 
|  | wanrouter.o	router kernel loadable module | 
|  | af_wanpipe.o	wanpipe api socket module | 
|  |  | 
|  | /lib/modules/X.Y.Z/net: | 
|  | sdladrv.o	Sangoma SDLA support module | 
|  | wanpipe.o	Sangoma WANPIPE(tm) driver module | 
|  |  | 
|  | /proc/net/wanrouter | 
|  | Config		reads current router configuration | 
|  | Status		reads current router status | 
|  | {name}		reads WAN driver statistics | 
|  |  | 
|  | /usr/sbin: | 
|  | wanrouter	wanrouter start-up script | 
|  | wanconfig	wanrouter configuration utility | 
|  | sdladump	WANPIPE adapter memory dump utility | 
|  | fpipemon        Monitor for Frame Relay | 
|  | cpipemon        Monitor for Cisco HDLC | 
|  | ppipemon 	Monitor for PPP | 
|  | xpipemon 	Monitor for X25 | 
|  | wpkbdmon        WANPIPE keyboard led monitor/debugger | 
|  |  | 
|  | /usr/local/wanrouter: | 
|  | README		this file | 
|  | COPYING		GNU General Public License | 
|  | Setup		installation script | 
|  | Filelist	distribution definition file | 
|  | wanrouter.rc	meta-configuration file | 
|  | (used by the Setup and wanrouter script) | 
|  |  | 
|  | /usr/local/wanrouter/doc: | 
|  | wanpipeForLinux.pdf 	WAN Router User's Manual | 
|  |  | 
|  | /usr/local/wanrouter/patches: | 
|  | wanrouter-v2213.gz  	patch for Linux kernels 2.2.11 up to 2.2.13. | 
|  | wanrouter-v2214.gz	patch for Linux kernel 2.2.14. | 
|  | wanrouter-v2215.gz	patch for Linux kernels 2.2.15 to 2.2.17. | 
|  | wanrouter-v2218.gz	patch for Linux kernels 2.2.18 and up. | 
|  | wanrouter-v240.gz	patch for Linux kernel 2.4.0. | 
|  | wanrouter-v242.gz	patch for Linux kernel 2.4.2 and up. | 
|  | wanrouter-v2034.gz	patch for Linux kernel 2.0.34 | 
|  | wanrouter-v2036.gz 	patch for Linux kernel 2.0.36 and up. | 
|  |  | 
|  | /usr/local/wanrouter/patches/kdrivers: | 
|  | Sources of the latest WANPIPE device drivers. | 
|  | These are used to UPGRADE the linux kernel to the newest | 
|  | version if the kernel source has already been patched with | 
|  | WANPIPE drivers. | 
|  |  | 
|  | /usr/local/wanrouter/samples: | 
|  | interface	sample interface configuration file | 
|  | wanpipe1.cpri 	CHDLC primary port | 
|  | wanpipe2.csec 	CHDLC secondary port | 
|  | wanpipe1.fr   	Frame Relay protocol | 
|  | wanpipe1.ppp  	PPP protocol ) | 
|  | wanpipe1.asy	CHDLC ASYNC protocol | 
|  | wanpipe1.x25	X25 protocol | 
|  | wanpipe1.stty	Sync TTY driver (Used by Kernel PPPD daemon) | 
|  | wanpipe1.atty	Async TTY driver (Used by Kernel PPPD daemon) | 
|  | wanrouter.rc	sample meta-configuration file | 
|  |  | 
|  | /usr/local/wanrouter/util: | 
|  | *		wan-tools utilities source code | 
|  |  | 
|  | /usr/local/wanrouter/api/x25: | 
|  | *		x25 api sample programs. | 
|  | /usr/local/wanrouter/api/chdlc: | 
|  | *		chdlc api sample programs. | 
|  | /usr/local/wanrouter/api/fr: | 
|  | *		fr api sample programs. | 
|  | /usr/local/wanrouter/config/wancfg: | 
|  | wancfg		WANPIPE GUI configuration program. | 
|  | Creates wanpipe#.conf files. | 
|  | /usr/local/wanrouter/config/cfgft1: | 
|  | cfgft1		GUI CSU/DSU configuration program. | 
|  |  | 
|  | /usr/include/linux: | 
|  | wanrouter.h	router API definitions | 
|  | wanpipe.h	WANPIPE API definitions | 
|  | sdladrv.h	SDLA support module API definitions | 
|  | sdlasfm.h	SDLA firmware module definitions | 
|  | if_wanpipe.h	WANPIPE Socket definitions | 
|  | sdlapci.h	WANPIPE PCI definitions | 
|  |  | 
|  |  | 
|  | /usr/src/linux/net/wanrouter: | 
|  | *		wanrouter source code | 
|  |  | 
|  | /var/log: | 
|  | wanrouter	wanrouter start-up log (created by the Setup script) | 
|  |  | 
|  | /var/lock:  (or /var/lock/subsys for RedHat) | 
|  | wanrouter	wanrouter lock file (created by the Setup script) | 
|  |  | 
|  | /usr/local/wanrouter/firmware: | 
|  | fr514.sfm	Frame relay firmware for Sangoma S508/S514 card | 
|  | cdual514.sfm	Dual Port Cisco HDLC firmware for Sangoma S508/S514 card | 
|  | ppp514.sfm      PPP Firmware for Sangoma S508 and S514 cards | 
|  | x25_508.sfm	X25 Firmware for Sangoma S508 card. | 
|  |  | 
|  |  | 
|  | REVISION HISTORY | 
|  |  | 
|  | 1.0.0	December 31, 1996	Initial version | 
|  |  | 
|  | 1.0.1	January 30, 1997	Status and statistics can be read via /proc | 
|  | filesystem entries. | 
|  |  | 
|  | 1.0.2   April 30, 1997          Added UDP management via monitors. | 
|  |  | 
|  | 1.0.3	June 3, 1997		UDP management for multiple boards using Frame | 
|  | Relay and PPP | 
|  | Enabled continuous transmission of Configure | 
|  | Request Packet for PPP (for 508 only) | 
|  | Connection Timeout for PPP changed from 900 to 0 | 
|  | Flow Control Problem fixed for Frame Relay | 
|  |  | 
|  | 1.0.4	July 10, 1997		S508/FT1 monitoring capability in fpipemon and | 
|  | ppipemon utilities. | 
|  | Configurable TTL for UDP packets. | 
|  | Multicast and Broadcast IP source addresses are | 
|  | silently discarded. | 
|  |  | 
|  | 1.0.5	July 28, 1997		Configurable T391,T392,N391,N392,N393 for Frame | 
|  | Relay in router.conf. | 
|  | Configurable Memory Address through router.conf | 
|  | for Frame Relay, PPP and X.25. (commenting this | 
|  | out enables auto-detection). | 
|  | Fixed freeing up received buffers using kfree() | 
|  | for Frame Relay and X.25. | 
|  | Protect sdla_peek() by calling save_flags(), | 
|  | cli() and restore_flags(). | 
|  | Changed number of Trace elements from 32 to 20 | 
|  | Added DLCI specific data monitoring in FPIPEMON. | 
|  | 2.0.0	Nov 07, 1997		Implemented protection of RACE conditions by | 
|  | critical flags for FRAME RELAY and PPP. | 
|  | DLCI List interrupt mode implemented. | 
|  | IPX support in FRAME RELAY and PPP. | 
|  | IPX Server Support (MARS) | 
|  | More driver specific stats included in FPIPEMON | 
|  | and PIPEMON. | 
|  |  | 
|  | 2.0.1	Nov 28, 1997		Bug Fixes for version 2.0.0. | 
|  | Protection of "enable_irq()" while | 
|  | "disable_irq()" has been enabled from any other | 
|  | routine (for Frame Relay, PPP and X25). | 
|  | Added additional Stats for Fpipemon and Ppipemon | 
|  | Improved Load Sharing for multiple boards | 
|  |  | 
|  | 2.0.2	Dec 09, 1997		Support for PAP and CHAP for ppp has been | 
|  | implemented. | 
|  |  | 
|  | 2.0.3	Aug 15, 1998		New release supporting Cisco HDLC, CIR for Frame | 
|  | relay, Dynamic IP assignment for PPP and Inverse | 
|  | Arp support for Frame-relay.  Man Pages are | 
|  | included for better support and a new utility | 
|  | for configuring FT1 cards. | 
|  |  | 
|  | 2.0.4	Dec 09, 1998	        Dual Port support for Cisco HDLC. | 
|  | Support for HDLC (LAPB) API. | 
|  | Supports BiSync Streaming code for S502E | 
|  | and S503 cards. | 
|  | Support for Streaming HDLC API. | 
|  | Provides a BSD socket interface for | 
|  | creating applications using BiSync | 
|  | streaming. | 
|  |  | 
|  | 2.0.5   Aug 04, 1999 		CHDLC initialization bug fix. | 
|  | PPP interrupt driven driver: | 
|  | Fix to the PPP line hangup problem. | 
|  | New PPP firmware | 
|  | Added comments to the startup SYSTEM ERROR messages | 
|  | Xpipemon debugging application for the X25 protocol | 
|  | New USER_MANUAL.txt | 
|  | Fixed the odd boundary 4byte writes to the board. | 
|  | BiSync Streaming code has been taken out. | 
|  | Available as a patch. | 
|  | Streaming HDLC API has been taken out. | 
|  | Available as a patch. | 
|  |  | 
|  | 2.0.6   Aug 17, 1999		Increased debugging in statup scripts | 
|  | Fixed installation bugs from 2.0.5 | 
|  | Kernel patch works for both 2.2.10 and 2.2.11 kernels. | 
|  | There is no functional difference between the two packages | 
|  |  | 
|  | 2.0.7   Aug 26, 1999		o  Merged X25API code into WANPIPE. | 
|  | o  Fixed a memory leak for X25API | 
|  | o  Updated the X25API code for 2.2.X kernels. | 
|  | o  Improved NEM handling. | 
|  |  | 
|  | 2.1.0	Oct 25, 1999		o New code for S514 PCI Card | 
|  | o New CHDLC and Frame Relay drivers | 
|  | o PPP and X25 are not supported in this release | 
|  |  | 
|  | 2.1.1	Nov 30, 1999		o PPP support for S514 PCI Cards | 
|  |  | 
|  | 2.1.3   Apr 06, 2000		o Socket based x25api | 
|  | o Socket based chdlc api | 
|  | o Socket based fr api | 
|  | o Dual Port Receive only CHDLC support. | 
|  | o Asynchronous CHDLC support (Secondary Port) | 
|  | o cfgft1 GUI csu/dsu configurator | 
|  | o wancfg GUI configuration file | 
|  | configurator. | 
|  | o Architectural directory changes. | 
|  |  | 
|  | beta-2.1.4 Jul 2000		o Dynamic interface configuration: | 
|  | Network interfaces reflect the state | 
|  | of protocol layer.  If the protocol becomes | 
|  | disconnected, driver will bring down | 
|  | the interface.  Once the protocol reconnects | 
|  | the interface will be brought up. | 
|  |  | 
|  | Note: This option is turned off by default. | 
|  |  | 
|  | o Dynamic wanrouter setup using 'wanconfig': | 
|  | wanconfig utility can be used to | 
|  | shutdown,restart,start or reconfigure | 
|  | a virtual circuit dynamically. | 
|  |  | 
|  | Frame Relay:  Each DLCI can be: | 
|  | created,stopped,restarted and reconfigured | 
|  | dynamically using wanconfig. | 
|  |  | 
|  | ex: wanconfig card wanpipe1 dev wp1_fr16 up | 
|  |  | 
|  | o Wanrouter startup via command line arguments: | 
|  | wanconfig also supports wanrouter startup via command line | 
|  | arguments.  Thus, there is no need to create a wanpipe#.conf | 
|  | configuration file. | 
|  |  | 
|  | o Socket based x25api update/bug fixes. | 
|  | Added support for LCN numbers greater than 255. | 
|  | Option to pass up modem messages. | 
|  | Provided a PCI IRQ check, so a single S514 | 
|  | card is guaranteed to have a non-sharing interrupt. | 
|  |  | 
|  | o Fixes to the wancfg utility. | 
|  | o New FT1 debugging support via *pipemon utilities. | 
|  | o Frame Relay ARP support Enabled. | 
|  |  | 
|  | beta3-2.1.4 Jul 2000		o X25 M_BIT Problem fix. | 
|  | o Added the Multi-Port PPP | 
|  | Updated utilities for the Multi-Port PPP. | 
|  |  | 
|  | 2.1.4	Aut 2000 | 
|  | o In X25API: | 
|  | Maximum packet an application can send | 
|  | to the driver has been extended to 4096 bytes. | 
|  |  | 
|  | Fixed the x25 startup bug. Enable | 
|  | communications only after all interfaces | 
|  | come up.  HIGH SVC/PVC is used to calculate | 
|  | the number of channels. | 
|  | Enable protocol only after all interfaces | 
|  | are enabled. | 
|  |  | 
|  | o Added an extra state to the FT1 config, kernel module. | 
|  | o Updated the pipemon debuggers. | 
|  |  | 
|  | o Blocked the Multi-Port PPP from running on kernels | 
|  | 2.2.16 or greater, due to syncppp kernel module | 
|  | change. | 
|  |  | 
|  | beta1-2.1.5 	Nov 15 2000 | 
|  | o Fixed the MultiPort PPP Support for kernels 2.2.16 and above. | 
|  | 2.2.X kernels only | 
|  |  | 
|  | o Secured the driver UDP debugging calls | 
|  | - All illegal network debugging calls are reported to | 
|  | the log. | 
|  | - Defined a set of allowed commands, all other denied. | 
|  |  | 
|  | o Cpipemon | 
|  | - Added set FT1 commands to the cpipemon. Thus CSU/DSU | 
|  | configuration can be performed using cpipemon. | 
|  | All systems that cannot run cfgft1 GUI utility should | 
|  | use cpipemon to configure the on board CSU/DSU. | 
|  |  | 
|  |  | 
|  | o Keyboard Led Monitor/Debugger | 
|  | - A new utility /usr/sbin/wpkbdmon uses keyboard leds | 
|  | to convey operational statistic information of the | 
|  | Sangoma WANPIPE cards. | 
|  | NUM_LOCK    = Line State  (On=connected,    Off=disconnected) | 
|  | CAPS_LOCK   = Tx data     (On=transmitting, Off=no tx data) | 
|  | SCROLL_LOCK = Rx data     (On=receiving,    Off=no rx data | 
|  |  | 
|  | o Hardware probe on module load and dynamic device allocation | 
|  | - During WANPIPE module load, all Sangoma cards are probed | 
|  | and found information is printed in the /var/log/messages. | 
|  | - If no cards are found, the module load fails. | 
|  | - Appropriate number of devices are dynamically loaded | 
|  | based on the number of Sangoma cards found. | 
|  |  | 
|  | Note: The kernel configuration option | 
|  | CONFIG_WANPIPE_CARDS has been taken out. | 
|  |  | 
|  | o Fixed the Frame Relay and Chdlc network interfaces so they are | 
|  | compatible with libpcap libraries.  Meaning, tcpdump, snort, | 
|  | ethereal, and all other packet sniffers and debuggers work on | 
|  | all WANPIPE network interfaces. | 
|  | - Set the network interface encoding type to ARPHRD_PPP. | 
|  | This tell the sniffers that data obtained from the | 
|  | network interface is in pure IP format. | 
|  | Fix for 2.2.X kernels only. | 
|  |  | 
|  | o True interface encoding option for Frame Relay and CHDLC | 
|  | - The above fix sets the network interface encoding | 
|  | type to ARPHRD_PPP, however some customers use | 
|  | the encoding interface type to determine the | 
|  | protocol running.  Therefore, the TURE ENCODING | 
|  | option will set the interface type back to the | 
|  | original value. | 
|  |  | 
|  | NOTE: If this option is used with Frame Relay and CHDLC | 
|  | libpcap library support will be broken. | 
|  | i.e. tcpdump will not work. | 
|  | Fix for 2.2.x Kernels only. | 
|  |  | 
|  | o Ethernet Bridgind over Frame Relay | 
|  | - The Frame Relay bridging has been developed by | 
|  | Kristian Hoffmann and Mark Wells. | 
|  | - The Linux kernel bridge is used to send ethernet | 
|  | data over the frame relay links. | 
|  | For 2.2.X Kernels only. | 
|  |  | 
|  | o Added extensive 2.0.X support. Most new features of | 
|  | 2.1.5 for protocols Frame Relay, PPP and CHDLC are | 
|  | supported under 2.0.X kernels. | 
|  |  | 
|  | beta1-2.2.0 	Dec 30 2000 | 
|  | o Updated drivers for 2.4.X kernels. | 
|  | o Updated drivers for SMP support. | 
|  | o X25API is now able to share PCI interrupts. | 
|  | o Took out a general polling routine that was used | 
|  | only by X25API. | 
|  | o Added appropriate locks to the dynamic reconfiguration | 
|  | code. | 
|  | o Fixed a bug in the keyboard debug monitor. | 
|  |  | 
|  | beta2-2.2.0	Jan 8 2001 | 
|  | o Patches for 2.4.0 kernel | 
|  | o Patches for 2.2.18 kernel | 
|  | o Minor updates to PPP and CHLDC drivers. | 
|  | Note: No functional difference. | 
|  |  | 
|  | beta3-2.2.9	Jan 10 2001 | 
|  | o I missed the 2.2.18 kernel patches in beta2-2.2.0 | 
|  | release.  They are included in this release. | 
|  |  | 
|  | Stable Release | 
|  | 2.2.0		Feb 01 2001 | 
|  | o Bug fix in wancfg GUI configurator. | 
|  | The edit function didn't work properly. | 
|  |  | 
|  |  | 
|  | bata1-2.2.1	Feb 09 2001 | 
|  | o WANPIPE TTY Driver emulation. | 
|  | Two modes of operation Sync and Async. | 
|  | Sync: Using the PPPD daemon, kernel SyncPPP layer | 
|  | and the Wanpipe sync TTY driver: a PPP protocol | 
|  | connection can be established via Sangoma adapter, over | 
|  | a T1 leased line. | 
|  |  | 
|  | The 2.4.0 kernel PPP layer supports MULTILINK | 
|  | protocol, that can be used to bundle any number of Sangoma | 
|  | adapters (T1 lines) into one, under a single IP address. | 
|  | Thus, efficiently obtaining multiple T1 throughput. | 
|  |  | 
|  | NOTE: The remote side must also implement MULTILINK PPP | 
|  | protocol. | 
|  |  | 
|  | Async:Using the PPPD daemon, kernel AsyncPPP layer | 
|  | and the WANPIPE async TTY driver: a PPP protocol | 
|  | connection can be established via Sangoma adapter and | 
|  | a modem, over a telephone line. | 
|  |  | 
|  | Thus, the WANPIPE async TTY driver simulates a serial | 
|  | TTY driver that would normally be used to interface the | 
|  | MODEM to the linux kernel. | 
|  |  | 
|  | o WANPIPE PPP Backup Utility | 
|  | This utility will monitor the state of the PPP T1 line. | 
|  | In case of failure, a dial up connection will be established | 
|  | via pppd daemon, ether via a serial tty driver (serial port), | 
|  | or a WANPIPE async TTY driver (in case serial port is unavailable). | 
|  |  | 
|  | Furthermore, while in dial up mode, the primary PPP T1 link | 
|  | will be monitored for signs of life. | 
|  |  | 
|  | If the PPP T1 link comes back to life, the dial up connection | 
|  | will be shutdown and T1 line re-established. | 
|  |  | 
|  |  | 
|  | o New Setup installation script. | 
|  | Option to UPGRADE device drivers if the kernel source has | 
|  | already been patched with WANPIPE. | 
|  |  | 
|  | Option to COMPILE WANPIPE modules against the currently | 
|  | running kernel, thus no need for manual kernel and module | 
|  | re-compilation. | 
|  |  | 
|  | o Updates and Bug Fixes to wancfg utility. | 
|  |  | 
|  | bata2-2.2.1	Feb 20 2001 | 
|  |  | 
|  | o Bug fixes to the CHDLC device drivers. | 
|  | The driver had compilation problems under kernels | 
|  | 2.2.14 or lower. | 
|  |  | 
|  | o Bug fixes to the Setup installation script. | 
|  | The device drivers compilation options didn't work | 
|  | properly. | 
|  |  | 
|  | o Update to the wpbackupd daemon. | 
|  | Optimized the cross-over times, between the primary | 
|  | link and the backup dialup. | 
|  |  | 
|  | beta3-2.2.1	Mar 02 2001 | 
|  | o Patches for 2.4.2 kernel. | 
|  |  | 
|  | o Bug fixes to util/ make files. | 
|  | o Bug fixes to the Setup installation script. | 
|  |  | 
|  | o Took out the backupd support and made it into | 
|  | as separate package. | 
|  |  | 
|  | beta4-2.2.1     Mar 12 2001 | 
|  |  | 
|  | o Fix to the Frame Relay Device driver. | 
|  | IPSAC sends a packet of zero length | 
|  | header to the frame relay driver.  The | 
|  | driver tries to push its own 2 byte header | 
|  | into the packet, which causes the driver to | 
|  | crash. | 
|  |  | 
|  | o Fix the WANPIPE re-configuration code. | 
|  | Bug was found by trying to run  the cfgft1 while the | 
|  | interface was already running. | 
|  |  | 
|  | o Updates to cfgft1. | 
|  | Writes a wanpipe#.cfgft1 configuration file | 
|  | once the CSU/DSU is configured. This file can | 
|  | holds the current CSU/DSU configuration. | 
|  |  | 
|  |  | 
|  |  | 
|  | >>>>>> END OF README <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< | 
|  |  | 
|  |  |