/*
 * ipx.h - IPX-Packet definition
 *
 * stolen from /usr/src/linux/net/inet/ipx.h
 */

#ifndef IPX_H_INC
#define IPX_H_INC

#include <asm/types.h>
#include <linux/ipx.h>

typedef struct
{
	unsigned long net;
	unsigned char  node[IPX_NODE_LEN]; 
	unsigned short sock;
} ipx_address;

#define ipx_broadcast_node	"\377\377\377\377\377\377"

typedef struct ipx_packet
{
	unsigned short	ipx_checksum;
#define IPX_NO_CHECKSUM	0xFFFF
	unsigned short  ipx_pktsize;
	unsigned char   ipx_tctrl;
	unsigned char   ipx_type;
#define IPX_TYPE_UNKNOWN	0x00
#define IPX_TYPE_RIP		0x01	/* may also be 0 */
#define IPX_TYPE_SAP		0x04	/* may also be 0 */
#define IPX_TYPE_SPX		0x05	/* Not yet implemented */
#define IPX_TYPE_NCP		0x11	/* $lots for docs on this (SPIT) */
#define IPX_TYPE_PPROP		0x14	/* complicated flood fill brdcast [Not supported] */
	ipx_address	ipx_dest __attribute__ ((packed));
	ipx_address	ipx_source __attribute__ ((packed));
} ipx_packet;

#endif /* IPX_H_INC */
