Deleted Added
full compact
ndis_var.h (186507) ndis_var.h (189488)
1/*-
2 * Copyright (c) 2003
3 * Bill Paul <wpaul@windriver.com>. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 15 unchanged lines hidden (view full) ---

24 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30 * THE POSSIBILITY OF SUCH DAMAGE.
31 *
1/*-
2 * Copyright (c) 2003
3 * Bill Paul <wpaul@windriver.com>. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 15 unchanged lines hidden (view full) ---

24 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30 * THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 * $FreeBSD: head/sys/compat/ndis/ndis_var.h 186507 2008-12-27 08:03:32Z weongyo $
32 * $FreeBSD: head/sys/compat/ndis/ndis_var.h 189488 2009-03-07 07:26:22Z weongyo $
33 */
34
35#ifndef _NDIS_VAR_H_
33 */
34
35#ifndef _NDIS_VAR_H_
36#define _NDIS_VAR_H_
36#define _NDIS_VAR_H_
37
38/* Forward declarations */
39struct ndis_miniport_block;
40struct ndis_mdriver_block;
41typedef struct ndis_miniport_block ndis_miniport_block;
42typedef struct ndis_mdriver_block ndis_mdriver_block;
43
44/* Base types */

--- 5 unchanged lines hidden (view full) ---

50typedef uint8_t ndis_kirql;
51
52/*
53 * NDIS status codes (there are lots of them). The ones that
54 * don't seem to fit the pattern are actually mapped to generic
55 * NT status codes.
56 */
57
37
38/* Forward declarations */
39struct ndis_miniport_block;
40struct ndis_mdriver_block;
41typedef struct ndis_miniport_block ndis_miniport_block;
42typedef struct ndis_mdriver_block ndis_mdriver_block;
43
44/* Base types */

--- 5 unchanged lines hidden (view full) ---

