X25(4)              Linux Programmer's Manual              X25(4)

       x25, PF_X25 - ITU-T X.25 / ISO-8208 protocol interface.

       #include <sys/socket.h>
       #include <linux/x25.h>

       x25_socket = socket(PF_X25, SOCK_SEQPACKET, 0);

       X25  sockets provide an interface to the X.25 packet layer
       protocol.  This allows applications to communicate over  a
       public  X.25 data network as standardised by International
       Telecommunication Union's recommendation X.25  (X.25  DTE-
       DCE  mode). X25 sockets can also be used for communication
       without an intermediate X.25 network (X.25  DTE-DTE  mode)
       as described in ISO-8208.

       Message boundaries are preserved - a read(2) from a socket
       will retrieve the same chunk of data as  output  with  the
       corresponding write(2) to the peer socket. When necessary,
       the kernel takes care of segmenting and re-assembling long
       messages  by  means  of  the X.25 M-bit. There is no hard-
       coded upper limit for the message size. However, re-assem-
       bling of a long message might fail if there is a temporary
       lack of system resources or when other  constraints  (such
       as  socket memory or buffer size limits) become effective.
       If that occurs, the X.25 connection will be reset.

       The AF_X25 socket address family  uses  the  struct  sock-
       addr_x25  for representing network addresses as defined in
       ITU-T recommendation X.121.

              struct sockaddr_x25 {
                      sa_family_t sx25_family;/* must be AF_X25 */
                      x25_address sx25_addr;  /* X.121 Address */

       sx25_addr contains a char array x25_addr[] to be interpre-
       tated  as  a null-terminated string.  sx25_addr.x25_addr[]
       consists of up to 15  (not  counting  the  terminating  0)
       ASCII characters forming the X.121 address.  Only the dec-
       imal digit characters from `0' to `9' are allowed.

       The following X.25 specific socket options can be  set  by
       using  setsockopt(2)  and read with getsockopt(2) with the
       level parameter set to SOL_X25.

              Controls whether the  X.25  Q-bit  (Qualified  Data
              Bit) is accessible by the user. It expects an inte-
              ger argument. If set to 0 (default), the  Q-bit  is
              never  set  for  outgoing  packets and the Q-bit of
              incoming packets is ignored. If set to 1, an  addi-
              tional first byte is prepended to each message read
              from or written to the socket. For data  read  from
              the  socket,  a  0 first byte indicates that the Q-
              bits of the  corresponding  incoming  data  packets
              were  not  set. A first byte with value 1 indicates
              that the Q-bit of the corresponding  incoming  data
              packets  was  set.   If  the first byte of the data
              written to the socket is 1 the Q-bit of the  corre-
              sponding  outgoing data packets will be set. If the
              first bit is 0 the Q-bit will not be set.

       Plenty, as the X.25 PLP implementation  is  CONFIG_EXPERI-

       This man page is incomplete.

       There is no dedicated application programmer's header file
       yet;  you  need  to  include  the   kernel   header   file
       <linux/x25.h>.   CONFIG_EXPERIMENTAL might also imply that
       future versions of the interface are not  binary  compati-

       X.25 N-Reset events are not propagated to the user process
       yet. Thus, if a reset occurred, data might be lost without

       socket(4), socket(2)

       Jonathan Simon Naylor: "The Re-Analysis and Re-Implementa-
       tion       of       X.25."        The        URL        is

       The  PF_X25 protocol family is a new feature of Linux 2.2.

Linux Man Page              1 Dez 1998                          1