www.orlandi.com Il sito personale di me medesimo stesso
Proudly made in vim!
Valid XHTML 1.1!
Valid CSS!

Zaptel driver for HFC PCI A

HFC PCI A chip photograph

This is my attempt at writing a Zaptel driver for the Cologne Chip's HFC-S PCI A based ISDN boards. While this is still a Zaptel-only driver this could become the beginning of a generic driver which supports both voice and data. I'm also thinking about designing a generic voice layer for Linux but this is pure vaporware and I don't sell vaporware (tought I package it).

This driver began as a fork of the driver made by Klaus-Peter Junghanns and went thorugh several refarmings and the addition of various features.

Main features

Module parameters

Sniffing

The card sniffing capabilities are generally used in two different ways:

You cannot do both local and remote sniffing at the same time since Zaptel opens all the B channels while B2 is needed to sniff what other TEs transmit. If you attempt to put the card in promiscuous mode while B2 is open, it will complain and remains non-promiscuous. If you attempt to start Asterisk after the card has been put in promiscuous mode, Zaptel will fail opening the channel and Asterisk will not be able to boot.

You can always sniff what any TE (including the local) receive from the network, the limitation applies only to frames transmitted by the local and other TEs.

Compiling

Compilation is pretty easy but you have to be careful about a couple of details.

Firstly you need to specify your zaptel headers directory in the makefile. Be sure to specify the header files of the modules actually running on the system. If you specify headers not matching the inserted modules you may cause (very) bad behaviour.

Then, you probably need to build your kernel tree (on SuSE, I install kernel-sources, make cloneconfig and make).

Finally you need to compile the driver with make or make debug depending on what debugging features you want to be compiled in.

TODO

Detailed changes