50typedef uint8_t ndis_kirql;
51
52/*
53 * NDIS status codes (there are lots of them). The ones that
54 * don't seem to fit the pattern are actually mapped to generic
55 * NT status codes.
56 */
57
58#define NDIS_STATUS_SUCCESS 0
59#define NDIS_STATUS_PENDING 0x00000103
60#define NDIS_STATUS_NOT_RECOGNIZED 0x00010001
61#define NDIS_STATUS_NOT_COPIED 0x00010002
62#define NDIS_STATUS_NOT_ACCEPTED 0x00010003
63#define NDIS_STATUS_CALL_ACTIVE 0x00010007
64#define NDIS_STATUS_ONLINE 0x40010003
65#define NDIS_STATUS_RESET_START 0x40010004
66#define NDIS_STATUS_RESET_END 0x40010005
67#define NDIS_STATUS_RING_STATUS 0x40010006
68#define NDIS_STATUS_CLOSED 0x40010007
69#define NDIS_STATUS_WAN_LINE_UP 0x40010008
70#define NDIS_STATUS_WAN_LINE_DOWN 0x40010009
71#define NDIS_STATUS_WAN_FRAGMENT 0x4001000A
72#define NDIS_STATUS_MEDIA_CONNECT 0x4001000B
73#define NDIS_STATUS_MEDIA_DISCONNECT 0x4001000C
74#define NDIS_STATUS_HARDWARE_LINE_UP 0x4001000D
75#define NDIS_STATUS_HARDWARE_LINE_DOWN 0x4001000E
76#define NDIS_STATUS_INTERFACE_UP 0x4001000F
77#define NDIS_STATUS_INTERFACE_DOWN 0x40010010
78#define NDIS_STATUS_MEDIA_BUSY 0x40010011
79#define NDIS_STATUS_MEDIA_SPECIFIC_INDICATION 0x40010012
80#define NDIS_STATUS_WW_INDICATION NDIS_STATUS_MEDIA_SPECIFIC_INDICATION
81#define NDIS_STATUS_LINK_SPEED_CHANGE 0x40010013
82#define NDIS_STATUS_WAN_GET_STATS 0x40010014
83#define NDIS_STATUS_WAN_CO_FRAGMENT 0x40010015
84#define NDIS_STATUS_WAN_CO_LINKPARAMS 0x40010016
85#define NDIS_STATUS_NOT_RESETTABLE 0x80010001
86#define NDIS_STATUS_SOFT_ERRORS 0x80010003
87#define NDIS_STATUS_HARD_ERRORS 0x80010004
88#define NDIS_STATUS_BUFFER_OVERFLOW 0x80000005
89#define NDIS_STATUS_FAILURE 0xC0000001
90#define NDIS_STATUS_RESOURCES 0xC000009A
91#define NDIS_STATUS_CLOSING 0xC0010002
92#define NDIS_STATUS_BAD_VERSION 0xC0010004
93#define NDIS_STATUS_BAD_CHARACTERISTICS 0xC0010005
94#define NDIS_STATUS_ADAPTER_NOT_FOUND 0xC0010006
95#define NDIS_STATUS_OPEN_FAILED 0xC0010007
96#define NDIS_STATUS_DEVICE_FAILED 0xC0010008
97#define NDIS_STATUS_MULTICAST_FULL 0xC0010009
98#define NDIS_STATUS_MULTICAST_EXISTS 0xC001000A
99#define NDIS_STATUS_MULTICAST_NOT_FOUND 0xC001000B
100#define NDIS_STATUS_REQUEST_ABORTED 0xC001000C
101#define NDIS_STATUS_RESET_IN_PROGRESS 0xC001000D
102#define NDIS_STATUS_CLOSING_INDICATING 0xC001000E
103#define NDIS_STATUS_NOT_SUPPORTED 0xC00000BB
104#define NDIS_STATUS_INVALID_PACKET 0xC001000F
105#define NDIS_STATUS_OPEN_LIST_FULL 0xC0010010
106#define NDIS_STATUS_ADAPTER_NOT_READY 0xC0010011
107#define NDIS_STATUS_ADAPTER_NOT_OPEN 0xC0010012
108#define NDIS_STATUS_NOT_INDICATING 0xC0010013
109#define NDIS_STATUS_INVALID_LENGTH 0xC0010014
110#define NDIS_STATUS_INVALID_DATA 0xC0010015
111#define NDIS_STATUS_BUFFER_TOO_SHORT 0xC0010016
112#define NDIS_STATUS_INVALID_OID 0xC0010017
113#define NDIS_STATUS_ADAPTER_REMOVED 0xC0010018
114#define NDIS_STATUS_UNSUPPORTED_MEDIA 0xC0010019
115#define NDIS_STATUS_GROUP_ADDRESS_IN_USE 0xC001001A
116#define NDIS_STATUS_FILE_NOT_FOUND 0xC001001B
117#define NDIS_STATUS_ERROR_READING_FILE 0xC001001C
118#define NDIS_STATUS_ALREADY_MAPPED 0xC001001D
119#define NDIS_STATUS_RESOURCE_CONFLICT 0xC001001E
120#define NDIS_STATUS_NO_CABLE 0xC001001F
121#define NDIS_STATUS_INVALID_SAP 0xC0010020
122#define NDIS_STATUS_SAP_IN_USE 0xC0010021
123#define NDIS_STATUS_INVALID_ADDRESS 0xC0010022
124#define NDIS_STATUS_VC_NOT_ACTIVATED 0xC0010023
125#define NDIS_STATUS_DEST_OUT_OF_ORDER 0xC0010024
126#define NDIS_STATUS_VC_NOT_AVAILABLE 0xC0010025
127#define NDIS_STATUS_CELLRATE_NOT_AVAILABLE 0xC0010026
128#define NDIS_STATUS_INCOMPATABLE_QOS 0xC0010027
129#define NDIS_STATUS_AAL_PARAMS_UNSUPPORTED 0xC0010028
130#define NDIS_STATUS_NO_ROUTE_TO_DESTINATION 0xC0010029
131#define NDIS_STATUS_TOKEN_RING_OPEN_ERROR 0xC0011000
132#define NDIS_STATUS_INVALID_DEVICE_REQUEST 0xC0000010
133#define NDIS_STATUS_NETWORK_UNREACHABLE 0xC000023C
58#define NDIS_STATUS_SUCCESS 0
59#define NDIS_STATUS_PENDING 0x00000103
60#define NDIS_STATUS_NOT_RECOGNIZED 0x00010001
61#define NDIS_STATUS_NOT_COPIED 0x00010002
62#define NDIS_STATUS_NOT_ACCEPTED 0x00010003
63#define NDIS_STATUS_CALL_ACTIVE 0x00010007
64#define NDIS_STATUS_ONLINE 0x40010003
65#define NDIS_STATUS_RESET_START 0x40010004
66#define NDIS_STATUS_RESET_END 0x40010005
67#define NDIS_STATUS_RING_STATUS 0x40010006
68#define NDIS_STATUS_CLOSED 0x40010007
69#define NDIS_STATUS_WAN_LINE_UP 0x40010008
70#define NDIS_STATUS_WAN_LINE_DOWN 0x40010009
71#define NDIS_STATUS_WAN_FRAGMENT 0x4001000A
72#define NDIS_STATUS_MEDIA_CONNECT 0x4001000B
73#define NDIS_STATUS_MEDIA_DISCONNECT 0x4001000C
74#define NDIS_STATUS_HARDWARE_LINE_UP 0x4001000D
75#define NDIS_STATUS_HARDWARE_LINE_DOWN 0x4001000E
76#define NDIS_STATUS_INTERFACE_UP 0x4001000F
77#define NDIS_STATUS_INTERFACE_DOWN 0x40010010
78#define NDIS_STATUS_MEDIA_BUSY 0x40010011
79#define NDIS_STATUS_MEDIA_SPECIFIC_INDICATION 0x40010012
80#define NDIS_STATUS_WW_INDICATION NDIS_STATUS_MEDIA_SPECIFIC_INDICATION
81#define NDIS_STATUS_LINK_SPEED_CHANGE 0x40010013
82#define NDIS_STATUS_WAN_GET_STATS 0x40010014
83#define NDIS_STATUS_WAN_CO_FRAGMENT 0x40010015
84#define NDIS_STATUS_WAN_CO_LINKPARAMS 0x40010016
85#define NDIS_STATUS_NOT_RESETTABLE 0x80010001
86#define NDIS_STATUS_SOFT_ERRORS 0x80010003
87#define NDIS_STATUS_HARD_ERRORS 0x80010004
88#define NDIS_STATUS_BUFFER_OVERFLOW 0x80000005
89#define NDIS_STATUS_FAILURE 0xC0000001
90#define NDIS_STATUS_RESOURCES 0xC000009A
91#define NDIS_STATUS_CLOSING 0xC0010002
92#define NDIS_STATUS_BAD_VERSION 0xC0010004
93#define NDIS_STATUS_BAD_CHARACTERISTICS 0xC0010005
94#define NDIS_STATUS_ADAPTER_NOT_FOUND 0xC0010006
95#define NDIS_STATUS_OPEN_FAILED 0xC0010007
96#define NDIS_STATUS_DEVICE_FAILED 0xC0010008
97#define NDIS_STATUS_MULTICAST_FULL 0xC0010009
98#define NDIS_STATUS_MULTICAST_EXISTS 0xC001000A
99#define NDIS_STATUS_MULTICAST_NOT_FOUND 0xC001000B
100#define NDIS_STATUS_REQUEST_ABORTED 0xC001000C
101#define NDIS_STATUS_RESET_IN_PROGRESS 0xC001000D
102#define NDIS_STATUS_CLOSING_INDICATING 0xC001000E
103#define NDIS_STATUS_NOT_SUPPORTED 0xC00000BB
104#define NDIS_STATUS_INVALID_PACKET 0xC001000F
105#define NDIS_STATUS_OPEN_LIST_FULL 0xC0010010
106#define NDIS_STATUS_ADAPTER_NOT_READY 0xC0010011
107#define NDIS_STATUS_ADAPTER_NOT_OPEN 0xC0010012
108#define NDIS_STATUS_NOT_INDICATING 0xC0010013
109#define NDIS_STATUS_INVALID_LENGTH 0xC0010014
110#define NDIS_STATUS_INVALID_DATA 0xC0010015
111#define NDIS_STATUS_BUFFER_TOO_SHORT 0xC0010016
112#define NDIS_STATUS_INVALID_OID 0xC0010017
113#define NDIS_STATUS_ADAPTER_REMOVED 0xC0010018
114#define NDIS_STATUS_UNSUPPORTED_MEDIA 0xC0010019
115#define NDIS_STATUS_GROUP_ADDRESS_IN_USE 0xC001001A
116#define NDIS_STATUS_FILE_NOT_FOUND 0xC001001B
117#define NDIS_STATUS_ERROR_READING_FILE 0xC001001C
118#define NDIS_STATUS_ALREADY_MAPPED 0xC001001D
119#define NDIS_STATUS_RESOURCE_CONFLICT 0xC001001E
120#define NDIS_STATUS_NO_CABLE 0xC001001F
121#define NDIS_STATUS_INVALID_SAP 0xC0010020
122#define NDIS_STATUS_SAP_IN_USE 0xC0010021
123#define NDIS_STATUS_INVALID_ADDRESS 0xC0010022
124#define NDIS_STATUS_VC_NOT_ACTIVATED 0xC0010023
125#define NDIS_STATUS_DEST_OUT_OF_ORDER 0xC0010024
126#define NDIS_STATUS_VC_NOT_AVAILABLE 0xC0010025
127#define NDIS_STATUS_CELLRATE_NOT_AVAILABLE 0xC0010026
128#define NDIS_STATUS_INCOMPATABLE_QOS 0xC0010027
129#define NDIS_STATUS_AAL_PARAMS_UNSUPPORTED 0xC0010028
130#define NDIS_STATUS_NO_ROUTE_TO_DESTINATION 0xC0010029
131#define NDIS_STATUS_TOKEN_RING_OPEN_ERROR 0xC0011000
132#define NDIS_STATUS_INVALID_DEVICE_REQUEST 0xC0000010
133#define NDIS_STATUS_NETWORK_UNREACHABLE 0xC000023C
134
135/*
136 * NDIS event codes. They are usually reported to NdisWriteErrorLogEntry().
137 */
138
134
135/*
136 * NDIS event codes. They are usually reported to NdisWriteErrorLogEntry().
137 */
138
139#define EVENT_NDIS_RESOURCE_CONFLICT 0xC0001388
140#define EVENT_NDIS_OUT_OF_RESOURCE 0xC0001389
141#define EVENT_NDIS_HARDWARE_FAILURE 0xC000138A
142#define EVENT_NDIS_ADAPTER_NOT_FOUND 0xC000138B
143#define EVENT_NDIS_INTERRUPT_CONNECT 0xC000138C
144#define EVENT_NDIS_DRIVER_FAILURE 0xC000138D
145#define EVENT_NDIS_BAD_VERSION 0xC000138E
146#define EVENT_NDIS_TIMEOUT 0x8000138F
147#define EVENT_NDIS_NETWORK_ADDRESS 0xC0001390
148#define EVENT_NDIS_UNSUPPORTED_CONFIGURATION 0xC0001391
149#define EVENT_NDIS_INVALID_VALUE_FROM_ADAPTER 0xC0001392
150#define EVENT_NDIS_MISSING_CONFIGURATION_PARAMETER 0xC0001393
151#define EVENT_NDIS_BAD_IO_BASE_ADDRESS 0xC0001394
152#define EVENT_NDIS_RECEIVE_SPACE_SMALL 0x40001395
153#define EVENT_NDIS_ADAPTER_DISABLED 0x80001396
154#define EVENT_NDIS_IO_PORT_CONFLICT 0x80001397
155#define EVENT_NDIS_PORT_OR_DMA_CONFLICT 0x80001398
156#define EVENT_NDIS_MEMORY_CONFLICT 0x80001399
157#define EVENT_NDIS_INTERRUPT_CONFLICT 0x8000139A
158#define EVENT_NDIS_DMA_CONFLICT 0x8000139B
159#define EVENT_NDIS_INVALID_DOWNLOAD_FILE_ERROR 0xC000139C
160#define EVENT_NDIS_MAXRECEIVES_ERROR 0x8000139D
161#define EVENT_NDIS_MAXTRANSMITS_ERROR 0x8000139E
162#define EVENT_NDIS_MAXFRAMESIZE_ERROR 0x8000139F
163#define EVENT_NDIS_MAXINTERNALBUFS_ERROR 0x800013A0
164#define EVENT_NDIS_MAXMULTICAST_ERROR 0x800013A1
165#define EVENT_NDIS_PRODUCTID_ERROR 0x800013A2
166#define EVENT_NDIS_LOBE_FAILUE_ERROR 0x800013A3
167#define EVENT_NDIS_SIGNAL_LOSS_ERROR 0x800013A4
168#define EVENT_NDIS_REMOVE_RECEIVED_ERROR 0x800013A5
169#define EVENT_NDIS_TOKEN_RING_CORRECTION 0x400013A6
170#define EVENT_NDIS_ADAPTER_CHECK_ERROR 0xC00013A7
171#define EVENT_NDIS_RESET_FAILURE_ERROR 0x800013A8
172#define EVENT_NDIS_CABLE_DISCONNECTED_ERROR 0x800013A9
173#define EVENT_NDIS_RESET_FAILURE_CORRECTION 0x800013AA
139#define EVENT_NDIS_RESOURCE_CONFLICT 0xC0001388
140#define EVENT_NDIS_OUT_OF_RESOURCE 0xC0001389
141#define EVENT_NDIS_HARDWARE_FAILURE 0xC000138A
142#define EVENT_NDIS_ADAPTER_NOT_FOUND 0xC000138B
143#define EVENT_NDIS_INTERRUPT_CONNECT 0xC000138C
144#define EVENT_NDIS_DRIVER_FAILURE 0xC000138D
145#define EVENT_NDIS_BAD_VERSION 0xC000138E
146#define EVENT_NDIS_TIMEOUT 0x8000138F
147#define EVENT_NDIS_NETWORK_ADDRESS 0xC0001390
148#define EVENT_NDIS_UNSUPPORTED_CONFIGURATION 0xC0001391
149#define EVENT_NDIS_INVALID_VALUE_FROM_ADAPTER 0xC0001392
150#define EVENT_NDIS_MISSING_CONFIGURATION_PARAMETER 0xC0001393
151#define EVENT_NDIS_BAD_IO_BASE_ADDRESS 0xC0001394
152#define EVENT_NDIS_RECEIVE_SPACE_SMALL 0x40001395
153#define EVENT_NDIS_ADAPTER_DISABLED 0x80001396
154#define EVENT_NDIS_IO_PORT_CONFLICT 0x80001397
155#define EVENT_NDIS_PORT_OR_DMA_CONFLICT 0x80001398
156#define EVENT_NDIS_MEMORY_CONFLICT 0x80001399
157#define EVENT_NDIS_INTERRUPT_CONFLICT 0x8000139A
158#define EVENT_NDIS_DMA_CONFLICT 0x8000139B
159#define EVENT_NDIS_INVALID_DOWNLOAD_FILE_ERROR 0xC000139C
160#define EVENT_NDIS_MAXRECEIVES_ERROR 0x8000139D
161#define EVENT_NDIS_MAXTRANSMITS_ERROR 0x8000139E
162#define EVENT_NDIS_MAXFRAMESIZE_ERROR 0x8000139F
163#define EVENT_NDIS_MAXINTERNALBUFS_ERROR 0x800013A0
164#define EVENT_NDIS_MAXMULTICAST_ERROR 0x800013A1
165#define EVENT_NDIS_PRODUCTID_ERROR 0x800013A2
166#define EVENT_NDIS_LOBE_FAILUE_ERROR 0x800013A3
167#define EVENT_NDIS_SIGNAL_LOSS_ERROR 0x800013A4
168#define EVENT_NDIS_REMOVE_RECEIVED_ERROR 0x800013A5
169#define EVENT_NDIS_TOKEN_RING_CORRECTION 0x400013A6
170#define EVENT_NDIS_ADAPTER_CHECK_ERROR 0xC00013A7
171#define EVENT_NDIS_RESET_FAILURE_ERROR 0x800013A8
172#define EVENT_NDIS_CABLE_DISCONNECTED_ERROR 0x800013A9
173#define EVENT_NDIS_RESET_FAILURE_CORRECTION 0x800013AA
174
175/*
176 * NDIS OIDs used by the queryinfo/setinfo routines.
177 * Some are required by all NDIS drivers, some are specific to
178 * a particular type of device, and some are purely optional.
179 * Unfortunately, one of the purely optional OIDs is the one
180 * that lets us set the MAC address of the device.
181 */
182
183/* Required OIDs */
174
175/*
176 * NDIS OIDs used by the queryinfo/setinfo routines.
177 * Some are required by all NDIS drivers, some are specific to
178 * a particular type of device, and some are purely optional.
179 * Unfortunately, one of the purely optional OIDs is the one
180 * that lets us set the MAC address of the device.
181 */
182
183/* Required OIDs */
184#define OID_GEN_SUPPORTED_LIST 0x00010101
185#define OID_GEN_HARDWARE_STATUS 0x00010102
186#define OID_GEN_MEDIA_SUPPORTED 0x00010103
187#define OID_GEN_MEDIA_IN_USE 0x00010104
188#define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105
189#define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106
190#define OID_GEN_LINK_SPEED 0x00010107
191#define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108
192#define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109
193#define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A
194#define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B
195#define OID_GEN_VENDOR_ID 0x0001010C
196#define OID_GEN_VENDOR_DESCRIPTION 0x0001010D
197#define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E
198#define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F
199#define OID_GEN_DRIVER_VERSION 0x00010110
200#define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111
201#define OID_GEN_PROTOCOL_OPTIONS 0x00010112
202#define OID_GEN_MAC_OPTIONS 0x00010113
203#define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114
204#define OID_GEN_MAXIMUM_SEND_PACKETS 0x00010115
205#define OID_GEN_VENDOR_DRIVER_VERSION 0x00010116
206#define OID_GEN_SUPPORTED_GUIDS 0x00010117
207#define OID_GEN_NETWORK_LAYER_ADDRESSES 0x00010118 /* Set only */
208#define OID_GEN_TRANSPORT_HEADER_OFFSET 0x00010119 /* Set only */
209#define OID_GEN_MACHINE_NAME 0x0001021A
210#define OID_GEN_RNDIS_CONFIG_PARAMETER 0x0001021B /* Set only */
211#define OID_GEN_VLAN_ID 0x0001021C
184#define OID_GEN_SUPPORTED_LIST 0x00010101
185#define OID_GEN_HARDWARE_STATUS 0x00010102
186#define OID_GEN_MEDIA_SUPPORTED 0x00010103
187#define OID_GEN_MEDIA_IN_USE 0x00010104
188#define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105
189#define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106
190#define OID_GEN_LINK_SPEED 0x00010107
191#define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108
192#define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109
193#define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A
194#define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B
195#define OID_GEN_VENDOR_ID 0x0001010C
196#define OID_GEN_VENDOR_DESCRIPTION 0x0001010D
197#define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E
198#define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F
199#define OID_GEN_DRIVER_VERSION 0x00010110
200#define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111
201#define OID_GEN_PROTOCOL_OPTIONS 0x00010112
202#define OID_GEN_MAC_OPTIONS 0x00010113
203#define OID_GEN_MEDIA_CONNECT_STATUS 0x00010114
204#define OID_GEN_MAXIMUM_SEND_PACKETS 0x00010115
205#define OID_GEN_VENDOR_DRIVER_VERSION 0x00010116
206#define OID_GEN_SUPPORTED_GUIDS 0x00010117
207#define OID_GEN_NETWORK_LAYER_ADDRESSES 0x00010118 /* Set only */
208#define OID_GEN_TRANSPORT_HEADER_OFFSET 0x00010119 /* Set only */
209#define OID_GEN_MACHINE_NAME 0x0001021A
210#define OID_GEN_RNDIS_CONFIG_PARAMETER 0x0001021B /* Set only */
211#define OID_GEN_VLAN_ID 0x0001021C
212
213/* Optional OIDs. */
212
213/* Optional OIDs. */
214#define OID_GEN_MEDIA_CAPABILITIES 0x00010201
215#define OID_GEN_PHYSICAL_MEDIUM 0x00010202
214#define OID_GEN_MEDIA_CAPABILITIES 0x00010201
215#define OID_GEN_PHYSICAL_MEDIUM 0x00010202
216
217/* Required statistics OIDs. */
216
217/* Required statistics OIDs. */
218#define OID_GEN_XMIT_OK 0x00020101
219#define OID_GEN_RCV_OK 0x00020102
220#define OID_GEN_XMIT_ERROR 0x00020103
221#define OID_GEN_RCV_ERROR 0x00020104
222#define OID_GEN_RCV_NO_BUFFER 0x00020105
218#define OID_GEN_XMIT_OK 0x00020101
219#define OID_GEN_RCV_OK 0x00020102
220#define OID_GEN_XMIT_ERROR 0x00020103
221#define OID_GEN_RCV_ERROR 0x00020104
222#define OID_GEN_RCV_NO_BUFFER 0x00020105
223
224/* Optional OID statistics */
223
224/* Optional OID statistics */
225#define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201
226#define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202
227#define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203
228#define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204
229#define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205
230#define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206
231#define OID_GEN_DIRECTED_BYTES_RCV 0x00020207
232#define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208
233#define OID_GEN_MULTICAST_BYTES_RCV 0x00020209
234#define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A
235#define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B
236#define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C
237#define OID_GEN_RCV_CRC_ERROR 0x0002020D
238#define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E
239#define OID_GEN_GET_TIME_CAPS 0x0002020F
240#define OID_GEN_GET_NETCARD_TIME 0x00020210
241#define OID_GEN_NETCARD_LOAD 0x00020211
242#define OID_GEN_DEVICE_PROFILE 0x00020212
225#define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201
226#define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202
227#define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203
228#define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204
229#define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205
230#define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206
231#define OID_GEN_DIRECTED_BYTES_RCV 0x00020207
232#define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208
233#define OID_GEN_MULTICAST_BYTES_RCV 0x00020209
234#define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A
235#define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B
236#define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C
237#define OID_GEN_RCV_CRC_ERROR 0x0002020D
238#define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E
239#define OID_GEN_GET_TIME_CAPS 0x0002020F
240#define OID_GEN_GET_NETCARD_TIME 0x00020210
241#define OID_GEN_NETCARD_LOAD 0x00020211
242#define OID_GEN_DEVICE_PROFILE 0x00020212
243
244/* 802.3 (ethernet) OIDs */
243
244/* 802.3 (ethernet) OIDs */
245#define OID_802_3_PERMANENT_ADDRESS 0x01010101
246#define OID_802_3_CURRENT_ADDRESS 0x01010102
247#define OID_802_3_MULTICAST_LIST 0x01010103
248#define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104
249#define OID_802_3_MAC_OPTIONS 0x01010105
250#define NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001
251#define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101
252#define OID_802_3_XMIT_ONE_COLLISION 0x01020102
253#define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103
254#define OID_802_3_XMIT_DEFERRED 0x01020201
255#define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202
256#define OID_802_3_RCV_OVERRUN 0x01020203
257#define OID_802_3_XMIT_UNDERRUN 0x01020204
258#define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205
259#define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206
260#define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207
245#define OID_802_3_PERMANENT_ADDRESS 0x01010101
246#define OID_802_3_CURRENT_ADDRESS 0x01010102
247#define OID_802_3_MULTICAST_LIST 0x01010103
248#define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104
249#define OID_802_3_MAC_OPTIONS 0x01010105
250#define NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001
251#define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101
252#define OID_802_3_XMIT_ONE_COLLISION 0x01020102
253#define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103
254#define OID_802_3_XMIT_DEFERRED 0x01020201
255#define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202
256#define OID_802_3_RCV_OVERRUN 0x01020203
257#define OID_802_3_XMIT_UNDERRUN 0x01020204
258#define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205
259#define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206
260#define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207
261
262/* PnP and power management OIDs */
261
262/* PnP and power management OIDs */
263#define OID_PNP_CAPABILITIES 0xFD010100
264#define OID_PNP_SET_POWER 0xFD010101
265#define OID_PNP_QUERY_POWER 0xFD010102
266#define OID_PNP_ADD_WAKE_UP_PATTERN 0xFD010103
267#define OID_PNP_REMOVE_WAKE_UP_PATTERN 0xFD010104
268#define OID_PNP_WAKE_UP_PATTERN_LIST 0xFD010105
269#define OID_PNP_ENABLE_WAKE_UP 0xFD010106
263#define OID_PNP_CAPABILITIES 0xFD010100
264#define OID_PNP_SET_POWER 0xFD010101
265#define OID_PNP_QUERY_POWER 0xFD010102
266#define OID_PNP_ADD_WAKE_UP_PATTERN 0xFD010103
267#define OID_PNP_REMOVE_WAKE_UP_PATTERN 0xFD010104
268#define OID_PNP_WAKE_UP_PATTERN_LIST 0xFD010105
269#define OID_PNP_ENABLE_WAKE_UP 0xFD010106
270
271/*
272 * These are the possible power states for
273 * OID_PNP_SET_POWER and OID_PNP_QUERY_POWER.
274 */
270
271/*
272 * These are the possible power states for
273 * OID_PNP_SET_POWER and OID_PNP_QUERY_POWER.
274 */
275#define NDIS_POWERSTATE_UNSPEC 0
276#define NDIS_POWERSTATE_D0 1
277#define NDIS_POWERSTATE_D1 2
278#define NDIS_POWERSTATE_D2 3
279#define NDIS_POWERSTATE_D3 4
275#define NDIS_POWERSTATE_UNSPEC 0
276#define NDIS_POWERSTATE_D0 1
277#define NDIS_POWERSTATE_D1 2
278#define NDIS_POWERSTATE_D2 3
279#define NDIS_POWERSTATE_D3 4
280
281/*
282 * These are used with the MiniportPnpEventNotify() method.
283 */
284
280
281/*
282 * These are used with the MiniportPnpEventNotify() method.
283 */
284
285#define NDIS_POWERPROFILE_BATTERY 0
286#define NDIS_POWERPROFILE_ACONLINE 1
285#define NDIS_POWERPROFILE_BATTERY 0
286#define NDIS_POWERPROFILE_ACONLINE 1
287
287
288#define NDIS_PNP_EVENT_QUERY_REMOVED 0
289#define NDIS_PNP_EVENT_REMOVED 1
290#define NDIS_PNP_EVENT_SURPRISE_REMOVED 2
291#define NDIS_PNP_EVENT_QUERY_STOPPED 3
292#define NDIS_PNP_EVENT_STOPPED 4
293#define NDIS_PNP_EVENT_PROFILECHANGED 5
288#define NDIS_PNP_EVENT_QUERY_REMOVED 0
289#define NDIS_PNP_EVENT_REMOVED 1
290#define NDIS_PNP_EVENT_SURPRISE_REMOVED 2
291#define NDIS_PNP_EVENT_QUERY_STOPPED 3
292#define NDIS_PNP_EVENT_STOPPED 4
293#define NDIS_PNP_EVENT_PROFILECHANGED 5
294
295
296/* PnP/PM Statistics (Optional). */
294
295
296/* PnP/PM Statistics (Optional). */
297#define OID_PNP_WAKE_UP_OK 0xFD020200
298#define OID_PNP_WAKE_UP_ERROR 0xFD020201
297#define OID_PNP_WAKE_UP_OK 0xFD020200
298#define OID_PNP_WAKE_UP_ERROR 0xFD020201
299
300/* The following bits are defined for OID_PNP_ENABLE_WAKE_UP */
299
300/* The following bits are defined for OID_PNP_ENABLE_WAKE_UP */
301#define NDIS_PNP_WAKE_UP_MAGIC_PACKET 0x00000001
302#define NDIS_PNP_WAKE_UP_PATTERN_MATCH 0x00000002
303#define NDIS_PNP_WAKE_UP_LINK_CHANGE 0x00000004
301#define NDIS_PNP_WAKE_UP_MAGIC_PACKET 0x00000001
302#define NDIS_PNP_WAKE_UP_PATTERN_MATCH 0x00000002
303#define NDIS_PNP_WAKE_UP_LINK_CHANGE 0x00000004
304
305/* 802.11 OIDs */
304
305/* 802.11 OIDs */
306#define OID_802_11_BSSID 0x0D010101
307#define OID_802_11_SSID 0x0D010102
308#define OID_802_11_NETWORK_TYPES_SUPPORTED 0x0D010203
309#define OID_802_11_NETWORK_TYPE_IN_USE 0x0D010204
310#define OID_802_11_TX_POWER_LEVEL 0x0D010205
311#define OID_802_11_RSSI 0x0D010206
312#define OID_802_11_RSSI_TRIGGER 0x0D010207
313#define OID_802_11_INFRASTRUCTURE_MODE 0x0D010108
314#define OID_802_11_FRAGMENTATION_THRESHOLD 0x0D010209
315#define OID_802_11_RTS_THRESHOLD 0x0D01020A
316#define OID_802_11_NUMBER_OF_ANTENNAS 0x0D01020B
317#define OID_802_11_RX_ANTENNA_SELECTED 0x0D01020C
318#define OID_802_11_TX_ANTENNA_SELECTED 0x0D01020D
319#define OID_802_11_SUPPORTED_RATES 0x0D01020E
320#define OID_802_11_DESIRED_RATES 0x0D010210
321#define OID_802_11_CONFIGURATION 0x0D010211
322#define OID_802_11_STATISTICS 0x0D020212
323#define OID_802_11_ADD_WEP 0x0D010113
324#define OID_802_11_REMOVE_WEP 0x0D010114
325#define OID_802_11_DISASSOCIATE 0x0D010115
326#define OID_802_11_POWER_MODE 0x0D010216
327#define OID_802_11_BSSID_LIST 0x0D010217
328#define OID_802_11_AUTHENTICATION_MODE 0x0D010118
329#define OID_802_11_PRIVACY_FILTER 0x0D010119
330#define OID_802_11_BSSID_LIST_SCAN 0x0D01011A
331#define OID_802_11_WEP_STATUS 0x0D01011B
332#define OID_802_11_ENCRYPTION_STATUS OID_802_11_WEP_STATUS
333#define OID_802_11_RELOAD_DEFAULTS 0x0D01011C
334#define OID_802_11_ADD_KEY 0x0D01011D
335#define OID_802_11_REMOVE_KEY 0x0D01011E
336#define OID_802_11_ASSOCIATION_INFORMATION 0x0D01011F
337#define OID_802_11_TEST 0x0D010120
338#define OID_802_11_CAPABILITY 0x0D010122
339#define OID_802_11_PMKID 0x0D010123
306#define OID_802_11_BSSID 0x0D010101
307#define OID_802_11_SSID 0x0D010102
308#define OID_802_11_NETWORK_TYPES_SUPPORTED 0x0D010203
309#define OID_802_11_NETWORK_TYPE_IN_USE 0x0D010204
310#define OID_802_11_TX_POWER_LEVEL 0x0D010205
311#define OID_802_11_RSSI 0x0D010206
312#define OID_802_11_RSSI_TRIGGER 0x0D010207
313#define OID_802_11_INFRASTRUCTURE_MODE 0x0D010108
314#define OID_802_11_FRAGMENTATION_THRESHOLD 0x0D010209
315#define OID_802_11_RTS_THRESHOLD 0x0D01020A
316#define OID_802_11_NUMBER_OF_ANTENNAS 0x0D01020B
317#define OID_802_11_RX_ANTENNA_SELECTED 0x0D01020C
318#define OID_802_11_TX_ANTENNA_SELECTED 0x0D01020D
319#define OID_802_11_SUPPORTED_RATES 0x0D01020E
320#define OID_802_11_DESIRED_RATES 0x0D010210
321#define OID_802_11_CONFIGURATION 0x0D010211
322#define OID_802_11_STATISTICS 0x0D020212
323#define OID_802_11_ADD_WEP 0x0D010113
324#define OID_802_11_REMOVE_WEP 0x0D010114
325#define OID_802_11_DISASSOCIATE 0x0D010115
326#define OID_802_11_POWER_MODE 0x0D010216
327#define OID_802_11_BSSID_LIST 0x0D010217
328#define OID_802_11_AUTHENTICATION_MODE 0x0D010118
329#define OID_802_11_PRIVACY_FILTER 0x0D010119
330#define OID_802_11_BSSID_LIST_SCAN 0x0D01011A
331#define OID_802_11_WEP_STATUS 0x0D01011B
332#define OID_802_11_ENCRYPTION_STATUS OID_802_11_WEP_STATUS
333#define OID_802_11_RELOAD_DEFAULTS 0x0D01011C
334#define OID_802_11_ADD_KEY 0x0D01011D
335#define OID_802_11_REMOVE_KEY 0x0D01011E
336#define OID_802_11_ASSOCIATION_INFORMATION 0x0D01011F
337#define OID_802_11_TEST 0x0D010120
338#define OID_802_11_CAPABILITY 0x0D010122
339#define OID_802_11_PMKID 0x0D010123
340
341/* structures/definitions for 802.11 */
340
341/* structures/definitions for 802.11 */
342#define NDIS_80211_NETTYPE_11FH 0x00000000
343#define NDIS_80211_NETTYPE_11DS 0x00000001
344#define NDIS_80211_NETTYPE_11OFDM5 0x00000002
345#define NDIS_80211_NETTYPE_11OFDM24 0x00000003
346#define NDIS_80211_NETTYPE_AUTO 0x00000004
342#define NDIS_80211_NETTYPE_11FH 0x00000000
343#define NDIS_80211_NETTYPE_11DS 0x00000001
344#define NDIS_80211_NETTYPE_11OFDM5 0x00000002
345#define NDIS_80211_NETTYPE_11OFDM24 0x00000003
346#define NDIS_80211_NETTYPE_AUTO 0x00000004
347
348struct ndis_80211_nettype_list {
349 uint32_t ntl_items;
350 uint32_t ntl_type[1];
351};
352
347
348struct ndis_80211_nettype_list {
349 uint32_t ntl_items;
350 uint32_t ntl_type[1];
351};
352
353#define NDIS_80211_POWERMODE_CAM 0x00000000
354#define NDIS_80211_POWERMODE_MAX_PSP 0x00000001
355#define NDIS_80211_POWERMODE_FAST_PSP 0x00000002
353#define NDIS_80211_POWERMODE_CAM 0x00000000
354#define NDIS_80211_POWERMODE_MAX_PSP 0x00000001
355#define NDIS_80211_POWERMODE_FAST_PSP 0x00000002
356
357typedef uint32_t ndis_80211_power; /* Power in milliwatts */
358typedef uint32_t ndis_80211_rssi; /* Signal strength in dBm */
359
360struct ndis_80211_config_fh {
361 uint32_t ncf_length;
362 uint32_t ncf_hoppatterh;
363 uint32_t ncf_hopset;

--- 36 unchanged lines hidden (view full) ---

400 uint32_t nw_length;
401 uint32_t nw_keyidx;
402 uint32_t nw_keylen;
403 uint8_t nw_keydata[256];
404};
405
406typedef struct ndis_80211_wep ndis_80211_wep;
407
356
357typedef uint32_t ndis_80211_power; /* Power in milliwatts */
358typedef uint32_t ndis_80211_rssi; /* Signal strength in dBm */
359
360struct ndis_80211_config_fh {
361 uint32_t ncf_length;
362 uint32_t ncf_hoppatterh;
363 uint32_t ncf_hopset;

--- 36 unchanged lines hidden (view full) ---

400 uint32_t nw_length;
401 uint32_t nw_keyidx;
402 uint32_t nw_keylen;
403 uint8_t nw_keydata[256];
404};
405
406typedef struct ndis_80211_wep ndis_80211_wep;
407
408#define NDIS_80211_WEPKEY_TX 0x80000000
409#define NDIS_80211_WEPKEY_PERCLIENT 0x40000000
408#define NDIS_80211_WEPKEY_TX 0x80000000
409#define NDIS_80211_WEPKEY_PERCLIENT 0x40000000
410
410
411#define NDIS_80211_NET_INFRA_IBSS 0x00000000
412#define NDIS_80211_NET_INFRA_BSS 0x00000001
413#define NDIS_80211_NET_INFRA_AUTO 0x00000002
411#define NDIS_80211_NET_INFRA_IBSS 0x00000000
412#define NDIS_80211_NET_INFRA_BSS 0x00000001
413#define NDIS_80211_NET_INFRA_AUTO 0x00000002
414
414
415#define NDIS_80211_AUTHMODE_OPEN 0x00000000
416#define NDIS_80211_AUTHMODE_SHARED 0x00000001
417#define NDIS_80211_AUTHMODE_AUTO 0x00000002
418#define NDIS_80211_AUTHMODE_WPA 0x00000003
419#define NDIS_80211_AUTHMODE_WPAPSK 0x00000004
420#define NDIS_80211_AUTHMODE_WPANONE 0x00000005
421#define NDIS_80211_AUTHMODE_WPA2 0x00000006
422#define NDIS_80211_AUTHMODE_WPA2PSK 0x00000007
415#define NDIS_80211_AUTHMODE_OPEN 0x00000000
416#define NDIS_80211_AUTHMODE_SHARED 0x00000001
417#define NDIS_80211_AUTHMODE_AUTO 0x00000002
418#define NDIS_80211_AUTHMODE_WPA 0x00000003
419#define NDIS_80211_AUTHMODE_WPAPSK 0x00000004
420#define NDIS_80211_AUTHMODE_WPANONE 0x00000005
421#define NDIS_80211_AUTHMODE_WPA2 0x00000006
422#define NDIS_80211_AUTHMODE_WPA2PSK 0x00000007
423
424typedef uint8_t ndis_80211_rates[8];
425typedef uint8_t ndis_80211_rates_ex[16];
426typedef uint8_t ndis_80211_macaddr[6];
427
428struct ndis_80211_ssid {
429 uint32_t ns_ssidlen;
430 uint8_t ns_ssid[32];

--- 58 unchanged lines hidden (view full) ---

489 uint8_t nvi_len;
490 uint8_t nvi_data[1];
491};
492
493typedef uint32_t ndis_80211_fragthresh;
494typedef uint32_t ndis_80211_rtsthresh;
495typedef uint32_t ndis_80211_antenna;
496
423
424typedef uint8_t ndis_80211_rates[8];
425typedef uint8_t ndis_80211_rates_ex[16];
426typedef uint8_t ndis_80211_macaddr[6];
427
428struct ndis_80211_ssid {
429 uint32_t ns_ssidlen;
430 uint8_t ns_ssid[32];

--- 58 unchanged lines hidden (view full) ---

489 uint8_t nvi_len;
490 uint8_t nvi_data[1];
491};
492
493typedef uint32_t ndis_80211_fragthresh;
494typedef uint32_t ndis_80211_rtsthresh;
495typedef uint32_t ndis_80211_antenna;
496
497#define NDIS_80211_PRIVFILT_ACCEPTALL 0x00000000
498#define NDIS_80211_PRIVFILT_8021XWEP 0x00000001
497#define NDIS_80211_PRIVFILT_ACCEPTALL 0x00000000
498#define NDIS_80211_PRIVFILT_8021XWEP 0x00000001
499
499
500#define NDIS_80211_WEPSTAT_ENABLED 0x00000000
501#define NDIS_80211_WEPSTAT_ENC1ENABLED NDIS_80211_WEPSTAT_ENABLED
502#define NDIS_80211_WEPSTAT_DISABLED 0x00000001
503#define NDIS_80211_WEPSTAT_ENCDISABLED NDIS_80211_WEPSTAT_DISABLED
504#define NDIS_80211_WEPSTAT_KEYABSENT 0x00000002
505#define NDIS_80211_WEPSTAT_ENC1KEYABSENT NDIS_80211_WEPSTAT_KEYABSENT
506#define NDIS_80211_WEPSTAT_NOTSUPPORTED 0x00000003
507#define NDIS_80211_WEPSTAT_ENCNOTSUPPORTED NDIS_80211_WEPSTAT_NOTSUPPORTED
508#define NDIS_80211_WEPSTAT_ENC2ENABLED 0x00000004
509#define NDIS_80211_WEPSTAT_ENC2KEYABSENT 0x00000005
510#define NDIS_80211_WEPSTAT_ENC3ENABLED 0x00000006
511#define NDIS_80211_WEPSTAT_ENC3KEYABSENT 0x00000007
500#define NDIS_80211_WEPSTAT_ENABLED 0x00000000
501#define NDIS_80211_WEPSTAT_ENC1ENABLED NDIS_80211_WEPSTAT_ENABLED
502#define NDIS_80211_WEPSTAT_DISABLED 0x00000001
503#define NDIS_80211_WEPSTAT_ENCDISABLED NDIS_80211_WEPSTAT_DISABLED
504#define NDIS_80211_WEPSTAT_KEYABSENT 0x00000002
505#define NDIS_80211_WEPSTAT_ENC1KEYABSENT NDIS_80211_WEPSTAT_KEYABSENT
506#define NDIS_80211_WEPSTAT_NOTSUPPORTED 0x00000003
507#define NDIS_80211_WEPSTAT_ENCNOTSUPPORTED NDIS_80211_WEPSTAT_NOTSUPPORTED
508#define NDIS_80211_WEPSTAT_ENC2ENABLED 0x00000004
509#define NDIS_80211_WEPSTAT_ENC2KEYABSENT 0x00000005
510#define NDIS_80211_WEPSTAT_ENC3ENABLED 0x00000006
511#define NDIS_80211_WEPSTAT_ENC3KEYABSENT 0x00000007
512
512
513#define NDIS_80211_RELOADDEFAULT_WEP 0x00000000
513#define NDIS_80211_RELOADDEFAULT_WEP 0x00000000
514
514
515#define NDIS_80211_STATUSTYPE_AUTH 0x00000000
516#define NDIS_80211_STATUSTYPE_PMKIDLIST 0x00000001
515#define NDIS_80211_STATUSTYPE_AUTH 0x00000000
516#define NDIS_80211_STATUSTYPE_PMKIDLIST 0x00000001
517
518struct ndis_80211_status_indication {
519 uint32_t nsi_type;
520};
521
522typedef struct ndis_80211_status_indication ndis_80211_status_indication;
523
517
518struct ndis_80211_status_indication {
519 uint32_t nsi_type;
520};
521
522typedef struct ndis_80211_status_indication ndis_80211_status_indication;
523
524#define NDIS_802_11_AUTH_REQUEST_REAUTH 0x01
525#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE 0x02
526#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR 0x06
527#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR 0x0E
524#define NDIS_802_11_AUTH_REQUEST_REAUTH 0x01
525#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE 0x02
526#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR 0x06
527#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR 0x0E
528
529struct ndis_80211_auth_request {
530 uint32_t nar_len;
531 ndis_80211_macaddr nar_bssid;
532 uint32_t nar_flags;
533};
534
535typedef struct ndis_80211_auth_request ndis_80211_auth_request;

