1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
3 * These are the public elements of the Linux kernel AX.25 code. A similar
4 * file netrom.h exists for the NET/ROM protocol.
10 #include <linux/socket.h>
13 #define AX25_MAX_DIGIS 8
20 #define AX25_BACKOFF 6
22 #define AX25_PIDINCL 8
24 #define AX25_PACLEN 10
25 #define AX25_IAMDIGI 12
29 #define SIOCAX25GETUID (SIOCPROTOPRIVATE+0)
30 #define SIOCAX25ADDUID (SIOCPROTOPRIVATE+1)
31 #define SIOCAX25DELUID (SIOCPROTOPRIVATE+2)
32 #define SIOCAX25NOUID (SIOCPROTOPRIVATE+3)
33 #define SIOCAX25OPTRT (SIOCPROTOPRIVATE+7)
34 #define SIOCAX25CTLCON (SIOCPROTOPRIVATE+8)
35 #define SIOCAX25GETINFOOLD (SIOCPROTOPRIVATE+9)
36 #define SIOCAX25ADDFWD (SIOCPROTOPRIVATE+10)
37 #define SIOCAX25DELFWD (SIOCPROTOPRIVATE+11)
38 #define SIOCAX25DEVCTL (SIOCPROTOPRIVATE+12)
39 #define SIOCAX25GETINFO (SIOCPROTOPRIVATE+13)
41 #define AX25_SET_RT_IPMODE 2
43 #define AX25_NOUID_DEFAULT 0
44 #define AX25_NOUID_BLOCK 1
47 char ax25_call
[7]; /* 6 call + SSID (shifted ascii!) */
50 struct sockaddr_ax25
{
51 __kernel_sa_family_t sax25_family
;
52 ax25_address sax25_call
;
54 /* Digipeater ax25_address sets follow */
57 #define sax25_uid sax25_ndigis
59 struct full_sockaddr_ax25
{
60 struct sockaddr_ax25 fsa_ax25
;
61 ax25_address fsa_digipeater
[AX25_MAX_DIGIS
];
64 struct ax25_routes_struct
{
65 ax25_address port_addr
;
66 ax25_address dest_addr
;
67 unsigned char digi_count
;
68 ax25_address digi_addr
[AX25_MAX_DIGIS
];
71 struct ax25_route_opt_struct
{
72 ax25_address port_addr
;
73 ax25_address dest_addr
;
78 struct ax25_ctl_struct
{
79 ax25_address port_addr
;
80 ax25_address source_addr
;
81 ax25_address dest_addr
;
84 unsigned char digi_count
;
85 ax25_address digi_addr
[AX25_MAX_DIGIS
];
88 /* this will go away. Please do not export to user land */
89 struct ax25_info_struct_deprecated
{
90 unsigned int n2
, n2count
;
91 unsigned int t1
, t1timer
;
92 unsigned int t2
, t2timer
;
93 unsigned int t3
, t3timer
;
94 unsigned int idle
, idletimer
;
96 unsigned int rcv_q
, snd_q
;
99 struct ax25_info_struct
{
100 unsigned int n2
, n2count
;
101 unsigned int t1
, t1timer
;
102 unsigned int t2
, t2timer
;
103 unsigned int t3
, t3timer
;
104 unsigned int idle
, idletimer
;
106 unsigned int rcv_q
, snd_q
;
107 unsigned int vs
, vr
, va
, vs_max
;
112 struct ax25_fwd_struct
{
113 ax25_address port_from
;
114 ax25_address port_to
;