|
|
1.1 ! root 1: ! 2: /* ! 3: * The following information is in its entirety obtained from: ! 4: * ! 5: * Novell 'IPX Router Specification' Version 1.10 ! 6: * Part No. 107-000029-001 ! 7: * ! 8: * Which is available from ftp.novell.com ! 9: */ ! 10: ! 11: #ifndef _NET_INET_IPX_H_ ! 12: #define _NET_INET_IPX_H_ ! 13: ! 14: #include <linux/netdevice.h> ! 15: #include <linux/skbuff.h> ! 16: #include <net/datalink.h> ! 17: #include <linux/ipx.h> ! 18: ! 19: /* #define CONFIG_IPX_INTERN 1 */ ! 20: ! 21: typedef struct ! 22: { ! 23: unsigned long net; ! 24: unsigned char node[IPX_NODE_LEN]; ! 25: unsigned short sock; ! 26: } ipx_address; ! 27: ! 28: #define ipx_broadcast_node "\377\377\377\377\377\377" ! 29: #define ipx_this_node "\0\0\0\0\0\0" ! 30: ! 31: typedef struct ipx_packet ! 32: { ! 33: unsigned short ipx_checksum; ! 34: #define IPX_NO_CHECKSUM 0xFFFF ! 35: unsigned short ipx_pktsize; ! 36: unsigned char ipx_tctrl; ! 37: unsigned char ipx_type; ! 38: #define IPX_TYPE_UNKNOWN 0x00 ! 39: #define IPX_TYPE_RIP 0x01 /* may also be 0 */ ! 40: #define IPX_TYPE_SAP 0x04 /* may also be 0 */ ! 41: #define IPX_TYPE_SPX 0x05 /* Not yet implemented */ ! 42: #define IPX_TYPE_NCP 0x11 /* $lots for docs on this (SPIT) */ ! 43: #define IPX_TYPE_PPROP 0x14 /* complicated flood fill brdcast [Not supported] */ ! 44: ipx_address ipx_dest __attribute__ ((packed)); ! 45: ipx_address ipx_source __attribute__ ((packed)); ! 46: } ipx_packet; ! 47: ! 48: ! 49: typedef struct sock ipx_socket; ! 50: ! 51: #include <net/ipxcall.h> ! 52: extern int ipx_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt); ! 53: extern void ipxrtr_device_down(struct device *dev); ! 54: ! 55: typedef struct ipx_interface { ! 56: /* IPX address */ ! 57: unsigned long if_netnum; ! 58: unsigned char if_node[IPX_NODE_LEN]; ! 59: ! 60: /* physical device info */ ! 61: struct device *if_dev; ! 62: struct datalink_proto *if_dlink; ! 63: unsigned short if_dlink_type; ! 64: ! 65: /* socket support */ ! 66: unsigned short if_sknum; ! 67: ipx_socket *if_sklist; ! 68: ! 69: /* administrative overhead */ ! 70: int if_ipx_offset; ! 71: unsigned char if_internal; ! 72: unsigned char if_primary; ! 73: ! 74: struct ipx_interface *if_next; ! 75: } ipx_interface; ! 76: ! 77: typedef struct ipx_route { ! 78: unsigned long ir_net; ! 79: ipx_interface *ir_intrfc; ! 80: unsigned char ir_routed; ! 81: unsigned char ir_router_node[IPX_NODE_LEN]; ! 82: struct ipx_route *ir_next; ! 83: } ipx_route; ! 84: ! 85: #define IPX_MIN_EPHEMERAL_SOCKET 0x4000 ! 86: #define IPX_MAX_EPHEMERAL_SOCKET 0x7fff ! 87: ! 88: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.