--- 13 unchanged lines hidden (view full) ---

549struct ndis_80211_remove_key {
550 uint32_t nk_len;
551 uint32_t nk_keyidx;
552 ndis_80211_macaddr nk_bssid;
553};
554
555typedef struct ndis_80211_remove_key ndis_80211_remove_key;
556
528
529struct ndis_80211_auth_request {
530 uint32_t nar_len;
531 ndis_80211_macaddr nar_bssid;
532 uint32_t nar_flags;
533};
534
535typedef struct ndis_80211_auth_request ndis_80211_auth_request;

--- 13 unchanged lines hidden (view full) ---

549struct ndis_80211_remove_key {
550 uint32_t nk_len;
551 uint32_t nk_keyidx;
552 ndis_80211_macaddr nk_bssid;
553};
554
555typedef struct ndis_80211_remove_key ndis_80211_remove_key;
556
557#define NDIS_80211_AI_REQFI_CAPABILITIES 0x00000001
558#define NDIS_80211_AI_REQFI_LISTENINTERVAL 0x00000002
559#define NDIS_80211_AI_REQFI_CURRENTAPADDRESS 0x00000004
557#define NDIS_80211_AI_REQFI_CAPABILITIES 0x00000001
558#define NDIS_80211_AI_REQFI_LISTENINTERVAL 0x00000002
559#define NDIS_80211_AI_REQFI_CURRENTAPADDRESS 0x00000004
560
560
561#define NDIS_80211_AI_RESFI_CAPABILITIES 0x00000001
562#define NDIS_80211_AI_RESFI_STATUSCODE 0x00000002
563#define NDIS_80211_AI_RESFI_ASSOCIATIONID 0x00000004
561#define NDIS_80211_AI_RESFI_CAPABILITIES 0x00000001
562#define NDIS_80211_AI_RESFI_STATUSCODE 0x00000002
563#define NDIS_80211_AI_RESFI_ASSOCIATIONID 0x00000004
564
565struct ndis_80211_ai_reqfi {
566 uint16_t naq_caps;
567 uint16_t naq_listentint;
568 ndis_80211_macaddr naq_currentapaddr;
569};
570
571typedef struct ndis_80211_ai_reqfi ndis_80211_ai_reqfi;

