ipx.h
01: #ifndef _IPX_H_
02: #define _IPX_H_
03: #include <linux/types.h>
04: #include <linux/sockios.h>
05: #include <linux/socket.h>
06: #define IPX_NODE_LEN 6
07: #define IPX_MTU 576
08:
09: struct sockaddr_ipx {
10: __kernel_sa_family_t sipx_family;
11: __be16 sipx_port;
12: __be32 sipx_network;
13: unsigned char sipx_node[IPX_NODE_LEN];
14: __u8 sipx_type;
15: unsigned char sipx_zero;
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: struct ipx_route_definition {
27: __be32 ipx_network;
28: __be32 ipx_router_network;
29: unsigned char ipx_router_node[IPX_NODE_LEN];
30: };
31:
32: struct ipx_interface_definition {
33: __be32 ipx_network;
34: unsigned char ipx_device[16];
35: unsigned char ipx_dlink_type;
36: #define IPX_FRAME_NONE 0
37: #define IPX_FRAME_SNAP 1
38: #define IPX_FRAME_8022 2
39: #define IPX_FRAME_ETHERII 3
40: #define IPX_FRAME_8023 4
41: #define IPX_FRAME_TR_8022 5
42: unsigned char ipx_special;
43: #define IPX_SPECIAL_NONE 0
44: #define IPX_PRIMARY 1
45: #define IPX_INTERNAL 2
46: unsigned char ipx_node[IPX_NODE_LEN];
47: };
48:
49: struct ipx_config_data {
50: unsigned char ipxcfg_auto_select_primary;
51: unsigned char ipxcfg_auto_create_interfaces;
52: };
53:
54:
55:
56:
57:
58: struct ipx_route_def {
59: __be32 ipx_network;
60: __be32 ipx_router_network;
61: #define IPX_ROUTE_NO_ROUTER 0
62: unsigned char ipx_router_node[IPX_NODE_LEN];
63: unsigned char ipx_device[16];
64: unsigned short ipx_flags;
65: #define IPX_RT_SNAP 8
66: #define IPX_RT_8022 4
67: #define IPX_RT_BLUEBOOK 2
68: #define IPX_RT_ROUTED 1
69: };
70:
71: #define SIOCAIPXITFCRT (SIOCPROTOPRIVATE)
72: #define SIOCAIPXPRISLT (SIOCPROTOPRIVATE + 1)
73: #define SIOCIPXCFGDATA (SIOCPROTOPRIVATE + 2)
74: #define SIOCIPXNCPCONN (SIOCPROTOPRIVATE + 3)
75: #endif
76:
© Andrew Scott 2006 -
2025,
All Rights Reserved