Provided by: ax25-tools_0.0.10-rc5+git20230513+d3e6d4f-1build2_amd64 bug

NAME

       AF_AX25 - AX.25 amateur packet radio protocol family

DESCRIPTION

       AX.25  is  a  protocol used extensively by radio amateurs. The Linux AX.25 protocol family
       permits access to these protocols via the standard networking socket metaphor.

       The AX.25 protocol layer supports both connected mode and datagram (UI)  frame  modes.  IP
       traffic may be stacked on top of AX.25 frames for IP transmission over the AX.25 medium.

       The  primary  mode  of  operation is connected mode which is the mode used for a socket of
       type SOCK_SEQPACKET (stream sockets are not available in AX.25).  This requires  that  the
       user ensures output data is suitably packetised, and that input data is read a packet at a
       time into a buffer of suitable size.  The  Linux  AX.25  protocol  layer  can  operate  in
       standard AX.25 mode with three bit sequence numbers or in PE1CHL extended AX.25 mode which
       uses seven bit sequence numbers. The protocol  passed  to  the  socket  is  used  for  all
       outgoing frames. Passing 0 causes the normal AX.25 Text PID to be used.

       SOCK_DGRAM  gives  access  to  AX.25 UI frames. For access to special frames (of any form)
       SOCK_RAW can be used.

       AX.25 addresses consist of 6 ASCII characters and a number called  the  SSID.   These  are
       encoded  into  a  sockaddr_ax25  structure which is provided to the relevant system calls.
       When digipeaters are included a callsign path can be much more complex. When this  is  the
       case a struct full_sockaddr_ax25 should be passed to the system calls.

       AX.25  has  some  unusual  properties.  Notably in a multi-user system an AX.25 address is
       often associated with a user, and some users may not have such an association.  a  set  of
       ioctl calls are provided to manage an association table, and in addition the superuser may
       use an arbitrary callsign by binding to the callsign desired and specifying  the  port  to
       use as a first digipeated hop.

       AX.25  supports  the  following  socket  options for SOL_AX25.  AX25_T1 is the T1 timer in
       1/10ths of a second, AX25_T2 is the T2 timer in 1/10ths of a second,  AX25_T3  is  the  T3
       timer.  The  window  is  settable  with  AX25_WINDOW.   AX25_N2, the retry counter is also
       configurable. There is no 'infinite retry' option supported however. The method of backoff
       for  retries is configurable via the socket option AX25_BACKOFF, a value of true indicates
       the use of exponential backoff and false simple linear backoff. The mode of  a  connection
       made  be  altered  to  be  either standard AX.25 or extended AX.25 via AX25_EXTSEQ.  It is
       possible to have the  complete  AX.25  header  returned  to  the  application  by  setting
       AX25_HDRINCL  to true, programs must be aware of the internal structure of AX.25 frames to
       use this option. Note that  if  AX.25  fragmentation  is  encountered,  only  the  control
       information of the first frame is returned along with the defragmented data.

SEE ALSO

       call(1),   socket(2),  setsockopt(2),  getsockopt(2),  axctl(8),  axports(5),  axparms(8),
       packet(7), kissattach(8).

BUGS

       Too numerous to list in full currently.

       •  Minor protocol violations exist.

AUTHOR

       Alan Cox GW4PTS <alan@cymru.net>
       Jonathan Naylor G4KLX <g4klx@g4klx.demon.co.uk>