--- 39 unchanged lines hidden (view full) ---

611typedef struct ndis_80211_test ndis_80211_test;
612
613struct ndis_80211_auth_encrypt {
614 uint32_t ne_authmode;
615 uint32_t ne_cryptstat;
616};
617
618typedef struct ndis_80211_auth_encrypt ndis_80211_auth_encrypt;
564
565struct ndis_80211_ai_reqfi {
566 uint16_t naq_caps;
567 uint16_t naq_listentint;
568 ndis_80211_macaddr naq_currentapaddr;
569};
570
571typedef struct ndis_80211_ai_reqfi ndis_80211_ai_reqfi;

--- 39 unchanged lines hidden (view full) ---

611typedef struct ndis_80211_test ndis_80211_test;
612
613struct ndis_80211_auth_encrypt {
614 uint32_t ne_authmode;
615 uint32_t ne_cryptstat;
616};
617
618typedef struct ndis_80211_auth_encrypt ndis_80211_auth_encrypt;
619
619
620struct ndis_80211_caps {
621 uint32_t nc_len;
622 uint32_t nc_ver;
623 uint32_t nc_numpmkids;
624 ndis_80211_auth_encrypt nc_authencs[1];
625};
626
627typedef struct ndis_80211_caps ndis_80211_caps;

