This directory contains a set of scripts which have been used on Linux
systems to initiate or maintain a connection with PPP.  The files in
this directory were contributed by Al Longyear (longyear@netcom.com).

------------------------------------------------------------------------

1. README

This file. You are reading it. It is just documentation.

------------------------------------------------------------------------

2. ppp-on

This script will initiate a connection to the PPP system. It will run
the chat program with the connection script as a parameter. This is a
possible security hole. However, it is simple. It is meant to replace
the previous version of ppp-on which was not very functional.

The ppp-on script has entries for the account name, password, IP
addresses, and telephone numbers. The parameters are passed to the
pppd process and, then in turn, to the second part of the connect
script, as a set of environment variables.

Please make sure that you put the full path name to the ppp-on-dialer
script in the reference to it in ppp-on.

------------------------------------------------------------------------

3. ppp-on-dialer

This is the second part to the simple calling script, ppp-on.  It
executes the chat program to connect the user with a standard UNIX
style getty/login connection sequence.

------------------------------------------------------------------------

4. callback

This script may be used in lieu of the ppp-on-dialer to permit the
common modem callback sequence. You may need to make changes to the
expected prompt string for the modem.

The script works by disabling the system's detection of the DCD
condition and working on the modem status message "NO CARRIER" which
is generated when the modem disconnects.

It is crude. It does work for my modem connection. Use as you see fit.

------------------------------------------------------------------------

5. redialer

The redialer script is a replacement for the ppp-on-dialer script.  It
will do 'attack dialing' or 'demon dialing' of one or more telephone
numbers. The first number which responds will be used for a
connection.

There is a limit of ten attempts and a 15 second delay between dialing
attempts. Both values are set in the script.

------------------------------------------------------------------------

6. ppp-off

This is a script which will terminate the active ppp connection. Use
as either "ppp-off" to terminate ppp0, or "ppp-off <device>" to
terminate the connection on <device>. For example, "ppp-off ppp2" will
terminate the ppp2 connection.

------------------------------------------------------------------------

7. keepalive

The keepalive directory is not a connection script. It is a method of
keeping the PPP connection alive. These scripts will be used when the
PPP connection terminates. The purpose of these scripts is to
automatically attempt to use the ppp-on (and one of the above scripts)
to re-establish the connection to the remote system.

Please use these scripts with caution. If you do use them, recognize
that there is nothing which will normally terminate the
connection. You may be required to rename the /etc/ppp/ip-down script
and then manually kill the pppd process in order to deactivate the
automatic reconnection. Don't use these scripts unless you really want
to keep the connection alive at all times.

------------------------------------------------------------------------

8. secure-card

This script was written by Jim Isaacson <jcisaac@crl.com>. It is a script
for the 'expect' programming language used with Tcl. You need to have
expect and Tcl installed before this script may be used.

This script will operate with a device marketed under the name "SecureCARD".
This little device is mated with its controller. On the credit card size
device, there is a sequence number which changes on a random basis. In order
for you to connect you need to enter a fixed portion of your account name
and the number which is displayed on this card device. The number must match
the value at the controller in order for the account name to be used.

The problem is that chat uses fixed response strings. In addition, the
timing for running the script may prevent the use of a script that reads the
value before it starts the dial sequence. What was needed was a script which
asked the user at the user's console at the time that it is needed.

This led to the use of expect.
