|
1 /*++ BUILD Version: 0001 // Increment this if a change has global effects |
|
2 Copyright (c) 1990-1993 Microsoft Corporation |
|
3 Module Name: |
|
4 ntddndis.h |
|
5 Abstract: |
|
6 This is the include file that defines all constants and types for |
|
7 accessing the Network driver interface device. |
|
8 Author: |
|
9 Steve Wood (stevewo) 27-May-1990 |
|
10 Revision History: |
|
11 Adam Barr (adamba) 04-Nov-1992 added the correct values for NDIS 3.0. |
|
12 Jameel Hyder (jameelh) 01-Aug-95 added Pnp IoCTLs and structures |
|
13 Kyle Brandon (kyleb) 09/24/96 added general co ndis oids. |
|
14 -- */ |
|
15 #ifndef _NTDDNDIS_ |
|
16 #define _NTDDNDIS_ |
|
17 // |
|
18 // Device Name - this string is the name of the device. It is the name |
|
19 // that should be passed to NtOpenFile when accessing the device. |
|
20 // |
|
21 // Note: For devices that support multiple units, it should be suffixed |
|
22 // with the Ascii representation of the unit number. |
|
23 // |
|
24 #define DD_NDIS_DEVICE_NAME "\\Device\\UNKNOWN" |
|
25 // |
|
26 // NtDeviceIoControlFile IoControlCode values for this device. |
|
27 // |
|
28 // Warning: Remember that the low two bits of the code specify how the |
|
29 // buffers are passed to the driver! |
|
30 // |
|
31 #define _NDIS_CONTROL_CODE(request,method) \ |
|
32 CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS) |
|
33 #define IOCTL_NDIS_QUERY_GLOBAL_STATS _NDIS_CONTROL_CODE( 0, METHOD_OUT_DIRECT ) |
|
34 #define IOCTL_NDIS_QUERY_ALL_STATS _NDIS_CONTROL_CODE( 1, METHOD_OUT_DIRECT ) |
|
35 #define IOCTL_NDIS_ADD_DEVICE _NDIS_CONTROL_CODE( 2, METHOD_BUFFERED ) |
|
36 #define IOCTL_NDIS_DELETE_DEVICE _NDIS_CONTROL_CODE( 3, METHOD_BUFFERED ) |
|
37 #define IOCTL_NDIS_TRANSLATE_NAME _NDIS_CONTROL_CODE( 4, METHOD_BUFFERED ) |
|
38 #define IOCTL_NDIS_ADD_TDI_DEVICE _NDIS_CONTROL_CODE( 5, METHOD_BUFFERED ) |
|
39 #define IOCTL_NDIS_NOTIFY_PROTOCOL _NDIS_CONTROL_CODE( 6, METHOD_BUFFERED ) |
|
40 #define IOCTL_NDIS_GET_LOG_DATA _NDIS_CONTROL_CODE( 7, METHOD_OUT_DIRECT ) |
|
41 // |
|
42 // NtDeviceIoControlFile InputBuffer/OutputBuffer record structures for |
|
43 // this device. |
|
44 // |
|
45 // |
|
46 // This is the type of an NDIS OID value. |
|
47 // |
|
48 typedef ULONG NDIS_OID, *PNDIS_OID; |
|
49 // |
|
50 // IOCTL_NDIS_QUERY_ALL_STATS returns a sequence of these, packed |
|
51 // together (no padding is required since statistics all have |
|
52 // four or eight bytes of data). |
|
53 // |
|
54 typedef struct _NDIS_STATISTICS_VALUE { |
|
55 NDIS_OID Oid; |
|
56 ULONG DataLength; |
|
57 UCHAR Data[1]; // variable length |
|
58 |
|
59 } NDIS_STATISTICS_VALUE, *PNDIS_STATISTICS_VALUE; |
|
60 |
|
61 // |
|
62 // Structure used by TRANSLATE_NAME IOCTL |
|
63 // |
|
64 typedef struct _NET_PNP_ID { |
|
65 ULONG ClassId; |
|
66 ULONG Token; |
|
67 } NET_PNP_ID, *PNET_PNP_ID; |
|
68 |
|
69 typedef struct _NET_PNP_TRANSLATE_LIST { |
|
70 ULONG BytesNeeded; |
|
71 NET_PNP_ID IdArray[ANYSIZE_ARRAY]; |
|
72 } NET_PNP_TRANSLATE_LIST, *PNET_PNP_TRANSLATE_LIST; |
|
73 |
|
74 // |
|
75 // Structure used to define a self-contained variable data structure |
|
76 // |
|
77 typedef struct _NDIS_VAR_DATA_DESC { |
|
78 USHORT Length; // # of octects of data |
|
79 |
|
80 USHORT MaximumLength; // # of octects available |
|
81 |
|
82 LONG Offset; // Offset of data relative to the descriptor |
|
83 |
|
84 } NDIS_VAR_DATA_DESC, *PNDIS_VAR_DATA_DESC; |
|
85 |
|
86 // |
|
87 // Object Identifiers used by NdisRequest Query/Set Information |
|
88 // |
|
89 // |
|
90 // General Objects |
|
91 // |
|
92 #define OID_GEN_SUPPORTED_LIST 0x00010101 |
|
93 #define OID_GEN_HARDWARE_STATUS 0x00010102 |
|
94 #define OID_GEN_MEDIA_SUPPORTED 0x00010103 |
|
95 #define OID_GEN_MEDIA_IN_USE 0x00010104 |
|
96 #define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105 |
|
97 #define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106 |
|
98 #define OID_GEN_LINK_SPEED 0x00010107 |
|
99 #define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108 |
|
100 #define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109 |
|
101 #define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A |
|
102 #define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B |
|
103 #define OID_GEN_VENDOR_ID 0x0001010C |
|
104 #define OID_GEN_VENDOR_DESCRIPTION 0x0001010D |
|
105 #define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E |
|
106 #define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F |
|
107 #define OID_GEN_DRIVER_VERSION 0x00010110 |
|
108 #define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111 |
|
109 #define OID_GEN_PROTOCOL_OPTIONS 0x00010112 |
|
110 #define OID_GEN_MAC_OPTIONS 0x00010113 |
|
111 #define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114 |
|
112 #define OID_GEN_MAXIMUM_SEND_PACKETS 0x00010115 |
|
113 #define OID_GEN_VENDOR_DRIVER_VERSION 0x00010116 |
|
114 #define OID_GEN_XMIT_OK 0x00020101 |
|
115 #define OID_GEN_RCV_OK 0x00020102 |
|
116 #define OID_GEN_XMIT_ERROR 0x00020103 |
|
117 #define OID_GEN_RCV_ERROR 0x00020104 |
|
118 #define OID_GEN_RCV_NO_BUFFER 0x00020105 |
|
119 #define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201 |
|
120 #define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202 |
|
121 #define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203 |
|
122 #define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204 |
|
123 #define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205 |
|
124 #define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206 |
|
125 #define OID_GEN_DIRECTED_BYTES_RCV 0x00020207 |
|
126 #define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208 |
|
127 #define OID_GEN_MULTICAST_BYTES_RCV 0x00020209 |
|
128 #define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A |
|
129 #define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B |
|
130 #define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C |
|
131 #define OID_GEN_RCV_CRC_ERROR 0x0002020D |
|
132 #define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E |
|
133 #define OID_GEN_GET_TIME_CAPS 0x0002020F |
|
134 #define OID_GEN_GET_NETCARD_TIME 0x00020210 |
|
135 // |
|
136 // These are connection-oriented general OIDs. |
|
137 // These replace the above OIDs for connection-oriented media. |
|
138 // |
|
139 #define OID_GEN_CO_SUPPORTED_LIST 0x00010101 |
|
140 #define OID_GEN_CO_HARDWARE_STATUS 0x00010102 |
|
141 #define OID_GEN_CO_MEDIA_SUPPORTED 0x00010103 |
|
142 #define OID_GEN_CO_MEDIA_IN_USE 0x00010104 |
|
143 #define OID_GEN_CO_LINK_SPEED 0x00010105 |
|
144 #define OID_GEN_CO_VENDOR_ID 0x00010106 |
|
145 #define OID_GEN_CO_VENDOR_DESCRIPTION 0x00010107 |
|
146 #define OID_GEN_CO_DRIVER_VERSION 0x00010108 |
|
147 #define OID_GEN_CO_PROTOCOL_OPTIONS 0x00010109 |
|
148 #define OID_GEN_CO_MAC_OPTIONS 0x0001010A |
|
149 #define OID_GEN_CO_MEDIA_CONNECT_STATUS 0x0001010B |
|
150 #define OID_GEN_CO_VENDOR_DRIVER_VERSION 0x0001010C |
|
151 #define OID_GEN_CO_MINIMUM_LINK_SPEED 0x0001010D |
|
152 #define OID_GEN_CO_GET_TIME_CAPS 0x00010201 |
|
153 #define OID_GEN_CO_GET_NETCARD_TIME 0x00010202 |
|
154 // |
|
155 // These are connection-oriented statistics OIDs. |
|
156 // |
|
157 #define OID_GEN_CO_XMIT_PDUS_OK 0x00020101 |
|
158 #define OID_GEN_CO_RCV_PDUS_OK 0x00020102 |
|
159 #define OID_GEN_CO_XMIT_PDUS_ERROR 0x00020103 |
|
160 #define OID_GEN_CO_RCV_PDUS_ERROR 0x00020104 |
|
161 #define OID_GEN_CO_RCV_PDUS_NO_BUFFER 0x00020105 |
|
162 #define OID_GEN_CO_RCV_CRC_ERROR 0x00020201 |
|
163 #define OID_GEN_CO_TRANSMIT_QUEUE_LENGTH 0x00020202 |
|
164 #define OID_GEN_CO_BYTES_XMIT 0x00020203 |
|
165 #define OID_GEN_CO_BYTES_RCV 0x00020204 |
|
166 #define OID_GEN_CO_BYTES_XMIT_OUTSTANDING 0x00020205 |
|
167 #define OID_GEN_CO_NETCARD_LOAD 0x00020206 |
|
168 // |
|
169 // These are objects for Connection-oriented media call-managers and are not |
|
170 // valid for ndis drivers. Under construction. |
|
171 // |
|
172 #define OID_CO_ADD_PVC 0xFF000001 |
|
173 #define OID_CO_DELETE_PVC 0xFF000002 |
|
174 #define OID_CO_GET_CALL_INFORMATION 0xFF000003 |
|
175 #define OID_CO_ADD_ADDRESS 0xFF000004 |
|
176 #define OID_CO_DELETE_ADDRESS 0xFF000005 |
|
177 #define OID_CO_GET_ADDRESSES 0xFF000006 |
|
178 #define OID_CO_ADDRESS_CHANGE 0xFF000007 |
|
179 #define OID_CO_SIGNALING_ENABLED 0xFF000008 |
|
180 #define OID_CO_SIGNALING_DISABLED 0xFF000009 |
|
181 // |
|
182 // 802.3 Objects (Ethernet) |
|
183 // |
|
184 #define OID_802_3_PERMANENT_ADDRESS 0x01010101 |
|
185 #define OID_802_3_CURRENT_ADDRESS 0x01010102 |
|
186 #define OID_802_3_MULTICAST_LIST 0x01010103 |
|
187 #define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104 |
|
188 #define OID_802_3_MAC_OPTIONS 0x01010105 |
|
189 // |
|
190 // |
|
191 #define NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001 |
|
192 #define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101 |
|
193 #define OID_802_3_XMIT_ONE_COLLISION 0x01020102 |
|
194 #define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103 |
|
195 #define OID_802_3_XMIT_DEFERRED 0x01020201 |
|
196 #define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202 |
|
197 #define OID_802_3_RCV_OVERRUN 0x01020203 |
|
198 #define OID_802_3_XMIT_UNDERRUN 0x01020204 |
|
199 #define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205 |
|
200 #define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206 |
|
201 #define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207 |
|
202 // |
|
203 // 802.5 Objects (Token-Ring) |
|
204 // |
|
205 #define OID_802_5_PERMANENT_ADDRESS 0x02010101 |
|
206 #define OID_802_5_CURRENT_ADDRESS 0x02010102 |
|
207 #define OID_802_5_CURRENT_FUNCTIONAL 0x02010103 |
|
208 #define OID_802_5_CURRENT_GROUP 0x02010104 |
|
209 #define OID_802_5_LAST_OPEN_STATUS 0x02010105 |
|
210 #define OID_802_5_CURRENT_RING_STATUS 0x02010106 |
|
211 #define OID_802_5_CURRENT_RING_STATE 0x02010107 |
|
212 #define OID_802_5_LINE_ERRORS 0x02020101 |
|
213 #define OID_802_5_LOST_FRAMES 0x02020102 |
|
214 #define OID_802_5_BURST_ERRORS 0x02020201 |
|
215 #define OID_802_5_AC_ERRORS 0x02020202 |
|
216 #define OID_802_5_ABORT_DELIMETERS 0x02020203 |
|
217 #define OID_802_5_FRAME_COPIED_ERRORS 0x02020204 |
|
218 #define OID_802_5_FREQUENCY_ERRORS 0x02020205 |
|
219 #define OID_802_5_TOKEN_ERRORS 0x02020206 |
|
220 #define OID_802_5_INTERNAL_ERRORS 0x02020207 |
|
221 // |
|
222 // FDDI Objects |
|
223 // |
|
224 #define OID_FDDI_LONG_PERMANENT_ADDR 0x03010101 |
|
225 #define OID_FDDI_LONG_CURRENT_ADDR 0x03010102 |
|
226 #define OID_FDDI_LONG_MULTICAST_LIST 0x03010103 |
|
227 #define OID_FDDI_LONG_MAX_LIST_SIZE 0x03010104 |
|
228 #define OID_FDDI_SHORT_PERMANENT_ADDR 0x03010105 |
|
229 #define OID_FDDI_SHORT_CURRENT_ADDR 0x03010106 |
|
230 #define OID_FDDI_SHORT_MULTICAST_LIST 0x03010107 |
|
231 #define OID_FDDI_SHORT_MAX_LIST_SIZE 0x03010108 |
|
232 #define OID_FDDI_ATTACHMENT_TYPE 0x03020101 |
|
233 #define OID_FDDI_UPSTREAM_NODE_LONG 0x03020102 |
|
234 #define OID_FDDI_DOWNSTREAM_NODE_LONG 0x03020103 |
|
235 #define OID_FDDI_FRAME_ERRORS 0x03020104 |
|
236 #define OID_FDDI_FRAMES_LOST 0x03020105 |
|
237 #define OID_FDDI_RING_MGT_STATE 0x03020106 |
|
238 #define OID_FDDI_LCT_FAILURES 0x03020107 |
|
239 #define OID_FDDI_LEM_REJECTS 0x03020108 |
|
240 #define OID_FDDI_LCONNECTION_STATE 0x03020109 |
|
241 #define OID_FDDI_SMT_STATION_ID 0x03030201 |
|
242 #define OID_FDDI_SMT_OP_VERSION_ID 0x03030202 |
|
243 #define OID_FDDI_SMT_HI_VERSION_ID 0x03030203 |
|
244 #define OID_FDDI_SMT_LO_VERSION_ID 0x03030204 |
|
245 #define OID_FDDI_SMT_MANUFACTURER_DATA 0x03030205 |
|
246 #define OID_FDDI_SMT_USER_DATA 0x03030206 |
|
247 #define OID_FDDI_SMT_MIB_VERSION_ID 0x03030207 |
|
248 #define OID_FDDI_SMT_MAC_CT 0x03030208 |
|
249 #define OID_FDDI_SMT_NON_MASTER_CT 0x03030209 |
|
250 #define OID_FDDI_SMT_MASTER_CT 0x0303020A |
|
251 #define OID_FDDI_SMT_AVAILABLE_PATHS 0x0303020B |
|
252 #define OID_FDDI_SMT_CONFIG_CAPABILITIES 0x0303020C |
|
253 #define OID_FDDI_SMT_CONFIG_POLICY 0x0303020D |
|
254 #define OID_FDDI_SMT_CONNECTION_POLICY 0x0303020E |
|
255 #define OID_FDDI_SMT_T_NOTIFY 0x0303020F |
|
256 #define OID_FDDI_SMT_STAT_RPT_POLICY 0x03030210 |
|
257 #define OID_FDDI_SMT_TRACE_MAX_EXPIRATION 0x03030211 |
|
258 #define OID_FDDI_SMT_PORT_INDEXES 0x03030212 |
|
259 #define OID_FDDI_SMT_MAC_INDEXES 0x03030213 |
|
260 #define OID_FDDI_SMT_BYPASS_PRESENT 0x03030214 |
|
261 #define OID_FDDI_SMT_ECM_STATE 0x03030215 |
|
262 #define OID_FDDI_SMT_CF_STATE 0x03030216 |
|
263 #define OID_FDDI_SMT_HOLD_STATE 0x03030217 |
|
264 #define OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG 0x03030218 |
|
265 #define OID_FDDI_SMT_STATION_STATUS 0x03030219 |
|
266 #define OID_FDDI_SMT_PEER_WRAP_FLAG 0x0303021A |
|
267 #define OID_FDDI_SMT_MSG_TIME_STAMP 0x0303021B |
|
268 #define OID_FDDI_SMT_TRANSITION_TIME_STAMP 0x0303021C |
|
269 #define OID_FDDI_SMT_SET_COUNT 0x0303021D |
|
270 #define OID_FDDI_SMT_LAST_SET_STATION_ID 0x0303021E |
|
271 #define OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS 0x0303021F |
|
272 #define OID_FDDI_MAC_BRIDGE_FUNCTIONS 0x03030220 |
|
273 #define OID_FDDI_MAC_T_MAX_CAPABILITY 0x03030221 |
|
274 #define OID_FDDI_MAC_TVX_CAPABILITY 0x03030222 |
|
275 #define OID_FDDI_MAC_AVAILABLE_PATHS 0x03030223 |
|
276 #define OID_FDDI_MAC_CURRENT_PATH 0x03030224 |
|
277 #define OID_FDDI_MAC_UPSTREAM_NBR 0x03030225 |
|
278 #define OID_FDDI_MAC_DOWNSTREAM_NBR 0x03030226 |
|
279 #define OID_FDDI_MAC_OLD_UPSTREAM_NBR 0x03030227 |
|
280 #define OID_FDDI_MAC_OLD_DOWNSTREAM_NBR 0x03030228 |
|
281 #define OID_FDDI_MAC_DUP_ADDRESS_TEST 0x03030229 |
|
282 #define OID_FDDI_MAC_REQUESTED_PATHS 0x0303022A |
|
283 #define OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE 0x0303022B |
|
284 #define OID_FDDI_MAC_INDEX 0x0303022C |
|
285 #define OID_FDDI_MAC_SMT_ADDRESS 0x0303022D |
|
286 #define OID_FDDI_MAC_LONG_GRP_ADDRESS 0x0303022E |
|
287 #define OID_FDDI_MAC_SHORT_GRP_ADDRESS 0x0303022F |
|
288 #define OID_FDDI_MAC_T_REQ 0x03030230 |
|
289 #define OID_FDDI_MAC_T_NEG 0x03030231 |
|
290 #define OID_FDDI_MAC_T_MAX 0x03030232 |
|
291 #define OID_FDDI_MAC_TVX_VALUE 0x03030233 |
|
292 #define OID_FDDI_MAC_T_PRI0 0x03030234 |
|
293 #define OID_FDDI_MAC_T_PRI1 0x03030235 |
|
294 #define OID_FDDI_MAC_T_PRI2 0x03030236 |
|
295 #define OID_FDDI_MAC_T_PRI3 0x03030237 |
|
296 #define OID_FDDI_MAC_T_PRI4 0x03030238 |
|
297 #define OID_FDDI_MAC_T_PRI5 0x03030239 |
|
298 #define OID_FDDI_MAC_T_PRI6 0x0303023A |
|
299 #define OID_FDDI_MAC_FRAME_CT 0x0303023B |
|
300 #define OID_FDDI_MAC_COPIED_CT 0x0303023C |
|
301 #define OID_FDDI_MAC_TRANSMIT_CT 0x0303023D |
|
302 #define OID_FDDI_MAC_TOKEN_CT 0x0303023E |
|
303 #define OID_FDDI_MAC_ERROR_CT 0x0303023F |
|
304 #define OID_FDDI_MAC_LOST_CT 0x03030240 |
|
305 #define OID_FDDI_MAC_TVX_EXPIRED_CT 0x03030241 |
|
306 #define OID_FDDI_MAC_NOT_COPIED_CT 0x03030242 |
|
307 #define OID_FDDI_MAC_LATE_CT 0x03030243 |
|
308 #define OID_FDDI_MAC_RING_OP_CT 0x03030244 |
|
309 #define OID_FDDI_MAC_FRAME_ERROR_THRESHOLD 0x03030245 |
|
310 #define OID_FDDI_MAC_FRAME_ERROR_RATIO 0x03030246 |
|
311 #define OID_FDDI_MAC_NOT_COPIED_THRESHOLD 0x03030247 |
|
312 #define OID_FDDI_MAC_NOT_COPIED_RATIO 0x03030248 |
|
313 #define OID_FDDI_MAC_RMT_STATE 0x03030249 |
|
314 #define OID_FDDI_MAC_DA_FLAG 0x0303024A |
|
315 #define OID_FDDI_MAC_UNDA_FLAG 0x0303024B |
|
316 #define OID_FDDI_MAC_FRAME_ERROR_FLAG 0x0303024C |
|
317 #define OID_FDDI_MAC_NOT_COPIED_FLAG 0x0303024D |
|
318 #define OID_FDDI_MAC_MA_UNITDATA_AVAILABLE 0x0303024E |
|
319 #define OID_FDDI_MAC_HARDWARE_PRESENT 0x0303024F |
|
320 #define OID_FDDI_MAC_MA_UNITDATA_ENABLE 0x03030250 |
|
321 #define OID_FDDI_PATH_INDEX 0x03030251 |
|
322 #define OID_FDDI_PATH_RING_LATENCY 0x03030252 |
|
323 #define OID_FDDI_PATH_TRACE_STATUS 0x03030253 |
|
324 #define OID_FDDI_PATH_SBA_PAYLOAD 0x03030254 |
|
325 #define OID_FDDI_PATH_SBA_OVERHEAD 0x03030255 |
|
326 #define OID_FDDI_PATH_CONFIGURATION 0x03030256 |
|
327 #define OID_FDDI_PATH_T_R_MODE 0x03030257 |
|
328 #define OID_FDDI_PATH_SBA_AVAILABLE 0x03030258 |
|
329 #define OID_FDDI_PATH_TVX_LOWER_BOUND 0x03030259 |
|
330 #define OID_FDDI_PATH_T_MAX_LOWER_BOUND 0x0303025A |
|
331 #define OID_FDDI_PATH_MAX_T_REQ 0x0303025B |
|
332 #define OID_FDDI_PORT_MY_TYPE 0x0303025C |
|
333 #define OID_FDDI_PORT_NEIGHBOR_TYPE 0x0303025D |
|
334 #define OID_FDDI_PORT_CONNECTION_POLICIES 0x0303025E |
|
335 #define OID_FDDI_PORT_MAC_INDICATED 0x0303025F |
|
336 #define OID_FDDI_PORT_CURRENT_PATH 0x03030260 |
|
337 #define OID_FDDI_PORT_REQUESTED_PATHS 0x03030261 |
|
338 #define OID_FDDI_PORT_MAC_PLACEMENT 0x03030262 |
|
339 #define OID_FDDI_PORT_AVAILABLE_PATHS 0x03030263 |
|
340 #define OID_FDDI_PORT_MAC_LOOP_TIME 0x03030264 |
|
341 #define OID_FDDI_PORT_PMD_CLASS 0x03030265 |
|
342 #define OID_FDDI_PORT_CONNECTION_CAPABILITIES 0x03030266 |
|
343 #define OID_FDDI_PORT_INDEX 0x03030267 |
|
344 #define OID_FDDI_PORT_MAINT_LS 0x03030268 |
|
345 #define OID_FDDI_PORT_BS_FLAG 0x03030269 |
|
346 #define OID_FDDI_PORT_PC_LS 0x0303026A |
|
347 #define OID_FDDI_PORT_EB_ERROR_CT 0x0303026B |
|
348 #define OID_FDDI_PORT_LCT_FAIL_CT 0x0303026C |
|
349 #define OID_FDDI_PORT_LER_ESTIMATE 0x0303026D |
|
350 #define OID_FDDI_PORT_LEM_REJECT_CT 0x0303026E |
|
351 #define OID_FDDI_PORT_LEM_CT 0x0303026F |
|
352 #define OID_FDDI_PORT_LER_CUTOFF 0x03030270 |
|
353 #define OID_FDDI_PORT_LER_ALARM 0x03030271 |
|
354 #define OID_FDDI_PORT_CONNNECT_STATE 0x03030272 |
|
355 #define OID_FDDI_PORT_PCM_STATE 0x03030273 |
|
356 #define OID_FDDI_PORT_PC_WITHHOLD 0x03030274 |
|
357 #define OID_FDDI_PORT_LER_FLAG 0x03030275 |
|
358 #define OID_FDDI_PORT_HARDWARE_PRESENT 0x03030276 |
|
359 #define OID_FDDI_SMT_STATION_ACTION 0x03030277 |
|
360 #define OID_FDDI_PORT_ACTION 0x03030278 |
|
361 #define OID_FDDI_IF_DESCR 0x03030279 |
|
362 #define OID_FDDI_IF_TYPE 0x0303027A |
|
363 #define OID_FDDI_IF_MTU 0x0303027B |
|
364 #define OID_FDDI_IF_SPEED 0x0303027C |
|
365 #define OID_FDDI_IF_PHYS_ADDRESS 0x0303027D |
|
366 #define OID_FDDI_IF_ADMIN_STATUS 0x0303027E |
|
367 #define OID_FDDI_IF_OPER_STATUS 0x0303027F |
|
368 #define OID_FDDI_IF_LAST_CHANGE 0x03030280 |
|
369 #define OID_FDDI_IF_IN_OCTETS 0x03030281 |
|
370 #define OID_FDDI_IF_IN_UCAST_PKTS 0x03030282 |
|
371 #define OID_FDDI_IF_IN_NUCAST_PKTS 0x03030283 |
|
372 #define OID_FDDI_IF_IN_DISCARDS 0x03030284 |
|
373 #define OID_FDDI_IF_IN_ERRORS 0x03030285 |
|
374 #define OID_FDDI_IF_IN_UNKNOWN_PROTOS 0x03030286 |
|
375 #define OID_FDDI_IF_OUT_OCTETS 0x03030287 |
|
376 #define OID_FDDI_IF_OUT_UCAST_PKTS 0x03030288 |
|
377 #define OID_FDDI_IF_OUT_NUCAST_PKTS 0x03030289 |
|
378 #define OID_FDDI_IF_OUT_DISCARDS 0x0303028A |
|
379 #define OID_FDDI_IF_OUT_ERRORS 0x0303028B |
|
380 #define OID_FDDI_IF_OUT_QLEN 0x0303028C |
|
381 #define OID_FDDI_IF_SPECIFIC 0x0303028D |
|
382 // |
|
383 // WAN objects |
|
384 // |
|
385 #define OID_WAN_PERMANENT_ADDRESS 0x04010101 |
|
386 #define OID_WAN_CURRENT_ADDRESS 0x04010102 |
|
387 #define OID_WAN_QUALITY_OF_SERVICE 0x04010103 |
|
388 #define OID_WAN_PROTOCOL_TYPE 0x04010104 |
|
389 #define OID_WAN_MEDIUM_SUBTYPE 0x04010105 |
|
390 #define OID_WAN_HEADER_FORMAT 0x04010106 |
|
391 #define OID_WAN_GET_INFO 0x04010107 |
|
392 #define OID_WAN_SET_LINK_INFO 0x04010108 |
|
393 #define OID_WAN_GET_LINK_INFO 0x04010109 |
|
394 #define OID_WAN_LINE_COUNT 0x0401010A |
|
395 #define OID_WAN_GET_BRIDGE_INFO 0x0401020A |
|
396 #define OID_WAN_SET_BRIDGE_INFO 0x0401020B |
|
397 #define OID_WAN_GET_COMP_INFO 0x0401020C |
|
398 #define OID_WAN_SET_COMP_INFO 0x0401020D |
|
399 #define OID_WAN_GET_STATS_INFO 0x0401020E |
|
400 // |
|
401 // LocalTalk objects |
|
402 // |
|
403 #define OID_LTALK_CURRENT_NODE_ID 0x05010102 |
|
404 #define OID_LTALK_IN_BROADCASTS 0x05020101 |
|
405 #define OID_LTALK_IN_LENGTH_ERRORS 0x05020102 |
|
406 #define OID_LTALK_OUT_NO_HANDLERS 0x05020201 |
|
407 #define OID_LTALK_COLLISIONS 0x05020202 |
|
408 #define OID_LTALK_DEFERS 0x05020203 |
|
409 #define OID_LTALK_NO_DATA_ERRORS 0x05020204 |
|
410 #define OID_LTALK_RANDOM_CTS_ERRORS 0x05020205 |
|
411 #define OID_LTALK_FCS_ERRORS 0x05020206 |
|
412 // |
|
413 // Arcnet objects |
|
414 // |
|
415 #define OID_ARCNET_PERMANENT_ADDRESS 0x06010101 |
|
416 #define OID_ARCNET_CURRENT_ADDRESS 0x06010102 |
|
417 #define OID_ARCNET_RECONFIGURATIONS 0x06020201 |
|
418 // |
|
419 // TAPI objects |
|
420 // |
|
421 #define OID_TAPI_ACCEPT 0x07030101 |
|
422 #define OID_TAPI_ANSWER 0x07030102 |
|
423 #define OID_TAPI_CLOSE 0x07030103 |
|
424 #define OID_TAPI_CLOSE_CALL 0x07030104 |
|
425 #define OID_TAPI_CONDITIONAL_MEDIA_DETECTION 0x07030105 |
|
426 #define OID_TAPI_CONFIG_DIALOG 0x07030106 |
|
427 #define OID_TAPI_DEV_SPECIFIC 0x07030107 |
|
428 #define OID_TAPI_DIAL 0x07030108 |
|
429 #define OID_TAPI_DROP 0x07030109 |
|
430 #define OID_TAPI_GET_ADDRESS_CAPS 0x0703010A |
|
431 #define OID_TAPI_GET_ADDRESS_ID 0x0703010B |
|
432 #define OID_TAPI_GET_ADDRESS_STATUS 0x0703010C |
|
433 #define OID_TAPI_GET_CALL_ADDRESS_ID 0x0703010D |
|
434 #define OID_TAPI_GET_CALL_INFO 0x0703010E |
|
435 #define OID_TAPI_GET_CALL_STATUS 0x0703010F |
|
436 #define OID_TAPI_GET_DEV_CAPS 0x07030110 |
|
437 #define OID_TAPI_GET_DEV_CONFIG 0x07030111 |
|
438 #define OID_TAPI_GET_EXTENSION_ID 0x07030112 |
|
439 #define OID_TAPI_GET_ID 0x07030113 |
|
440 #define OID_TAPI_GET_LINE_DEV_STATUS 0x07030114 |
|
441 #define OID_TAPI_MAKE_CALL 0x07030115 |
|
442 #define OID_TAPI_NEGOTIATE_EXT_VERSION 0x07030116 |
|
443 #define OID_TAPI_OPEN 0x07030117 |
|
444 #define OID_TAPI_PROVIDER_INITIALIZE 0x07030118 |
|
445 #define OID_TAPI_PROVIDER_SHUTDOWN 0x07030119 |
|
446 #define OID_TAPI_SECURE_CALL 0x0703011A |
|
447 #define OID_TAPI_SELECT_EXT_VERSION 0x0703011B |
|
448 #define OID_TAPI_SEND_USER_USER_INFO 0x0703011C |
|
449 #define OID_TAPI_SET_APP_SPECIFIC 0x0703011D |
|
450 #define OID_TAPI_SET_CALL_PARAMS 0x0703011E |
|
451 #define OID_TAPI_SET_DEFAULT_MEDIA_DETECTION 0x0703011F |
|
452 #define OID_TAPI_SET_DEV_CONFIG 0x07030120 |
|
453 #define OID_TAPI_SET_MEDIA_MODE 0x07030121 |
|
454 #define OID_TAPI_SET_STATUS_MESSAGES 0x07030122 |
|
455 // |
|
456 // ATM Connection Oriented Ndis |
|
457 // |
|
458 #define OID_ATM_SUPPORTED_VC_RATES 0x08010101 |
|
459 #define OID_ATM_SUPPORTED_SERVICE_CATEGORY 0x08010102 |
|
460 #define OID_ATM_SUPPORTED_AAL_TYPES 0x08010103 |
|
461 #define OID_ATM_HW_CURRENT_ADDRESS 0x08010104 |
|
462 #define OID_ATM_MAX_ACTIVE_VCS 0x08010105 |
|
463 #define OID_ATM_MAX_ACTIVE_VCI_BITS 0x08010106 |
|
464 #define OID_ATM_MAX_ACTIVE_VPI_BITS 0x08010107 |
|
465 #define OID_ATM_MAX_AAL0_PACKET_SIZE 0x08010108 |
|
466 #define OID_ATM_MAX_AAL1_PACKET_SIZE 0x08010109 |
|
467 #define OID_ATM_MAX_AAL34_PACKET_SIZE 0x0801010A |
|
468 #define OID_ATM_MAX_AAL5_PACKET_SIZE 0x0801010B |
|
469 #define OID_ATM_SIGNALING_VPIVCI 0x08010201 |
|
470 #define OID_ATM_ASSIGNED_VPI 0x08010202 |
|
471 #define OID_ATM_ACQUIRE_ACCESS_NET_RESOURCES 0x08010203 |
|
472 #define OID_ATM_RELEASE_ACCESS_NET_RESOURCES 0x08010204 |
|
473 #define OID_ATM_ILMI_VPIVCI 0x08010205 |
|
474 #define OID_ATM_DIGITAL_BROADCAST_VPIVCI 0x08010206 |
|
475 #define OID_ATM_GET_NEAREST_FLOW 0x08010207 |
|
476 #define OID_ATM_ALIGNMENT_REQUIRED 0x08010208 |
|
477 // |
|
478 // ATM specific statistics OIDs. |
|
479 // |
|
480 #define OID_ATM_RCV_CELLS_OK 0x08020101 |
|
481 #define OID_ATM_XMIT_CELLS_OK 0x08020102 |
|
482 #define OID_ATM_RCV_CELLS_DROPPED 0x08020103 |
|
483 #define OID_ATM_RCV_INVALID_VPI_VCI 0x08020201 |
|
484 #define OID_ATM_CELLS_HEC_ERROR 0x08020202 |
|
485 #define OID_ATM_RCV_REASSEMBLY_ERROR 0x08020203 |
|
486 // |
|
487 // PCCA (Wireless) object |
|
488 // |
|
489 // |
|
490 // All WirelessWAN devices must support the following OIDs |
|
491 // |
|
492 #define OID_WW_GEN_NETWORK_TYPES_SUPPORTED 0x09010101 |
|
493 #define OID_WW_GEN_NETWORK_TYPE_IN_USE 0x09010102 |
|
494 #define OID_WW_GEN_HEADER_FORMATS_SUPPORTED 0x09010103 |
|
495 #define OID_WW_GEN_HEADER_FORMAT_IN_USE 0x09010104 |
|
496 #define OID_WW_GEN_INDICATION_REQUEST 0x09010105 |
|
497 #define OID_WW_GEN_DEVICE_INFO 0x09010106 |
|
498 #define OID_WW_GEN_OPERATION_MODE 0x09010107 |
|
499 #define OID_WW_GEN_LOCK_STATUS 0x09010108 |
|
500 #define OID_WW_GEN_DISABLE_TRANSMITTER 0x09010109 |
|
501 #define OID_WW_GEN_NETWORK_ID 0x0901010A |
|
502 #define OID_WW_GEN_PERMANENT_ADDRESS 0x0901010B |
|
503 #define OID_WW_GEN_CURRENT_ADDRESS 0x0901010C |
|
504 #define OID_WW_GEN_SUSPEND_DRIVER 0x0901010D |
|
505 #define OID_WW_GEN_BASESTATION_ID 0x0901010E |
|
506 #define OID_WW_GEN_CHANNEL_ID 0x0901010F |
|
507 #define OID_WW_GEN_ENCRYPTION_SUPPORTED 0x09010110 |
|
508 #define OID_WW_GEN_ENCRYPTION_IN_USE 0x09010111 |
|
509 #define OID_WW_GEN_ENCRYPTION_STATE 0x09010112 |
|
510 #define OID_WW_GEN_CHANNEL_QUALITY 0x09010113 |
|
511 #define OID_WW_GEN_REGISTRATION_STATUS 0x09010114 |
|
512 #define OID_WW_GEN_RADIO_LINK_SPEED 0x09010115 |
|
513 #define OID_WW_GEN_LATENCY 0x09010116 |
|
514 #define OID_WW_GEN_BATTERY_LEVEL 0x09010117 |
|
515 #define OID_WW_GEN_EXTERNAL_POWER 0x09010118 |
|
516 // |
|
517 // Network Dependent OIDs - Mobitex: |
|
518 // |
|
519 #define OID_WW_MBX_SUBADDR 0x09050101 |
|
520 // OID 0x09050102 is reserved and may not be used |
|
521 #define OID_WW_MBX_FLEXLIST 0x09050103 |
|
522 #define OID_WW_MBX_GROUPLIST 0x09050104 |
|
523 #define OID_WW_MBX_TRAFFIC_AREA 0x09050105 |
|
524 #define OID_WW_MBX_LIVE_DIE 0x09050106 |
|
525 #define OID_WW_MBX_TEMP_DEFAULTLIST 0x09050107 |
|
526 // |
|
527 // Network Dependent OIDs - Pinpoint: |
|
528 // |
|
529 #define OID_WW_PIN_LOC_AUTHORIZE 0x09090101 |
|
530 #define OID_WW_PIN_LAST_LOCATION 0x09090102 |
|
531 #define OID_WW_PIN_LOC_FIX 0x09090103 |
|
532 // |
|
533 // Network Dependent - CDPD: |
|
534 // |
|
535 #define OID_WW_CDPD_SPNI 0x090D0101 |
|
536 #define OID_WW_CDPD_WASI 0x090D0102 |
|
537 #define OID_WW_CDPD_AREA_COLOR 0x090D0103 |
|
538 #define OID_WW_CDPD_TX_POWER_LEVEL 0x090D0104 |
|
539 #define OID_WW_CDPD_EID 0x090D0105 |
|
540 #define OID_WW_CDPD_HEADER_COMPRESSION 0x090D0106 |
|
541 #define OID_WW_CDPD_DATA_COMPRESSION 0x090D0107 |
|
542 #define OID_WW_CDPD_CHANNEL_SELECT 0x090D0108 |
|
543 #define OID_WW_CDPD_CHANNEL_STATE 0x090D0109 |
|
544 #define OID_WW_CDPD_NEI 0x090D010A |
|
545 #define OID_WW_CDPD_NEI_STATE 0x090D010B |
|
546 #define OID_WW_CDPD_SERVICE_PROVIDER_IDENTIFIER 0x090D010C |
|
547 #define OID_WW_CDPD_SLEEP_MODE 0x090D010D |
|
548 #define OID_WW_CDPD_CIRCUIT_SWITCHED 0x090D010E |
|
549 #define OID_WW_CDPD_TEI 0x090D010F |
|
550 #define OID_WW_CDPD_RSSI 0x090D0110 |
|
551 // |
|
552 // Network Dependent - Ardis: |
|
553 // |
|
554 #define OID_WW_ARD_SNDCP 0x09110101 |
|
555 #define OID_WW_ARD_TMLY_MSG 0x09110102 |
|
556 #define OID_WW_ARD_DATAGRAM 0x09110103 |
|
557 // |
|
558 // Network Dependent - DataTac: |
|
559 // |
|
560 #define OID_WW_TAC_COMPRESSION 0x09150101 |
|
561 #define OID_WW_TAC_SET_CONFIG 0x09150102 |
|
562 #define OID_WW_TAC_GET_STATUS 0x09150103 |
|
563 #define OID_WW_TAC_USER_HEADER 0x09150104 |
|
564 // |
|
565 // Network Dependent - Metricom: |
|
566 // |
|
567 #define OID_WW_MET_FUNCTION 0x09190101 |
|
568 // |
|
569 // IRDA objects |
|
570 // |
|
571 #define OID_IRDA_RECEIVING 0x0A010100 |
|
572 #define OID_IRDA_TURNAROUND_TIME 0x0A010101 |
|
573 #define OID_IRDA_SUPPORTED_SPEEDS 0x0A010102 |
|
574 #define OID_IRDA_LINK_SPEED 0x0A010103 |
|
575 #define OID_IRDA_MEDIA_BUSY 0x0A010104 |
|
576 #define OID_IRDA_EXTRA_RCV_BOFS 0x0A010200 |
|
577 #define OID_IRDA_RATE_SNIFF 0x0A010201 |
|
578 #define OID_IRDA_UNICAST_LIST 0x0A010202 |
|
579 #define OID_IRDA_MAX_UNICAST_LIST_SIZE 0x0A010203 |
|
580 #define OID_IRDA_MAX_RECEIVE_WINDOW_SIZE 0x0A010204 |
|
581 #define OID_IRDA_MAX_SEND_WINDOW_SIZE 0x0A010205 |
|
582 // |
|
583 // Medium the Ndis Driver is running on (OID_GEN_MEDIA_SUPPORTED/ |
|
584 // OID_GEN_MEDIA_IN_USE). |
|
585 // |
|
586 typedef enum _NDIS_MEDIUM { |
|
587 NdisMedium802_3, |
|
588 NdisMedium802_5, |
|
589 NdisMediumFddi, |
|
590 NdisMediumWan, |
|
591 NdisMediumLocalTalk, |
|
592 NdisMediumDix, // defined for convenience, not a real medium |
|
593 NdisMediumArcnetRaw, |
|
594 NdisMediumArcnet878_2, |
|
595 NdisMediumAtm, |
|
596 NdisMediumWirelessWan, |
|
597 NdisMediumIrda, |
|
598 NdisMediumMax // Not a real medium, defined as an upper-bound |
|
599 } NDIS_MEDIUM, *PNDIS_MEDIUM; |
|
600 |
|
601 // |
|
602 // Hardware status codes (OID_GEN_HARDWARE_STATUS). |
|
603 // |
|
604 typedef enum _NDIS_HARDWARE_STATUS { |
|
605 NdisHardwareStatusReady, |
|
606 NdisHardwareStatusInitializing, |
|
607 NdisHardwareStatusReset, |
|
608 NdisHardwareStatusClosing, |
|
609 NdisHardwareStatusNotReady |
|
610 } NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS; |
|
611 |
|
612 // |
|
613 // this is the type passed in the OID_GEN_GET_TIME_CAPS request |
|
614 // |
|
615 typedef struct _GEN_GET_TIME_CAPS { |
|
616 ULONG Flags; // Bits defined below |
|
617 |
|
618 ULONG ClockPrecision; |
|
619 } GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS; |
|
620 |
|
621 #define READABLE_LOCAL_CLOCK 0x000000001 |
|
622 #define CLOCK_NETWORK_DERIVED 0x000000002 |
|
623 #define CLOCK_PRECISION 0x000000004 |
|
624 #define RECEIVE_TIME_INDICATION_CAPABLE 0x000000008 |
|
625 #define TIMED_SEND_CAPABLE 0x000000010 |
|
626 #define TIME_STAMP_CAPABLE 0x000000020 |
|
627 // |
|
628 // |
|
629 // this is the type passed in the OID_GEN_GET_NETCARD_TIME request |
|
630 // |
|
631 typedef struct _GEN_GET_NETCARD_TIME { |
|
632 ULONG ReadTime; |
|
633 } GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME; |
|
634 |
|
635 // |
|
636 // Defines the attachment types for FDDI (OID_FDDI_ATTACHMENT_TYPE). |
|
637 // |
|
638 typedef enum _NDIS_FDDI_ATTACHMENT_TYPE { |
|
639 NdisFddiTypeIsolated = 1, |
|
640 NdisFddiTypeLocalA, |
|
641 NdisFddiTypeLocalB, |
|
642 NdisFddiTypeLocalAB, |
|
643 NdisFddiTypeLocalS, |
|
644 NdisFddiTypeWrapA, |
|
645 NdisFddiTypeWrapB, |
|
646 NdisFddiTypeWrapAB, |
|
647 NdisFddiTypeWrapS, |
|
648 NdisFddiTypeCWrapA, |
|
649 NdisFddiTypeCWrapB, |
|
650 NdisFddiTypeCWrapS, |
|
651 NdisFddiTypeThrough |
|
652 } NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE; |
|
653 |
|
654 // |
|
655 // Defines the ring management states for FDDI (OID_FDDI_RING_MGT_STATE). |
|
656 // |
|
657 typedef enum _NDIS_FDDI_RING_MGT_STATE { |
|
658 NdisFddiRingIsolated = 1, |
|
659 NdisFddiRingNonOperational, |
|
660 NdisFddiRingOperational, |
|
661 NdisFddiRingDetect, |
|
662 NdisFddiRingNonOperationalDup, |
|
663 NdisFddiRingOperationalDup, |
|
664 NdisFddiRingDirected, |
|
665 NdisFddiRingTrace |
|
666 } NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE; |
|
667 |
|
668 // |
|
669 // Defines the Lconnection state for FDDI (OID_FDDI_LCONNECTION_STATE). |
|
670 // |
|
671 typedef enum _NDIS_FDDI_LCONNECTION_STATE { |
|
672 NdisFddiStateOff = 1, |
|
673 NdisFddiStateBreak, |
|
674 NdisFddiStateTrace, |
|
675 NdisFddiStateConnect, |
|
676 NdisFddiStateNext, |
|
677 NdisFddiStateSignal, |
|
678 NdisFddiStateJoin, |
|
679 NdisFddiStateVerify, |
|
680 NdisFddiStateActive, |
|
681 NdisFddiStateMaintenance |
|
682 } NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE; |
|
683 |
|
684 // |
|
685 // Defines the medium subtypes for WAN medium (OID_WAN_MEDIUM_SUBTYPE). |
|
686 // |
|
687 typedef enum _NDIS_WAN_MEDIUM_SUBTYPE { |
|
688 NdisWanMediumHub, |
|
689 NdisWanMediumX_25, |
|
690 NdisWanMediumIsdn, |
|
691 NdisWanMediumSerial, |
|
692 NdisWanMediumFrameRelay, |
|
693 NdisWanMediumAtm, |
|
694 NdisWanMediumSonet, |
|
695 NdisWanMediumSW56K |
|
696 } NDIS_WAN_MEDIUM_SUBTYPE, *PNDIS_WAN_MEDIUM_SUBTYPE; |
|
697 |
|
698 // |
|
699 // Defines the header format for WAN medium (OID_WAN_HEADER_FORMAT). |
|
700 // |
|
701 typedef enum _NDIS_WAN_HEADER_FORMAT { |
|
702 NdisWanHeaderNative, // src/dest based on subtype, followed by NLPID |
|
703 NdisWanHeaderEthernet // emulation of ethernet header |
|
704 } NDIS_WAN_HEADER_FORMAT, *PNDIS_WAN_HEADER_FORMAT; |
|
705 |
|
706 // |
|
707 // Defines the line quality on a WAN line (OID_WAN_QUALITY_OF_SERVICE). |
|
708 // |
|
709 typedef enum _NDIS_WAN_QUALITY { |
|
710 NdisWanRaw, |
|
711 NdisWanErrorControl, |
|
712 NdisWanReliable |
|
713 } NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY; |
|
714 |
|
715 // |
|
716 // Defines the state of a token-ring adapter (OID_802_5_CURRENT_RING_STATE). |
|
717 // |
|
718 typedef enum _NDIS_802_5_RING_STATE { |
|
719 NdisRingStateOpened = 1, |
|
720 NdisRingStateClosed, |
|
721 NdisRingStateOpening, |
|
722 NdisRingStateClosing, |
|
723 NdisRingStateOpenFailure, |
|
724 NdisRingStateRingFailure |
|
725 } NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE; |
|
726 |
|
727 // |
|
728 // Defines the state of the LAN media |
|
729 // |
|
730 typedef enum _NDIS_MEDIA_STATE { |
|
731 NdisMediaStateConnected, |
|
732 NdisMediaStateDisconnected |
|
733 } NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE; |
|
734 |
|
735 // |
|
736 // The following is set on a per-packet basis as OOB data with NdisClass802_3Priority |
|
737 // |
|
738 typedef ULONG Priority_802_3; // 0-7 priority levels |
|
739 // |
|
740 // The following structure is used to query OID_GEN_CO_LINK_SPEED and |
|
741 // OID_GEN_CO_MINIMUM_LINK_SPEED. The first OID will return the current |
|
742 // link speed of the adapter. The second will return the minimum link speed |
|
743 // the adapter is capable of. |
|
744 // |
|
745 |
|
746 typedef struct _NDIS_CO_LINK_SPEED { |
|
747 ULONG Outbound; |
|
748 ULONG Inbound; |
|
749 } NDIS_CO_LINK_SPEED, |
|
750 |
|
751 *PNDIS_CO_LINK_SPEED; |
|
752 // |
|
753 // Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER). |
|
754 // |
|
755 #define NDIS_PACKET_TYPE_DIRECTED 0x0001 |
|
756 #define NDIS_PACKET_TYPE_MULTICAST 0x0002 |
|
757 #define NDIS_PACKET_TYPE_ALL_MULTICAST 0x0004 |
|
758 #define NDIS_PACKET_TYPE_BROADCAST 0x0008 |
|
759 #define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x0010 |
|
760 #define NDIS_PACKET_TYPE_PROMISCUOUS 0x0020 |
|
761 #define NDIS_PACKET_TYPE_SMT 0x0040 |
|
762 #define NDIS_PACKET_TYPE_ALL_LOCAL 0x0080 |
|
763 #define NDIS_PACKET_TYPE_MAC_FRAME 0x8000 |
|
764 #define NDIS_PACKET_TYPE_FUNCTIONAL 0x4000 |
|
765 #define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x2000 |
|
766 #define NDIS_PACKET_TYPE_GROUP 0x1000 |
|
767 // |
|
768 // Ndis Token-Ring Ring Status Codes (OID_802_5_CURRENT_RING_STATUS). |
|
769 // |
|
770 #define NDIS_RING_SIGNAL_LOSS 0x00008000 |
|
771 #define NDIS_RING_HARD_ERROR 0x00004000 |
|
772 #define NDIS_RING_SOFT_ERROR 0x00002000 |
|
773 #define NDIS_RING_TRANSMIT_BEACON 0x00001000 |
|
774 #define NDIS_RING_LOBE_WIRE_FAULT 0x00000800 |
|
775 #define NDIS_RING_AUTO_REMOVAL_ERROR 0x00000400 |
|
776 #define NDIS_RING_REMOVE_RECEIVED 0x00000200 |
|
777 #define NDIS_RING_COUNTER_OVERFLOW 0x00000100 |
|
778 #define NDIS_RING_SINGLE_STATION 0x00000080 |
|
779 #define NDIS_RING_RING_RECOVERY 0x00000040 |
|
780 // |
|
781 // Ndis protocol option bits (OID_GEN_PROTOCOL_OPTIONS). |
|
782 // |
|
783 #define NDIS_PROT_OPTION_ESTIMATED_LENGTH 0x00000001 |
|
784 #define NDIS_PROT_OPTION_NO_LOOPBACK 0x00000002 |
|
785 #define NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT 0x00000004 |
|
786 // |
|
787 // Ndis MAC option bits (OID_GEN_MAC_OPTIONS). |
|
788 // |
|
789 #define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001 |
|
790 #define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002 |
|
791 #define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004 |
|
792 #define NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008 |
|
793 #define NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010 |
|
794 #define NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020 |
|
795 #define NDIS_MAC_OPTION_RESERVED 0x80000000 |
|
796 // |
|
797 // NDIS MAC option bits for OID_GEN_CO_MAC_OPTIONS. |
|
798 // |
|
799 #define NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED 0x00000001 |
|
800 #ifdef IRDA |
|
801 // |
|
802 // The following is set on a per-packet basis as OOB data with NdisClassIrdaPacketInfo |
|
803 // This is the per-packet info specified on a per-packet basis |
|
804 // |
|
805 typedef struct _NDIS_IRDA_PACKET_INFO { |
|
806 UINT ExtraBOFs; |
|
807 UINT MinTurnAroundTime; |
|
808 } NDIS_IRDA_PACKET_INFO, *PNDIS_IRDA_PACKET_INFO; |
|
809 |
|
810 #endif |
|
811 #ifdef WIRELESS_WAN |
|
812 // |
|
813 // Wireless WAN structure definitions |
|
814 // |
|
815 // |
|
816 // currently defined Wireless network subtypes |
|
817 // |
|
818 typedef enum _NDIS_WW_NETWORK_TYPE { |
|
819 NdisWWGeneric, |
|
820 NdisWWMobitex, |
|
821 NdisWWPinpoint, |
|
822 NdisWWCDPD, |
|
823 NdisWWArdis, |
|
824 NdisWWDataTAC, |
|
825 NdisWWMetricom, |
|
826 NdisWWGSM, |
|
827 NdisWWCDMA, |
|
828 NdisWWTDMA, |
|
829 NdisWWAMPS, |
|
830 NdisWWInmarsat, |
|
831 NdisWWpACT |
|
832 } NDIS_WW_NETWORK_TYPE; |
|
833 |
|
834 // |
|
835 // currently defined header formats |
|
836 // |
|
837 typedef enum _NDIS_WW_HEADER_FORMAT { |
|
838 NdisWWDIXEthernetFrames, |
|
839 NdisWWMPAKFrames, |
|
840 NdisWWRDLAPFrames, |
|
841 NdisWWMDC4800Frames |
|
842 } NDIS_WW_HEADER_FORMAT; |
|
843 |
|
844 // |
|
845 // currently defined encryption types |
|
846 // |
|
847 typedef enum _NDIS_WW_ENCRYPTION_TYPE { |
|
848 NdisWWUnknownEncryption = -1, |
|
849 NdisWWNoEncryption, |
|
850 NdisWWDefaultEncryption |
|
851 } NDIS_WW_ENCRYPTION_TYPE, *PNDIS_WW_ENCRYPTION_TYPE; |
|
852 |
|
853 // |
|
854 // OID_WW_GEN_INDICATION_REQUEST |
|
855 // |
|
856 typedef struct _NDIS_WW_INDICATION_REQUEST { |
|
857 NDIS_OID Oid; // IN |
|
858 |
|
859 UINT uIndicationFlag; // IN |
|
860 |
|
861 UINT uApplicationToken; // IN OUT |
|
862 |
|
863 HANDLE hIndicationHandle; // IN OUT |
|
864 |
|
865 INT iPollingInterval; // IN OUT |
|
866 |
|
867 NDIS_VAR_DATA_DESC InitialValue; // IN OUT |
|
868 |
|
869 NDIS_VAR_DATA_DESC OIDIndicationValue; // OUT - only valid after indication |
|
870 |
|
871 NDIS_VAR_DATA_DESC TriggerValue; // IN |
|
872 |
|
873 } NDIS_WW_INDICATION_REQUEST, *PNDIS_WW_INDICATION_REQUEST; |
|
874 |
|
875 #define OID_INDICATION_REQUEST_ENABLE 0x0000 |
|
876 #define OID_INDICATION_REQUEST_CANCEL 0x0001 |
|
877 // |
|
878 // OID_WW_GEN_DEVICE_INFO |
|
879 // |
|
880 typedef struct _WW_DEVICE_INFO { |
|
881 NDIS_VAR_DATA_DESC Manufacturer; |
|
882 NDIS_VAR_DATA_DESC ModelNum; |
|
883 NDIS_VAR_DATA_DESC SWVersionNum; |
|
884 NDIS_VAR_DATA_DESC SerialNum; |
|
885 } WW_DEVICE_INFO, *PWW_DEVICE_INFO; |
|
886 |
|
887 // |
|
888 // OID_WW_GEN_OPERATION_MODE |
|
889 // |
|
890 typedef INT WW_OPERATION_MODE; // 0 = Normal mode |
|
891 // 1 = Power saving mode |
|
892 // -1 = mode unknown |
|
893 // |
|
894 // OID_WW_GEN_LOCK_STATUS |
|
895 // |
|
896 |
|
897 typedef INT WW_LOCK_STATUS; // 0 = unlocked |
|
898 // 1 = locked |
|
899 // -1 = unknown lock status |
|
900 // |
|
901 // OID_WW_GEN_DISABLE_TRANSMITTER |
|
902 // |
|
903 |
|
904 typedef INT WW_DISABLE_TRANSMITTER; // 0 = transmitter enabled |
|
905 // 1 = transmitter disabled |
|
906 // -1 = unknown value |
|
907 // |
|
908 // OID_WW_GEN_NETWORK_ID |
|
909 // |
|
910 |
|
911 typedef NDIS_VAR_DATA_DESC WW_NETWORK_ID; |
|
912 // |
|
913 // OID_WW_GEN_PERMANENT_ADDRESS |
|
914 // |
|
915 typedef NDIS_VAR_DATA_DESC WW_PERMANENT_ADDRESS; |
|
916 // |
|
917 // OID_WW_GEN_CURRENT_ADDRESS |
|
918 // |
|
919 typedef struct _WW_CURRENT_ADDRESS { |
|
920 NDIS_WW_HEADER_FORMAT Format; |
|
921 NDIS_VAR_DATA_DESC Address; |
|
922 } WW_CURRENT_ADDRESS, *PWW_CURRENT_ADDRESS; |
|
923 |
|
924 // |
|
925 // OID_WW_GEN_SUSPEND_DRIVER |
|
926 // |
|
927 typedef BOOLEAN WW_SUSPEND_DRIVER; // 0 = driver operational |
|
928 // 1 = driver suspended |
|
929 // |
|
930 // OID_WW_GEN_BASESTATION_ID |
|
931 // |
|
932 |
|
933 typedef NDIS_VAR_DATA_DESC WW_BASESTATION_ID; |
|
934 // |
|
935 // OID_WW_GEN_CHANNEL_ID |
|
936 // |
|
937 typedef NDIS_VAR_DATA_DESC WW_CHANNEL_ID; |
|
938 // |
|
939 // OID_WW_GEN_ENCRYPTION_STATE |
|
940 // |
|
941 typedef BOOLEAN WW_ENCRYPTION_STATE; // 0 = if encryption is disabled |
|
942 // 1 = if encryption is enabled |
|
943 // |
|
944 // OID_WW_GEN_CHANNEL_QUALITY |
|
945 // |
|
946 |
|
947 typedef INT WW_CHANNEL_QUALITY; // 0 = Not in network contact, |
|
948 // 1-100 = Quality of Channel (100 is highest quality). |
|
949 // -1 = channel quality is unknown |
|
950 // |
|
951 // OID_WW_GEN_REGISTRATION_STATUS |
|
952 // |
|
953 |
|
954 typedef INT WW_REGISTRATION_STATUS; // 0 = Registration denied |
|
955 // 1 = Registration pending |
|
956 // 2 = Registered |
|
957 // -1 = unknown registration status |
|
958 // |
|
959 // OID_WW_GEN_RADIO_LINK_SPEED |
|
960 // |
|
961 |
|
962 typedef UINT WW_RADIO_LINK_SPEED; // Bits per second. |
|
963 // |
|
964 // OID_WW_GEN_LATENCY |
|
965 // |
|
966 |
|
967 typedef UINT WW_LATENCY; // milliseconds |
|
968 // |
|
969 // OID_WW_GEN_BATTERY_LEVEL |
|
970 // |
|
971 |
|
972 typedef INT WW_BATTERY_LEVEL; // 0-100 = battery level in percentage |
|
973 // (100=fully charged) |
|
974 // -1 = unknown battery level. |
|
975 // |
|
976 // OID_WW_GEN_EXTERNAL_POWER |
|
977 // |
|
978 |
|
979 typedef INT WW_EXTERNAL_POWER; // 0 = no external power connected |
|
980 // 1 = external power connected |
|
981 // -1 = unknown |
|
982 // |
|
983 // OID_WW_MET_FUNCTION |
|
984 // |
|
985 |
|
986 typedef NDIS_VAR_DATA_DESC WW_MET_FUNCTION; |
|
987 // |
|
988 // OID_WW_TAC_COMPRESSION |
|
989 // |
|
990 typedef BOOLEAN WW_TAC_COMPRESSION; // Determines whether or not network level compression |
|
991 // is being used. |
|
992 // |
|
993 // OID_WW_TAC_SET_CONFIG |
|
994 // |
|
995 |
|
996 typedef struct _WW_TAC_SETCONFIG { |
|
997 NDIS_VAR_DATA_DESC RCV_MODE; |
|
998 NDIS_VAR_DATA_DESC TX_CONTROL; |
|
999 NDIS_VAR_DATA_DESC RX_CONTROL; |
|
1000 NDIS_VAR_DATA_DESC FLOW_CONTROL; |
|
1001 NDIS_VAR_DATA_DESC RESET_CNF; |
|
1002 NDIS_VAR_DATA_DESC READ_CNF; |
|
1003 } WW_TAC_SETCONFIG, *PWW_TAC_SETCONFIG; |
|
1004 |
|
1005 // |
|
1006 // OID_WW_TAC_GET_STATUS |
|
1007 // |
|
1008 typedef struct _WW_TAC_GETSTATUS { |
|
1009 BOOLEAN Action; // Set = Execute command. |
|
1010 |
|
1011 NDIS_VAR_DATA_DESC Command; |
|
1012 NDIS_VAR_DATA_DESC Option; |
|
1013 NDIS_VAR_DATA_DESC Response; // The response to the requested command |
|
1014 // - max. length of string is 256 octets. |
|
1015 |
|
1016 } WW_TAC_GETSTATUS, *PWW_TAC_GETSTATUS; |
|
1017 |
|
1018 // |
|
1019 // OID_WW_TAC_USER_HEADER |
|
1020 // |
|
1021 typedef NDIS_VAR_DATA_DESC WW_TAC_USERHEADER; // This will hold the user header - Max. 64 octets. |
|
1022 // |
|
1023 // OID_WW_ARD_SNDCP |
|
1024 // |
|
1025 |
|
1026 typedef struct _WW_ARD_SNDCP { |
|
1027 NDIS_VAR_DATA_DESC Version; // The version of SNDCP protocol supported. |
|
1028 |
|
1029 INT BlockSize; // The block size used for SNDCP |
|
1030 |
|
1031 INT Window; // The window size used in SNDCP |
|
1032 |
|
1033 } WW_ARD_SNDCP, *PWW_ARD_SNDCP; |
|
1034 |
|
1035 // |
|
1036 // OID_WW_ARD_TMLY_MSG |
|
1037 // |
|
1038 typedef BOOLEAN WW_ARD_CHANNEL_STATUS; // The current status of the inbound RF Channel. |
|
1039 // |
|
1040 // OID_WW_ARD_DATAGRAM |
|
1041 // |
|
1042 |
|
1043 typedef struct _WW_ARD_DATAGRAM { |
|
1044 BOOLEAN LoadLevel; // Byte that contains the load level info. |
|
1045 |
|
1046 INT SessionTime; // Datagram session time remaining. |
|
1047 |
|
1048 NDIS_VAR_DATA_DESC HostAddr; // Host address. |
|
1049 |
|
1050 NDIS_VAR_DATA_DESC THostAddr; // Test host address. |
|
1051 |
|
1052 } WW_ARD_DATAGRAM, *PWW_ARD_DATAGRAM; |
|
1053 |
|
1054 // |
|
1055 // OID_WW_CDPD_SPNI |
|
1056 // |
|
1057 typedef struct _WW_CDPD_SPNI { |
|
1058 UINT SPNI[10]; //10 16-bit service provider network IDs |
|
1059 |
|
1060 INT OperatingMode; // 0 = ignore SPNI, |
|
1061 // 1 = require SPNI from list, |
|
1062 // 2 = prefer SPNI from list. |
|
1063 // 3 = exclude SPNI from list. |
|
1064 |
|
1065 } WW_CDPD_SPNI, *PWW_CDPD_SPNI; |
|
1066 |
|
1067 // |
|
1068 // OID_WW_CDPD_WASI |
|
1069 // |
|
1070 typedef struct _WW_CDPD_WIDE_AREA_SERVICE_ID { |
|
1071 UINT WASI[10]; //10 16-bit wide area service IDs |
|
1072 |
|
1073 INT OperatingMode; // 0 = ignore WASI, |
|
1074 // 1 = Require WASI from list, |
|
1075 // 2 = prefer WASI from list |
|
1076 // 3 = exclude WASI from list. |
|
1077 |
|
1078 } WW_CDPD_WIDE_AREA_SERVICE_ID, *PWW_CDPD_WIDE_AREA_SERVICE_ID; |
|
1079 |
|
1080 // |
|
1081 // OID_WW_CDPD_AREA_COLOR |
|
1082 // |
|
1083 typedef INT WW_CDPD_AREA_COLOR; |
|
1084 // |
|
1085 // OID_WW_CDPD_TX_POWER_LEVEL |
|
1086 // |
|
1087 typedef UINT WW_CDPD_TX_POWER_LEVEL; |
|
1088 // |
|
1089 // OID_WW_CDPD_EID |
|
1090 // |
|
1091 typedef NDIS_VAR_DATA_DESC WW_CDPD_EID; |
|
1092 // |
|
1093 // OID_WW_CDPD_HEADER_COMPRESSION |
|
1094 // |
|
1095 typedef INT WW_CDPD_HEADER_COMPRESSION; // 0 = no header compression, |
|
1096 // 1 = always compress headers, |
|
1097 // 2 = compress headers if MD-IS does |
|
1098 // -1 = unknown |
|
1099 // |
|
1100 // OID_WW_CDPD_DATA_COMPRESSION |
|
1101 // |
|
1102 |
|
1103 typedef INT WW_CDPD_DATA_COMPRESSION; // 0 = no data compression, |
|
1104 // 1 = data compression enabled |
|
1105 // -1 = unknown |
|
1106 // |
|
1107 // OID_WW_CDPD_CHANNEL_SELECT |
|
1108 // |
|
1109 |
|
1110 typedef struct _WW_CDPD_CHANNEL_SELECT { |
|
1111 UINT ChannelID; // channel number |
|
1112 |
|
1113 UINT fixedDuration; // duration in seconds |
|
1114 |
|
1115 } WW_CDPD_CHANNEL_SELECT, *PWW_CDPD_CHANNEL_SELECT; |
|
1116 |
|
1117 // |
|
1118 // OID_WW_CDPD_CHANNEL_STATE |
|
1119 // |
|
1120 typedef enum _WW_CDPD_CHANNEL_STATE { |
|
1121 CDPDChannelNotAvail, |
|
1122 CDPDChannelScanning, |
|
1123 CDPDChannelInitAcquired, |
|
1124 CDPDChannelAcquired, |
|
1125 CDPDChannelSleeping, |
|
1126 CDPDChannelWaking, |
|
1127 CDPDChannelCSDialing, |
|
1128 CDPDChannelCSRedial, |
|
1129 CDPDChannelCSAnswering, |
|
1130 CDPDChannelCSConnected, |
|
1131 CDPDChannelCSSuspended |
|
1132 } WW_CDPD_CHANNEL_STATE, *PWW_CDPD_CHANNEL_STATE; |
|
1133 |
|
1134 // |
|
1135 // OID_WW_CDPD_NEI |
|
1136 // |
|
1137 typedef enum _WW_CDPD_NEI_FORMAT { |
|
1138 CDPDNeiIPv4, |
|
1139 CDPDNeiCLNP, |
|
1140 CDPDNeiIPv6 |
|
1141 } WW_CDPD_NEI_FORMAT, *PWW_CDPD_NEI_FORMAT; |
|
1142 typedef enum _WW_CDPD_NEI_TYPE { |
|
1143 CDPDNeiIndividual, |
|
1144 CDPDNeiMulticast, |
|
1145 CDPDNeiBroadcast |
|
1146 } WW_CDPD_NEI_TYPE; |
|
1147 typedef struct _WW_CDPD_NEI { |
|
1148 UINT uNeiIndex; |
|
1149 WW_CDPD_NEI_FORMAT NeiFormat; |
|
1150 WW_CDPD_NEI_TYPE NeiType; |
|
1151 WORD NeiGmid; // group member identifier, only |
|
1152 // meaningful if NeiType == |
|
1153 // CDPDNeiMulticast |
|
1154 |
|
1155 NDIS_VAR_DATA_DESC NeiAddress; |
|
1156 } WW_CDPD_NEI; |
|
1157 |
|
1158 // |
|
1159 // OID_WW_CDPD_NEI_STATE |
|
1160 // |
|
1161 typedef enum _WW_CDPD_NEI_STATE { |
|
1162 CDPDUnknown, |
|
1163 CDPDRegistered, |
|
1164 CDPDDeregistered |
|
1165 } WW_CDPD_NEI_STATE, *PWW_CDPD_NEI_STATE; |
|
1166 typedef enum _WW_CDPD_NEI_SUB_STATE { |
|
1167 CDPDPending, // Registration pending |
|
1168 CDPDNoReason, // Registration denied - no reason given |
|
1169 CDPDMDISNotCapable, // Registration denied - MD-IS not capable of |
|
1170 // handling M-ES at this time |
|
1171 CDPDNEINotAuthorized, // Registration denied - NEI is not authorized to |
|
1172 // use this subnetwork |
|
1173 CDPDInsufficientAuth, // Registration denied - M-ES gave insufficient |
|
1174 // authentication credentials |
|
1175 CDPDUnsupportedAuth, // Registration denied - M-ES gave unsupported |
|
1176 // authentication credentials |
|
1177 CDPDUsageExceeded, // Registration denied - NEI has exceeded usage |
|
1178 // limitations |
|
1179 CDPDDeniedThisNetwork // Registration denied on this network, service |
|
1180 // may be obtained on alternate Service Provider |
|
1181 // network |
|
1182 } WW_CDPD_NEI_SUB_STATE; |
|
1183 typedef struct _WW_CDPD_NEI_REG_STATE { |
|
1184 UINT uNeiIndex; |
|
1185 WW_CDPD_NEI_STATE NeiState; |
|
1186 WW_CDPD_NEI_SUB_STATE NeiSubState; |
|
1187 } WW_CDPD_NEI_REG_STATE, *PWW_CDPD_NEI_REG_STATE; |
|
1188 |
|
1189 // |
|
1190 // OID_WW_CDPD_SERVICE_PROVIDER_IDENTIFIER |
|
1191 // |
|
1192 typedef struct _WW_CDPD_SERVICE_PROVIDER_ID { |
|
1193 UINT SPI[10]; //10 16-bit service provider IDs |
|
1194 |
|
1195 INT OperatingMode; // 0 = ignore SPI, |
|
1196 // 1 = require SPI from list, |
|
1197 // 2 = prefer SPI from list. |
|
1198 // 3 = exclude SPI from list. |
|
1199 |
|
1200 } WW_CDPD_SERVICE_PROVIDER_ID, *PWW_CDPD_SERVICE_PROVIDER_ID; |
|
1201 |
|
1202 // |
|
1203 // OID_WW_CDPD_SLEEP_MODE |
|
1204 // |
|
1205 typedef INT WW_CDPD_SLEEP_MODE; |
|
1206 // |
|
1207 // OID_WW_CDPD_TEI |
|
1208 // |
|
1209 typedef ULONG WW_CDPD_TEI; |
|
1210 // |
|
1211 // OID_WW_CDPD_CIRCUIT_SWITCHED |
|
1212 // |
|
1213 typedef struct _WW_CDPD_CIRCUIT_SWITCHED { |
|
1214 INT service_preference; // -1 = unknown, |
|
1215 // 0 = always use packet switched CDPD, |
|
1216 // 1 = always use CS CDPD via AMPS, |
|
1217 // 2 = always use CS CDPD via PSTN, |
|
1218 // 3 = use circuit switched via AMPS only |
|
1219 // when packet switched is not available. |
|
1220 // 4 = use packet switched only when circuit |
|
1221 // switched via AMPS is not available. |
|
1222 // 5 = device manuf. defined service |
|
1223 // preference. |
|
1224 // 6 = device manuf. defined service |
|
1225 // preference. |
|
1226 |
|
1227 INT service_status; // -1 = unknown, |
|
1228 // 0 = packet switched CDPD, |
|
1229 // 1 = circuit switched CDPD via AMPS, |
|
1230 // 2 = circuit switched CDPD via PSTN. |
|
1231 |
|
1232 INT connect_rate; // CS connection bit rate (bits per second). |
|
1233 // 0 = no active connection, |
|
1234 // -1 = unknown |
|
1235 // Dial code last used to dial. |
|
1236 |
|
1237 NDIS_VAR_DATA_DESC dial_code[20]; |
|
1238 |
|
1239 UINT sid; // Current AMPS system ID |
|
1240 |
|
1241 INT a_b_side_selection; // -1 = unknown, |
|
1242 // 0 = no AMPS service |
|
1243 // 1 = AMPS "A" side channels selected |
|
1244 // 2 = AMPS "B" side channels selected |
|
1245 |
|
1246 INT AMPS_channel; // -1= unknown |
|
1247 // 0 = no AMPS service. |
|
1248 // 1-1023 = AMPS channel number in use |
|
1249 |
|
1250 UINT action; // 0 = no action |
|
1251 // 1 = suspend (hangup) |
|
1252 // 2 = dial |
|
1253 |
|
1254 // Default dial code for CS CDPD service |
|
1255 // encoded as specified in the CS CDPD |
|
1256 // implementor guidelines. |
|
1257 NDIS_VAR_DATA_DESC default_dial[20]; |
|
1258 |
|
1259 // Number for the CS CDPD network to call |
|
1260 // back the mobile, encoded as specified in |
|
1261 // the CS CDPD implementor guidelines. |
|
1262 NDIS_VAR_DATA_DESC call_back[20]; |
|
1263 |
|
1264 UINT sid_list[10]; // List of 10 16-bit preferred AMPS |
|
1265 // system IDs for CS CDPD. |
|
1266 |
|
1267 UINT inactivity_timer; // Wait time after last data before dropping |
|
1268 // call. |
|
1269 // 0-65535 = inactivity time limit (seconds). |
|
1270 |
|
1271 UINT receive_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1272 |
|
1273 UINT conn_resp_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1274 |
|
1275 UINT reconn_resp_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1276 |
|
1277 UINT disconn_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1278 |
|
1279 UINT NEI_reg_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1280 |
|
1281 UINT reconn_retry_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1282 |
|
1283 UINT link_reset_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1284 |
|
1285 UINT link_reset_ack_timer; // secs. per CS-CDPD Implementor Guidelines. |
|
1286 |
|
1287 UINT n401_retry_limit; // per CS-CDPD Implementor Guidelines. |
|
1288 |
|
1289 UINT n402_retry_limit; // per CS-CDPD Implementor Guidelines. |
|
1290 |
|
1291 UINT n404_retry_limit; // per CS-CDPD Implementor Guidelines. |
|
1292 |
|
1293 UINT n405_retry_limit; // per CS-CDPD Implementor Guidelines. |
|
1294 |
|
1295 } WW_CDPD_CIRCUIT_SWITCHED, *WW_PCDPD_CIRCUIT_SWITCHED; |
|
1296 typedef UINT WW_CDPD_RSSI; |
|
1297 // |
|
1298 // OID_WW_PIN_LOC_AUTHORIZE |
|
1299 // |
|
1300 typedef INT WW_PIN_AUTHORIZED; // 0 = unauthorized |
|
1301 // 1 = authorized |
|
1302 // -1 = unknown |
|
1303 // |
|
1304 // OID_WW_PIN_LAST_LOCATION |
|
1305 // OID_WW_PIN_LOC_FIX |
|
1306 // |
|
1307 |
|
1308 typedef struct _WW_PIN_LOCATION { |
|
1309 INT Latitude; // Latitude in hundredths of a second |
|
1310 |
|
1311 INT Longitude; // Longitude in hundredths of a second |
|
1312 |
|
1313 INT Altitude; // Altitude in feet |
|
1314 |
|
1315 INT FixTime; // Time of the location fix, since midnight, local time (of the |
|
1316 // current day), in tenths of a second |
|
1317 |
|
1318 INT NetTime; // Current local network time of the current day, since midnight, |
|
1319 // in tenths of a second |
|
1320 |
|
1321 INT LocQuality; // 0-100 = location quality |
|
1322 |
|
1323 INT LatReg; // Latitude registration offset, in hundredths of a second |
|
1324 |
|
1325 INT LongReg; // Longitude registration offset, in hundredths of a second |
|
1326 |
|
1327 INT GMTOffset; // Offset in minutes of the local time zone from GMT |
|
1328 |
|
1329 } WW_PIN_LOCATION, *PWW_PIN_LOCATION; |
|
1330 |
|
1331 // |
|
1332 // The following is set on a per-packet basis as OOB data with NdisClassWirelessWanMbxMailbox |
|
1333 // |
|
1334 typedef ULONG WW_MBX_MAILBOX_FLAG; // 1 = set mailbox flag, 0 = do not set mailbox flag |
|
1335 // |
|
1336 // OID_WW_MBX_SUBADDR |
|
1337 // |
|
1338 |
|
1339 typedef struct _WW_MBX_PMAN { |
|
1340 BOOLEAN ACTION; // 0 = Login PMAN, 1 = Logout PMAN |
|
1341 |
|
1342 UINT MAN; |
|
1343 UCHAR PASSWORD[8]; // Password should be null for Logout and indications. |
|
1344 // Maximum length of password is 8 chars. |
|
1345 |
|
1346 } WW_MBX_PMAN, *PWW_MBX_PMAN; |
|
1347 |
|
1348 // |
|
1349 // OID_WW_MBX_FLEXLIST |
|
1350 // |
|
1351 typedef struct _WW_MBX_FLEXLIST { |
|
1352 INT count; // Number of MAN entries used. |
|
1353 // -1=unknown. |
|
1354 |
|
1355 UINT MAN[7]; // List of MANs. |
|
1356 |
|
1357 } WW_MBX_FLEXLIST; |
|
1358 |
|
1359 // |
|
1360 // OID_WW_MBX_GROUPLIST |
|
1361 // |
|
1362 typedef struct _WW_MBX_GROUPLIST { |
|
1363 INT count; // Number of MAN entries used. |
|
1364 // -1=unknown. |
|
1365 |
|
1366 UINT MAN[15]; // List of MANs. |
|
1367 |
|
1368 } WW_MBX_GROUPLIST; |
|
1369 |
|
1370 // |
|
1371 // OID_WW_MBX_TRAFFIC_AREA |
|
1372 // |
|
1373 typedef enum _WW_MBX_TRAFFIC_AREA { |
|
1374 unknown_traffic_area, // The driver has no information about the current traffic area. |
|
1375 in_traffic_area, // Mobile unit has entered a subscribed traffic area. |
|
1376 in_auth_traffic_area, // Mobile unit is outside traffic area but is authorized. |
|
1377 unauth_traffic_area // Mobile unit is outside traffic area but is un-authorized. |
|
1378 } WW_MBX_TRAFFIC_AREA; |
|
1379 |
|
1380 // |
|
1381 // OID_WW_MBX_LIVE_DIE |
|
1382 // |
|
1383 typedef INT WW_MBX_LIVE_DIE; // 0 = DIE last received |
|
1384 // 1 = LIVE last received |
|
1385 // -1 = unknown |
|
1386 // |
|
1387 // OID_WW_MBX_TEMP_DEFAULTLIST |
|
1388 // |
|
1389 |
|
1390 typedef struct _WW_MBX_CHANNEL_PAIR { |
|
1391 UINT Mobile_Tx; |
|
1392 UINT Mobile_Rx; |
|
1393 } WW_MBX_CHANNEL_PAIR, *PWW_MBX_CHANNEL_PAIR; |
|
1394 typedef struct _WW_MBX_TEMPDEFAULTLIST { |
|
1395 UINT Length; |
|
1396 WW_MBX_CHANNEL_PAIR ChannelPair[1]; |
|
1397 } WW_MBX_TEMPDEFAULTLIST, *WW_PMBX_TEMPDEFAULTLIST; |
|
1398 |
|
1399 #endif // WIRELESS_WAN |
|
1400 #endif // _NTDDNDIS_ |