--- 15 unchanged lines hidden (view full) ---

643
644struct ndis_80211_pmkid_cand {
645 ndis_80211_macaddr npc_bssid;
646 uint32_t npc_flags;
647};
648
649typedef struct ndis_80211_pmkid_cand ndis_80211_pmkid_cand;
650
620struct ndis_80211_caps {
621 uint32_t nc_len;
622 uint32_t nc_ver;
623 uint32_t nc_numpmkids;
624 ndis_80211_auth_encrypt nc_authencs[1];
625};
626
627typedef struct ndis_80211_caps ndis_80211_caps;

--- 15 unchanged lines hidden (view full) ---

643
644struct ndis_80211_pmkid_cand {
645 ndis_80211_macaddr npc_bssid;
646 uint32_t npc_flags;
647};
648
649typedef struct ndis_80211_pmkid_cand ndis_80211_pmkid_cand;
650
651#define NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED (0x01)
651#define NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED (0x01)
652
653struct ndis_80211_pmkid_candidate_list {
654 uint32_t npcl_version;
655 uint32_t npcl_numcandidates;
656 ndis_80211_pmkid_cand npcl_candidatelist[1];
657};
658
659typedef struct ndis_80211_pmkid_candidate_list ndis_80211_pmkid_candidate_list;
660
661struct ndis_80211_enc_indication {
662 uint32_t nei_statustype;
663 ndis_80211_pmkid_candidate_list nei_pmkidlist;
664};
665
666typedef struct ndis_80211_enc_indication ndis_80211_enc_indication;
667
668/* TCP OIDs. */
669
652
653struct ndis_80211_pmkid_candidate_list {
654 uint32_t npcl_version;
655 uint32_t npcl_numcandidates;
656 ndis_80211_pmkid_cand npcl_candidatelist[1];
657};
658
659typedef struct ndis_80211_pmkid_candidate_list ndis_80211_pmkid_candidate_list;
660
661struct ndis_80211_enc_indication {
662 uint32_t nei_statustype;
663 ndis_80211_pmkid_candidate_list nei_pmkidlist;
664};
665
666typedef struct ndis_80211_enc_indication ndis_80211_enc_indication;
667
668/* TCP OIDs. */
669
670#define OID_TCP_TASK_OFFLOAD 0xFC010201
671#define OID_TCP_TASK_IPSEC_ADD_SA 0xFC010202
672#define OID_TCP_TASK_IPSEC_DELETE_SA 0xFC010203
673#define OID_TCP_SAN_SUPPORT 0xFC010204
670#define OID_TCP_TASK_OFFLOAD 0xFC010201
671#define OID_TCP_TASK_IPSEC_ADD_SA 0xFC010202
672#define OID_TCP_TASK_IPSEC_DELETE_SA 0xFC010203
673#define OID_TCP_SAN_SUPPORT 0xFC010204
674
675
674
675
676#define NDIS_TASK_OFFLOAD_VERSION 1
676#define NDIS_TASK_OFFLOAD_VERSION 1
677
677
678#define NDIS_TASK_TCPIP_CSUM 0x00000000
679#define NDIS_TASK_IPSEC 0x00000001
680#define NDIS_TASK_TCP_LARGESEND 0x00000002
678#define NDIS_TASK_TCPIP_CSUM 0x00000000
679#define NDIS_TASK_IPSEC 0x00000001
680#define NDIS_TASK_TCP_LARGESEND 0x00000002
681
681
682#define NDIS_ENCAP_UNSPEC 0x00000000
683#define NDIS_ENCAP_NULL 0x00000001
684#define NDIS_ENCAP_IEEE802_3 0x00000002
685#define NDIS_ENCAP_IEEE802_5 0x00000003
686#define NDIS_ENCAP_SNAP_ROUTED 0x00000004
687#define NDIS_ENCAP_SNAP_BRIDGED 0x00000005
682#define NDIS_ENCAP_UNSPEC 0x00000000
683#define NDIS_ENCAP_NULL 0x00000001
684#define NDIS_ENCAP_IEEE802_3 0x00000002
685#define NDIS_ENCAP_IEEE802_5 0x00000003
686#define NDIS_ENCAP_SNAP_ROUTED 0x00000004
687#define NDIS_ENCAP_SNAP_BRIDGED 0x00000005
688
688
689#define NDIS_ENCAPFLAG_FIXEDHDRLEN 0x00000001
689#define NDIS_ENCAPFLAG_FIXEDHDRLEN 0x00000001
690
691struct ndis_encap_fmt {
692 uint32_t nef_encap;
693 uint32_t nef_flags;
694 uint32_t nef_encaphdrlen;
695};
696
697typedef struct ndis_encap_fmt ndis_encap_fmt;

--- 14 unchanged lines hidden (view full) ---

712 uint32_t nto_task;
713 uint32_t nto_offset_nexttask;
714 uint32_t nto_taskbuflen;
715 uint8_t nto_taskbuf[1];
716};
717
718typedef struct ndis_task_offload ndis_task_offload;
719
690
691struct ndis_encap_fmt {
692 uint32_t nef_encap;
693 uint32_t nef_flags;
694 uint32_t nef_encaphdrlen;
695};
696
697typedef struct ndis_encap_fmt ndis_encap_fmt;

--- 14 unchanged lines hidden (view full) ---

712 uint32_t nto_task;
713 uint32_t nto_offset_nexttask;
714 uint32_t nto_taskbuflen;
715 uint8_t nto_taskbuf[1];
716};
717
718typedef struct ndis_task_offload ndis_task_offload;
719
720#define NDIS_TCPSUM_FLAGS_IP_OPTS 0x00000001
721#define NDIS_TCPSUM_FLAGS_TCP_OPTS 0x00000002
722#define NDIS_TCPSUM_FLAGS_TCP_CSUM 0x00000004
723#define NDIS_TCPSUM_FLAGS_UDP_CSUM 0x00000008
724#define NDIS_TCPSUM_FLAGS_IP_CSUM 0x00000010
720#define NDIS_TCPSUM_FLAGS_IP_OPTS 0x00000001
721#define NDIS_TCPSUM_FLAGS_TCP_OPTS 0x00000002
722#define NDIS_TCPSUM_FLAGS_TCP_CSUM 0x00000004
723#define NDIS_TCPSUM_FLAGS_UDP_CSUM 0x00000008
724#define NDIS_TCPSUM_FLAGS_IP_CSUM 0x00000010
725
726struct ndis_task_tcpip_csum {
727 uint32_t nttc_v4tx;
728 uint32_t nttc_v4rx;
729 uint32_t nttc_v6tx;
730 uint32_t nttc_v6rx;
731};
732

--- 4 unchanged lines hidden (view full) ---

737 uint32_t nttl_maxofflen;
738 uint32_t nttl_minsegcnt;
739 uint8_t nttl_tcpopt;
740 uint8_t nttl_ipopt;
741};
742
743typedef struct ndis_task_tcp_largesend ndis_task_tcp_largesend;
744
725
726struct ndis_task_tcpip_csum {
727 uint32_t nttc_v4tx;
728 uint32_t nttc_v4rx;
729 uint32_t nttc_v6tx;
730 uint32_t nttc_v6rx;
731};
732

--- 4 unchanged lines hidden (view full) ---

