capiplugin(8)


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)





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.