Provided by: isdnutils-base_3.12.20071127-0ubuntu11_amd64 bug

NAME

       isdninfo - ISDN status device

SYNOPSIS

       #include <linux/isdn.h>

DESCRIPTION

       /dev/isdninfo  is  a  character  device  with  major  number  45 and minor number 255.  It
       delivers status information from the Linux ISDN subsystem to user level.

DATA FORMAT

       When reading from this device, the current status of the Linux ISDN subsystem is delivered
       in 6 lines of text. Each line starts with a tag string followed by a colon and whitespace.
       After that the status values are appended separated by whitespace.

       idmap  is the tag of the first line. In this line for every virtual channel, the Id-string
              of the corresponding lowlevel driver is shown. If no driver is loaded, a - (hyphen)
              is shown.

       chmap  is the tag of line 2. In this line for every virtual channel, the channel number of
              the corresponding lowlevel driver is shown. If no driver is loaded, -1 is shown.

       drmap  is  the  tag of line 3. In this line for every virtual channel, the index number of
              the corresponding lowlevel driver is shown. If no driver is loaded, -1 is shown.

       usage  is the tag of line 4. In this line for every virtual channel, the current usage  is
              shown. The following usage constants are defined:

              ISDN_USAGE_NONE (0)
                     Unused channel

              ISDN_USAGE_RAW (1)
                     Channel used by raw device (currently unsupported)

              ISDN_USAGE_MODEM (2)
                     Channel used by some ttyI

              ISDN_USAGE_NET (3)
                     Channel used by an ISDN net-interface

              ISDN_USAGE_VOICE (4)
                     Channel used by some ttyI in voice mode.

              ISDN_USAGE_EXCLUSIVE (64)
                     Channel  exclusively  preserved for a net-interface. This value is logically
                     or'ed with one of the other codes.

              ISDN_USAGE_OUTGOING (128)
                     Channel is used outgoing. This value is logically  or'ed  with  one  of  the
                     other  codes.  It  is  set,  when dialling is started and reset, when either
                     dialling failed or after hangup. Therefore, it is not  always  an  indicator
                     for   an  established  connection.  To  get  a  reliable  indicator  for  an
                     established connection, the driver flags (see below) have  to  be  inspected
                     also.

       flags  is  the tag of line 5. In this line for every driver slot, it's B-Channel status is
              shown. If no driver is registered in a slot, a ? is shown.  For  every  established
              B-Channel  of  the  driver,  a  bit  is  set in the shown value. The driver's first
              channel is mapped to bit 0, the second channel to bit 1 and so on.

       phone  is the tag of line 6. In this line for every  virtual  channel,  the  remote  phone
              number  is  shown  if  the  channel  is  active.  A ??? is shown, if the channel is
              inactive.

BLOCKING BEHAVIOUR

       After opening the device, at most 6 lines can be read by a user process.  After that,  the
       user  process is blocked. Whenever a status change happens, the process is allowed to read
       6 more lines, starting with line one.

IOCTL FUNCTIONS

       Currently, there are two ioctl calls supported:

       IIOCGETDVR
              Get Revision information.
              Returns an unsigned  long  value  v,  representing  various  user  level  interface
              revisions, where

              (v & 0xff)
                     is  the  revision  of  the  modem-register  info,  available  via  ioctl  on
                     /dev/isdnctrl.

              ((v >> 8) & 0xff)
                     is the revision of the net-interface config data,  available  via  ioctl  on
                     /dev/isdnctrl.  and

              ((v >> 16) & 0xff)
                     is the revision of the data delivered via /dev/isdninfo itself.

       IIOCGETCPS
              Get transfer statistics.
              Returns  the number of bytes transferred so far for all virtual channels. The third
              parameter  should  be  a  pointer  to  an  array   of   unsigned   long   of   size
              ISDN_MAX_CHANNELS  *  2.  This  array  is  filled with the byte counter values upon
              return.

OTHER CONSTANTS

       There are some more useful constants defined in /usr/include/linux/isdn.h:

       ISDN_TTY_MAJOR
              The major device number of /dev/ttyI.

       ISDN_TTYAUX_MAJOR
              The major device number of /dev/cui.

       ISDN_MAJOR
              The major device number of /dev/isdnctrl, /dev/isdninfo, /dev/ippp and /dev/isdn

       ISDN_MAX_DRIVERS
              The number of driver slots.

       ISDN_MAX_CHANNELS
              The number of virtual channels.

       ISDN_MINOR_CTRL
              The minor device number of /dev/isdnctrl0.

       ISDN_MINOR_CTRLMAX
              The minor device number of /dev/isdnctrl63.

       ISDN_MINOR_PPP
              The minor device number of /dev/ippp0.

       ISDN_MINOR_PPPMAX
              The minor device number of /dev/ippp64.

       ISDN_MINOR_STATUS
              The minor device number of /dev/isdninfo.

       Other constants, necessary for ioctl's on /dev/isdnctrl are listed in isdnctrl(4).

AUTHOR

       Fritz Elfert <fritz@isdn4linux.de>

SEE ALSO

       isdnctrl(4), icnctrl(4).