Provided by: pppdcapiplugin_3.25+dfsg1-3.7ubuntu1_amd64 bug

NAME

       capiplugin - Plugin for pppd (Point-to-Point Protocol daemon)

SYNOPSIS

       pppd [options] plugin capiplugin.so [options for capiplugin]
       before pppd 2.4.1:
       pppd [options] plugin /usr/lib/pppd/<pppd-version>/capiplugin.so [options for capiplugin]

DESCRIPTION

       The capiplugin provides a method to use PPP over ISDN with 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 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).

PPPD VERSIONS

       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/<pppd-version>.  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 absolute pathname of the plugin.

HOW IT WORKS

       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 called
       every second to handle the CAPI messages while pppd is running.  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) 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.

MODES OF OPERATION

       normal dial out
              Simply make a connection, for example to your Internet provider.
              Required options: number.
              Recommended options: msn.
              Other possible options: controller, dialmax, dialtimeout, protocol and redialdelay.

       dial out with callback
              Call a given number, the called party rejects the call and then calls back.
              Required options: number and coso remote.
              Recommended options: cli and msn or inmsn.
              Other possible options: cbwait, controller, connectdelay, dialtimeout, protocol

       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.
              Required options: number.
              Required pppd options: demand, connect, idle.
              Recommended options: msn.
              Other possible options: controller, dialmax, dialtimeout, protocol and redialdelay.

       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  useful if you are not at home and you want your computer to make a
              connection to the internet.
              Required options: number and cli.
              Required options: number, voicecallwakeup and inmsn and/or cli.
              Required pppd options: demand, connect, idle.
              Recommended  options:  msn.    Other   possible   options:   controller,   dialmax,
              dialtimeout, protocol, redialdelay and inmsn.

       wait for dial in
              Wait for calls and accept incoming calls.
              Recommended options: cli and msn or inmsn.
              Possible options: connectdelay, controller, dialtimeout, protocol

       wait for dial in and call back.
              Wait for calls, reject the call and then call back.
              Required options: cbnumber.
              Recommended options: cli and msn or inmsn.
              Other possible options: cbdelay, connectdelay, controller, dialtimeout, protocol

       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.
              Required options: number and inmsn and/or cli.
              Recommended options: cli and msn or inmsn.
              Optional options: coso caller.
              Other possible options: cbdelay, connectdelay, controller, dialtimeout, protocol

       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 coso local is set, pppd will reject an incoming call from the  remote  party
              and will callback.  With the option coso remote set, the remote party should reject
              the incoming call and call back.
              Required options: number, inmsn and/or cli, coso local or coso remote.
              Recommended options: cli and msn or inmsn.
              Other possible options: cbdelay, connectdelay, controller, dialtimeout, protocol

       leased line
              set up a leased line connection, with or without CAPI channel bundling.
              Required options: channels.  Other possible options:
              connectdelay, controller, dialtimeout and protocol

