Import 2.3.6
[davej-history.git] / include / linux / ax25.h
blob1e492c8ffab5648eb57e072854edcc8944ce1f12
1 /*
2 * These are the public elements of the Linux kernel AX.25 code. A similar
3 * file netrom.h exists for the NET/ROM protocol.
4 */
6 #ifndef AX25_KERNEL_H
7 #define AX25_KERNEL_H
9 #define AX25_MTU 256
10 #define AX25_MAX_DIGIS 8
12 #define AX25_WINDOW 1
13 #define AX25_T1 2
14 #define AX25_N2 3
15 #define AX25_T3 4
16 #define AX25_T2 5
17 #define AX25_BACKOFF 6
18 #define AX25_EXTSEQ 7
19 #define AX25_PIDINCL 8
20 #define AX25_IDLE 9
21 #define AX25_PACLEN 10
22 #define AX25_IAMDIGI 12
24 #define AX25_KILL 99
26 #define SIOCAX25GETUID (SIOCPROTOPRIVATE+0)
27 #define SIOCAX25ADDUID (SIOCPROTOPRIVATE+1)
28 #define SIOCAX25DELUID (SIOCPROTOPRIVATE+2)
29 #define SIOCAX25NOUID (SIOCPROTOPRIVATE+3)
30 #define SIOCAX25OPTRT (SIOCPROTOPRIVATE+7)
31 #define SIOCAX25CTLCON (SIOCPROTOPRIVATE+8)
32 #define SIOCAX25GETINFO (SIOCPROTOPRIVATE+9)
33 #define SIOCAX25ADDFWD (SIOCPROTOPRIVATE+10)
34 #define SIOCAX25DELFWD (SIOCPROTOPRIVATE+11)
36 #define AX25_SET_RT_IPMODE 2
38 #define AX25_NOUID_DEFAULT 0
39 #define AX25_NOUID_BLOCK 1
41 typedef struct {
42 char ax25_call[7]; /* 6 call + SSID (shifted ascii!) */
43 } ax25_address;
45 struct sockaddr_ax25 {
46 sa_family_t sax25_family;
47 ax25_address sax25_call;
48 int sax25_ndigis;
49 /* Digipeater ax25_address sets follow */
52 #define sax25_uid sax25_ndigis
54 struct full_sockaddr_ax25 {
55 struct sockaddr_ax25 fsa_ax25;
56 ax25_address fsa_digipeater[AX25_MAX_DIGIS];
59 struct ax25_routes_struct {
60 ax25_address port_addr;
61 ax25_address dest_addr;
62 unsigned char digi_count;
63 ax25_address digi_addr[AX25_MAX_DIGIS];
66 struct ax25_route_opt_struct {
67 ax25_address port_addr;
68 ax25_address dest_addr;
69 int cmd;
70 int arg;
73 struct ax25_ctl_struct {
74 ax25_address port_addr;
75 ax25_address source_addr;
76 ax25_address dest_addr;
77 unsigned int cmd;
78 unsigned long arg;
79 unsigned char digi_count;
80 ax25_address digi_addr[AX25_MAX_DIGIS];
83 struct ax25_info_struct {
84 unsigned int n2, n2count;
85 unsigned int t1, t1timer;
86 unsigned int t2, t2timer;
87 unsigned int t3, t3timer;
88 unsigned int idle, idletimer;
89 unsigned int state;
90 unsigned int rcv_q, snd_q;
93 struct ax25_fwd_struct {
94 ax25_address port_from;
95 ax25_address port_to;
98 #endif