5 * ipx.h header file for IPX for the DOS emulator
6 * Tim Bird, tbird@novell.com
10 #define IPX_MANUAL_ADDRESS
14 #define MAX_PACKET_DATA 1500
17 #pragma pack (push, 1)
20 typedef struct IPXAddressStruct {
21 u_char Network[4] __pack__;
22 u_char Node[6] __pack__;
23 u_char Socket[2] __pack__;
26 typedef struct IPXPacketStructure {
27 u_short Checksum __pack__;
28 u_short Length __pack__;
29 u_char TransportControl __pack__;
30 u_char PacketType __pack__;
31 IPXAddress_t Destination __pack__;
32 IPXAddress_t Source __pack__;
39 typedef struct ipx_socket_struct {
44 struct ipx_recv_data {
45 /* all network order */
46 u_char src_network[4];
54 int (*GetMyAddress)(void);
55 int (*OpenSocket)(ipx_socket_t *sk, int port);
56 void (*CloseSocket)(ipx_socket_t *mysock);
57 int (*SendPacket)(ipx_socket_t *mysock, IPXPacket_t *IPXHeader,
58 u_char *data, int dataLen);
59 int (*ReceivePacket)(ipx_socket_t *s, char *buffer, int bufsize,
60 struct ipx_recv_data *rec);
61 int (*PacketReady)(ipx_socket_t *s);
64 int ipx_general_PacketReady(ipx_socket_t *s);
66 extern unsigned char ipx_MyAddress[10];
68 #endif /* _IPX_DRV_H */