Computer Science
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 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.
SOCKET ADDRESSES
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.
SOCKET OPTIONS
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.
X25_QBITINCL
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.
BUGS
Plenty, as the X.25 PLP implementation is CONFIG_EXPERI-
MENTAL.
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-
ble.
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(4), socket(2)
Jonathan Simon Naylor: "The Re-Analysis and Re-Implementa-
tion 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 1 Dez 1998 1
Back to the index