Commit 99971e70fdc1862e120f3319fc0a4dba8c728acf

Authored by Adrian Bunk
Committed by David S. Miller
1 parent 0c3141e910

[WANPIPE]: Forgotten bits of Sangoma drivers removal.

Robert P. J. Day spotted that my removal of the Sangoma drivers missed
a few bits.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 4 changed files with 0 additions and 748 deletions Side-by-side Diff

Documentation/networking/00-INDEX
... ... @@ -100,8 +100,6 @@
100 100 - TUN/TAP device driver, allowing user space Rx/Tx of packets.
101 101 vortex.txt
102 102 - info on using 3Com Vortex (3c590, 3c592, 3c595, 3c597) Ethernet cards.
103   -wan-router.txt
104   - - WAN router documentation
105 103 wavelan.txt
106 104 - AT&T GIS (nee NCR) WaveLAN card: An Ethernet-like radio transceiver
107 105 x25.txt
Documentation/networking/wan-router.txt
1   -------------------------------------------------------------------------------
2   -Linux WAN Router Utilities Package
3   -------------------------------------------------------------------------------
4   -Version 2.2.1
5   -Mar 28, 2001
6   -Author: Nenad Corbic <ncorbic@sangoma.com>
7   -Copyright (c) 1995-2001 Sangoma Technologies Inc.
8   -------------------------------------------------------------------------------
9   -
10   -INTRODUCTION
11   -
12   -Wide Area Networks (WANs) are used to interconnect Local Area Networks (LANs)
13   -and/or stand-alone hosts over vast distances with data transfer rates
14   -significantly higher than those achievable with commonly used dial-up
15   -connections.
16   -
17   -Usually an external device called `WAN router' sitting on your local network
18   -or connected to your machine's serial port provides physical connection to
19   -WAN. Although router's job may be as simple as taking your local network
20   -traffic, converting it to WAN format and piping it through the WAN link, these
21   -devices are notoriously expensive, with prices as much as 2 - 5 times higher
22   -then the price of a typical PC box.
23   -
24   -Alternatively, considering robustness and multitasking capabilities of Linux,
25   -an internal router can be built (most routers use some sort of stripped down
26   -Unix-like operating system anyway). With a number of relatively inexpensive WAN
27   -interface cards available on the market, a perfectly usable router can be
28   -built for less than half a price of an external router. Yet a Linux box
29   -acting as a router can still be used for other purposes, such as fire-walling,
30   -running FTP, WWW or DNS server, etc.
31   -
32   -This kernel module introduces the notion of a WAN Link Driver (WLD) to Linux
33   -operating system and provides generic hardware-independent services for such
34   -drivers. Why can existing Linux network device interface not be used for
35   -this purpose? Well, it can. However, there are a few key differences between
36   -a typical network interface (e.g. Ethernet) and a WAN link.
37   -
38   -Many WAN protocols, such as X.25 and frame relay, allow for multiple logical
39   -connections (known as `virtual circuits' in X.25 terminology) over a single
40   -physical link. Each such virtual circuit may (and almost always does) lead
41   -to a different geographical location and, therefore, different network. As a
42   -result, it is the virtual circuit, not the physical link, that represents a
43   -route and, therefore, a network interface in Linux terms.
44   -
45   -To further complicate things, virtual circuits are usually volatile in nature
46   -(excluding so called `permanent' virtual circuits or PVCs). With almost no
47   -time required to set up and tear down a virtual circuit, it is highly desirable
48   -to implement on-demand connections in order to minimize network charges. So
49   -unlike a typical network driver, the WAN driver must be able to handle multiple
50   -network interfaces and cope as multiple virtual circuits come into existence
51   -and go away dynamically.
52   -
53   -Last, but not least, WAN configuration is much more complex than that of say
54   -Ethernet and may well amount to several dozens of parameters. Some of them
55   -are "link-wide" while others are virtual circuit-specific. The same holds
56   -true for WAN statistics which is by far more extensive and extremely useful
57   -when troubleshooting WAN connections. Extending the ifconfig utility to suit
58   -these needs may be possible, but does not seem quite reasonable. Therefore, a
59   -WAN configuration utility and corresponding application programmer's interface
60   -is needed for this purpose.
61   -
62   -Most of these problems are taken care of by this module. Its goal is to
63   -provide a user with more-or-less standard look and feel for all WAN devices and
64   -assist a WAN device driver writer by providing common services, such as:
65   -
66   - o User-level interface via /proc file system
67   - o Centralized configuration
68   - o Device management (setup, shutdown, etc.)
69   - o Network interface management (dynamic creation/destruction)
70   - o Protocol encapsulation/decapsulation
71   -
72   -To ba able to use the Linux WAN Router you will also need a WAN Tools package
73   -available from
74   -
75   - ftp.sangoma.com/pub/linux/current_wanpipe/wanpipe-X.Y.Z.tgz
76   -
77   -where vX.Y.Z represent the wanpipe version number.
78   -
79   -For technical questions and/or comments please e-mail to ncorbic@sangoma.com.
80   -For general inquiries please contact Sangoma Technologies Inc. by
81   -
82   - Hotline: 1-800-388-2475 (USA and Canada, toll free)
83   - Phone: (905) 474-1990 ext: 106
84   - Fax: (905) 474-9223
85   - E-mail: dm@sangoma.com (David Mandelstam)
86   - WWW: http://www.sangoma.com
87   -
88   -
89   -INSTALLATION
90   -
91   -Please read the WanpipeForLinux.pdf manual on how to
92   -install the WANPIPE tools and drivers properly.
93   -
94   -
95   -After installing wanpipe package: /usr/local/wanrouter/doc.
96   -On the ftp.sangoma.com : /linux/current_wanpipe/doc
97   -
98   -
99   -COPYRIGHT AND LICENSING INFORMATION
100   -
101   -This program is free software; you can redistribute it and/or modify it under
102   -the terms of the GNU General Public License as published by the Free Software
103   -Foundation; either version 2, or (at your option) any later version.
104   -
105   -This program is distributed in the hope that it will be useful, but WITHOUT
106   -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
107   -FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
108   -
109   -You should have received a copy of the GNU General Public License along with
110   -this program; if not, write to the Free Software Foundation, Inc., 675 Mass
111   -Ave, Cambridge, MA 02139, USA.
112   -
113   -
114   -
115   -ACKNOWLEDGEMENTS
116   -
117   -This product is based on the WANPIPE(tm) Multiprotocol WAN Router developed
118   -by Sangoma Technologies Inc. for Linux 2.0.x and 2.2.x. Success of the WANPIPE
119   -together with the next major release of Linux kernel in summer 1996 commanded
120   -adequate changes to the WANPIPE code to take full advantage of new Linux
121   -features.
122   -
123   -Instead of continuing developing proprietary interface tied to Sangoma WAN
124   -cards, we decided to separate all hardware-independent code into a separate
125   -module and defined two levels of interfaces - one for user-level applications
126   -and another for kernel-level WAN drivers. WANPIPE is now implemented as a
127   -WAN driver compliant with the WAN Link Driver interface. Also a general
128   -purpose WAN configuration utility and a set of shell scripts was developed to
129   -support WAN router at the user level.
130   -
131   -Many useful ideas concerning hardware-independent interface implementation
132   -were given by Mike McLagan <mike.mclagan@linux.org> and his implementation
133   -of the Frame Relay router and drivers for Sangoma cards (dlci/sdla).
134   -
135   -With the new implementation of the APIs being incorporated into the WANPIPE,
136   -a special thank goes to Alan Cox in providing insight into BSD sockets.
137   -
138   -Special thanks to all the WANPIPE users who performed field-testing, reported
139   -bugs and made valuable comments and suggestions that help us to improve this
140   -product.
141   -
142   -
143   -
144   -NEW IN THIS RELEASE
145   -
146   - o Updated the WANCFG utility
147   - Calls the pppconfig to configure the PPPD
148   - for async connections.
149   -
150   - o Added the PPPCONFIG utility
151   - Used to configure the PPPD daemon for the
152   - WANPIPE Async PPP and standard serial port.
153   - The wancfg calls the pppconfig to configure
154   - the pppd.
155   -
156   - o Fixed the PCI autodetect feature.
157   - The SLOT 0 was used as an autodetect option
158   - however, some high end PC's slot numbers start
159   - from 0.
160   -
161   - o This release has been tested with the new backupd
162   - daemon release.
163   -
164   -
165   -PRODUCT COMPONENTS AND RELATED FILES
166   -
167   -/etc: (or user defined)
168   - wanpipe1.conf default router configuration file
169   -
170   -/lib/modules/X.Y.Z/misc:
171   - wanrouter.o router kernel loadable module
172   - af_wanpipe.o wanpipe api socket module
173   -
174   -/lib/modules/X.Y.Z/net:
175   - sdladrv.o Sangoma SDLA support module
176   - wanpipe.o Sangoma WANPIPE(tm) driver module
177   -
178   -/proc/net/wanrouter
179   - Config reads current router configuration
180   - Status reads current router status
181   - {name} reads WAN driver statistics
182   -
183   -/usr/sbin:
184   - wanrouter wanrouter start-up script
185   - wanconfig wanrouter configuration utility
186   - sdladump WANPIPE adapter memory dump utility
187   - fpipemon Monitor for Frame Relay
188   - cpipemon Monitor for Cisco HDLC
189   - ppipemon Monitor for PPP
190   - xpipemon Monitor for X25
191   - wpkbdmon WANPIPE keyboard led monitor/debugger
192   -
193   -/usr/local/wanrouter:
194   - README this file
195   - COPYING GNU General Public License
196   - Setup installation script
197   - Filelist distribution definition file
198   - wanrouter.rc meta-configuration file
199   - (used by the Setup and wanrouter script)
200   -
201   -/usr/local/wanrouter/doc:
202   - wanpipeForLinux.pdf WAN Router User's Manual
203   -
204   -/usr/local/wanrouter/patches:
205   - wanrouter-v2213.gz patch for Linux kernels 2.2.11 up to 2.2.13.
206   - wanrouter-v2214.gz patch for Linux kernel 2.2.14.
207   - wanrouter-v2215.gz patch for Linux kernels 2.2.15 to 2.2.17.
208   - wanrouter-v2218.gz patch for Linux kernels 2.2.18 and up.
209   - wanrouter-v240.gz patch for Linux kernel 2.4.0.
210   - wanrouter-v242.gz patch for Linux kernel 2.4.2 and up.
211   - wanrouter-v2034.gz patch for Linux kernel 2.0.34
212   - wanrouter-v2036.gz patch for Linux kernel 2.0.36 and up.
213   -
214   -/usr/local/wanrouter/patches/kdrivers:
215   - Sources of the latest WANPIPE device drivers.
216   - These are used to UPGRADE the linux kernel to the newest
217   - version if the kernel source has already been patched with
218   - WANPIPE drivers.
219   -
220   -/usr/local/wanrouter/samples:
221   - interface sample interface configuration file
222   - wanpipe1.cpri CHDLC primary port
223   - wanpipe2.csec CHDLC secondary port
224   - wanpipe1.fr Frame Relay protocol
225   - wanpipe1.ppp PPP protocol )
226   - wanpipe1.asy CHDLC ASYNC protocol
227   - wanpipe1.x25 X25 protocol
228   - wanpipe1.stty Sync TTY driver (Used by Kernel PPPD daemon)
229   - wanpipe1.atty Async TTY driver (Used by Kernel PPPD daemon)
230   - wanrouter.rc sample meta-configuration file
231   -
232   -/usr/local/wanrouter/util:
233   - * wan-tools utilities source code
234   -
235   -/usr/local/wanrouter/api/x25:
236   - * x25 api sample programs.
237   -/usr/local/wanrouter/api/chdlc:
238   - * chdlc api sample programs.
239   -/usr/local/wanrouter/api/fr:
240   - * fr api sample programs.
241   -/usr/local/wanrouter/config/wancfg:
242   - wancfg WANPIPE GUI configuration program.
243   - Creates wanpipe#.conf files.
244   -/usr/local/wanrouter/config/cfgft1:
245   - cfgft1 GUI CSU/DSU configuration program.
246   -
247   -/usr/include/linux:
248   - wanrouter.h router API definitions
249   - wanpipe.h WANPIPE API definitions
250   - sdladrv.h SDLA support module API definitions
251   - sdlasfm.h SDLA firmware module definitions
252   - if_wanpipe.h WANPIPE Socket definitions
253   - sdlapci.h WANPIPE PCI definitions
254   -
255   -
256   -/usr/src/linux/net/wanrouter:
257   - * wanrouter source code
258   -
259   -/var/log:
260   - wanrouter wanrouter start-up log (created by the Setup script)
261   -
262   -/var/lock: (or /var/lock/subsys for RedHat)
263   - wanrouter wanrouter lock file (created by the Setup script)
264   -
265   -/usr/local/wanrouter/firmware:
266   - fr514.sfm Frame relay firmware for Sangoma S508/S514 card
267   - cdual514.sfm Dual Port Cisco HDLC firmware for Sangoma S508/S514 card
268   - ppp514.sfm PPP Firmware for Sangoma S508 and S514 cards
269   - x25_508.sfm X25 Firmware for Sangoma S508 card.
270   -
271   -
272   -REVISION HISTORY
273   -
274   -1.0.0 December 31, 1996 Initial version
275   -
276   -1.0.1 January 30, 1997 Status and statistics can be read via /proc
277   - filesystem entries.
278   -
279   -1.0.2 April 30, 1997 Added UDP management via monitors.
280   -
281   -1.0.3 June 3, 1997 UDP management for multiple boards using Frame
282   - Relay and PPP
283   - Enabled continuous transmission of Configure
284   - Request Packet for PPP (for 508 only)
285   - Connection Timeout for PPP changed from 900 to 0
286   - Flow Control Problem fixed for Frame Relay
287   -
288   -1.0.4 July 10, 1997 S508/FT1 monitoring capability in fpipemon and
289   - ppipemon utilities.
290   - Configurable TTL for UDP packets.
291   - Multicast and Broadcast IP source addresses are
292   - silently discarded.
293   -
294   -1.0.5 July 28, 1997 Configurable T391,T392,N391,N392,N393 for Frame
295   - Relay in router.conf.
296   - Configurable Memory Address through router.conf
297   - for Frame Relay, PPP and X.25. (commenting this
298   - out enables auto-detection).
299   - Fixed freeing up received buffers using kfree()
300   - for Frame Relay and X.25.
301   - Protect sdla_peek() by calling save_flags(),
302   - cli() and restore_flags().
303   - Changed number of Trace elements from 32 to 20
304   - Added DLCI specific data monitoring in FPIPEMON.
305   -2.0.0 Nov 07, 1997 Implemented protection of RACE conditions by
306   - critical flags for FRAME RELAY and PPP.
307   - DLCI List interrupt mode implemented.
308   - IPX support in FRAME RELAY and PPP.
309   - IPX Server Support (MARS)
310   - More driver specific stats included in FPIPEMON
311   - and PIPEMON.
312   -
313   -2.0.1 Nov 28, 1997 Bug Fixes for version 2.0.0.
314   - Protection of "enable_irq()" while
315   - "disable_irq()" has been enabled from any other
316   - routine (for Frame Relay, PPP and X25).
317   - Added additional Stats for Fpipemon and Ppipemon
318   - Improved Load Sharing for multiple boards
319   -
320   -2.0.2 Dec 09, 1997 Support for PAP and CHAP for ppp has been
321   - implemented.
322   -
323   -2.0.3 Aug 15, 1998 New release supporting Cisco HDLC, CIR for Frame
324   - relay, Dynamic IP assignment for PPP and Inverse
325   - Arp support for Frame-relay. Man Pages are
326   - included for better support and a new utility
327   - for configuring FT1 cards.
328   -
329   -2.0.4 Dec 09, 1998 Dual Port support for Cisco HDLC.
330   - Support for HDLC (LAPB) API.
331   - Supports BiSync Streaming code for S502E
332   - and S503 cards.
333   - Support for Streaming HDLC API.
334   - Provides a BSD socket interface for
335   - creating applications using BiSync
336   - streaming.
337   -
338   -2.0.5 Aug 04, 1999 CHDLC initialization bug fix.
339   - PPP interrupt driven driver:
340   - Fix to the PPP line hangup problem.
341   - New PPP firmware
342   - Added comments to the startup SYSTEM ERROR messages
343   - Xpipemon debugging application for the X25 protocol
344   - New USER_MANUAL.txt
345   - Fixed the odd boundary 4byte writes to the board.
346   - BiSync Streaming code has been taken out.
347   - Available as a patch.
348   - Streaming HDLC API has been taken out.
349   - Available as a patch.
350   -
351   -2.0.6 Aug 17, 1999 Increased debugging in statup scripts
352   - Fixed installation bugs from 2.0.5
353   - Kernel patch works for both 2.2.10 and 2.2.11 kernels.
354   - There is no functional difference between the two packages
355   -
356   -2.0.7 Aug 26, 1999 o Merged X25API code into WANPIPE.
357   - o Fixed a memory leak for X25API
358   - o Updated the X25API code for 2.2.X kernels.
359   - o Improved NEM handling.
360   -
361   -2.1.0 Oct 25, 1999 o New code for S514 PCI Card
362   - o New CHDLC and Frame Relay drivers
363   - o PPP and X25 are not supported in this release
364   -
365   -2.1.1 Nov 30, 1999 o PPP support for S514 PCI Cards
366   -
367   -2.1.3 Apr 06, 2000 o Socket based x25api
368   - o Socket based chdlc api
369   - o Socket based fr api
370   - o Dual Port Receive only CHDLC support.
371   - o Asynchronous CHDLC support (Secondary Port)
372   - o cfgft1 GUI csu/dsu configurator
373   - o wancfg GUI configuration file
374   - configurator.
375   - o Architectural directory changes.
376   -
377   -beta-2.1.4 Jul 2000 o Dynamic interface configuration:
378   - Network interfaces reflect the state
379   - of protocol layer. If the protocol becomes
380   - disconnected, driver will bring down
381   - the interface. Once the protocol reconnects
382   - the interface will be brought up.
383   -
384   - Note: This option is turned off by default.
385   -
386   - o Dynamic wanrouter setup using 'wanconfig':
387   - wanconfig utility can be used to
388   - shutdown,restart,start or reconfigure
389   - a virtual circuit dynamically.
390   -
391   - Frame Relay: Each DLCI can be:
392   - created,stopped,restarted and reconfigured
393   - dynamically using wanconfig.
394   -
395   - ex: wanconfig card wanpipe1 dev wp1_fr16 up
396   -
397   - o Wanrouter startup via command line arguments:
398   - wanconfig also supports wanrouter startup via command line
399   - arguments. Thus, there is no need to create a wanpipe#.conf
400   - configuration file.
401   -
402   - o Socket based x25api update/bug fixes.
403   - Added support for LCN numbers greater than 255.
404   - Option to pass up modem messages.
405   - Provided a PCI IRQ check, so a single S514
406   - card is guaranteed to have a non-sharing interrupt.
407   -
408   - o Fixes to the wancfg utility.
409   - o New FT1 debugging support via *pipemon utilities.
410   - o Frame Relay ARP support Enabled.
411   -
412   -beta3-2.1.4 Jul 2000 o X25 M_BIT Problem fix.
413   - o Added the Multi-Port PPP
414   - Updated utilities for the Multi-Port PPP.
415   -
416   -2.1.4 Aut 2000
417   - o In X25API:
418   - Maximum packet an application can send
419   - to the driver has been extended to 4096 bytes.
420   -
421   - Fixed the x25 startup bug. Enable
422   - communications only after all interfaces
423   - come up. HIGH SVC/PVC is used to calculate
424   - the number of channels.
425   - Enable protocol only after all interfaces
426   - are enabled.
427   -
428   - o Added an extra state to the FT1 config, kernel module.
429   - o Updated the pipemon debuggers.
430   -
431   - o Blocked the Multi-Port PPP from running on kernels
432   - 2.2.16 or greater, due to syncppp kernel module
433   - change.
434   -
435   -beta1-2.1.5 Nov 15 2000
436   - o Fixed the MultiPort PPP Support for kernels 2.2.16 and above.
437   - 2.2.X kernels only
438   -
439   - o Secured the driver UDP debugging calls
440   - - All illegal network debugging calls are reported to
441   - the log.
442   - - Defined a set of allowed commands, all other denied.
443   -
444   - o Cpipemon
445   - - Added set FT1 commands to the cpipemon. Thus CSU/DSU
446   - configuration can be performed using cpipemon.
447   - All systems that cannot run cfgft1 GUI utility should
448   - use cpipemon to configure the on board CSU/DSU.
449   -
450   -
451   - o Keyboard Led Monitor/Debugger
452   - - A new utility /usr/sbin/wpkbdmon uses keyboard leds
453   - to convey operational statistic information of the
454   - Sangoma WANPIPE cards.
455   - NUM_LOCK = Line State (On=connected, Off=disconnected)
456   - CAPS_LOCK = Tx data (On=transmitting, Off=no tx data)
457   - SCROLL_LOCK = Rx data (On=receiving, Off=no rx data
458   -
459   - o Hardware probe on module load and dynamic device allocation
460   - - During WANPIPE module load, all Sangoma cards are probed
461   - and found information is printed in the /var/log/messages.
462   - - If no cards are found, the module load fails.
463   - - Appropriate number of devices are dynamically loaded
464   - based on the number of Sangoma cards found.
465   -
466   - Note: The kernel configuration option
467   - CONFIG_WANPIPE_CARDS has been taken out.
468   -
469   - o Fixed the Frame Relay and Chdlc network interfaces so they are
470   - compatible with libpcap libraries. Meaning, tcpdump, snort,
471   - ethereal, and all other packet sniffers and debuggers work on
472   - all WANPIPE network interfaces.
473   - - Set the network interface encoding type to ARPHRD_PPP.
474   - This tell the sniffers that data obtained from the
475   - network interface is in pure IP format.
476   - Fix for 2.2.X kernels only.
477   -
478   - o True interface encoding option for Frame Relay and CHDLC
479   - - The above fix sets the network interface encoding
480   - type to ARPHRD_PPP, however some customers use
481   - the encoding interface type to determine the
482   - protocol running. Therefore, the TURE ENCODING
483   - option will set the interface type back to the
484   - original value.
485   -
486   - NOTE: If this option is used with Frame Relay and CHDLC
487   - libpcap library support will be broken.
488   - i.e. tcpdump will not work.
489   - Fix for 2.2.x Kernels only.
490   -
491   - o Ethernet Bridgind over Frame Relay
492   - - The Frame Relay bridging has been developed by
493   - Kristian Hoffmann and Mark Wells.
494   - - The Linux kernel bridge is used to send ethernet
495   - data over the frame relay links.
496   - For 2.2.X Kernels only.
497   -
498   - o Added extensive 2.0.X support. Most new features of
499   - 2.1.5 for protocols Frame Relay, PPP and CHDLC are
500   - supported under 2.0.X kernels.
501   -
502   -beta1-2.2.0 Dec 30 2000
503   - o Updated drivers for 2.4.X kernels.
504   - o Updated drivers for SMP support.
505   - o X25API is now able to share PCI interrupts.
506   - o Took out a general polling routine that was used
507   - only by X25API.
508   - o Added appropriate locks to the dynamic reconfiguration
509   - code.
510   - o Fixed a bug in the keyboard debug monitor.
511   -
512   -beta2-2.2.0 Jan 8 2001
513   - o Patches for 2.4.0 kernel
514   - o Patches for 2.2.18 kernel
515   - o Minor updates to PPP and CHLDC drivers.
516   - Note: No functional difference.
517   -
518   -beta3-2.2.9 Jan 10 2001
519   - o I missed the 2.2.18 kernel patches in beta2-2.2.0
520   - release. They are included in this release.
521   -
522   -Stable Release
523   -2.2.0 Feb 01 2001
524   - o Bug fix in wancfg GUI configurator.
525   - The edit function didn't work properly.
526   -
527   -
528   -bata1-2.2.1 Feb 09 2001
529   - o WANPIPE TTY Driver emulation.
530   - Two modes of operation Sync and Async.
531   - Sync: Using the PPPD daemon, kernel SyncPPP layer
532   - and the Wanpipe sync TTY driver: a PPP protocol
533   - connection can be established via Sangoma adapter, over
534   - a T1 leased line.
535   -
536   - The 2.4.0 kernel PPP layer supports MULTILINK
537   - protocol, that can be used to bundle any number of Sangoma
538   - adapters (T1 lines) into one, under a single IP address.
539   - Thus, efficiently obtaining multiple T1 throughput.
540   -
541   - NOTE: The remote side must also implement MULTILINK PPP
542   - protocol.
543   -
544   - Async:Using the PPPD daemon, kernel AsyncPPP layer
545   - and the WANPIPE async TTY driver: a PPP protocol
546   - connection can be established via Sangoma adapter and
547   - a modem, over a telephone line.
548   -
549   - Thus, the WANPIPE async TTY driver simulates a serial
550   - TTY driver that would normally be used to interface the
551   - MODEM to the linux kernel.
552   -
553   - o WANPIPE PPP Backup Utility
554   - This utility will monitor the state of the PPP T1 line.
555   - In case of failure, a dial up connection will be established
556   - via pppd daemon, ether via a serial tty driver (serial port),
557   - or a WANPIPE async TTY driver (in case serial port is unavailable).
558   -
559   - Furthermore, while in dial up mode, the primary PPP T1 link
560   - will be monitored for signs of life.
561   -
562   - If the PPP T1 link comes back to life, the dial up connection
563   - will be shutdown and T1 line re-established.
564   -
565   -
566   - o New Setup installation script.
567   - Option to UPGRADE device drivers if the kernel source has
568   - already been patched with WANPIPE.
569   -
570   - Option to COMPILE WANPIPE modules against the currently
571   - running kernel, thus no need for manual kernel and module
572   - re-compilation.
573   -
574   - o Updates and Bug Fixes to wancfg utility.
575   -
576   -bata2-2.2.1 Feb 20 2001
577   -
578   - o Bug fixes to the CHDLC device drivers.
579   - The driver had compilation problems under kernels
580   - 2.2.14 or lower.
581   -
582   - o Bug fixes to the Setup installation script.
583   - The device drivers compilation options didn't work
584   - properly.
585   -
586   - o Update to the wpbackupd daemon.
587   - Optimized the cross-over times, between the primary
588   - link and the backup dialup.
589   -
590   -beta3-2.2.1 Mar 02 2001
591   - o Patches for 2.4.2 kernel.
592   -
593   - o Bug fixes to util/ make files.
594   - o Bug fixes to the Setup installation script.
595   -
596   - o Took out the backupd support and made it into
597   - as separate package.
598   -
599   -beta4-2.2.1 Mar 12 2001
600   -
601   - o Fix to the Frame Relay Device driver.
602   - IPSAC sends a packet of zero length
603   - header to the frame relay driver. The
604   - driver tries to push its own 2 byte header
605   - into the packet, which causes the driver to
606   - crash.
607   -
608   - o Fix the WANPIPE re-configuration code.
609   - Bug was found by trying to run the cfgft1 while the
610   - interface was already running.
611   -
612   - o Updates to cfgft1.
613   - Writes a wanpipe#.cfgft1 configuration file
614   - once the CSU/DSU is configured. This file can
615   - holds the current CSU/DSU configuration.
616   -
617   -
618   -
619   ->>>>>> END OF README <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
include/linux/Kbuild
... ... @@ -231,7 +231,6 @@
231 231 unifdef-y += if_pppox.h
232 232 unifdef-y += if_tr.h
233 233 unifdef-y += if_vlan.h
234   -unifdef-y += if_wanpipe.h
235 234 unifdef-y += igmp.h
236 235 unifdef-y += inet_diag.h
237 236 unifdef-y += in.h
include/linux/if_wanpipe.h
1   -/*****************************************************************************
2   -* if_wanpipe.h Header file for the Sangoma AF_WANPIPE Socket
3   -*
4   -* Author: Nenad Corbic
5   -*
6   -* Copyright: (c) 2000 Sangoma Technologies Inc.
7   -*
8   -* This program is free software; you can redistribute it and/or
9   -* modify it under the terms of the GNU General Public License
10   -* as published by the Free Software Foundation; either version
11   -* 2 of the License, or (at your option) any later version.
12   -* ============================================================================
13   -*
14   -* Jan 28, 2000 Nenad Corbic Initial Version
15   -*
16   -*****************************************************************************/
17   -
18   -#ifndef __LINUX_IF_WAN_PACKET_H
19   -#define __LINUX_IF_WAN_PACKET_H
20   -
21   -struct wan_sockaddr_ll
22   -{
23   - unsigned short sll_family;
24   - unsigned short sll_protocol;
25   - int sll_ifindex;
26   - unsigned short sll_hatype;
27   - unsigned char sll_pkttype;
28   - unsigned char sll_halen;
29   - unsigned char sll_addr[8];
30   - unsigned char sll_device[14];
31   - unsigned char sll_card[14];
32   -};
33   -
34   -typedef struct
35   -{
36   - unsigned char free;
37   - unsigned char state_sk;
38   - int rcvbuf;
39   - int sndbuf;
40   - int rmem;
41   - int wmem;
42   - int sk_count;
43   - unsigned char bound;
44   - char name[14];
45   - unsigned char d_state;
46   - unsigned char svc;
47   - unsigned short lcn;
48   - unsigned char mbox;
49   - unsigned char cmd_busy;
50   - unsigned char command;
51   - unsigned poll;
52   - unsigned poll_cnt;
53   - int rblock;
54   -} wan_debug_hdr_t;
55   -
56   -#define MAX_NUM_DEBUG 10
57   -#define X25_PROT 0x16
58   -#define PVC_PROT 0x17
59   -
60   -typedef struct
61   -{
62   - wan_debug_hdr_t debug[MAX_NUM_DEBUG];
63   -}wan_debug_t;
64   -
65   -#define SIOC_WANPIPE_GET_CALL_DATA (SIOCPROTOPRIVATE + 0)
66   -#define SIOC_WANPIPE_SET_CALL_DATA (SIOCPROTOPRIVATE + 1)
67   -#define SIOC_WANPIPE_ACCEPT_CALL (SIOCPROTOPRIVATE + 2)
68   -#define SIOC_WANPIPE_CLEAR_CALL (SIOCPROTOPRIVATE + 3)
69   -#define SIOC_WANPIPE_RESET_CALL (SIOCPROTOPRIVATE + 4)
70   -#define SIOC_WANPIPE_DEBUG (SIOCPROTOPRIVATE + 5)
71   -#define SIOC_WANPIPE_SET_NONBLOCK (SIOCPROTOPRIVATE + 6)
72   -#define SIOC_WANPIPE_CHECK_TX (SIOCPROTOPRIVATE + 7)
73   -#define SIOC_WANPIPE_SOCK_STATE (SIOCPROTOPRIVATE + 8)
74   -
75   -/* Packet types */
76   -
77   -#define WAN_PACKET_HOST 0 /* To us */
78   -#define WAN_PACKET_BROADCAST 1 /* To all */
79   -#define WAN_PACKET_MULTICAST 2 /* To group */
80   -#define WAN_PACKET_OTHERHOST 3 /* To someone else */
81   -#define WAN_PACKET_OUTGOING 4 /* Outgoing of any type */
82   -/* These ones are invisible by user level */
83   -#define WAN_PACKET_LOOPBACK 5 /* MC/BRD frame looped back */
84   -#define WAN_PACKET_FASTROUTE 6 /* Fastrouted frame */
85   -
86   -
87   -/* X25 specific */
88   -#define WAN_PACKET_DATA 7
89   -#define WAN_PACKET_CMD 8
90   -#define WAN_PACKET_ASYNC 9
91   -#define WAN_PACKET_ERR 10
92   -
93   -/* Packet socket options */
94   -
95   -#define WAN_PACKET_ADD_MEMBERSHIP 1
96   -#define WAN_PACKET_DROP_MEMBERSHIP 2
97   -
98   -#define WAN_PACKET_MR_MULTICAST 0
99   -#define WAN_PACKET_MR_PROMISC 1
100   -#define WAN_PACKET_MR_ALLMULTI 2
101   -
102   -#ifdef __KERNEL__
103   -
104   -/* Private wanpipe socket structures. */
105   -struct wanpipe_opt
106   -{
107   - void *mbox; /* Mail box */
108   - void *card; /* Card bouded to */
109   - struct net_device *dev; /* Bounded device */
110   - unsigned short lcn; /* Binded LCN */
111   - unsigned char svc; /* 0=pvc, 1=svc */
112   - unsigned char timer; /* flag for delayed transmit*/
113   - struct timer_list tx_timer;
114   - unsigned poll_cnt;
115   - unsigned char force; /* Used to force sock release */
116   - atomic_t packet_sent;
117   - unsigned short num;
118   -};
119   -
120   -#define wp_sk(__sk) ((struct wanpipe_opt *)(__sk)->sk_protinfo)
121   -
122   -#endif
123   -
124   -#endif