1 #ifndef _IPX_H_ 2 #define _IPX_H_ 3 #include <linux/libc-compat.h> /* for compatibility with glibc netipx/ipx.h */ 4 #include <linux/types.h> 5 #include <linux/sockios.h> 6 #include <linux/socket.h> 7 #define IPX_NODE_LEN 6 8 #define IPX_MTU 576 9 10 #if __UAPI_DEF_SOCKADDR_IPX 11 struct sockaddr_ipx { 12 __kernel_sa_family_t sipx_family; 13 __be16 sipx_port; 14 __be32 sipx_network; 15 unsigned char sipx_node[IPX_NODE_LEN]; 16 __u8 sipx_type; 17 unsigned char sipx_zero; /* 16 byte fill */ 18 }; 19 #endif /* __UAPI_DEF_SOCKADDR_IPX */ 20 21 /* 22 * So we can fit the extra info for SIOCSIFADDR into the address nicely 23 */ 24 #define sipx_special sipx_port 25 #define sipx_action sipx_zero 26 #define IPX_DLTITF 0 27 #define IPX_CRTITF 1 28 29 #if __UAPI_DEF_IPX_ROUTE_DEFINITION 30 struct ipx_route_definition { 31 __be32 ipx_network; 32 __be32 ipx_router_network; 33 unsigned char ipx_router_node[IPX_NODE_LEN]; 34 }; 35 #endif /* __UAPI_DEF_IPX_ROUTE_DEFINITION */ 36 37 #if __UAPI_DEF_IPX_INTERFACE_DEFINITION 38 struct ipx_interface_definition { 39 __be32 ipx_network; 40 unsigned char ipx_device[16]; 41 unsigned char ipx_dlink_type; 42 #define IPX_FRAME_NONE 0 43 #define IPX_FRAME_SNAP 1 44 #define IPX_FRAME_8022 2 45 #define IPX_FRAME_ETHERII 3 46 #define IPX_FRAME_8023 4 47 #define IPX_FRAME_TR_8022 5 /* obsolete */ 48 unsigned char ipx_special; 49 #define IPX_SPECIAL_NONE 0 50 #define IPX_PRIMARY 1 51 #define IPX_INTERNAL 2 52 unsigned char ipx_node[IPX_NODE_LEN]; 53 }; 54 #endif /* __UAPI_DEF_IPX_INTERFACE_DEFINITION */ 55 56 #if __UAPI_DEF_IPX_CONFIG_DATA 57 struct ipx_config_data { 58 unsigned char ipxcfg_auto_select_primary; 59 unsigned char ipxcfg_auto_create_interfaces; 60 }; 61 #endif /* __UAPI_DEF_IPX_CONFIG_DATA */ 62 63 /* 64 * OLD Route Definition for backward compatibility. 65 */ 66 67 #if __UAPI_DEF_IPX_ROUTE_DEF 68 struct ipx_route_def { 69 __be32 ipx_network; 70 __be32 ipx_router_network; 71 #define IPX_ROUTE_NO_ROUTER 0 72 unsigned char ipx_router_node[IPX_NODE_LEN]; 73 unsigned char ipx_device[16]; 74 unsigned short ipx_flags; 75 #define IPX_RT_SNAP 8 76 #define IPX_RT_8022 4 77 #define IPX_RT_BLUEBOOK 2 78 #define IPX_RT_ROUTED 1 79 }; 80 #endif /* __UAPI_DEF_IPX_ROUTE_DEF */ 81 82 #define SIOCAIPXITFCRT (SIOCPROTOPRIVATE) 83 #define SIOCAIPXPRISLT (SIOCPROTOPRIVATE + 1) 84 #define SIOCIPXCFGDATA (SIOCPROTOPRIVATE + 2) 85 #define SIOCIPXNCPCONN (SIOCPROTOPRIVATE + 3) 86 #endif /* _IPX_H_ */ 87