737 uint32_t nttl_maxofflen;
738 uint32_t nttl_minsegcnt;
739 uint8_t nttl_tcpopt;
740 uint8_t nttl_ipopt;
741};
742
743typedef struct ndis_task_tcp_largesend ndis_task_tcp_largesend;
744
745#define NDIS_IPSEC_AH_MD5 0x00000001
746#define NDIS_IPSEC_AH_SHA1 0x00000002
747#define NDIS_IPSEC_AH_TRANSPORT 0x00000004
748#define NDIS_IPSEC_AH_TUNNEL 0x00000008
749#define NDIS_IPSEC_AH_SEND 0x00000010
750#define NDIS_IPSEC_AH_RECEIVE 0x00000020
745#define NDIS_IPSEC_AH_MD5 0x00000001
746#define NDIS_IPSEC_AH_SHA1 0x00000002
747#define NDIS_IPSEC_AH_TRANSPORT 0x00000004
748#define NDIS_IPSEC_AH_TUNNEL 0x00000008
749#define NDIS_IPSEC_AH_SEND 0x00000010
750#define NDIS_IPSEC_AH_RECEIVE 0x00000020
751
751
752#define NDIS_IPSEC_ESP_DES 0x00000001
753#define NDIS_IPSEC_ESP_RSVD 0x00000002
754#define NDIS_IPSEC_ESP_3DES 0x00000004
755#define NDIS_IPSEC_ESP_NULL 0x00000008
756#define NDIS_IPSEC_ESP_TRANSPORT 0x00000010
757#define NDIS_IPSEC_ESP_TUNNEL 0x00000020
758#define NDIS_IPSEC_ESP_SEND 0x00000040
759#define NDIS_IPSEC_ESP_RECEIVE 0x00000080
752#define NDIS_IPSEC_ESP_DES 0x00000001
753#define NDIS_IPSEC_ESP_RSVD 0x00000002
754#define NDIS_IPSEC_ESP_3DES 0x00000004
755#define NDIS_IPSEC_ESP_NULL 0x00000008
756#define NDIS_IPSEC_ESP_TRANSPORT 0x00000010
757#define NDIS_IPSEC_ESP_TUNNEL 0x00000020
758#define NDIS_IPSEC_ESP_SEND 0x00000040
759#define NDIS_IPSEC_ESP_RECEIVE 0x00000080
760
761struct ndis_task_ipsec {
762 uint32_t nti_ah_esp_combined;
763 uint32_t nti_ah_transport_tunnel_combined;
764 uint32_t nti_v4_options;
765 uint32_t nti_rsvd;
766 uint32_t nti_v4ah;
767 uint32_t nti_v4esp;
768};
769
770typedef struct ndis_task_ipsec ndis_task_ipsec;
771
772/*
773 * Attribures of NDIS drivers. Not all drivers support
774 * all attributes.
775 */
776
760
761struct ndis_task_ipsec {
762 uint32_t nti_ah_esp_combined;
763 uint32_t nti_ah_transport_tunnel_combined;
764 uint32_t nti_v4_options;
765 uint32_t nti_rsvd;
766 uint32_t nti_v4ah;
767 uint32_t nti_v4esp;
768};
769
770typedef struct ndis_task_ipsec ndis_task_ipsec;
771
772/*
773 * Attribures of NDIS drivers. Not all drivers support
774 * all attributes.
775 */
776
777#define NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT 0x00000001
778#define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT 0x00000002
779#define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS 0x00000004
780#define NDIS_ATTRIBUTE_BUS_MASTER 0x00000008
781#define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER 0x00000010
782#define NDIS_ATTRIBUTE_DESERIALIZE 0x00000020
783#define NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND 0x00000040
784#define NDIS_ATTRIBUTE_SURPRISE_REMOVE_OK 0x00000080
785#define NDIS_ATTRIBUTE_NOT_CO_NDIS 0x00000100
786#define NDIS_ATTRIBUTE_USES_SAFE_BUFFER_APIS 0x00000200
777#define NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT 0x00000001
778#define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT 0x00000002
779#define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS 0x00000004
780#define NDIS_ATTRIBUTE_BUS_MASTER 0x00000008
781#define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER 0x00000010
782#define NDIS_ATTRIBUTE_DESERIALIZE 0x00000020
783#define NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND 0x00000040
784#define NDIS_ATTRIBUTE_SURPRISE_REMOVE_OK 0x00000080
785#define NDIS_ATTRIBUTE_NOT_CO_NDIS 0x00000100
786#define NDIS_ATTRIBUTE_USES_SAFE_BUFFER_APIS 0x00000200
787
787
788#define NDIS_SERIALIZED(block) \
788#define NDIS_SERIALIZED(block) \
789 (((block)->nmb_flags & NDIS_ATTRIBUTE_DESERIALIZE) == 0)
790
791enum ndis_media_state {
792 nmc_connected,
793 nmc_disconnected
794};
795
796typedef enum ndis_media_state ndis_media_state;
797
798/* Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER). */
799
789 (((block)->nmb_flags & NDIS_ATTRIBUTE_DESERIALIZE) == 0)
790
791enum ndis_media_state {
792 nmc_connected,
793 nmc_disconnected
794};
795
796typedef enum ndis_media_state ndis_media_state;
797
798/* Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER). */
799
800#define NDIS_PACKET_TYPE_DIRECTED 0x00000001
801#define NDIS_PACKET_TYPE_MULTICAST 0x00000002
802#define NDIS_PACKET_TYPE_ALL_MULTICAST 0x00000004
803#define NDIS_PACKET_TYPE_BROADCAST 0x00000008
804#define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x00000010
805#define NDIS_PACKET_TYPE_PROMISCUOUS 0x00000020
806#define NDIS_PACKET_TYPE_SMT 0x00000040
807#define NDIS_PACKET_TYPE_ALL_LOCAL 0x00000080
808#define NDIS_PACKET_TYPE_GROUP 0x00001000
809#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x00002000
810#define NDIS_PACKET_TYPE_FUNCTIONAL 0x00004000
811#define NDIS_PACKET_TYPE_MAC_FRAME 0x00008000
800#define NDIS_PACKET_TYPE_DIRECTED 0x00000001
801#define NDIS_PACKET_TYPE_MULTICAST 0x00000002
802#define NDIS_PACKET_TYPE_ALL_MULTICAST 0x00000004
803#define NDIS_PACKET_TYPE_BROADCAST 0x00000008
804#define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x00000010
805#define NDIS_PACKET_TYPE_PROMISCUOUS 0x00000020
806#define NDIS_PACKET_TYPE_SMT 0x00000040
807#define NDIS_PACKET_TYPE_ALL_LOCAL 0x00000080
808#define NDIS_PACKET_TYPE_GROUP 0x00001000
809#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x00002000
810#define NDIS_PACKET_TYPE_FUNCTIONAL 0x00004000
811#define NDIS_PACKET_TYPE_MAC_FRAME 0x00008000
812
813
814/* Ndis MAC option bits (OID_GEN_MAC_OPTIONS). */
815
812
813
814/* Ndis MAC option bits (OID_GEN_MAC_OPTIONS). */
815
816#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001
817#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002
818#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004
819#define NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008
820#define NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010
821#define NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020
822#define NDIS_MAC_OPTION_8021P_PRIORITY 0x00000040
823#define NDIS_MAC_OPTION_SUPPORTS_MAC_ADDRESS_OVERWRITE 0x00000080
824#define NDIS_MAC_OPTION_RECEIVE_AT_DPC 0x00000100
825#define NDIS_MAC_OPTION_8021Q_VLAN 0x00000200
826#define NDIS_MAC_OPTION_RESERVED 0x80000000
816#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001
817#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002
818#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004
819#define NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008
820#define NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010
821#define NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020
822#define NDIS_MAC_OPTION_8021P_PRIORITY 0x00000040
823#define NDIS_MAC_OPTION_SUPPORTS_MAC_ADDRESS_OVERWRITE 0x00000080
824#define NDIS_MAC_OPTION_RECEIVE_AT_DPC 0x00000100
825#define NDIS_MAC_OPTION_8021Q_VLAN 0x00000200
826#define NDIS_MAC_OPTION_RESERVED 0x80000000
827
827
828#define NDIS_DMA_24BITS 0x00
829#define NDIS_DMA_32BITS 0x01
830#define NDIS_DMA_64BITS 0x02
828#define NDIS_DMA_24BITS 0x00
829#define NDIS_DMA_32BITS 0x01
830#define NDIS_DMA_64BITS 0x02
831
832/*
833struct ndis_physaddr {
834#ifdef __i386__
835 uint64_t np_quad;
836#endif
837#ifdef __amd64__
838 uint32_t np_low;
839 uint32_t np_high;
831
832/*
833struct ndis_physaddr {
834#ifdef __i386__
835 uint64_t np_quad;
836#endif
837#ifdef __amd64__
838 uint32_t np_low;
839 uint32_t np_high;
840#define np_quad np_low
840#define np_quad np_low
841#endif
842#ifdef notdef
843 uint32_t np_low;
844 uint32_t np_high;
845#endif
846};
847*/
848

--- 85 unchanged lines hidden (view full) ---

934 uint8_t dh_abs;
935 uint8_t dh_size;
936 uint8_t dh_inserted;
937 uint32_t dh_sigstate;
938 list_entry dh_waitlisthead;
939};
940#endif
941
841#endif
842#ifdef notdef
843 uint32_t np_low;
844 uint32_t np_high;
845#endif
846};
847*/
848

--- 85 unchanged lines hidden (view full) ---

934 uint8_t dh_abs;
935 uint8_t dh_size;
936 uint8_t dh_inserted;
937 uint32_t dh_sigstate;
938 list_entry dh_waitlisthead;
939};
940#endif
941
942#define dispatch_header nt_dispatch_header
942#define dispatch_header nt_dispatch_header
943
944struct ndis_ktimer {
945 struct dispatch_header nk_header;
946 uint64_t nk_duetime;
947 list_entry nk_timerlistentry;
948 void *nk_dpc;
949 uint32_t nk_period;
950};

--- 55 unchanged lines hidden (view full) ---

1006struct ndis_rw_lock {
1007 union {
1008 kspin_lock nrl_spinlock;
1009 void *nrl_ctx;
1010 } u;
1011 uint8_t nrl_rsvd[16];
1012};
1013
943
944struct ndis_ktimer {
945 struct dispatch_header nk_header;
946 uint64_t nk_duetime;
947 list_entry nk_timerlistentry;
948 void *nk_dpc;
949 uint32_t nk_period;
950};

--- 55 unchanged lines hidden (view full) ---

1006struct ndis_rw_lock {
1007 union {
1008 kspin_lock nrl_spinlock;
1009 void *nrl_ctx;
1010 } u;
1011 uint8_t nrl_rsvd[16];
1012};
1013
1014#define nrl_spinlock u.nrl_spinlock
1015#define nrl_ctx u.nrl_ctx;
1014#define nrl_spinlock u.nrl_spinlock
1015#define nrl_ctx u.nrl_ctx;
1016
1017typedef struct ndis_rw_lock ndis_rw_lock;
1018
1019struct ndis_lock_state {
1020 uint16_t nls_lockstate;
1021 ndis_kirql nls_oldirql;
1022};
1023

--- 51 unchanged lines hidden (view full) ---

1075
1076enum ndis_interrupt_mode {
1077 nim_level,
1078 nim_latched
1079};
1080
1081typedef enum ndis_interrupt_mode ndis_interrupt_mode;
1082
1016
1017typedef struct ndis_rw_lock ndis_rw_lock;
1018
1019struct ndis_lock_state {
1020 uint16_t nls_lockstate;
1021 ndis_kirql nls_oldirql;
1022};
1023

--- 51 unchanged lines hidden (view full) ---

