1 #ifndef _IPX_H_
2 #define _IPX_H_
3 #include <linux/sockios.h>
4 #define IPX_NODE_LEN 6
5 #define IPX_MTU 576
6
7 struct sockaddr_ipx
8 {
9 short sipx_family;
10 short sipx_port;
11 unsigned long sipx_network;
12 unsigned char sipx_node[IPX_NODE_LEN];
13 unsigned char sipx_type;
14 unsigned char sipx_zero;
15 };
16
17
18
19
20
21 #define sipx_special sipx_port
22 #define sipx_action sipx_zero
23 #define IPX_DLTITF 0
24 #define IPX_CRTITF 1
25
26 typedef struct ipx_route_definition
27 {
28 unsigned long ipx_network;
29 unsigned long ipx_router_network;
30 unsigned char ipx_router_node[IPX_NODE_LEN];
31 } ipx_route_definition;
32
33 typedef struct ipx_interface_definition
34 {
35 unsigned long ipx_network;
36 unsigned char ipx_device[16];
37 unsigned char ipx_dlink_type;
38 #define IPX_FRAME_NONE 0
39 #define IPX_FRAME_SNAP 1
40 #define IPX_FRAME_8022 2
41 #define IPX_FRAME_ETHERII 3
42 #define IPX_FRAME_8023 4
43 #define IPX_FRAME_TR_8022 5
44 unsigned char ipx_special;
45 #define IPX_SPECIAL_NONE 0
46 #define IPX_PRIMARY 1
47 #define IPX_INTERNAL 2
48 unsigned char ipx_node[IPX_NODE_LEN];
49 } ipx_interface_definition;
50
51 typedef struct ipx_config_data
52 {
53 unsigned char ipxcfg_auto_select_primary;
54 unsigned char ipxcfg_auto_create_interfaces;
55 } ipx_config_data;
56
57
58
59
60
61 struct ipx_route_def
62 {
63 unsigned long ipx_network;
64 unsigned long ipx_router_network;
65 #define IPX_ROUTE_NO_ROUTER 0
66 unsigned char ipx_router_node[IPX_NODE_LEN];
67 unsigned char ipx_device[16];
68 unsigned short ipx_flags;
69 #define IPX_RT_SNAP 8
70 #define IPX_RT_8022 4
71 #define IPX_RT_BLUEBOOK 2
72 #define IPX_RT_ROUTED 1
73 };
74
75 #define SIOCAIPXITFCRT (SIOCPROTOPRIVATE)
76 #define SIOCAIPXPRISLT (SIOCPROTOPRIVATE+1)
77 #define SIOCIPXCFGDATA (SIOCPROTOPRIVATE+2)
78 #endif
79