OPTIONS

       avmadsl
              make an DSL connection with the Fritz!Card DSL controller.  The parameters for  the
              DSL  connection  will  be  loaded  from file /etc/drdsl/adsl.conf. This file can be
              edited or will be created by the program drdsl.

       cbdelay <seconds>
              Number of seconds to wait before callback,  when  acting  as  dial-in  server  with
              callback. Default value is 2 seconds.

       cbnumber <phone numbers>
              List  of  phone  numbers  for callback, separated by commas, when acting as dial-in
              server with callback.

       cbwait <seconds>
              Time to wait for callback before giving up. Default value is 60 seconds.

       channels <channel specification>
              List of b-channels or ranges to activate leased line mode, separated by commas.

       cli <phone numbers>
              List of numbers from which incoming calls will be accepted, separated by commas.

       clicb  The option is retained for compartiblity reasons only.  Use option  coso  local  or
              coso remote instead.
              Enable  callback  mode.   When  option  number  is  set,  call  number and wait for
              callback.  When option number is not set, wait for incoming call, reject  the  call
              and call back.  This option is optional if the cbnumber option is set.

       connectdelay <seconds>
              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  modem.   Some  Internet  access servers will hang up if they receive data
              immediatly after the connection is established.

       controller <controller specification>
              For point-to-multipoint <controller specification> is only the CAPI 2.0  controller
              number,    default    is    1.     For    point-to-point,    specify    <controller
              number>,<ddi>,<length of internal numbers>

       controller[1-3] <controller specification>
              Like option controller.  Used to specify more than one controller

       coso caller
              No callback is done, the costs are assigned to the caller.

       coso local
              The costs are assigned to the local party.  On an incoming call  pppd  will  reject
              the call and callback.

       coso remote
              The  costs are assigned to the remote party.  On an outcoming call the remote party
              will reject the call and callback.

       dialmax <times>
              Maximum number of times the list of  phone  numbers  is  tried  before  giving  up.
              Default value is 4.
              If  dialmax  is set to 0, the list is retried infinitely until a connection is made
              (or the process is stopped).

       dialtimeout <seconds>
              Time to wait for the connection  to  be  established  or  fail  before  giving  up.
              Default value is 60 seconds.

       inmsn <msn>
              List of phone numbers to monitor for calls, separated by commas.  If this option is
              not set, the value of option msn is used.

       inmsn[1-3] <msn>
              List of phone numbers to monitor  for  calls  on  controller  specified  by  option
              controller[1-3],  separated  by  commas.   If  this option is not set, the value of
              option msn[1-3] is used.

       msn <msn>
              Phone number used to make outgoing calls. Also used for incoming  calls  if  option
              inmsn is not set.

       msn[1-3] <msn>
              Phone  number  used  to  make  outgoing  calls  on  controller  specified by option
              controller[1-3]. Also used for incoming calls if option inmsn[1-3] is not set.

       number <phone numbers>
              List of phone numbers to call, separated by commas.  Every number in  the  list  is
              called until a connection can be established.  When the end of the list is reached,
              the first number is called again.  See option dialmax.

       numberprefix <prefix>
              phone number to dial to access an outside line. For example, numberprefix 0.

       numberprefix[1-3] <prefix>
              phone number to dial to access an outside line for controller specified  by  option
              controller[1-3]. For example, numberprefix1 0.

       protocol hdlc | x75 | v42bis | modem | analogmodem | v110async | v120async
              ISDN protocol to use. With hdlc and adskpppoe, the sync option must be added to the
              pppd.  With x75, v42bis, modem, v110async and v120async the sync option MUST NOT be
              enabled.  Default  value  is  hdlc.   Not all controllers support v42bis, modem and
              v120async.  Use capiinfo(8) to view which features your controller supports.

       redialdelay <seconds>
              Number of seconds to wait between redialing. Default value is 5 seconds.

       voicewakeup
              With this option a incoming voicecall can trigger an outgoing connection setup.

EXAMPLE FOR NORMAL DIAL OUT

       Probably the most common use of pppd is to dial out to an ISP.  This can be specified with
       a command like

              pppd call isp

       where  the  /etc/ppp/peers/isp  file is set up by the system administrator to resemble the
       following:

              sync
              noauth
              defaultroute
              name USERNAME
              plugin capiplugin.so ®msn MSN
              number PHONENUMBER
              protocol hdlc
              ipcp-accept-local
              ipcp-accept-remote
              /dev/null

       and where the files /etc/ppp/pap-secrets and  /etc/ppp/chap-secrets  are  set  up  by  the
       system administrator to resemble the following:

              USERNAME * PASSWORD *

EXAMPLE OF DIAL OUT WITH CALLBACK

       Dial out with callback can be specified with a command like

              pppd call isp-callback

       where  the  /etc/ppp/peers/isp-callback  file  is  set  up  by the system administrator to
       resemble the following:

              sync
              noauth
              defaultroute
              name USERNAME
              plugin capiplugin.so
              msn MSN
              number PHONENUMBER
              coso remote
              cli PHONENUMBER
              protocol hdlc
              ipcp-accept-local
              ipcp-accept-remote
              /dev/null

       and where the files /etc/ppp/pap-secrets and  /etc/ppp/chap-secrets  are  set  up  by  the
       system administrator to resemble the following:
       USERNAME * PASSWORD *

