source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/ipxrtdef.h@ 1172

Last change on this file since 1172 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 5.1 KB
Line 
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _IPXRTDEF_
7#define _IPXRTDEF_
8
9#include <ipxconst.h>
10#include <ipxsap.h>
11#include <ipxrip.h>
12#include <stm.h>
13#include <ipxtfflt.h>
14
15#define IPX_ROUTER_VERSION_1 RTR_INFO_BLOCK_VERSION
16
17#define IPX_PROTOCOL_LOCAL 1
18#define IPX_PROTOCOL_STATIC 2
19
20#define IF_TYPE_OTHER 1
21#define IF_TYPE_LAN 2
22#define IF_TYPE_WAN_ROUTER 3
23#define IF_TYPE_WAN_WORKSTATION 4
24#define IF_TYPE_INTERNAL 5
25#define IF_TYPE_PERSONAL_WAN_ROUTER 6
26#define IF_TYPE_ROUTER_WORKSTATION_DIALOUT 7
27#define IF_TYPE_STANDALONE_WORKSTATION_DIALOUT 8
28
29#define IPX_INTERFACE_INFO_TYPE 1
30#define IPX_STATIC_ROUTE_INFO_TYPE 2
31#define IPX_STATIC_SERVICE_INFO_TYPE 3
32#define IPX_SERVICE_FILTER_INFO_TYPE 4
33#define IPX_ROUTE_FILTER_INFO_TYPE 5
34#define IPX_IN_TRAFFIC_FILTER_INFO_TYPE 6
35#define IPX_ADAPTER_INFO_TYPE 7
36#define IPXWAN_INTERFACE_INFO_TYPE 8
37#define IPX_GLOBAL_INFO_TYPE 9
38#define IPX_STATIC_NETBIOS_NAME_INFO_TYPE 10
39#define IPX_IN_TRAFFIC_FILTER_GLOBAL_INFO_TYPE 11
40#define IPX_OUT_TRAFFIC_FILTER_INFO_TYPE 12
41#define IPX_OUT_TRAFFIC_FILTER_GLOBAL_INFO_TYPE 13
42
43#define IPX_SMALL_ROUTING_TABLE_HASH_SIZE 31
44#define IPX_MEDIUM_ROUTING_TABLE_HASH_SIZE 257
45#define IPX_LARGE_ROUTING_TABLE_HASH_SIZE 2047
46
47typedef struct _IPX_GLOBAL_INFO {
48 ULONG RoutingTableHashSize;
49 ULONG EventLogMask;
50} IPX_GLOBAL_INFO,*PIPX_GLOBAL_INFO;
51
52typedef struct _IPX_IF_INFO {
53 ULONG AdminState;
54 ULONG NetbiosAccept;
55 ULONG NetbiosDeliver;
56} IPX_IF_INFO,*PIPX_IF_INFO;
57
58#define IPX_DEDICATED_LINK 1
59#define IPX_DIALED_LINK 2
60
61typedef struct _IPXWAN_IF_INFO {
62 ULONG AdminState;
63} IPXWAN_IF_INFO,*PIPXWAN_IF_INFO;
64
65typedef struct _IPX_STATIC_ROUTE_INFO {
66 __C89_NAMELESS union {
67 ULONG DwordAlign;
68 UCHAR Network[4];
69 };
70 USHORT TickCount;
71 USHORT HopCount;
72 UCHAR NextHopMacAddress[6];
73} IPX_STATIC_ROUTE_INFO,*PIPX_STATIC_ROUTE_INFO;
74
75typedef IPX_SERVER_ENTRY IPX_STATIC_SERVICE_INFO,*PIPX_STATIC_SERVICE_INFO;
76
77typedef struct _IPX_STATIC_NETBIOS_NAME_INFO {
78 __C89_NAMELESS union {
79 ULONG DwordAlign;
80 UCHAR Name[16];
81 };
82} IPX_STATIC_NETBIOS_NAME_INFO,*PIPX_STATIC_NETBIOS_NAME_INFO;
83
84#define MAX_ADAPTER_NAME_LEN 48
85
86typedef struct _IPX_ADAPTER_INFO {
87 ULONG PacketType;
88 WCHAR AdapterName[MAX_ADAPTER_NAME_LEN];
89} IPX_ADAPTER_INFO,*PIPX_ADAPTER_INFO;
90
91#define AUTO_DETECT_PACKET_TYPE 0xFFFFFFFF
92
93#define IPX_BASE_ENTRY 0
94#define IPX_INTERFACE_TABLE 1
95#define IPX_DEST_TABLE 2
96#define IPX_STATIC_ROUTE_TABLE 3
97#define IPX_SERV_TABLE 4
98#define IPX_STATIC_SERV_TABLE 5
99
100#define MAX_IPX_MIB_TABLES 6
101
102#define IPX_INTERFACE_ANSI_NAME_LEN 48
103
104typedef struct _IF_TABLE_INDEX {
105 ULONG InterfaceIndex;
106} IF_TABLE_INDEX,*PIF_TABLE_INDEX;
107
108typedef struct _ROUTING_TABLE_INDEX {
109 UCHAR Network[4];
110} ROUTING_TABLE_INDEX,*PROUTING_TABLE_INDEX;
111
112typedef struct _STATIC_ROUTES_TABLE_INDEX {
113 ULONG InterfaceIndex;
114 UCHAR Network[4];
115} STATIC_ROUTES_TABLE_INDEX,*PSTATIC_ROUTES_TABLE_INDEX;
116
117typedef struct _SERVICES_TABLE_INDEX {
118 USHORT ServiceType;
119 UCHAR ServiceName[48];
120} SERVICES_TABLE_INDEX,*PSERVICES_TABLE_INDEX;
121
122typedef struct _STATIC_SERVICES_TABLE_INDEX {
123 ULONG InterfaceIndex;
124 USHORT ServiceType;
125 UCHAR ServiceName[48];
126} STATIC_SERVICES_TABLE_INDEX,*PSTATIC_SERVICES_TABLE_INDEX;
127
128typedef union _IPX_MIB_INDEX {
129 IF_TABLE_INDEX InterfaceTableIndex;
130 ROUTING_TABLE_INDEX RoutingTableIndex;
131 STATIC_ROUTES_TABLE_INDEX StaticRoutesTableIndex;
132 SERVICES_TABLE_INDEX ServicesTableIndex;
133 STATIC_SERVICES_TABLE_INDEX StaticServicesTableIndex;
134} IPX_MIB_INDEX,*PIPX_MIB_INDEX;
135
136typedef struct _IPX_MIB_GET_INPUT_DATA {
137 ULONG TableId;
138 IPX_MIB_INDEX MibIndex;
139} IPX_MIB_GET_INPUT_DATA,*PIPX_MIB_GET_INPUT_DATA;
140
141typedef struct _IPXMIB_BASE {
142 ULONG OperState;
143 UCHAR PrimaryNetNumber[4];
144 UCHAR Node[6];
145 UCHAR SysName[IPX_INTERFACE_ANSI_NAME_LEN];
146 ULONG MaxPathSplits;
147 ULONG IfCount;
148 ULONG DestCount;
149 ULONG ServCount;
150} IPXMIB_BASE,*PIPXMIB_BASE;
151
152typedef struct _IPX_IF_STATS {
153 ULONG IfOperState;
154 ULONG MaxPacketSize;
155 ULONG InHdrErrors;
156 ULONG InFiltered;
157 ULONG InNoRoutes;
158 ULONG InDiscards;
159 ULONG InDelivers;
160 ULONG OutFiltered;
161 ULONG OutDiscards;
162 ULONG OutDelivers;
163 ULONG NetbiosReceived;
164 ULONG NetbiosSent;
165} IPX_IF_STATS,*PIPX_IF_STATS;
166
167typedef struct _IPX_INTERFACE {
168 ULONG InterfaceIndex;
169 ULONG AdminState;
170 ULONG AdapterIndex;
171 UCHAR InterfaceName[IPX_INTERFACE_ANSI_NAME_LEN];
172 ULONG InterfaceType;
173 ULONG MediaType;
174 UCHAR NetNumber[4];
175 UCHAR MacAddress[6];
176 ULONG Delay;
177 ULONG Throughput;
178 ULONG NetbiosAccept;
179 ULONG NetbiosDeliver;
180 ULONG EnableIpxWanNegotiation;
181 IPX_IF_STATS IfStats;
182} IPX_INTERFACE,*PIPX_INTERFACE;
183
184typedef struct _IPX_ROUTE {
185 ULONG InterfaceIndex;
186 ULONG Protocol;
187 UCHAR Network[4];
188 USHORT TickCount;
189 USHORT HopCount;
190 UCHAR NextHopMacAddress[6];
191 ULONG Flags;
192} IPX_ROUTE,*PIPX_ROUTE;
193
194typedef union _IPX_MIB_ROW {
195 IPX_INTERFACE Interface;
196 IPX_ROUTE Route;
197 IPX_SERVICE Service;
198} IPX_MIB_ROW,*PIPX_MIB_ROW;
199
200typedef struct _IPX_MIB_SET_INPUT_DATA {
201 ULONG TableId;
202 IPX_MIB_ROW MibRow;
203} IPX_MIB_SET_INPUT_DATA,*PIPX_MIB_SET_INPUT_DATA;
204#endif
Note: See TracBrowser for help on using the repository browser.