x25

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
X25(4)			  Linux Programmer’s Manual		       X25(4)



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


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

       x25_socket = socket(PF_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	 net-
       work as standardised by International Telecommunication Union’s recom-
       mendation 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-
       assembling  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 con-
       nection will be reset.

SOCKET ADDRESSES
       The AF_X25 socket address family uses the struct sockaddr_x25 for rep-
       resenting  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 0) 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	 set-
       sockopt(2) and read with getsockopt(2) with the level parameter set to
       SOL_X25.

       X25_QBITINCL
	      Controls whether the X.25 Q-bit (Qualified Data Bit) is  acces-
	      sible  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 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 corresponding outgoing data  packets  will  be
	      set. If the first byte is 0 the Q-bit will not be set.

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_EXPERI-
       MENTAL  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(7), socket(2)

       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

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



Linux Man Page			  1998-12-01			       X25(4)