EXAMPLE DIAL OUT ON DEMAND

       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:

              isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120

       where the /etc/ppp/peers/isp file is set up by the system administrator  to  resemble  the
       following:

              sync
              noauth
              defaultroute
              name USERNAME
              plugin capiplugin.so ®msn MSN
              number PHONENUMBER
              protocol hdlc
              ipcp-accept-local
              ipcp-accept-remote
              /dev/null

       and  where  the  files  /etc/ppp/pap-secrets  and  /etc/ppp/chap-secrets are set up by the
       system administrator to resemble the following:

              USERNAME * PASSWORD *

EXAMPLE DIAL OUT ON DEMAND AND ON AN INCOMING PHONE CALL

       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:

              isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120

       where  the  /etc/ppp/peers/isp  file is set up by the system administrator to resemble the
       following:

              sync
              noauth
              defaultroute
              name USERNAME
              plugin capiplugin.so
              msn MSN
              number PHONENUMBER
              cli VOICEPHONENUMBER
              voicecallwakeup
              protocol hdlc
              ipcp-accept-local
              ipcp-accept-remote
              /dev/null

       and where the files /etc/ppp/pap-secrets and  /etc/ppp/chap-secrets  are  set  up  by  the
       system administrator to resemble the following:

              USERNAME * PASSWORD *

EXAMPLE DIAL OUT ON DEMAND AND ALSO ACCEPT AN INCOMING DATA CALL

       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:

              isp:23:respawn:/usr/sbin/pppd call isp demand connect "" idle 120

       where the /etc/ppp/peers/isp file is set up by the system administrator  to  resemble  the
       following:

              sync
              noauth
              defaultroute
              name USERNAME
              plugin capiplugin.so
              msn MSN
              number PHONENUMBER
              inmsn MSN
              protocol hdlc
              ipcp-accept-local
              ipcp-accept-remote
              /dev/null

       and  where  the  files  /etc/ppp/pap-secrets  and  /etc/ppp/chap-secrets are set up by the
       system administrator to resemble the following:

              USERNAME * PASSWORD *

EXAMPLE OF WAIT FOR DIAL IN WITHOUT CLI AUTHENTICATION

       Wait for incoming calls, accept them according to options msn, inmsn, and protocol.

       Do not provide option  cli  to  the  capiplugin.   Start  a  pppd  for  every  b  channel.
       Authorization  is  checked  using PAP or CHAP and the ip numbers are assigned according to
       the /etc/ppp/pap-secrets or /etc/ppp/chap-secrets file.  Assume that  the  server  has  ip
       number  192.168.0.1,  the  clients  are  to  be  assigned  the  ip  numbers  starting from
       192.168.0.2, and the hostname of the server is "dialinserver".  Add these two lines to the
       /etc/inittab file:

              p0:23:respawn:/usr/sbin/pppd call incoming-noncli
              p1:23:respawn:/usr/sbin/pppd call incoming-noncli

       where the /etc/ppp/peers/incoming-noncli file is set up to resemble the following:

              sync
              auth
              plugin capiplugin.so
              inmsn MSN
              protocol hdlc 192.168.0.1:

       with  the  files  /etc/ppp/pap-secrets  and  /etc/ppp/chap-secrets  set up to resemble the
       following:

              user1 dialinserver PASSWORD1 192.168.0.2
              user2 dialinserver PASSWORD2 192.168.0.3

EXAMPLE OF WAIT FOR DIAL IN WITH CLI AUTHENTICATION

       Wait for incoming calls, accept them according to options msn, inmsn, cli and protocol.

       Start a pppd for every client.  Assume that the server has ip number 192.168.0.1  and  the
       clients  are  to  be  assigned  the ip numbers starting from 192.168.0.2.  Add these three
       lines to the /etc/inittab file:

              p0:23:respawn:/usr/sbin/pppd call incoming-cli cli 04711 192.168.0.1:192.168.0.2
              p1:23:respawn:/usr/sbin/pppd call incoming-cli cli 04712 192.168.0.1:192.168.0.3
              p2:23:respawn:/usr/sbin/pppd call incoming-cli cli 04713 192.168.0.1:192.168.0.4

       where the /etc/ppp/peers/incoming-cli file is set up to resemble the following:

              sync
              noauth
              plugin capiplugin.so
              inmsn MSN
              protocol hdlc

