Abstract: Laurent J. LaBrie explains how he got an interface established through his PCI ISDN card using RedHat Linux. hisax must be told the type of card you are using. /etc/isdn/isdn.conf must be configured for dynamic ip. Likely, you will need to create a /usr/local/sbin/isdn-on-exec file.

Laurent J. LaBrie, management and financial consultant

Who is he?

Resumé

Bio (basically the same, just more personal detail)

Awards

Recommendations

How can he benefit me as a financial advisor?

Moneywatch Advisors, Inc.

What is his perspective on investing?

Investment portfolios (.pdf format - Adobe Acrobat necessary to read)

How we are swimming in a sinking US dollar.

His stock picks and pans.

What articles has he published on management?

Investigating problems in the workplace (.pdf format)

Mentoring, correcting, and disciplining employees

An inside look at a peer evaluation system

Examples of Websites created, maintained, and promoted:


Casa Biblica: #4 Italian bookstore in its market segment


Romania's #1 site about HIV
Romania's #1 site about HIV
(Logo by LJ LaBrie)

Global Assistance
for Medical Equipment, Kosovo
Global Assistance for Medical Equipment, Kosovo (Logo by LJ LaBrie)

Romania's #3 site in its market segmentRomania's #3 site in its market segment (Logo by LJ LaBrie)

navigator for the writings of Laurent J. LaBrie

ISDN Setup using RedHat Linux 9.0


Introduction

Contents of the 

5 page series:

Introduction
Configuration files
Execution & options files
Password files
"Bells, whistles" & Troubleshooting
Understanding your debug file
These pages describe setting up the Parameters: RedHat Linux 9.0, Asuscom ISDN Link (P-IN100-ST-D)PCI card with HFC chip, AMD Athlon Microprocessor and I am living in Germany using Deutsche Telekom. This card uses the hisax driver. If you are using a different card, you may need a different driver. If you have a BT Speedway (AVM Fritz PCI) card or Eicon Diva 2.01 internal PCI card or another card, try this site:   http://www.thennion.demon.co.uk/ISDN.html.  For Teledat 100 (= Sedlbauer speed card) try this site:  http://leising.freeshell.org/isdn.html.  

