1#ifndef _IPX_H_ 2#define _IPX_H_ 3#include <linux/types.h> 4#include <linux/sockios.h> 5#include <linux/socket.h> 6#define IPX_NODE_LEN 6 7#define IPX_MTU 576 8 9struct 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 byte fill */ 16}; 17 18/* 19 * So we can fit the extra info for SIOCSIFADDR into the address nicely 20 */ 21#define sipx_special sipx_port 22#define sipx_action sipx_zero 23#define IPX_DLTITF 0 24#define IPX_CRTITF 1 25 26struct ipx_route_definition { 27 __be32 ipx_network; 28 __be32 ipx_router_network; 29 unsigned char ipx_router_node[IPX_NODE_LEN]; 30}; 31 32struct 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 /* obsolete */ 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 49struct ipx_config_data { 50 unsigned char ipxcfg_auto_select_primary; 51 unsigned char ipxcfg_auto_create_interfaces; 52}; 53 54/* 55 * OLD Route Definition for backward compatibility. 56 */ 57 58struct 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 /* _IPX_H_ */ 76