Provided by: manpages_6.7-2_all bug

NAME

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

SYNOPSIS

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

       x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);

DESCRIPTION

       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 standardized 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/IEC 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  reassembling  long  messages by means of the X.25 M-bit.  There is no hard-coded upper limit for the
       message size.  However, reassembling 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.

   Socket addresses
       The AF_X25 socket address family uses the struct  sockaddr_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  interpreted  as  a  null-terminated  string.
       sx25_addr.x25_addr[] consists of up to 15 (not counting  the  terminating  null  byte)  ASCII  characters
       forming the X.121 address.  Only the decimal digit characters from '0' to '9' are allowed.

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

       X25_QBITINCL
              Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the  user.   It  expects  an
              integer  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 additional 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  corresponding  outgoing  data
              packets will be set.  If the first byte is 0, the Q-bit will not be set.

VERSIONS

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

BUGS

       Plenty, as the X.25 PLP implementation is CONFIG_EXPERIMENTAL.

       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 compatible.

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

SEE ALSO

       socket(2), socket(7)

       Jonathan Simon Naylor: “The Re-Analysis and Re-Implementation of X.25.”  The URL is ftp://ftp.pspt.fi/pub
       /ham/linux/ax25/x25doc.tgz.

Linux man-pages 6.7                                2024-01-28                                             x25(7)