Once you have installed the driver for your card, then I think the scripts below should be useful for any card.
Thank you's and kudos
Much of what I have written comes from the following sites (http://www.thennion.demon.co.uk/ISDN.html and http://leising.freeshell.org/isdn.html) and without them, my penguin would be dead in the water.  Although I couldn't get my penguin to talk without their help, neither one had all what I need.  I've cut and pasted a lot from their pages, changing things as I troubleshot.  A hearty thanks goes out to these software geniuses.  I've spent nearly a hundred hours customizing this to my situation, and I'm probably the most educated idiot on the subject.
Your donations are valued. This site is advertizement-free.  We depend on your donations to continue to provide high quality information.   If I have helped you resolve your problem, please support our work.     Use check or credit card secured by PayPal.

First try this.

It may be possible to achieve an ISDN connection directly from the Network Device Control (NDC).  Before getting into the following scripts, try this and see if it works.

  1. In the RedHat "Start Applications" menu, select "System Tools" and "Network Device Control."  You may find NDC under another submenu, but that is where I have mine.  This will bring up a dialog box. 
  2. Click on the "Configure..." button.  Type in the root password and hit "OK".  This brings up another dialog box.
  3. Insure your hardware configuration is right under the "Hardware" tab or else hit "New" and configure it.
  4. Under the "hosts" tab, I have been very specific and told my computer exactly where my ISDN card is.  I clicked on "new" and typed in an IP address (e.g., 198.168.1.1), put in the name "ipppd" and an alias of "isdncard".  You may not have to do this.
  5. Select the "Devices" tab and click on the "New" button.
  6. Select "ISDN Connection" and click on "Forward".
  7. Select your Internet provider (ISP) under the country flags or type in the information for your ISP and click on "Forward".
  8. Most likely, you don't need to change any information in this window, so click on "Forward" again.
  9. Click on "Apply".
Now you should see your connection come up as an "ippp"X (e.g. ippp0, ippp1, etc.) device.  If it comes up as "isdn"X  connection, then do what is listed in the box to the right.

Try out the connection.  If it doesn't work, sorry, but you are going to have to try the script approach.  Continue reading.

There seems to be a bug in RedHat 9.0. For ISDN connections, isdnX is supposed to be assigned to "raw IP" encapsulation modes and ipppX should be assigned to "sync PPP" modes. When I try to set up a new ISDN account with Network Device Control (NDC), instead of making device ippp0, it set the connection up as isdn0 despite reading "sync PPP" mode.

This was resolved by going back into NDC under the "Advanced" tab and changing Encapsulation Mode to "raw IP", closing it, saving the configuration, opening the NDC configuration again, changing it back to "sync PPP" and then saving it again.

The long way to resolve an ISDN connection, with scripts.

Kernel versions 2.2.12 and up have ISDN driver support built in. On earlier versions you have to download some mods and patch the kernel - all good fun. Definite Linux 7.0 comes with kernel 2.2.12, so no problems in that area. These pre-compiled kernels load ISDN as a module. You will also need the isdn4k-utils package. These are available as RPM's.

I also show how to set up a dial-in link via ISDN. This requires the option files to be set up in a particular way.

Make sure you have installed isdn4k-utils. To check do 'rpm -q isdn4k-utils'. It is provided on the Definite Linux or RedHat CDROM. It is usually necessary to be logged in as root to install an rpm package.

Running this on my machine yielded:  isdn4k-utils-3.1-62

NOTE: It is not necessary to have an 'isdn' script run from /etc/rc.d/init.d with this method. The 'isdn4k-utils' package provides the executable files that are called by these scripts as required.

"Quick aside" - you need a directory where you can keep any scripts you create that is also in your path. Type 'echo $PATH' and you will see that /root/bin is already in your path statement, but the directory is not always created. Therefore, type 'mkdir /root/bin'. All the scripts I refer to will be stored in this directory.


To load the hisax driver module I use the following script, saved as a file loadhisax in /root/bin.

# /root/bin/loadhisax - script to load the hisax module for ISDN.
# The hisax module is given an id - HiSax. This is required as we need to use the hisaxctrl command.
# Protocol=2 is the Euro ISDN protocol used in the UK, Germany, Italy etc.
modprobe hisax id=HiSax type=35 protocol=2
# Use type=35 for the Asuscom ISDN Link (P-IN100-ST-D)PCI card


The other Hisax card 'types' are as below

1 Teles 16.0
2 Teles 8.0
3 Teles 16.3 (non PnP)
4 Creatix/Teles PnP
5 AVM A1 (Fritz)
6 ELSA PCC/PCF cards
7 ELSA Quickstep 1000
8 Teles 16.3 PCMCIA
9 ITK ix1-micro Rev.2
10 ELSA PCMCIA
11 Eicon.Diehl Diva ISA PnP
11 Eicon.Diehl Diva PCI
12 ASUS COM ISDNLink
13 HFC-2BS0 based cards
14 Teles 16.3c PnP
15 Sedlbauer Speed Card
15 Sedlbauer PC/104
15 Sedlbauer Speed PCI
16 USR Sportster internal
17 MIC card
18 ELSA Quickstep 1000PCI
19 Compaq ISDN S0 ISA card
20 NETjet PCI card
21 Teles PCI
22 Sedlbauer Speed Star (PCMCIA)
24 Dr. Neuhaus Niccy PnP
24 Dr. Neuhaus Niccy PCI
25 Teles S0Box
26 AVM A1 PCMCIA (Fritz!)
27 AVM PnP (Fritz!PnP)
27 AVM PCI (Fritz!PCI)
28 Sedlbauer Speed Fax+
29 Siemens I-Surf 1.0
30 ACER P10
31 HST Saphir
32 Telekom A4T
33 Scitel Quadro
34 Gazel ISDN cards (ISA)
34 Gazel ISDN cards (PCI)
35 HFC 2BDS0 PCI
36 W6692 based PCI cards
37 HFC 2BDS0 S+, SP/PCMCIA

Make this script executable by 'chmod 700 loadhisax'.
Run this script to load the hisax driver - 'loadhisax'.
Look in the syslog to see if it has loaded correctly - 'tail -30 /var/log/messages'

"Quick aside" Create an alias for this command as you will use it frequently.
Edit /root/.bashrc and add "alias tailsys='tail -30 /var/log/messages' " (without the double quotes).
This won't have any affect until you start a new terminal, so type the whole 'alias...' line at the command prompt to activate it now.
Now typing 'tailsys' will display the last 30 lines of the syslog.

You can add other short form aliases for common commands in the same way.

You should see in the syslog a number of lines regarding the hisax driver. The last few should be
......
Dec 19 14:47:43 weber kernel: HiSax: 2 channels added
Dec 19 14:47:43 weber kernel: HiSax: MAX_WAITING_CALLS added
Dec 19 14:47:43 weber kernel: isdn: Verbose-Level is 2

The driver has been loaded!

If you use 'lsmod' you can see the modules that are loaded. There should be 'hisax', 'isdn' and 'slhc' among others. Mine reads:

Module   Size Used by Not tainted
hisax     542020    0       (unused)
isdn      136288     0       [hisax]
slhc          6644     0       [isdn]
...

Edit /etc/isdn/isdn.conf. This file comes as part of isdn4k-utils. Enter the country code - Germany is 49, Italy 39, UK is 44; the area prefix should be 0, and enter your own area code without the leading 0.

Now edit /etc/ppp/pap-secrets.

Add a line -
'client'   'server'   'secret'
where
'client' is your account or login name with your ISP
'server' - just use *
'secret' is the password for your ISP account. Don't include the quote marks.

/etc/isdn/isdn.conf:


/etc/isdn/isdn.conf:

# example of /etc/isdn/isdn.conf
# copy this file to /etc/isdn/isdn.conf and edit
#
# More information: /usr/doc/packages/i4l/isdnlog/README
[GLOBAL]
COUNTRYPREFIX = +
COUNTRYCODE = 49
AREAPREFIX = 0
# EDIT THIS LINE: (note: no leading zero [= areaprefix] !)
AREACODE = 8258
[VARIABLES]
[ISDNLOG]
LOGFILE = /var/log/isdn.log
ILABEL = %b %e %T %ICall to tei %t from %N2 on %n2
OLABEL = %b %e %T %Itei %t calling %N2 with %n2
REPFMTWWW = "%X %D %17.17H %T %-17.17F %-20.20l SI: %S %9u %U %I %O"
REPFMTSHORT = "%X%D %8.8H %T %-14.14F%U%I %O"
REPFMT = " %X %D %15.15H %T %-15.15F %7u %U %I %O"
CHARGEMAX = 50.00
CURRENCY = 0.062,EUR
COUNTRYFILE = /usr/lib/isdn/country.dat
RATECONF= /etc/isdn/rate.conf
RATEFILE= /usr/lib/isdn/rate-de.dat
HOLIDAYS= /usr/lib/isdn/holiday-de.dat
ZONEFILE= /usr/lib/isdn/zone-de-%s.cdb
DESTFILE= /usr/lib/isdn/dest.cdb
[ISDNLOG]
LOGFILE = /var/log/isdn.log
ILABEL = %b %e %T %ICall to tei %t from %N2 on %n2
OLABEL = %b %e %T %Itei %t calling %N2 with %n2
REPFMTWWW = "%X %D %17.17H %T %-17.17F %-20.20l SI: %S %9u %U %I %O"
REPFMTSHORT = "%X%D %8.8H %T %-14.14F%U%I %O"
REPFMT = " %X %D %15.15H %T %-15.15F %7u %U %I %O"
CHARGEMAX = 50.00
CURRENCY = 0.062,EUR
COUNTRYFILE = /usr/lib/isdn/country.dat
RATECONF= /etc/isdn/rate.conf
RATEFILE= /usr/lib/isdn/rate-de.dat
HOLIDAYS= /usr/lib/isdn/holiday-de.dat
ZONEFILE= /usr/lib/isdn/zone-de-%s.cdb
DESTFILE= /usr/lib/isdn/dest.cdb

Using ISDN and a dynamic IP

NOTE: If you wish to use a firewall with a dynamic IP, add the firewall rules to the ip-up.local file. See http://www.thennion.demon.co.uk/firewall.html for more details.
Also if you need to use CHAP authentication, which I understand is required by BTInternet, change the 'user xxx' above to 'name xxx' .

/usr/local/sbin/isdn-on-exec


/usr/local/sbin/isdn-on-exec

#!/bin/sh
##########################################################
#Kernel preparation: Loading modules... (Hardware layer) #
##########################################################
echo
echo "INTERFACE=$INTERFACE"
echo "INTERFACE_NUMBER=$INTERFACE_NUMBER"
echo "PROVIDER=$PROVIDER"
echo "OUTGOING_NUMBER=$OUTGOING_NUMBER"
echo "DEFAULT_LOCAL_IP=$DEFAULT_LOCAL_IP"
echo "NETMASK=$NETMASK"
echo "DEFAULT_REMOTE_IP=$DEFAULT_REMOTE_IP"
echo
echo 7 > /proc/sys/net/ipv4/ip_dynaddr
/sbin/ifconfig | grep ippp | awk '{print $1}' | wc -w > /tmp/datei.$$
variable=$(cat /tmp/datei.$$)
rm -f /tmp/datei.$$
if [ $variable = 1 ] ; then echo "An ippp-interface has already been set up - stop."
exit 1
fi
### When you have a Teledat 100 you must configure it:
### /sbin/isapnp /etc/isapnp.conf
# slhc: in case of compiling as a module
###/sbin/lsmod | grep slhc | awk '{print $1}' | wc -w > /tmp/datei.$$
###variable=$(cat /tmp/datei.$$)
###rm -f /tmp/datei.$$
###if [ $variable = 0 ] ; then /sbin/insmod slhc
###fi
# isdn: in case of compiling as a module
###/sbin/lsmod | grep isdn | awk '{print $1}' | wc -w > /tmp/datei.$$
###variable=$(cat /tmp/datei.$$)
###rm -f /tmp/datei.$$
###if [ $variable = 0 ] ; then /sbin/insmod isdn
###fi
/sbin/insmod isdn_bsdcomp
/sbin/insmod isdn_lzscomp comp=8 debug=2
######################### Teledat 100 #######################
### /sbin/insmod hisax irq=12 io=0x100 protocol=2 id=HiSax type=15
###################### Elsa Quickstep 1000 ##################
#/sbin/insmod hisax type=18 protocol=2 id=HiSax
######################### Asuscom HFC ######################
/sbin/insmod hisax type=35 protocol=2 id=HiSax # YOU MUST CHANGE THIS TO THE APPROPRIATE TYPE CARD
# SEE TABLE ABOVE.
###########################################################
# Configuration of interfaces - link level #
###########################################################
/sbin/isdnctrl verbose 15
i=0
while [[ $i -le $INTERFACE_NUMBER ]] ; do
/sbin/isdnctrl addif ippp$i
i=$(( $i + 1 ))
done
/sbin/isdnctrl addphone $INTERFACE out $PROVIDER
######## for dial in: ##################
#/sbin/isdnctrl addphone ippp1 in 8258928084 # inclusive area code,
# even inside the same LOCAL
# area,
# but without preceding zero
/sbin/isdnctrl dialmode $INTERFACE auto
/sbin/isdnctrl eaz $INTERFACE $OUTGOING_NUMBER
/sbin/isdnctrl l2_prot $INTERFACE hdlc
/sbin/isdnctrl l3_prot $INTERFACE trans
/sbin/isdnctrl encap $INTERFACE syncppp
/sbin/isdnctrl huptimeout $INTERFACE 300 # Fuer eigene, hinausgehende Pakete
/sbin/isdnctrl ihup $INTERFACE off # Für fremde, hereinkommende Pakete
i=0
while [[ $i -le $INTERFACE_NUMBER ]] ; do
/sbin/isdnctrl pppbind ippp$i $i
i=$(( $i + 1 ))
done
i=0
while [[ $i -le $INTERFACE_NUMBER ]] ; do
/sbin/isdnctrl secure ippp$i on
i=$(( $i + 1 ))
done
##############################################################
# Initialization of interfaces (ifconfig, route, ipppd ) #
##############################################################
/sbin/ifconfig $INTERFACE $DEFAULT_LOCAL_IP netmask $NETMASK pointopoint $DEFAULT_REMOTE_IP
#/sbin/ifconfig ippp1 192.168.22.254 netmask 255.255.255.0 pointopoint 192.168.22.1 # dial in
#
# Unter 2.1.x nicht mehr nötig:
#
#/sbin/route add -net 132.180.0.0 netmask 255.255.0.0 ippp0
/sbin/route add default $INTERFACE
/sbin/ipppd file /etc/ppp/ioptions.$INTERFACE
sleep 2
#################################################################
# Logging, monitoring ... #
#################################################################
#
# Important: In order to get sent- and receive-messages from ipppd you
# have to edit /etc/syslog.conf as follows:
# *.*;mail.none;news.none;authpriv.none /var/log/messages
#
##### hisaxctrl #####
#
# /sbin/hisaxctrl HiSax 1 0x3ff
/sbin/hisaxctrl HiSax 1 4
##### isdnlog #####
# -l:
# 0x400 Show throughput in bytes (every -wX seconds)
#
# /sbin/isdnlog -nsS -v15 -w1 -l0x5f7 /dev/isdnctrl & # Docs
# /sbin/isdnlog -nsS -v15 -w1 -l0xFFF /dev/isdnctrl & # unlesbar
###/sbin/isdnlog -nsS -v0 -w10 -l0x1DF /dev/isdnctrl &
/sbin/isdnlog -nsS -v6 -w30 -l0x1d7 /dev/isdnctrl &
##### xmonisdn (the tiny tool) #####
#/usr/X11R6/bin/xmonisdn -display localhost:0.0 -geometry +30+400 &
/usr/bin/xmonisdn -display localhost:0.0 -geometry +30+400 &
##### xisdnload (green-yellow-red) #####
#/usr/X11R6/bin/xisdnload -geometry 200x100+530+15 -display localhost:0.0 &
/usr/bin/xisdnload -geometry 200x100+530+15 -display localhost:0.0 &
##### imon (shows the 2 channels) #####
xterm -display localhost:0.0 -geometry 80x11+0+15 -bg blue -fg white -T imon -e /sbin/imon &
##### data flow via $INTERFACE #####
xterm -display localhost:0.0 -geometry 100x5+0+190 -bg black -fg green -T $INTERFACE -e /sbin/ipppstats -i 1 -v $INTERFACE_NUMBER &
##### data flow via ippp6 #####
#xterm -display localhost:0.0 -geometry 100x5+0+290 -fg red -bg black -T ippp6 -e /sbin/ipppstats -i 1 -v 6 &
#### netstat: raw, udp, tcp #######
xterm -fg yellow -geometry 105x30+120+140 -bg black -sb -e netstat --inet -e -c &
#### syslog ####
xterm -fg white -bg black -geometry 105x15+120+390 -T syslog -e tail -f /var/log/messages &
sleep 6

Now make executable with 'chmod 700 isdn-on-exec'

/usr/local/bin/isdn-on.ippp0

This is the file that brings up the connection.  Type its name to activate the connection.

/usr/local/bin/isdn-on.ippp0


#!/bin/sh
# Datei: /usr/local/sbin/isdn-on.ippp0 (callando - callisa by night)
# http://www.callando.de/
#
export INTERFACE=ippp0
export INTERFACE_NUMBER=0
export PROVIDER=019193131 # this is your ISP provider's phone number
export OUTGOING_NUMBER=928084 # this is YOUR telephone number without area code !
export DEFAULT_LOCAL_IP=198.168.1.1 #this is the address you assign to your ISDN port.
# It will be replaced by the provider.
export NETMASK=255.255.0.0
export DEFAULT_REMOTE_IP=62.180.158.14 #This is the address of the provider.
# It will be replaced by the provider.
echo
echo "##################################################"
echo " Trying to set up $INTERFACE ..."
echo "##################################################"
exec sudo /usr/local/sbin/isdn-on-exec

Setting up the `ioptions' files

The daemon that links to the ISDN card is 'ipppd', and it communicates via interfaces 'ippp0', 'ippp1' etc. just like 'eth0' communicates with the Network adaptor. Several instances of ipppd can be running at the same time. The file /etc/ppp/ioptions is read by ipppd whenever it is loaded. To be able to dialout to an ISP, and allow external access to this host, or even dialout to a different host or ISP, you must run an ipppd for each interface you want active. Since ipppd (see 'man ipppd') always reads /etc/ppp/ioptions, only common values should be present in /etc/ppp/ioption. The values specific to an interface will be stored in /etc/ppp/ioption.ippp0, and /etc/ppp/ioptions.ippp1 etc.

The `ippp0' interface is added in the script above. Type `ifconfig' and you should see the interface details.
I will concentrate on the option files necessary to bring up the link to Demon Internet. Later I will cover accessing an ISP using dynamice IP's.

Create `/etc/ppp/ioptions'. It should contain -

#/etc/ppp/ioptions.
# Options file with common parameters.
debug
lock
-vj
-vjccomp
-bsdcomp
noccp
-ac
-pc


NOTE: The lines -vj, -ac -pc, etc disable various compression options. Using no compression has given the most reliable connection with some versions of isdn4k-utils, but it is worth checking with newer versions to see if compression options are now available.

/etc/ppp/ioptions.ippp0

Now create the /etc/ppp/ioptions.ippp0 file with details for Demon Internet.

# /etc/ppp/ioptions.ippp0
# internet@expressnet.de
# http://www.callando.de/
#
/dev/ippp0
ipcp-accept-local
# With this option, ipppd will accept the peer's idea of our local IP address.
ipcp-accept-remote
# With this option, ipppd will accept the peer’s idea of its (remote) IP address.
noipdefault
defaultroute
debug
ms-get-dns
user "internet@expressnet.de"
name "internet"
kdebug 7
#-chap # because of: rcvd [0][LCP ConfReq id=0x1 <auth chap md5>
-pap #
#-vjccomp # rcvd [0][IPCP ConfReq id=0x4 <compress VJ 0f 01>
vj-max-slots 16
# Unclear because of:
-ac # because of: rcvd [0][LCP ConfRej id=0x1 <pcomp> <accomp>]
-pc # See above.
#
#
-bsdcomp # because of: rcvd [0][LCP ProtRej id=0x5 80 fd 01 01 00 07 15 03 2f]
noccp # dto.

More details for these options are available on the ipppd man page (`man ipppd').

/usr/sbin/isdn-off-exec:

/usr/sbin/isdn-off-exec:

#!/bin/sh
############ How many ippp's have been set up ? #################
number=$( /sbin/isdnctrl list all 2> /dev/null | \
grep "Current" | awk '{ print $5 }' | wc -l )
echo
echo "################### isdn-off ######################"
echo
echo "$number ippp's detected"
########### default route: ###########
variable=$( /sbin/route -n | awk '{print $1} ' | \
grep 0.0.0.0 | wc -w )
if [ $variable != 0 ] ; then
/sbin/route del default
else
echo "no default route set up"
fi
#
# Under 2.1.x no longer needed:
#
#/sbin/route del -net 132.180.0.0 netmask 255.255.0.0 ippp0
i=0
while [[ $i -lt $number ]] ; do
variable=$( /sbin/ifconfig | grep ippp$i | awk '{print $1}' | wc -w )
if [ $variable != 0 ] ; then
echo "shutting down ippp$i"
/sbin/isdnctrl hangup ippp$i
/sbin/isdnctrl pppunbind ippp$i
/sbin/ifconfig ippp$i down
fi
/sbin/isdnctrl delif ippp$i
i=$(( $i + 1 ))
done
####### ipppd: ############
variable=$( ps auxw | grep ipppd | grep -v grep | \
awk '{print $2}' | wc -w )
if [ $variable = 0 ] ; then
echo "no ipppd present"
else
echo "killing ipppd " ; killall ipppd
fi
###### isdnlog: ##########
variable=$( ps auxw | grep isdnlog | grep -v grep | \
awk '{print $1}' | wc -w )
if [ $variable = 0 ] ; then
echo "no isdnlog present"
else
echo "killing isdnlog " ; killall isdnlog
fi
######### xmonisdn: ############
variable=$( ps auxw | grep xmonisdn | grep -v grep | \
awk '{print $1}' | wc -w )
if [ $variable = "0" ] ; then
echo "no xmonisdn present"
else
echo "killing xmonisdn " ; killall xmonisdn
fi
######### xisdnload: ##############
variable=$( ps auxw | grep xisdnload | grep -v grep | \
awk '{print $1}' | wc -w )
if [ $variable = "0" ] ; then
echo "no xisdnload present"
else
echo "killing xisdnload " ; killall xisdnload
fi
############ imon: ##############
variable=$( ps auxw | grep imon | grep -v grep | \
awk '{print $2}' | wc -w )
if [ $variable = 0 ] ; then
echo "imon has already exited " ;
else
killall imon
fi
########## ipppstats: ##########
variable=$( ps auxw | grep ipppstats | grep -v grep | \
awk '{print $2}' | wc -w )
if [ $variable = 0 ] ; then
echo "ipppstats has already exited " ;
else
killall ipppstats
fi
########### netstat #############
variable=$( ps auxw | grep netstat | grep -v grep | \
awk '{print $2}' | wc -w )
if [ $variable = 0 ] ; then
echo "netstat has already exited " ;
else
killall netstat
fi
############# syslog ##########
variable=$( ps auxw | grep tail | grep -v grep | \
awk '{print $2}' | wc -w )
if [ $variable = 0 ] ; then
echo "tail -f ... has already exited " ;
else
killall tail
fi
# /sbin/modprobe -r hisax
/sbin/modprobe -r isdn_lzscomp
/sbin/modprobe -r isdn_bsdcomp
/sbin/modprobe -r isdn
/sbin/modprobe -r slhc
/sbin/rmmod -a

Now make executable with 'chmod 700 isdn-off-exec'



e-mail:  e-mail address   Y!messenger ID: laurent_labrie



"A good manager is a man who isn't worried about his own career but rather the careers of those who work for him... Don't worry about yourself! Take care of those who work for you and you'll float to greatness on their achievements."---HSM Burns

Copyright Laurent J. LaBrie 2004-2006