- Documentation updated.

This commit is contained in:
Carsten Paeth 2001-07-27 15:34:05 +00:00
parent 3b8de9b448
commit 3b0d895dcd
2 changed files with 293 additions and 19 deletions

View File

@ -2,8 +2,13 @@
You need a pppd with plugin support:
kernel 2.2.X - ppp-2.3.11
kernel 2.3.99 - ppp-2.4.0b2
kernel 2.4.X - ppp-2.4.1
since ppp-2.4.1 the pppd will load the plugins from
/usr/lib/ppp/<version>.
So use "plugin capiplugin.so" instead of
"plugin /etc/ppp/plugin/capiplugin.so" with ppp-2.4.1 or later.
usage example:
Usage example:
Make a single call to arcor:
pppd call isdn/arcor

View File

@ -8,12 +8,22 @@
.TH CAPIPLUGIN 8
.SH NAME
capiplugin \- Plugin for pppd (Point-to-Point Protocol daemon)
.SH SYNOPSIS
.B pppd
[\fIoptions\fR]
.B plugin
.B /etc/ppp/plugins/capiplugin.so
.B capiplugin.so
[\fIoptions for capiplugin\fR]
.br
before pppd 2.4.1:
.br
.B pppd
[\fIoptions\fR]
.B plugin
.B /usr/lib/pppd/\fI<pppd-version>\fR/capiplugin.so
[\fIoptions for capiplugin\fR]
.SH DESCRIPTION
.LP
The capiplugin provides a method to use PPP over ISDN with
@ -21,11 +31,26 @@ ISDN controllers that provide a CAPI2.0 interface.
The plugin is responsible for the call setup with CAPI2.0.
You can dial out, wait for incoming calls and set up communication over
leased lines. It implements a feature to reject an incoming call
and call back. This feature can also be used when dialing out.
and callback. This feature can also be used when dialing out.
In this case, the party called has to reject the call and call back soon.
When using dial-on-demand it is possible let both parties setup the connection,
that means while the pppd is in dial-on-demand mode not only an outgoing
paket but also an incoming call can trigger the connection setup. This
can also combined with callback to assign the cost to one side only (COSO).
.SH PPPD VERSIONS
.LP
The plugin interface of the pppd is binary incompartible between different
version of the pppd. So you need a different capiplugin for every version
of the pppd. The different plugins will be in the directory
/usr/lib/ppp/\fI<pppd-version>\fR.
Since 2.4.1 pppd checks if the version of the plugin matches and also search
the plugins in these directories. With pppd versions before 2.4.1 you need
to specify the absolut pathname of the plugin.
.SH HOW IT WORKS
.LP
The capiplugin registers a new_phase_hook and its own options to the pppd
The capiplugin registers a new_phase_notifier and its own options to the pppd
when loaded. When the pppd goes into phase SERIALCONN, the capiplugin
set up a connection and sets the global variable devnam.
The capiplugin will register a timer function that is
@ -34,50 +59,152 @@ To notify pppd when CAPI messages arrive, the CAPI file desciptor
is added to the list of file descriptors which the pppd monitors for input.
Once the connection is set up the pppd will start PPP negotiation
on device devnam. When the pppd enters the DEAD phase, the connection will
be dropped (if it is still active) and the timer function and the CAPI file
desciptor will be unregistered.
be dropped (if it is still active)
When operating in dial-on-demand mode with wakeup on incoming calls,
in phase DORMANT the plugin will setup CAPI2.0 to accept incoming calls.
To wakeup pppd when an incoming call arrives, the plugin will generate
an UDP paket to the discard port (9) of the gateway, so don't filter this paket
or wakeup by incoming a call will not work.
.SH MODES OF OPERATION
.LP
.TP
.B normal dial out
Simply make a connection, for example to your Internet provider.
.br
Required options: \fInumber\fR.
.br
Recommended options: \fImsn\fR.
.br
Other possible options:
\fIcontroller\fR,
\fIdialmax\fR,
\fIdialtimeout\fR,
\fIprotocol\fR and
\fIredialdelay\fR.
.TP
.B dial out with callback
Call a given number, the called party rejects the call and then calls back.
.br
Required options: \fInumber\fR and \fIclicb\fR.
Required options: \fInumber\fR and \fIcoso remote\fR.
.br
Recommended options: \fIcli\fR and \fImsn\fR or \fIinmsn\fR.
.br
Other possible options:
\fIcbwait\fR,
\fIcontroller\fR,
\fIconnectdelay\fR,
\fIdialtimeout\fR,
\fIprotocol\fR
.TP
.B dial out on demand
Initiate the connection only on demand, i.e. when data traffic is present
and drop the connection after a fix amount of idle time.
.br
Required options: \fInumber\fR.
.br
Required pppd options:
\fIdemand\fR,
\fIconnect\fR,
\fIidle\fR.
.br
Recommended options: \fImsn\fR.
.br
Other possible options:
\fIcontroller\fR,
\fIdialmax\fR,
\fIdialtimeout\fR,
\fIprotocol\fR and
\fIredialdelay\fR.
.TP
.B dial out on demand on an incoming phone call
Initiate the connection only on demand, i.e. when data traffic is present
or an incoming phone call is detected and drop the connection after a fix
amount of idle time. This is usefull if you are not at home and ypou want
your computer to make an connection to the internet.
.br
Required options: \fInumber\fR and \fIcli\fR.
.br
Required options: \fInumber\fR, \fIvoicecallwakeup\fR and \fIinmsn\fR and/or \fIcli\fR.
.br
Required pppd options:
\fIdemand\fR,
\fIconnect\fR,
\fIidle\fR.
.br
Recommended options: \fImsn\fR.
Other possible options:
\fIcontroller\fR,
\fIdialmax\fR,
\fIdialtimeout\fR,
\fIprotocol\fR,
\fIredialdelay\fR and
\fIinmsn\fR.
.TP
.B wait for dial in
Wait for calls and accept incoming calls.
.br
Recommended options: \fIcli\fR and \fImsn\fR or \fIinmsn\fR.
.br
Possible options:
\fIconnectdelay\fR,
\fIcontroller\fR,
\fIdialtimeout\fR,
\fIprotocol\fR
.TP
.B wait for dial in and call back.
Wait for calls, reject the call and then call back.
.br
Required options: \fIcbnumber\fR.
.br
Recommended options: \fIcli\fR and \fImsn\fR or \fIinmsn\fR.
.br
Other possible options:
\fIcbdelay\fR,
\fIconnectdelay\fR,
\fIcontroller\fR,
\fIdialtimeout\fR,
\fIprotocol\fR
.TP
.B dial on demand and also wait for dial in
Initiate the connection only on demand, i.e. when data traffic is present
or when the other side dial in and drop the connection after a fix amount
of idle time.
.br
Required options: \fInumber\fR and \fIinmsn\fR and/or \fIcli\fR.
.br
Recommended options: \fIcli\fR and \fImsn\fR or \fIinmsn\fR.
.br
Optional options: \fIcoso caller\fR.
.br
Other possible options:
\fIcbdelay\fR,
\fIconnectdelay\fR,
\fIcontroller\fR,
\fIdialtimeout\fR,
\fIprotocol\fR
.TP
.B dial on demand and also wait for dial in with COSO.
Initiate the connection only on demand, i.e. when data traffic is present
or when the other side dial in and drop the connection after a fix amount
of idle time. If option \fIcoso local\fR is set, pppd will reject an
incoming call from the remote party and will callback.
With the option \fIcoso remote\fR set, the remote party should reject
the incoming call and call back.
.br
Required options: \fInumber\fR, \fIinmsn\fR and/or \fIcli\fR,
\fIcoso local\fR or \fIcoso remote\fR.
.br
Recommended options: \fIcli\fR and \fImsn\fR or \fIinmsn\fR.
.br
Other possible options:
\fIcbdelay\fR,
\fIconnectdelay\fR,
@ -91,6 +218,7 @@ set up a leased line connection, with or without CAPI channel bundling.
.br
Required options: \fIchannels\fR.
Other possible options:
.br
\fIconnectdelay\fR,
\fIcontroller\fR,
\fIdialtimeout\fR and
@ -123,9 +251,13 @@ List of numbers from which incoming calls will be accepted, separated by commas.
.TP
.B clicb
Enable callback mode. When option \fInumber\fR is set, call number
and wait for callback. When option \fInumber\fR is not set,
wait for incoming call, reject the call and call back.
The option is retained for compartiblity reasons only.
Use option \fIcoso local\fR or \fIcoso remote\fR instead.
.br
Enable callback mode.
When option \fInumber\fR is set, call number and wait for callback.
When option \fInumber\fR is not set, wait for incoming call,
reject the call and call back.
This option is optional if the \fIcbnumber\fR option is set.
.TP
@ -134,7 +266,7 @@ Number of seconds to wait after a connection is set up,
before PPP negotiation starts. Default value is 0 seconds.
This option is useful when connecting with protocol \fImodem\fR.
Some Internet access servers will hang up if they receive data
immediatly after connection is established.
immediatly after the connection is established.
.TP
.B controller \fI<controller specification>
@ -142,6 +274,20 @@ For point-to-multipoint \fI<controller specification>\fR is only the
CAPI 2.0 controller number, default is 1.
For point-to-point, specify \fI<controller number>\fR,\fI<ddi>\fR,\fI<length of internal numbers\>
.TP
.B coso caller
No callback is done, the costs are assigned to the caller.
.TP
.B coso local
The costs are assigned to the local party.
On an incoming call pppd will reject the call and callback.
.TP
.B coso remote
The costs are assigned to the remote party.
On an outcoming call the remote party will reject the call and callback.
.TP
.B dialmax \fI<times>
Maximum number of times the list of phone numbers is tried before giving up.
@ -186,6 +332,11 @@ Use capiinfo(8) to view which features your controller supports.
.B redialdelay \fI<seconds>
Number of seconds to wait between redialing. Default value is 5 seconds.
.TP
.B voicewakeup
With this option a incoming voicecall can trigger an outgoing connection
setup.
.SH EXAMPLE FOR NORMAL DIAL OUT
.LP
Probably the most common use of pppd is to dial out to an ISP. This
@ -204,7 +355,7 @@ defaultroute
.br
name USERNAME
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.r
msn MSN
.br
@ -223,6 +374,7 @@ the system administrator to resemble the following:
.IP
USERNAME * PASSWORD *
.SH EXAMPLE OF DIAL OUT WITH CALLBACK
.LP
Dial out with callback can be specified with a command like
@ -240,13 +392,13 @@ defaultroute
.br
name USERNAME
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
msn MSN
.br
number PHONENUMBER
.br
clicb
coso remote
.br
cli PHONENUMBER
.br
@ -263,6 +415,123 @@ the system administrator to resemble the following:
.br
USERNAME * PASSWORD *
.SH EXAMPLE DIAL OUT ON DEMAND
.LP
To dial out on demand and drop the link after 120 seconds idle time
on the link add this line to the /etc/inittab file:
.IP
isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120
.LP
where the /etc/ppp/peers/isp file is set up by the system
administrator to resemble the following:
.IP
sync
.br
noauth
.br
defaultroute
.br
name USERNAME
.br
plugin capiplugin.so
.r
msn MSN
.br
number PHONENUMBER
.br
protocol hdlc
.br
ipcp-accept-local
.br
ipcp-accept-remote
.br
/dev/null
.LP
and where the files /etc/ppp/pap-secrets and /etc/ppp/chap-secrets are set up by
the system administrator to resemble the following:
.IP
USERNAME * PASSWORD *
.SH EXAMPLE DIAL OUT ON DEMAND AND ON AN INCOMING PHONE CALL
.LP
To dial out on demand or on an incoming phone call and drop the link
after 120 seconds idle time on the link add this line to the /etc/inittab file:
.IP
isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120
.LP
where the /etc/ppp/peers/isp file is set up by the system
administrator to resemble the following:
.IP
sync
.br
noauth
.br
defaultroute
.br
name USERNAME
.br
plugin capiplugin.so
.br
msn MSN
.br
number PHONENUMBER
.br
cli VOICEPHONENUMBER
.br
voicecallwakeup
.br
protocol hdlc
.br
ipcp-accept-local
.br
ipcp-accept-remote
.br
/dev/null
.LP
and where the files /etc/ppp/pap-secrets and /etc/ppp/chap-secrets are set up by
the system administrator to resemble the following:
.IP
USERNAME * PASSWORD *
.SH EXAMPLE DIAL OUT ON DEMAND AND ALSO ACCEPT AN INCOMING DATA CALL
.LP
To dial out on demand or on an incoming data call and drop the link
after 120 seconds idle time on the link add this line to the /etc/inittab file:
.IP
isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120
.LP
where the /etc/ppp/peers/isp file is set up by the system
administrator to resemble the following:
.IP
sync
.br
noauth
.br
defaultroute
.br
name USERNAME
.br
plugin capiplugin.so
.br
msn MSN
.br
number PHONENUMBER
.br
inmsn MSN
.br
protocol hdlc
.br
ipcp-accept-local
.br
ipcp-accept-remote
.br
/dev/null
.LP
and where the files /etc/ppp/pap-secrets and /etc/ppp/chap-secrets are set up by
the system administrator to resemble the following:
.IP
USERNAME * PASSWORD *
.SH EXAMPLE OF WAIT FOR DIAL IN WITHOUT CLI AUTHENTICATION
.LP
Wait for incoming calls, accept them according to options \fImsn\fR,
@ -288,7 +557,7 @@ sync
.br
auth
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
inmsn MSN
.br
@ -326,7 +595,7 @@ sync
.br
noauth
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
inmsn MSN
.br
@ -356,7 +625,7 @@ sync
.br
noauth
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
inmsn MSN
.br
@ -391,7 +660,7 @@ noipx
.br
persist
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
protocol hdlc
@ -428,7 +697,7 @@ noipx
.br
persist
.br
plugin /etc/ppp/plugins/capiplugin.so
plugin capiplugin.so
.br
protocol v42bis