EXAMPLE OF WAIT FOR DIAL IN WITH CLI AUTHENTICATION AND CALLBACK

       Wait for incoming calls, accept them according to options msn, inmsn,  cli  and  protocol,
       reject incoming calls and call back.

       Start  a  pppd for every client.  Assume that the server has ip number 192.168.0.1 and the
       clients are to be assigned the ip numbers starting  from  192.168.0.2.   Add  these  three
       lines to the /etc/inittab file.

              p0:23:respawn:/usr/sbin/pppd    call   incoming-cli   cli   04711   cbnumber   4711
              192.168.0.1:192.168.0.2
              p1:23:respawn:/usr/sbin/pppd   call   incoming-cli   cli   04712   cbnumber    4712
              192.168.0.1:192.168.0.3
              p2:23:respawn:/usr/sbin/pppd    call   incoming-cli   cli   04713   cbnumber   4713
              192.168.0.1:192.168.0.4

       where the /etc/ppp/peers/incoming-cli file is set up to resemble the following:

              sync
              noauth
              plugin capiplugin.so
              inmsn MSN
              protocol hdlc

EXAMPLE OF A LEASED LINE CONNECTION WITH HDLC

       Assume that the server  has  ip  number  192.168.0.1  and  the  peer  has  the  ip  number
       192.168.0.2.  Add this line to the /etc/inittab file:

              p0:23:respawn:/usr/sbin/pppd    call    leased-hdlc   controller   1   channels   1
              192.168.0.1:192.168.0.2

       where the /etc/ppp/peers/leased-hdlc file is set up to resemble the following:

              sync
              noauth
              lcp-echo-interval 5
              lcp-echo-failure 3
              lcp-max-configure 50
              lcp-max-terminate 2
              noccp
              noipx
              persist
              plugin capiplugin.so
              protocol hdlc

EXAMPLE OF A LEASED LINE CONNECTION WITH V42BIS

       Assume that the server  has  ip  number  192.168.0.1  and  the  peer  has  the  ip  number
       192.168.0.2.  Add this line to the /etc/inittab file for server 1 (192.168.0.1):

              p0:23:respawn:/usr/sbin/pppd   call   leased-v42bis   controller   1   channels   1
              192.168.0.1:192.168.0.2

       and this line to the /etc/inittab file for server 1 (192.168.0.2):

              p0:23:respawn:/usr/sbin/pppd  call   leased-v42bis   controller   1   channels   p1
              192.168.0.2:192.168.0.1

       where the /etc/ppp/peers/leased-v42bis file is set up to resemble the following:

              sync
              noauth
              lcp-echo-interval 5
              lcp-echo-failure 3
              lcp-max-configure 50
              lcp-max-terminate 2
              noccp
              noipx
              persist
              plugin capiplugin.so
              protocol v42bis

CAVEATS

       Every  pppd awaiting incoming calls can receive an incoming call first.  So when two pppds
       are started to monitor the same MSN, one with CLI Authentication and  the  other  without,
       the following can happen:

              The Client with the CLI specified to the first pppd calls, but the pppd without the
              cli option receives the call first and accepts it.

       To  combine  CLI  Authentication  and  PAP/CHAP  Authentication,  use  one  MSN  for   CLI
       authenticated calls and another for the PAP/CHAP authenticated calls.

DIAGNOSTICS

       Messages  are  sent  to  the  syslog daemon just as in normal pppd operation; see the pppd
       manual page.

SEE ALSO

       pppd(8), capiinfo(8), capiinit(8), capictrl(8)

AUTHORS

       Carsten Paeth (calle@calle.in-berlin.de)
       AVM GmbH Berlin (info@avm.de)

                                                                                    CAPIPLUGIN(8)