1075
1076enum ndis_interrupt_mode {
1077 nim_level,
1078 nim_latched
1079};
1080
1081typedef enum ndis_interrupt_mode ndis_interrupt_mode;
1082
1083#define NUMBER_OF_SINGLE_WORK_ITEMS 6
1083#define NUMBER_OF_SINGLE_WORK_ITEMS 6
1084
1085struct ndis_work_item;
1086
1087typedef void (*ndis_proc)(struct ndis_work_item *, void *);
1088
1089struct ndis_work_item {
1090 void *nwi_ctx;
1091 ndis_proc nwi_func;
1092 uint8_t nwi_wraprsvd[sizeof(void *) * 8];
1093};
1094
1095typedef struct ndis_work_item ndis_work_item;
1096
1084
1085struct ndis_work_item;
1086
1087typedef void (*ndis_proc)(struct ndis_work_item *, void *);
1088
1089struct ndis_work_item {
1090 void *nwi_ctx;
1091 ndis_proc nwi_func;
1092 uint8_t nwi_wraprsvd[sizeof(void *) * 8];
1093};
1094
1095typedef struct ndis_work_item ndis_work_item;
1096
1097#define NdisInitializeWorkItem(w, f, c) \
1097#define NdisInitializeWorkItem(w, f, c) \
1098 do { \
1099 (w)->nwi_ctx = c; \
1100 (w)->nwi_func = f; \
1101 } while (0)
1102
1103#ifdef notdef
1104struct ndis_buffer {
1105 struct ndis_buffer *nb_next;

--- 12 unchanged lines hidden (view full) ---

1118struct ndis_sc_element {
1119 ndis_physaddr nse_addr;
1120 uint32_t nse_len;
1121 uint32_t *nse_rsvd;
1122};
1123
1124typedef struct ndis_sc_element ndis_sc_element;
1125
1098 do { \
1099 (w)->nwi_ctx = c; \
1100 (w)->nwi_func = f; \
1101 } while (0)
1102
1103#ifdef notdef
1104struct ndis_buffer {
1105 struct ndis_buffer *nb_next;

--- 12 unchanged lines hidden (view full) ---

1118struct ndis_sc_element {
1119 ndis_physaddr nse_addr;
1120 uint32_t nse_len;
1121 uint32_t *nse_rsvd;
1122};
1123
1124typedef struct ndis_sc_element ndis_sc_element;
1125
1126#define NDIS_MAXSEG 32
1127#define NDIS_BUS_SPACE_SHARED_MAXADDR 0x3E7FFFFF
1126#define NDIS_MAXSEG 32
1127#define NDIS_BUS_SPACE_SHARED_MAXADDR 0x3E7FFFFF
1128
1129struct ndis_sc_list {
1130 uint32_t nsl_frags;
1131 uint32_t *nsl_rsvd;
1132 ndis_sc_element nsl_elements[NDIS_MAXSEG];
1133};
1134
1135typedef struct ndis_sc_list ndis_sc_list;
1136
1137struct ndis_tcpip_csum {
1138 union {
1139 uint32_t ntc_txflags;
1140 uint32_t ntc_rxflags;
1141 uint32_t ntc_val;
1142 } u;
1143};
1144
1145typedef struct ndis_tcpip_csum ndis_tcpip_csum;
1146
1128
1129struct ndis_sc_list {
1130 uint32_t nsl_frags;
1131 uint32_t *nsl_rsvd;
1132 ndis_sc_element nsl_elements[NDIS_MAXSEG];
1133};
1134
1135typedef struct ndis_sc_list ndis_sc_list;
1136
1137struct ndis_tcpip_csum {
1138 union {
1139 uint32_t ntc_txflags;
1140 uint32_t ntc_rxflags;
1141 uint32_t ntc_val;
1142 } u;
1143};
1144
1145typedef struct ndis_tcpip_csum ndis_tcpip_csum;
1146
1147#define NDIS_TXCSUM_DO_IPV4 0x00000001
1148#define NDIS_TXCSUM_DO_IPV6 0x00000002
1149#define NDIS_TXCSUM_DO_TCP 0x00000004
1150#define NDIS_TXCSUM_DO_UDP 0x00000008
1151#define NDIS_TXCSUM_DO_IP 0x00000010
1147#define NDIS_TXCSUM_DO_IPV4 0x00000001
1148#define NDIS_TXCSUM_DO_IPV6 0x00000002
1149#define NDIS_TXCSUM_DO_TCP 0x00000004
1150#define NDIS_TXCSUM_DO_UDP 0x00000008
1151#define NDIS_TXCSUM_DO_IP 0x00000010
1152
1152
1153#define NDIS_RXCSUM_TCP_FAILED 0x00000001
1154#define NDIS_RXCSUM_UDP_FAILED 0x00000002
1155#define NDIS_RXCSUM_IP_FAILED 0x00000004
1156#define NDIS_RXCSUM_TCP_PASSED 0x00000008
1157#define NDIS_RXCSUM_UDP_PASSED 0x00000010
1158#define NDIS_RXCSUM_IP_PASSED 0x00000020
1159#define NDIS_RXCSUM_LOOPBACK 0x00000040
1153#define NDIS_RXCSUM_TCP_FAILED 0x00000001
1154#define NDIS_RXCSUM_UDP_FAILED 0x00000002
1155#define NDIS_RXCSUM_IP_FAILED 0x00000004
1156#define NDIS_RXCSUM_TCP_PASSED 0x00000008
1157#define NDIS_RXCSUM_UDP_PASSED 0x00000010
1158#define NDIS_RXCSUM_IP_PASSED 0x00000020
1159#define NDIS_RXCSUM_LOOPBACK 0x00000040
1160
1161struct ndis_vlan {
1162 union {
1163 struct {
1164 uint32_t nvt_userprio:3;
1165 uint32_t nvt_canformatid:1;
1166 uint32_t nvt_vlanid:12;
1167 uint32_t nvt_rsvd:16;

--- 7 unchanged lines hidden (view full) ---

1175 ndis_tcpipcsum_info,
1176 ndis_ipsec_info,
1177 ndis_largesend_info,
1178 ndis_classhandle_info,
1179 ndis_rsvd,
1180 ndis_sclist_info,
1181 ndis_ieee8021q_info,
1182 ndis_originalpkt_info,
1160
1161struct ndis_vlan {
1162 union {
1163 struct {
1164 uint32_t nvt_userprio:3;
1165 uint32_t nvt_canformatid:1;
1166 uint32_t nvt_vlanid:12;
1167 uint32_t nvt_rsvd:16;

--- 7 unchanged lines hidden (view full) ---

1175 ndis_tcpipcsum_info,
1176 ndis_ipsec_info,
1177 ndis_largesend_info,
1178 ndis_classhandle_info,
1179 ndis_rsvd,
1180 ndis_sclist_info,
1181 ndis_ieee8021q_info,
1182 ndis_originalpkt_info,
1183 ndis_packetcancelid,
1183 ndis_packetcancelid,
1184 ndis_maxpkt_info
1185};
1186
1187typedef enum ndis_perpkt_info ndis_perpkt_info;
1188
1189struct ndis_packet_extension {
1190 void *npe_info[ndis_maxpkt_info];
1191};

--- 9 unchanged lines hidden (view full) ---

1201 void *npp_pool;
1202 uint32_t npp_count;
1203 uint32_t npp_flags;
1204 uint8_t npp_validcounts;
1205 uint8_t npp_ndispktflags;
1206 uint16_t npp_packetooboffset;
1207};
1208
1184 ndis_maxpkt_info
1185};
1186
1187typedef enum ndis_perpkt_info ndis_perpkt_info;
1188
1189struct ndis_packet_extension {
1190 void *npe_info[ndis_maxpkt_info];
1191};

--- 9 unchanged lines hidden (view full) ---

1201 void *npp_pool;
1202 uint32_t npp_count;
1203 uint32_t npp_flags;
1204 uint8_t npp_validcounts;
1205 uint8_t npp_ndispktflags;
1206 uint16_t npp_packetooboffset;
1207};
1208
1209#define NDIS_FLAGS_PROTOCOL_ID_MASK 0x0000000F
1210#define NDIS_FLAGS_MULTICAST_PACKET 0x00000010
1211#define NDIS_FLAGS_RESERVED2 0x00000020
1212#define NDIS_FLAGS_RESERVED3 0x00000040
1213#define NDIS_FLAGS_DONT_LOOPBACK 0x00000080
1214#define NDIS_FLAGS_IS_LOOPBACK_PACKET 0x00000100
1215#define NDIS_FLAGS_LOOPBACK_ONLY 0x00000200
1216#define NDIS_FLAGS_RESERVED4 0x00000400
1217#define NDIS_FLAGS_DOUBLE_BUFFERED 0x00000800
1218#define NDIS_FLAGS_SENT_AT_DPC 0x00001000
1219#define NDIS_FLAGS_USES_SG_BUFFER_LIST 0x00002000
1209#define NDIS_FLAGS_PROTOCOL_ID_MASK 0x0000000F
1210#define NDIS_FLAGS_MULTICAST_PACKET 0x00000010
1211#define NDIS_FLAGS_RESERVED2 0x00000020
1212#define NDIS_FLAGS_RESERVED3 0x00000040
1213#define NDIS_FLAGS_DONT_LOOPBACK 0x00000080
1214#define NDIS_FLAGS_IS_LOOPBACK_PACKET 0x00000100
1215#define NDIS_FLAGS_LOOPBACK_ONLY 0x00000200
1216#define NDIS_FLAGS_RESERVED4 0x00000400
1217#define NDIS_FLAGS_DOUBLE_BUFFERED 0x00000800
1218#define NDIS_FLAGS_SENT_AT_DPC 0x00001000
1219#define NDIS_FLAGS_USES_SG_BUFFER_LIST 0x00002000
1220
1220
1221#define NDIS_PACKET_WRAPPER_RESERVED 0x3F
1222#define NDIS_PACKET_CONTAINS_MEDIA_SPECIFIC_INFO 0x40
1223#define NDIS_PACKET_ALLOCATED_BY_NDIS 0x80
1221#define NDIS_PACKET_WRAPPER_RESERVED 0x3F
1222#define NDIS_PACKET_CONTAINS_MEDIA_SPECIFIC_INFO 0x40
1223#define NDIS_PACKET_ALLOCATED_BY_NDIS 0x80
1224
1224
1225#define NDIS_PROTOCOL_ID_DEFAULT 0x00
1226#define NDIS_PROTOCOL_ID_TCP_IP 0x02
1227#define NDIS_PROTOCOL_ID_IPX 0x06
1228#define NDIS_PROTOCOL_ID_NBF 0x07
1229#define NDIS_PROTOCOL_ID_MAX 0x0F
1230#define NDIS_PROTOCOL_ID_MASK 0x0F
1225#define NDIS_PROTOCOL_ID_DEFAULT 0x00
1226#define NDIS_PROTOCOL_ID_TCP_IP 0x02
1227#define NDIS_PROTOCOL_ID_IPX 0x06
1228#define NDIS_PROTOCOL_ID_NBF 0x07
1229#define NDIS_PROTOCOL_ID_MAX 0x0F
1230#define NDIS_PROTOCOL_ID_MASK 0x0F
1231
1232typedef struct ndis_packet_private ndis_packet_private;
1233
1234enum ndis_classid {
1235 ndis_class_802_3prio,
1236 ndis_class_wirelesswan_mbx,
1237 ndis_class_irda_packetinfo,
1238 ndis_class_atm_aainfo

--- 33 unchanged lines hidden (view full) ---

1272struct ndis_ethpriv {
1273 void *nep_ctx; /* packet context */
1274 long nep_offset; /* residual data to transfer */
1275 void *nep_pad[2];
1276};
1277
1278typedef struct ndis_ethpriv ndis_ethpriv;
1279
1231
1232typedef struct ndis_packet_private ndis_packet_private;
1233
1234enum ndis_classid {
1235 ndis_class_802_3prio,
1236 ndis_class_wirelesswan_mbx,
1237 ndis_class_irda_packetinfo,
1238 ndis_class_atm_aainfo

--- 33 unchanged lines hidden (view full) ---

1272struct ndis_ethpriv {
1273 void *nep_ctx; /* packet context */
1274 long nep_offset; /* residual data to transfer */
1275 void *nep_pad[2];
1276};
1277
1278typedef struct ndis_ethpriv ndis_ethpriv;
1279
1280#define PROTOCOL_RESERVED_SIZE_IN_PACKET (4 * sizeof(void *))
1280#define PROTOCOL_RESERVED_SIZE_IN_PACKET (4 * sizeof(void *))
1281
1282struct ndis_packet {
1283 ndis_packet_private np_private;
1284 union {
1285 /* For connectionless miniports. */
1286 struct {
1287 uint8_t np_miniport_rsvd[2 * sizeof(void *)];
1288 uint8_t np_wrapper_rsvd[2 * sizeof(void *)];

--- 38 unchanged lines hidden (view full) ---

1327 int np_len;
1328 int np_protrsvd;
1329 void *np_pktmem;
1330};
1331
1332typedef struct ndis_packet_pool ndis_packet_pool;
1333
1334/* mbuf ext type for NDIS */
1281
1282struct ndis_packet {
1283 ndis_packet_private np_private;
1284 union {
1285 /* For connectionless miniports. */
1286 struct {
1287 uint8_t np_miniport_rsvd[2 * sizeof(void *)];
1288 uint8_t np_wrapper_rsvd[2 * sizeof(void *)];

--- 38 unchanged lines hidden (view full) ---

1327 int np_len;
1328 int np_protrsvd;
1329 void *np_pktmem;
1330};
1331
1332typedef struct ndis_packet_pool ndis_packet_pool;
1333
1334/* mbuf ext type for NDIS */
1335#define EXT_NDIS EXT_NET_DRV
1335#define EXT_NDIS EXT_NET_DRV
1336
1337/* mtx type for NDIS */
1336
1337/* mtx type for NDIS */
1338#define MTX_NDIS_LOCK "NDIS lock"
1338#define MTX_NDIS_LOCK "NDIS lock"
1339
1340struct ndis_filterdbs {
1341 union {
1342 void *nf_ethdb;
1343 void *nf_nulldb;
1344 } u;
1345 void *nf_trdb;
1346 void *nf_fddidb;
1347 void *nf_arcdb;
1348};
1349
1350typedef struct ndis_filterdbs ndis_filterdbs;
1351
1339
1340struct ndis_filterdbs {
1341 union {
1342 void *nf_ethdb;
1343 void *nf_nulldb;
1344 } u;
1345 void *nf_trdb;
1346 void *nf_fddidb;
1347 void *nf_arcdb;
1348};
1349
1350typedef struct ndis_filterdbs ndis_filterdbs;
1351
1352#define nf_ethdb u.nf_ethdb
1352#define nf_ethdb u.nf_ethdb
1353
1354enum ndis_medium {
1355 NdisMedium802_3,
1356 NdisMedium802_5,
1357 NdisMediumFddi,
1358 NdisMediumWan,
1359 NdisMediumLocalTalk,
1360 NdisMediumDix, /* defined for convenience, not a real medium */

--- 130 unchanged lines hidden (view full) ---

1491struct ndis_timer_entry {
1492 struct callout nte_ch;
1493 ndis_miniport_timer *nte_timer;
1494 TAILQ_ENTRY(ndis_timer_entry) link;
1495};
1496
1497TAILQ_HEAD(nte_head, ndis_timer_entry);
1498
1353
1354enum ndis_medium {
1355 NdisMedium802_3,
1356 NdisMedium802_5,
1357 NdisMediumFddi,
1358 NdisMediumWan,
1359 NdisMediumLocalTalk,
1360 NdisMediumDix, /* defined for convenience, not a real medium */

--- 130 unchanged lines hidden (view full) ---

1491struct ndis_timer_entry {
1492 struct callout nte_ch;
1493 ndis_miniport_timer *nte_timer;
1494 TAILQ_ENTRY(ndis_timer_entry) link;
1495};
1496
1497TAILQ_HEAD(nte_head, ndis_timer_entry);
1498
1499#define NDIS_FH_TYPE_VFS 0
1500#define NDIS_FH_TYPE_MODULE 1
1499#define NDIS_FH_TYPE_VFS 0
1500#define NDIS_FH_TYPE_MODULE 1
1501
1502struct ndis_fh {
1503 int nf_type;
1504 char *nf_name;
1505 void *nf_vp;
1506 void *nf_map;
1501
1502struct ndis_fh {
1503 int nf_type;
1504 char *nf_name;
1505 void *nf_vp;
1506 void *nf_map;
1507 uint32_t nf_maplen;
1507 uint32_t nf_maplen;
1508};
1509
1510typedef struct ndis_fh ndis_fh;
1511
1512/*
1513 * The miniport block is basically the internal NDIS handle. We need
1514 * to define this because, unfortunately, it is not entirely opaque
1515 * to NDIS drivers. For one thing, it contains the function pointer

--- 14 unchanged lines hidden (view full) ---

1530 * for the second part. Instead, we replace them with a few BSD-specific
1531 * things.
1532 */
1533
1534struct ndis_miniport_block {
1535 /*
1536 * Windows-specific portion -- DO NOT MODIFY OR NDIS
1537 * DRIVERS WILL NOT WORK.
1508};
1509
1510typedef struct ndis_fh ndis_fh;
1511
1512/*
1513 * The miniport block is basically the internal NDIS handle. We need
1514 * to define this because, unfortunately, it is not entirely opaque
1515 * to NDIS drivers. For one thing, it contains the function pointer

--- 14 unchanged lines hidden (view full) ---

1530 * for the second part. Instead, we replace them with a few BSD-specific
1531 * things.
1532 */
1533
1534struct ndis_miniport_block {
1535 /*
1536 * Windows-specific portion -- DO NOT MODIFY OR NDIS
1537 * DRIVERS WILL NOT WORK.
1538 */
1538 */
1539 void *nmb_signature; /* magic number */
1540 ndis_miniport_block *nmb_nextminiport;
1541 ndis_mdriver_block *nmb_driverhandle;
1542 ndis_handle nmb_miniportadapterctx;
1543 ndis_unicode_string nmb_name;
1544 ndis_bind_paths *nmb_bindpaths;
1545 ndis_handle nmb_openqueue;
1546 ndis_reference nmb_ref;

--- 115 unchanged lines hidden (view full) ---

1662typedef void (*ndis_allocdone_handler)(ndis_handle, void *,
1663 ndis_physaddr *, uint32_t, void *);
1664typedef uint8_t (*ndis_checkforhang_handler)(ndis_handle);
1665
1666typedef ndis_status (*driver_entry)(void *, unicode_string *);
1667
1668extern image_patch_table ndis_functbl[];
1669
1539 void *nmb_signature; /* magic number */
1540 ndis_miniport_block *nmb_nextminiport;
1541 ndis_mdriver_block *nmb_driverhandle;
1542 ndis_handle nmb_miniportadapterctx;
1543 ndis_unicode_string nmb_name;
1544 ndis_bind_paths *nmb_bindpaths;
1545 ndis_handle nmb_openqueue;
1546 ndis_reference nmb_ref;

--- 115 unchanged lines hidden (view full) ---

1662typedef void (*ndis_allocdone_handler)(ndis_handle, void *,
1663 ndis_physaddr *, uint32_t, void *);
1664typedef uint8_t (*ndis_checkforhang_handler)(ndis_handle);
1665
1666typedef ndis_status (*driver_entry)(void *, unicode_string *);
1667
1668extern image_patch_table ndis_functbl[];
1669
1670#define NDIS_TASKQUEUE 1
1671#define NDIS_SWI 2
1670#define NDIS_TASKQUEUE 1
1671#define NDIS_SWI 2
1672
1672
1673#define NDIS_PSTATE_RUNNING 1
1674#define NDIS_PSTATE_SLEEPING 2
1673#define NDIS_PSTATE_RUNNING 1
1674#define NDIS_PSTATE_SLEEPING 2
1675
1675
1676#define NdisQueryPacket(p, pbufcnt, bufcnt, firstbuf, plen) \
1676#define NdisQueryPacket(p, pbufcnt, bufcnt, firstbuf, plen) \
1677 do { \
1678 if ((firstbuf) != NULL) { \
1679 ndis_buffer **_first; \
1680 _first = firstbuf; \
1681 *(_first) = (p)->np_private.npp_head; \
1682 } \
1683 if ((plen) || (bufcnt) || (pbufcnt)) { \
1684 if ((p)->np_private.npp_validcounts == FALSE) { \

--- 61 unchanged lines hidden (view full) ---

1746extern int ndis_init_dma(void *);
1747extern int ndis_destroy_dma(void *);
1748extern int ndis_create_sysctls(void *);
1749extern int ndis_add_sysctl(void *, char *, char *, char *, int);
1750extern int ndis_flush_sysctls(void *);
1751
1752extern uint32_t NdisAddDevice(driver_object *, device_object *);
1753extern void NdisAllocatePacketPool(ndis_status *,
1677 do { \
1678 if ((firstbuf) != NULL) { \
1679 ndis_buffer **_first; \
1680 _first = firstbuf; \
1681 *(_first) = (p)->np_private.npp_head; \
1682 } \
1683 if ((plen) || (bufcnt) || (pbufcnt)) { \
1684 if ((p)->np_private.npp_validcounts == FALSE) { \

--- 61 unchanged lines hidden (view full) ---

1746extern int ndis_init_dma(void *);
1747extern int ndis_destroy_dma(void *);
1748extern int ndis_create_sysctls(void *);
1749extern int ndis_add_sysctl(void *, char *, char *, char *, int);
1750extern int ndis_flush_sysctls(void *);
1751
1752extern uint32_t NdisAddDevice(driver_object *, device_object *);
1753extern void NdisAllocatePacketPool(ndis_status *,
1754 ndis_handle *, uint32_t, uint32_t);
1754 ndis_handle *, uint32_t, uint32_t);
1755extern void NdisAllocatePacketPoolEx(ndis_status *,
1755extern void NdisAllocatePacketPoolEx(ndis_status *,
1756 ndis_handle *, uint32_t, uint32_t, uint32_t);
1756 ndis_handle *, uint32_t, uint32_t, uint32_t);
1757extern uint32_t NdisPacketPoolUsage(ndis_handle);
1758extern void NdisFreePacketPool(ndis_handle);
1759extern void NdisAllocatePacket(ndis_status *,
1760 ndis_packet **, ndis_handle);
1761extern void NdisFreePacket(ndis_packet *);
1762extern ndis_status NdisScheduleWorkItem(ndis_work_item *);
1763extern void NdisMSleep(uint32_t);
1757extern uint32_t NdisPacketPoolUsage(ndis_handle);
1758extern void NdisFreePacketPool(ndis_handle);
1759extern void NdisAllocatePacket(ndis_status *,
1760 ndis_packet **, ndis_handle);
1761extern void NdisFreePacket(ndis_packet *);
1762extern ndis_status NdisScheduleWorkItem(ndis_work_item *);
1763extern void NdisMSleep(uint32_t);
1764extern void ndis_cancel_timerlist(void);
1765__END_DECLS
1766
1767#endif /* _NDIS_VAR_H_ */
1764__END_DECLS
1765
1766#endif /* _NDIS_VAR_H_ */