os/boardsupport/emulator/emulatorbsp/wpdpack/include/ntddndis.h
changeset 0 bde4ae8d615e
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/os/boardsupport/emulator/emulatorbsp/wpdpack/include/ntddndis.h	Fri Jun 15 03:10:57 2012 +0200
     1.3 @@ -0,0 +1,1400 @@
     1.4 +/*++ BUILD Version: 0001                // Increment this if a change has global effects
     1.5 +   Copyright (c) 1990-1993  Microsoft Corporation
     1.6 +   Module Name:
     1.7 +   ntddndis.h
     1.8 +   Abstract:
     1.9 +   This is the include file that defines all constants and types for
    1.10 +   accessing the Network driver interface device.
    1.11 +   Author:
    1.12 +   Steve Wood (stevewo) 27-May-1990
    1.13 +   Revision History:
    1.14 +   Adam Barr (adamba)           04-Nov-1992             added the correct values for NDIS 3.0.
    1.15 +   Jameel Hyder (jameelh)       01-Aug-95               added Pnp IoCTLs and structures
    1.16 +   Kyle Brandon (kyleb) 09/24/96                added general co ndis oids.
    1.17 +   -- */
    1.18 +#ifndef _NTDDNDIS_
    1.19 +#define _NTDDNDIS_
    1.20 +//
    1.21 +// Device Name - this string is the name of the device.  It is the name
    1.22 +// that should be passed to NtOpenFile when accessing the device.
    1.23 +//
    1.24 +// Note:  For devices that support multiple units, it should be suffixed
    1.25 +//                with the Ascii representation of the unit number.
    1.26 +//
    1.27 +#define DD_NDIS_DEVICE_NAME "\\Device\\UNKNOWN"
    1.28 +//
    1.29 +// NtDeviceIoControlFile IoControlCode values for this device.
    1.30 +//
    1.31 +// Warning:  Remember that the low two bits of the code specify how the
    1.32 +//                       buffers are passed to the driver!
    1.33 +//
    1.34 +#define _NDIS_CONTROL_CODE(request,method) \
    1.35 +			CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS)
    1.36 +#define IOCTL_NDIS_QUERY_GLOBAL_STATS	_NDIS_CONTROL_CODE( 0, METHOD_OUT_DIRECT )
    1.37 +#define IOCTL_NDIS_QUERY_ALL_STATS		_NDIS_CONTROL_CODE( 1, METHOD_OUT_DIRECT )
    1.38 +#define IOCTL_NDIS_ADD_DEVICE			_NDIS_CONTROL_CODE( 2, METHOD_BUFFERED )
    1.39 +#define IOCTL_NDIS_DELETE_DEVICE		_NDIS_CONTROL_CODE( 3, METHOD_BUFFERED )
    1.40 +#define IOCTL_NDIS_TRANSLATE_NAME		_NDIS_CONTROL_CODE( 4, METHOD_BUFFERED )
    1.41 +#define IOCTL_NDIS_ADD_TDI_DEVICE		_NDIS_CONTROL_CODE( 5, METHOD_BUFFERED )
    1.42 +#define IOCTL_NDIS_NOTIFY_PROTOCOL		_NDIS_CONTROL_CODE( 6, METHOD_BUFFERED )
    1.43 +#define	IOCTL_NDIS_GET_LOG_DATA			_NDIS_CONTROL_CODE( 7, METHOD_OUT_DIRECT )
    1.44 +//
    1.45 +// NtDeviceIoControlFile InputBuffer/OutputBuffer record structures for
    1.46 +// this device.
    1.47 +//
    1.48 +//
    1.49 +// This is the type of an NDIS OID value.
    1.50 +//
    1.51 +typedef ULONG NDIS_OID, *PNDIS_OID;
    1.52 +//
    1.53 +// IOCTL_NDIS_QUERY_ALL_STATS returns a sequence of these, packed
    1.54 +// together (no padding is required since statistics all have
    1.55 +// four or eight bytes of data).
    1.56 +//
    1.57 +typedef struct _NDIS_STATISTICS_VALUE {
    1.58 +    NDIS_OID Oid;
    1.59 +    ULONG DataLength;
    1.60 +    UCHAR Data[1];		// variable length
    1.61 +
    1.62 +} NDIS_STATISTICS_VALUE, *PNDIS_STATISTICS_VALUE;
    1.63 +
    1.64 +//
    1.65 +// Structure used by TRANSLATE_NAME IOCTL
    1.66 +//
    1.67 +typedef struct _NET_PNP_ID {
    1.68 +    ULONG ClassId;
    1.69 +    ULONG Token;
    1.70 +} NET_PNP_ID, *PNET_PNP_ID;
    1.71 +
    1.72 +typedef struct _NET_PNP_TRANSLATE_LIST {
    1.73 +    ULONG BytesNeeded;
    1.74 +    NET_PNP_ID IdArray[ANYSIZE_ARRAY];
    1.75 +} NET_PNP_TRANSLATE_LIST, *PNET_PNP_TRANSLATE_LIST;
    1.76 +
    1.77 +//
    1.78 +// Structure used to define a self-contained variable data structure
    1.79 +//
    1.80 +typedef struct _NDIS_VAR_DATA_DESC {
    1.81 +    USHORT Length;		// # of octects of data
    1.82 +
    1.83 +    USHORT MaximumLength;	// # of octects available
    1.84 +
    1.85 +    LONG Offset;		// Offset of data relative to the descriptor
    1.86 +
    1.87 +} NDIS_VAR_DATA_DESC, *PNDIS_VAR_DATA_DESC;
    1.88 +
    1.89 +//
    1.90 +// Object Identifiers used by NdisRequest Query/Set Information
    1.91 +//
    1.92 +//
    1.93 +// General Objects
    1.94 +//
    1.95 +#define OID_GEN_SUPPORTED_LIST			  		0x00010101
    1.96 +#define OID_GEN_HARDWARE_STATUS			 		0x00010102
    1.97 +#define OID_GEN_MEDIA_SUPPORTED			 		0x00010103
    1.98 +#define OID_GEN_MEDIA_IN_USE					0x00010104
    1.99 +#define OID_GEN_MAXIMUM_LOOKAHEAD		   		0x00010105
   1.100 +#define OID_GEN_MAXIMUM_FRAME_SIZE		  		0x00010106
   1.101 +#define OID_GEN_LINK_SPEED				  		0x00010107
   1.102 +#define OID_GEN_TRANSMIT_BUFFER_SPACE	   		0x00010108
   1.103 +#define OID_GEN_RECEIVE_BUFFER_SPACE			0x00010109
   1.104 +#define OID_GEN_TRANSMIT_BLOCK_SIZE		 		0x0001010A
   1.105 +#define OID_GEN_RECEIVE_BLOCK_SIZE		  		0x0001010B
   1.106 +#define OID_GEN_VENDOR_ID				   		0x0001010C
   1.107 +#define OID_GEN_VENDOR_DESCRIPTION		  		0x0001010D
   1.108 +#define OID_GEN_CURRENT_PACKET_FILTER	   		0x0001010E
   1.109 +#define OID_GEN_CURRENT_LOOKAHEAD		   		0x0001010F
   1.110 +#define OID_GEN_DRIVER_VERSION			  		0x00010110
   1.111 +#define OID_GEN_MAXIMUM_TOTAL_SIZE		  		0x00010111
   1.112 +#define OID_GEN_PROTOCOL_OPTIONS				0x00010112
   1.113 +#define OID_GEN_MAC_OPTIONS				 		0x00010113
   1.114 +#define OID_GEN_MEDIA_CONNECT_STATUS			0x00010114
   1.115 +#define OID_GEN_MAXIMUM_SEND_PACKETS			0x00010115
   1.116 +#define OID_GEN_VENDOR_DRIVER_VERSION			0x00010116
   1.117 +#define OID_GEN_XMIT_OK					 		0x00020101
   1.118 +#define OID_GEN_RCV_OK					  		0x00020102
   1.119 +#define OID_GEN_XMIT_ERROR				  		0x00020103
   1.120 +#define OID_GEN_RCV_ERROR				   		0x00020104
   1.121 +#define OID_GEN_RCV_NO_BUFFER			   		0x00020105
   1.122 +#define OID_GEN_DIRECTED_BYTES_XMIT		 		0x00020201
   1.123 +#define OID_GEN_DIRECTED_FRAMES_XMIT			0x00020202
   1.124 +#define OID_GEN_MULTICAST_BYTES_XMIT			0x00020203
   1.125 +#define OID_GEN_MULTICAST_FRAMES_XMIT	   		0x00020204
   1.126 +#define OID_GEN_BROADCAST_BYTES_XMIT			0x00020205
   1.127 +#define OID_GEN_BROADCAST_FRAMES_XMIT	   		0x00020206
   1.128 +#define OID_GEN_DIRECTED_BYTES_RCV		  		0x00020207
   1.129 +#define OID_GEN_DIRECTED_FRAMES_RCV		 		0x00020208
   1.130 +#define OID_GEN_MULTICAST_BYTES_RCV		 		0x00020209
   1.131 +#define OID_GEN_MULTICAST_FRAMES_RCV			0x0002020A
   1.132 +#define OID_GEN_BROADCAST_BYTES_RCV		 		0x0002020B
   1.133 +#define OID_GEN_BROADCAST_FRAMES_RCV			0x0002020C
   1.134 +#define OID_GEN_RCV_CRC_ERROR			   		0x0002020D
   1.135 +#define OID_GEN_TRANSMIT_QUEUE_LENGTH	   		0x0002020E
   1.136 +#define OID_GEN_GET_TIME_CAPS					0x0002020F
   1.137 +#define OID_GEN_GET_NETCARD_TIME				0x00020210
   1.138 +//
   1.139 +//      These are connection-oriented general OIDs.
   1.140 +//      These replace the above OIDs for connection-oriented media.
   1.141 +//
   1.142 +#define OID_GEN_CO_SUPPORTED_LIST			  	0x00010101
   1.143 +#define OID_GEN_CO_HARDWARE_STATUS			 	0x00010102
   1.144 +#define OID_GEN_CO_MEDIA_SUPPORTED			 	0x00010103
   1.145 +#define OID_GEN_CO_MEDIA_IN_USE					0x00010104
   1.146 +#define OID_GEN_CO_LINK_SPEED				  	0x00010105
   1.147 +#define OID_GEN_CO_VENDOR_ID				   	0x00010106
   1.148 +#define OID_GEN_CO_VENDOR_DESCRIPTION		  	0x00010107
   1.149 +#define OID_GEN_CO_DRIVER_VERSION			  	0x00010108
   1.150 +#define OID_GEN_CO_PROTOCOL_OPTIONS				0x00010109
   1.151 +#define OID_GEN_CO_MAC_OPTIONS				 	0x0001010A
   1.152 +#define OID_GEN_CO_MEDIA_CONNECT_STATUS			0x0001010B
   1.153 +#define OID_GEN_CO_VENDOR_DRIVER_VERSION		0x0001010C
   1.154 +#define OID_GEN_CO_MINIMUM_LINK_SPEED			0x0001010D
   1.155 +#define OID_GEN_CO_GET_TIME_CAPS				0x00010201
   1.156 +#define OID_GEN_CO_GET_NETCARD_TIME				0x00010202
   1.157 +//
   1.158 +//      These are connection-oriented statistics OIDs.
   1.159 +//
   1.160 +#define	OID_GEN_CO_XMIT_PDUS_OK					0x00020101
   1.161 +#define	OID_GEN_CO_RCV_PDUS_OK					0x00020102
   1.162 +#define	OID_GEN_CO_XMIT_PDUS_ERROR				0x00020103
   1.163 +#define	OID_GEN_CO_RCV_PDUS_ERROR				0x00020104
   1.164 +#define	OID_GEN_CO_RCV_PDUS_NO_BUFFER			0x00020105
   1.165 +#define	OID_GEN_CO_RCV_CRC_ERROR				0x00020201
   1.166 +#define OID_GEN_CO_TRANSMIT_QUEUE_LENGTH		0x00020202
   1.167 +#define	OID_GEN_CO_BYTES_XMIT					0x00020203
   1.168 +#define OID_GEN_CO_BYTES_RCV					0x00020204
   1.169 +#define	OID_GEN_CO_BYTES_XMIT_OUTSTANDING		0x00020205
   1.170 +#define	OID_GEN_CO_NETCARD_LOAD					0x00020206
   1.171 +//
   1.172 +// These are objects for Connection-oriented media call-managers and are not
   1.173 +// valid for ndis drivers. Under construction.
   1.174 +//
   1.175 +#define OID_CO_ADD_PVC							0xFF000001
   1.176 +#define OID_CO_DELETE_PVC						0xFF000002
   1.177 +#define OID_CO_GET_CALL_INFORMATION				0xFF000003
   1.178 +#define OID_CO_ADD_ADDRESS						0xFF000004
   1.179 +#define OID_CO_DELETE_ADDRESS					0xFF000005
   1.180 +#define OID_CO_GET_ADDRESSES					0xFF000006
   1.181 +#define OID_CO_ADDRESS_CHANGE					0xFF000007
   1.182 +#define OID_CO_SIGNALING_ENABLED				0xFF000008
   1.183 +#define OID_CO_SIGNALING_DISABLED				0xFF000009
   1.184 +//
   1.185 +// 802.3 Objects (Ethernet)
   1.186 +//
   1.187 +#define OID_802_3_PERMANENT_ADDRESS		 		0x01010101
   1.188 +#define OID_802_3_CURRENT_ADDRESS		   		0x01010102
   1.189 +#define OID_802_3_MULTICAST_LIST				0x01010103
   1.190 +#define OID_802_3_MAXIMUM_LIST_SIZE		 		0x01010104
   1.191 +#define OID_802_3_MAC_OPTIONS				 	0x01010105
   1.192 +//
   1.193 +//
   1.194 +#define	NDIS_802_3_MAC_OPTION_PRIORITY			0x00000001
   1.195 +#define OID_802_3_RCV_ERROR_ALIGNMENT	   		0x01020101
   1.196 +#define OID_802_3_XMIT_ONE_COLLISION			0x01020102
   1.197 +#define OID_802_3_XMIT_MORE_COLLISIONS	  		0x01020103
   1.198 +#define OID_802_3_XMIT_DEFERRED			 		0x01020201
   1.199 +#define OID_802_3_XMIT_MAX_COLLISIONS	   		0x01020202
   1.200 +#define OID_802_3_RCV_OVERRUN			   		0x01020203
   1.201 +#define OID_802_3_XMIT_UNDERRUN			 		0x01020204
   1.202 +#define OID_802_3_XMIT_HEARTBEAT_FAILURE		0x01020205
   1.203 +#define OID_802_3_XMIT_TIMES_CRS_LOST	   		0x01020206
   1.204 +#define OID_802_3_XMIT_LATE_COLLISIONS	  		0x01020207
   1.205 +//
   1.206 +// 802.5 Objects (Token-Ring)
   1.207 +//
   1.208 +#define OID_802_5_PERMANENT_ADDRESS		 		0x02010101
   1.209 +#define OID_802_5_CURRENT_ADDRESS		   		0x02010102
   1.210 +#define OID_802_5_CURRENT_FUNCTIONAL			0x02010103
   1.211 +#define OID_802_5_CURRENT_GROUP			 		0x02010104
   1.212 +#define OID_802_5_LAST_OPEN_STATUS		  		0x02010105
   1.213 +#define OID_802_5_CURRENT_RING_STATUS	   		0x02010106
   1.214 +#define OID_802_5_CURRENT_RING_STATE			0x02010107
   1.215 +#define OID_802_5_LINE_ERRORS			   		0x02020101
   1.216 +#define OID_802_5_LOST_FRAMES			   		0x02020102
   1.217 +#define OID_802_5_BURST_ERRORS			  		0x02020201
   1.218 +#define OID_802_5_AC_ERRORS				 		0x02020202
   1.219 +#define OID_802_5_ABORT_DELIMETERS		  		0x02020203
   1.220 +#define OID_802_5_FRAME_COPIED_ERRORS	   		0x02020204
   1.221 +#define OID_802_5_FREQUENCY_ERRORS		  		0x02020205
   1.222 +#define OID_802_5_TOKEN_ERRORS			  		0x02020206
   1.223 +#define OID_802_5_INTERNAL_ERRORS		   		0x02020207
   1.224 +//
   1.225 +// FDDI Objects
   1.226 +//
   1.227 +#define OID_FDDI_LONG_PERMANENT_ADDR			0x03010101
   1.228 +#define OID_FDDI_LONG_CURRENT_ADDR		  		0x03010102
   1.229 +#define OID_FDDI_LONG_MULTICAST_LIST			0x03010103
   1.230 +#define OID_FDDI_LONG_MAX_LIST_SIZE		 		0x03010104
   1.231 +#define OID_FDDI_SHORT_PERMANENT_ADDR	   		0x03010105
   1.232 +#define OID_FDDI_SHORT_CURRENT_ADDR		 		0x03010106
   1.233 +#define OID_FDDI_SHORT_MULTICAST_LIST	   		0x03010107
   1.234 +#define OID_FDDI_SHORT_MAX_LIST_SIZE			0x03010108
   1.235 +#define OID_FDDI_ATTACHMENT_TYPE				0x03020101
   1.236 +#define OID_FDDI_UPSTREAM_NODE_LONG		 		0x03020102
   1.237 +#define OID_FDDI_DOWNSTREAM_NODE_LONG	   		0x03020103
   1.238 +#define OID_FDDI_FRAME_ERRORS			   		0x03020104
   1.239 +#define OID_FDDI_FRAMES_LOST					0x03020105
   1.240 +#define OID_FDDI_RING_MGT_STATE			 		0x03020106
   1.241 +#define OID_FDDI_LCT_FAILURES			   		0x03020107
   1.242 +#define OID_FDDI_LEM_REJECTS					0x03020108
   1.243 +#define OID_FDDI_LCONNECTION_STATE		  		0x03020109
   1.244 +#define OID_FDDI_SMT_STATION_ID			 		0x03030201
   1.245 +#define OID_FDDI_SMT_OP_VERSION_ID		  		0x03030202
   1.246 +#define OID_FDDI_SMT_HI_VERSION_ID		  		0x03030203
   1.247 +#define OID_FDDI_SMT_LO_VERSION_ID		  		0x03030204
   1.248 +#define OID_FDDI_SMT_MANUFACTURER_DATA	  		0x03030205
   1.249 +#define OID_FDDI_SMT_USER_DATA			  		0x03030206
   1.250 +#define OID_FDDI_SMT_MIB_VERSION_ID		 		0x03030207
   1.251 +#define OID_FDDI_SMT_MAC_CT				 		0x03030208
   1.252 +#define OID_FDDI_SMT_NON_MASTER_CT		  		0x03030209
   1.253 +#define OID_FDDI_SMT_MASTER_CT			  		0x0303020A
   1.254 +#define OID_FDDI_SMT_AVAILABLE_PATHS			0x0303020B
   1.255 +#define OID_FDDI_SMT_CONFIG_CAPABILITIES		0x0303020C
   1.256 +#define OID_FDDI_SMT_CONFIG_POLICY		  		0x0303020D
   1.257 +#define OID_FDDI_SMT_CONNECTION_POLICY	  		0x0303020E
   1.258 +#define OID_FDDI_SMT_T_NOTIFY			   		0x0303020F
   1.259 +#define OID_FDDI_SMT_STAT_RPT_POLICY			0x03030210
   1.260 +#define OID_FDDI_SMT_TRACE_MAX_EXPIRATION   	0x03030211
   1.261 +#define OID_FDDI_SMT_PORT_INDEXES		   		0x03030212
   1.262 +#define OID_FDDI_SMT_MAC_INDEXES				0x03030213
   1.263 +#define OID_FDDI_SMT_BYPASS_PRESENT		 		0x03030214
   1.264 +#define OID_FDDI_SMT_ECM_STATE			  		0x03030215
   1.265 +#define OID_FDDI_SMT_CF_STATE			   		0x03030216
   1.266 +#define OID_FDDI_SMT_HOLD_STATE			 		0x03030217
   1.267 +#define OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG 	0x03030218
   1.268 +#define OID_FDDI_SMT_STATION_STATUS		 		0x03030219
   1.269 +#define OID_FDDI_SMT_PEER_WRAP_FLAG		 		0x0303021A
   1.270 +#define OID_FDDI_SMT_MSG_TIME_STAMP		 		0x0303021B
   1.271 +#define OID_FDDI_SMT_TRANSITION_TIME_STAMP  	0x0303021C
   1.272 +#define OID_FDDI_SMT_SET_COUNT			  		0x0303021D
   1.273 +#define OID_FDDI_SMT_LAST_SET_STATION_ID		0x0303021E
   1.274 +#define OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS 	0x0303021F
   1.275 +#define OID_FDDI_MAC_BRIDGE_FUNCTIONS	   		0x03030220
   1.276 +#define OID_FDDI_MAC_T_MAX_CAPABILITY	   		0x03030221
   1.277 +#define OID_FDDI_MAC_TVX_CAPABILITY		 		0x03030222
   1.278 +#define OID_FDDI_MAC_AVAILABLE_PATHS			0x03030223
   1.279 +#define OID_FDDI_MAC_CURRENT_PATH		   		0x03030224
   1.280 +#define OID_FDDI_MAC_UPSTREAM_NBR		   		0x03030225
   1.281 +#define OID_FDDI_MAC_DOWNSTREAM_NBR		 		0x03030226
   1.282 +#define OID_FDDI_MAC_OLD_UPSTREAM_NBR	   		0x03030227
   1.283 +#define OID_FDDI_MAC_OLD_DOWNSTREAM_NBR	 		0x03030228
   1.284 +#define OID_FDDI_MAC_DUP_ADDRESS_TEST	   		0x03030229
   1.285 +#define OID_FDDI_MAC_REQUESTED_PATHS			0x0303022A
   1.286 +#define OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE   	0x0303022B
   1.287 +#define OID_FDDI_MAC_INDEX				  		0x0303022C
   1.288 +#define OID_FDDI_MAC_SMT_ADDRESS				0x0303022D
   1.289 +#define OID_FDDI_MAC_LONG_GRP_ADDRESS	   		0x0303022E
   1.290 +#define OID_FDDI_MAC_SHORT_GRP_ADDRESS	  		0x0303022F
   1.291 +#define OID_FDDI_MAC_T_REQ				  		0x03030230
   1.292 +#define OID_FDDI_MAC_T_NEG				  		0x03030231
   1.293 +#define OID_FDDI_MAC_T_MAX				  		0x03030232
   1.294 +#define OID_FDDI_MAC_TVX_VALUE			  		0x03030233
   1.295 +#define OID_FDDI_MAC_T_PRI0				 		0x03030234
   1.296 +#define OID_FDDI_MAC_T_PRI1				 		0x03030235
   1.297 +#define OID_FDDI_MAC_T_PRI2				 		0x03030236
   1.298 +#define OID_FDDI_MAC_T_PRI3				 		0x03030237
   1.299 +#define OID_FDDI_MAC_T_PRI4				 		0x03030238
   1.300 +#define OID_FDDI_MAC_T_PRI5				 		0x03030239
   1.301 +#define OID_FDDI_MAC_T_PRI6				 		0x0303023A
   1.302 +#define OID_FDDI_MAC_FRAME_CT			   		0x0303023B
   1.303 +#define OID_FDDI_MAC_COPIED_CT			  		0x0303023C
   1.304 +#define OID_FDDI_MAC_TRANSMIT_CT				0x0303023D
   1.305 +#define OID_FDDI_MAC_TOKEN_CT			   		0x0303023E
   1.306 +#define OID_FDDI_MAC_ERROR_CT			   		0x0303023F
   1.307 +#define OID_FDDI_MAC_LOST_CT					0x03030240
   1.308 +#define OID_FDDI_MAC_TVX_EXPIRED_CT		 		0x03030241
   1.309 +#define OID_FDDI_MAC_NOT_COPIED_CT		  		0x03030242
   1.310 +#define OID_FDDI_MAC_LATE_CT					0x03030243
   1.311 +#define OID_FDDI_MAC_RING_OP_CT			 		0x03030244
   1.312 +#define OID_FDDI_MAC_FRAME_ERROR_THRESHOLD  	0x03030245
   1.313 +#define OID_FDDI_MAC_FRAME_ERROR_RATIO	  		0x03030246
   1.314 +#define OID_FDDI_MAC_NOT_COPIED_THRESHOLD   	0x03030247
   1.315 +#define OID_FDDI_MAC_NOT_COPIED_RATIO	   		0x03030248
   1.316 +#define OID_FDDI_MAC_RMT_STATE			  		0x03030249
   1.317 +#define OID_FDDI_MAC_DA_FLAG					0x0303024A
   1.318 +#define OID_FDDI_MAC_UNDA_FLAG			  		0x0303024B
   1.319 +#define OID_FDDI_MAC_FRAME_ERROR_FLAG	   		0x0303024C
   1.320 +#define OID_FDDI_MAC_NOT_COPIED_FLAG			0x0303024D
   1.321 +#define OID_FDDI_MAC_MA_UNITDATA_AVAILABLE  	0x0303024E
   1.322 +#define OID_FDDI_MAC_HARDWARE_PRESENT	   		0x0303024F
   1.323 +#define OID_FDDI_MAC_MA_UNITDATA_ENABLE	 		0x03030250
   1.324 +#define OID_FDDI_PATH_INDEX				 		0x03030251
   1.325 +#define OID_FDDI_PATH_RING_LATENCY		  		0x03030252
   1.326 +#define OID_FDDI_PATH_TRACE_STATUS		  		0x03030253
   1.327 +#define OID_FDDI_PATH_SBA_PAYLOAD		   		0x03030254
   1.328 +#define OID_FDDI_PATH_SBA_OVERHEAD		  		0x03030255
   1.329 +#define OID_FDDI_PATH_CONFIGURATION		 		0x03030256
   1.330 +#define OID_FDDI_PATH_T_R_MODE			  		0x03030257
   1.331 +#define OID_FDDI_PATH_SBA_AVAILABLE		 		0x03030258
   1.332 +#define OID_FDDI_PATH_TVX_LOWER_BOUND	   		0x03030259
   1.333 +#define OID_FDDI_PATH_T_MAX_LOWER_BOUND	 		0x0303025A
   1.334 +#define OID_FDDI_PATH_MAX_T_REQ			 		0x0303025B
   1.335 +#define OID_FDDI_PORT_MY_TYPE			   		0x0303025C
   1.336 +#define OID_FDDI_PORT_NEIGHBOR_TYPE		 		0x0303025D
   1.337 +#define OID_FDDI_PORT_CONNECTION_POLICIES   	0x0303025E
   1.338 +#define OID_FDDI_PORT_MAC_INDICATED		 		0x0303025F
   1.339 +#define OID_FDDI_PORT_CURRENT_PATH		  		0x03030260
   1.340 +#define OID_FDDI_PORT_REQUESTED_PATHS	   		0x03030261
   1.341 +#define OID_FDDI_PORT_MAC_PLACEMENT		 		0x03030262
   1.342 +#define OID_FDDI_PORT_AVAILABLE_PATHS	   		0x03030263
   1.343 +#define OID_FDDI_PORT_MAC_LOOP_TIME		 		0x03030264
   1.344 +#define OID_FDDI_PORT_PMD_CLASS			 		0x03030265
   1.345 +#define OID_FDDI_PORT_CONNECTION_CAPABILITIES	0x03030266
   1.346 +#define OID_FDDI_PORT_INDEX				 		0x03030267
   1.347 +#define OID_FDDI_PORT_MAINT_LS			  		0x03030268
   1.348 +#define OID_FDDI_PORT_BS_FLAG			   		0x03030269
   1.349 +#define OID_FDDI_PORT_PC_LS				 		0x0303026A
   1.350 +#define OID_FDDI_PORT_EB_ERROR_CT		   		0x0303026B
   1.351 +#define OID_FDDI_PORT_LCT_FAIL_CT		   		0x0303026C
   1.352 +#define OID_FDDI_PORT_LER_ESTIMATE		  		0x0303026D
   1.353 +#define OID_FDDI_PORT_LEM_REJECT_CT		 		0x0303026E
   1.354 +#define OID_FDDI_PORT_LEM_CT					0x0303026F
   1.355 +#define OID_FDDI_PORT_LER_CUTOFF				0x03030270
   1.356 +#define OID_FDDI_PORT_LER_ALARM			 		0x03030271
   1.357 +#define OID_FDDI_PORT_CONNNECT_STATE			0x03030272
   1.358 +#define OID_FDDI_PORT_PCM_STATE			 		0x03030273
   1.359 +#define OID_FDDI_PORT_PC_WITHHOLD		   		0x03030274
   1.360 +#define OID_FDDI_PORT_LER_FLAG			  		0x03030275
   1.361 +#define OID_FDDI_PORT_HARDWARE_PRESENT	  		0x03030276
   1.362 +#define OID_FDDI_SMT_STATION_ACTION		 		0x03030277
   1.363 +#define OID_FDDI_PORT_ACTION					0x03030278
   1.364 +#define OID_FDDI_IF_DESCR				   		0x03030279
   1.365 +#define OID_FDDI_IF_TYPE						0x0303027A
   1.366 +#define OID_FDDI_IF_MTU					 		0x0303027B
   1.367 +#define OID_FDDI_IF_SPEED				   		0x0303027C
   1.368 +#define OID_FDDI_IF_PHYS_ADDRESS				0x0303027D
   1.369 +#define OID_FDDI_IF_ADMIN_STATUS				0x0303027E
   1.370 +#define OID_FDDI_IF_OPER_STATUS			 		0x0303027F
   1.371 +#define OID_FDDI_IF_LAST_CHANGE			 		0x03030280
   1.372 +#define OID_FDDI_IF_IN_OCTETS			   		0x03030281
   1.373 +#define OID_FDDI_IF_IN_UCAST_PKTS		   		0x03030282
   1.374 +#define OID_FDDI_IF_IN_NUCAST_PKTS		  		0x03030283
   1.375 +#define OID_FDDI_IF_IN_DISCARDS			 		0x03030284
   1.376 +#define OID_FDDI_IF_IN_ERRORS			   		0x03030285
   1.377 +#define OID_FDDI_IF_IN_UNKNOWN_PROTOS	   		0x03030286
   1.378 +#define OID_FDDI_IF_OUT_OCTETS			  		0x03030287
   1.379 +#define OID_FDDI_IF_OUT_UCAST_PKTS		  		0x03030288
   1.380 +#define OID_FDDI_IF_OUT_NUCAST_PKTS		 		0x03030289
   1.381 +#define OID_FDDI_IF_OUT_DISCARDS				0x0303028A
   1.382 +#define OID_FDDI_IF_OUT_ERRORS			  		0x0303028B
   1.383 +#define OID_FDDI_IF_OUT_QLEN					0x0303028C
   1.384 +#define OID_FDDI_IF_SPECIFIC					0x0303028D
   1.385 +//
   1.386 +// WAN objects
   1.387 +//
   1.388 +#define OID_WAN_PERMANENT_ADDRESS		   		0x04010101
   1.389 +#define OID_WAN_CURRENT_ADDRESS			 		0x04010102
   1.390 +#define OID_WAN_QUALITY_OF_SERVICE		  		0x04010103
   1.391 +#define OID_WAN_PROTOCOL_TYPE			   		0x04010104
   1.392 +#define OID_WAN_MEDIUM_SUBTYPE			  		0x04010105
   1.393 +#define OID_WAN_HEADER_FORMAT			   		0x04010106
   1.394 +#define OID_WAN_GET_INFO						0x04010107
   1.395 +#define OID_WAN_SET_LINK_INFO			   		0x04010108
   1.396 +#define OID_WAN_GET_LINK_INFO			   		0x04010109
   1.397 +#define OID_WAN_LINE_COUNT				  		0x0401010A
   1.398 +#define OID_WAN_GET_BRIDGE_INFO			 		0x0401020A
   1.399 +#define OID_WAN_SET_BRIDGE_INFO			 		0x0401020B
   1.400 +#define OID_WAN_GET_COMP_INFO			   		0x0401020C
   1.401 +#define OID_WAN_SET_COMP_INFO			   		0x0401020D
   1.402 +#define OID_WAN_GET_STATS_INFO			  		0x0401020E
   1.403 +//
   1.404 +// LocalTalk objects
   1.405 +//
   1.406 +#define OID_LTALK_CURRENT_NODE_ID		   		0x05010102
   1.407 +#define OID_LTALK_IN_BROADCASTS			 		0x05020101
   1.408 +#define OID_LTALK_IN_LENGTH_ERRORS		  		0x05020102
   1.409 +#define OID_LTALK_OUT_NO_HANDLERS		   		0x05020201
   1.410 +#define OID_LTALK_COLLISIONS					0x05020202
   1.411 +#define OID_LTALK_DEFERS						0x05020203
   1.412 +#define OID_LTALK_NO_DATA_ERRORS				0x05020204
   1.413 +#define OID_LTALK_RANDOM_CTS_ERRORS		 		0x05020205
   1.414 +#define OID_LTALK_FCS_ERRORS					0x05020206
   1.415 +//
   1.416 +// Arcnet objects
   1.417 +//
   1.418 +#define OID_ARCNET_PERMANENT_ADDRESS			0x06010101
   1.419 +#define OID_ARCNET_CURRENT_ADDRESS		  		0x06010102
   1.420 +#define OID_ARCNET_RECONFIGURATIONS		 		0x06020201
   1.421 +//
   1.422 +// TAPI objects
   1.423 +//
   1.424 +#define OID_TAPI_ACCEPT					 		0x07030101
   1.425 +#define OID_TAPI_ANSWER					 		0x07030102
   1.426 +#define OID_TAPI_CLOSE					  		0x07030103
   1.427 +#define OID_TAPI_CLOSE_CALL				 		0x07030104
   1.428 +#define OID_TAPI_CONDITIONAL_MEDIA_DETECTION	0x07030105
   1.429 +#define OID_TAPI_CONFIG_DIALOG			  		0x07030106
   1.430 +#define OID_TAPI_DEV_SPECIFIC			   		0x07030107
   1.431 +#define OID_TAPI_DIAL					   		0x07030108
   1.432 +#define OID_TAPI_DROP					   		0x07030109
   1.433 +#define OID_TAPI_GET_ADDRESS_CAPS		   		0x0703010A
   1.434 +#define OID_TAPI_GET_ADDRESS_ID			 		0x0703010B
   1.435 +#define OID_TAPI_GET_ADDRESS_STATUS		 		0x0703010C
   1.436 +#define OID_TAPI_GET_CALL_ADDRESS_ID			0x0703010D
   1.437 +#define OID_TAPI_GET_CALL_INFO			  		0x0703010E
   1.438 +#define OID_TAPI_GET_CALL_STATUS				0x0703010F
   1.439 +#define OID_TAPI_GET_DEV_CAPS			   		0x07030110
   1.440 +#define OID_TAPI_GET_DEV_CONFIG			 		0x07030111
   1.441 +#define OID_TAPI_GET_EXTENSION_ID		   		0x07030112
   1.442 +#define OID_TAPI_GET_ID					 		0x07030113
   1.443 +#define OID_TAPI_GET_LINE_DEV_STATUS			0x07030114
   1.444 +#define OID_TAPI_MAKE_CALL				  		0x07030115
   1.445 +#define OID_TAPI_NEGOTIATE_EXT_VERSION	  		0x07030116
   1.446 +#define OID_TAPI_OPEN					   		0x07030117
   1.447 +#define OID_TAPI_PROVIDER_INITIALIZE			0x07030118
   1.448 +#define OID_TAPI_PROVIDER_SHUTDOWN		  		0x07030119
   1.449 +#define OID_TAPI_SECURE_CALL					0x0703011A
   1.450 +#define OID_TAPI_SELECT_EXT_VERSION		 		0x0703011B
   1.451 +#define OID_TAPI_SEND_USER_USER_INFO			0x0703011C
   1.452 +#define OID_TAPI_SET_APP_SPECIFIC		   		0x0703011D
   1.453 +#define OID_TAPI_SET_CALL_PARAMS				0x0703011E
   1.454 +#define OID_TAPI_SET_DEFAULT_MEDIA_DETECTION	0x0703011F
   1.455 +#define OID_TAPI_SET_DEV_CONFIG			 		0x07030120
   1.456 +#define OID_TAPI_SET_MEDIA_MODE			 		0x07030121
   1.457 +#define OID_TAPI_SET_STATUS_MESSAGES			0x07030122
   1.458 +//
   1.459 +// ATM Connection Oriented Ndis
   1.460 +//
   1.461 +#define OID_ATM_SUPPORTED_VC_RATES				0x08010101
   1.462 +#define OID_ATM_SUPPORTED_SERVICE_CATEGORY		0x08010102
   1.463 +#define OID_ATM_SUPPORTED_AAL_TYPES				0x08010103
   1.464 +#define OID_ATM_HW_CURRENT_ADDRESS				0x08010104
   1.465 +#define OID_ATM_MAX_ACTIVE_VCS					0x08010105
   1.466 +#define OID_ATM_MAX_ACTIVE_VCI_BITS				0x08010106
   1.467 +#define OID_ATM_MAX_ACTIVE_VPI_BITS				0x08010107
   1.468 +#define OID_ATM_MAX_AAL0_PACKET_SIZE			0x08010108
   1.469 +#define OID_ATM_MAX_AAL1_PACKET_SIZE			0x08010109
   1.470 +#define OID_ATM_MAX_AAL34_PACKET_SIZE			0x0801010A
   1.471 +#define OID_ATM_MAX_AAL5_PACKET_SIZE			0x0801010B
   1.472 +#define OID_ATM_SIGNALING_VPIVCI				0x08010201
   1.473 +#define OID_ATM_ASSIGNED_VPI					0x08010202
   1.474 +#define OID_ATM_ACQUIRE_ACCESS_NET_RESOURCES	0x08010203
   1.475 +#define OID_ATM_RELEASE_ACCESS_NET_RESOURCES	0x08010204
   1.476 +#define OID_ATM_ILMI_VPIVCI						0x08010205
   1.477 +#define OID_ATM_DIGITAL_BROADCAST_VPIVCI		0x08010206
   1.478 +#define	OID_ATM_GET_NEAREST_FLOW				0x08010207
   1.479 +#define OID_ATM_ALIGNMENT_REQUIRED				0x08010208
   1.480 +//
   1.481 +//      ATM specific statistics OIDs.
   1.482 +//
   1.483 +#define	OID_ATM_RCV_CELLS_OK					0x08020101
   1.484 +#define	OID_ATM_XMIT_CELLS_OK					0x08020102
   1.485 +#define	OID_ATM_RCV_CELLS_DROPPED				0x08020103
   1.486 +#define	OID_ATM_RCV_INVALID_VPI_VCI				0x08020201
   1.487 +#define	OID_ATM_CELLS_HEC_ERROR					0x08020202
   1.488 +#define	OID_ATM_RCV_REASSEMBLY_ERROR			0x08020203
   1.489 +//
   1.490 +// PCCA (Wireless) object
   1.491 +//
   1.492 +//
   1.493 +// All WirelessWAN devices must support the following OIDs
   1.494 +//
   1.495 +#define OID_WW_GEN_NETWORK_TYPES_SUPPORTED		0x09010101
   1.496 +#define OID_WW_GEN_NETWORK_TYPE_IN_USE			0x09010102
   1.497 +#define OID_WW_GEN_HEADER_FORMATS_SUPPORTED		0x09010103
   1.498 +#define OID_WW_GEN_HEADER_FORMAT_IN_USE			0x09010104
   1.499 +#define OID_WW_GEN_INDICATION_REQUEST			0x09010105
   1.500 +#define OID_WW_GEN_DEVICE_INFO					0x09010106
   1.501 +#define OID_WW_GEN_OPERATION_MODE				0x09010107
   1.502 +#define OID_WW_GEN_LOCK_STATUS					0x09010108
   1.503 +#define OID_WW_GEN_DISABLE_TRANSMITTER			0x09010109
   1.504 +#define OID_WW_GEN_NETWORK_ID					0x0901010A
   1.505 +#define OID_WW_GEN_PERMANENT_ADDRESS			0x0901010B
   1.506 +#define OID_WW_GEN_CURRENT_ADDRESS				0x0901010C
   1.507 +#define OID_WW_GEN_SUSPEND_DRIVER				0x0901010D
   1.508 +#define OID_WW_GEN_BASESTATION_ID				0x0901010E
   1.509 +#define OID_WW_GEN_CHANNEL_ID					0x0901010F
   1.510 +#define OID_WW_GEN_ENCRYPTION_SUPPORTED			0x09010110
   1.511 +#define OID_WW_GEN_ENCRYPTION_IN_USE			0x09010111
   1.512 +#define OID_WW_GEN_ENCRYPTION_STATE				0x09010112
   1.513 +#define OID_WW_GEN_CHANNEL_QUALITY				0x09010113
   1.514 +#define OID_WW_GEN_REGISTRATION_STATUS			0x09010114
   1.515 +#define OID_WW_GEN_RADIO_LINK_SPEED				0x09010115
   1.516 +#define OID_WW_GEN_LATENCY						0x09010116
   1.517 +#define OID_WW_GEN_BATTERY_LEVEL				0x09010117
   1.518 +#define OID_WW_GEN_EXTERNAL_POWER				0x09010118
   1.519 +//
   1.520 +// Network Dependent OIDs - Mobitex:
   1.521 +//
   1.522 +#define OID_WW_MBX_SUBADDR						0x09050101
   1.523 +// OID 0x09050102 is reserved and may not be used
   1.524 +#define OID_WW_MBX_FLEXLIST						0x09050103
   1.525 +#define OID_WW_MBX_GROUPLIST					0x09050104
   1.526 +#define OID_WW_MBX_TRAFFIC_AREA					0x09050105
   1.527 +#define OID_WW_MBX_LIVE_DIE						0x09050106
   1.528 +#define OID_WW_MBX_TEMP_DEFAULTLIST				0x09050107
   1.529 +//
   1.530 +// Network Dependent OIDs - Pinpoint:
   1.531 +//
   1.532 +#define OID_WW_PIN_LOC_AUTHORIZE				0x09090101
   1.533 +#define OID_WW_PIN_LAST_LOCATION				0x09090102
   1.534 +#define OID_WW_PIN_LOC_FIX						0x09090103
   1.535 +//
   1.536 +// Network Dependent - CDPD:
   1.537 +//
   1.538 +#define OID_WW_CDPD_SPNI						0x090D0101
   1.539 +#define OID_WW_CDPD_WASI						0x090D0102
   1.540 +#define OID_WW_CDPD_AREA_COLOR					0x090D0103
   1.541 +#define OID_WW_CDPD_TX_POWER_LEVEL				0x090D0104
   1.542 +#define OID_WW_CDPD_EID							0x090D0105
   1.543 +#define OID_WW_CDPD_HEADER_COMPRESSION			0x090D0106
   1.544 +#define OID_WW_CDPD_DATA_COMPRESSION			0x090D0107
   1.545 +#define OID_WW_CDPD_CHANNEL_SELECT				0x090D0108
   1.546 +#define OID_WW_CDPD_CHANNEL_STATE				0x090D0109
   1.547 +#define OID_WW_CDPD_NEI							0x090D010A
   1.548 +#define OID_WW_CDPD_NEI_STATE					0x090D010B
   1.549 +#define OID_WW_CDPD_SERVICE_PROVIDER_IDENTIFIER	0x090D010C
   1.550 +#define OID_WW_CDPD_SLEEP_MODE					0x090D010D
   1.551 +#define OID_WW_CDPD_CIRCUIT_SWITCHED			0x090D010E
   1.552 +#define	OID_WW_CDPD_TEI							0x090D010F
   1.553 +#define	OID_WW_CDPD_RSSI						0x090D0110
   1.554 +//
   1.555 +// Network Dependent - Ardis:
   1.556 +//
   1.557 +#define OID_WW_ARD_SNDCP						0x09110101
   1.558 +#define OID_WW_ARD_TMLY_MSG						0x09110102
   1.559 +#define OID_WW_ARD_DATAGRAM						0x09110103
   1.560 +//
   1.561 +// Network Dependent - DataTac:
   1.562 +//
   1.563 +#define OID_WW_TAC_COMPRESSION					0x09150101
   1.564 +#define OID_WW_TAC_SET_CONFIG					0x09150102
   1.565 +#define OID_WW_TAC_GET_STATUS					0x09150103
   1.566 +#define OID_WW_TAC_USER_HEADER					0x09150104
   1.567 +//
   1.568 +// Network Dependent - Metricom:
   1.569 +//
   1.570 +#define OID_WW_MET_FUNCTION						0x09190101
   1.571 +//
   1.572 +// IRDA objects
   1.573 +//
   1.574 +#define OID_IRDA_RECEIVING						0x0A010100
   1.575 +#define OID_IRDA_TURNAROUND_TIME				0x0A010101
   1.576 +#define OID_IRDA_SUPPORTED_SPEEDS				0x0A010102
   1.577 +#define OID_IRDA_LINK_SPEED						0x0A010103
   1.578 +#define OID_IRDA_MEDIA_BUSY						0x0A010104
   1.579 +#define OID_IRDA_EXTRA_RCV_BOFS					0x0A010200
   1.580 +#define OID_IRDA_RATE_SNIFF						0x0A010201
   1.581 +#define OID_IRDA_UNICAST_LIST					0x0A010202
   1.582 +#define OID_IRDA_MAX_UNICAST_LIST_SIZE			0x0A010203
   1.583 +#define OID_IRDA_MAX_RECEIVE_WINDOW_SIZE		0x0A010204
   1.584 +#define OID_IRDA_MAX_SEND_WINDOW_SIZE			0x0A010205
   1.585 +//
   1.586 +// Medium the Ndis Driver is running on (OID_GEN_MEDIA_SUPPORTED/
   1.587 +// OID_GEN_MEDIA_IN_USE).
   1.588 +//
   1.589 +typedef enum _NDIS_MEDIUM {
   1.590 +    NdisMedium802_3,
   1.591 +    NdisMedium802_5,
   1.592 +    NdisMediumFddi,
   1.593 +    NdisMediumWan,
   1.594 +    NdisMediumLocalTalk,
   1.595 +    NdisMediumDix,		// defined for convenience, not a real medium
   1.596 +     NdisMediumArcnetRaw,
   1.597 +    NdisMediumArcnet878_2,
   1.598 +    NdisMediumAtm,
   1.599 +    NdisMediumWirelessWan,
   1.600 +    NdisMediumIrda,
   1.601 +    NdisMediumMax		// Not a real medium, defined as an upper-bound
   1.602 +} NDIS_MEDIUM, *PNDIS_MEDIUM;
   1.603 +
   1.604 +//
   1.605 +// Hardware status codes (OID_GEN_HARDWARE_STATUS).
   1.606 +//
   1.607 +typedef enum _NDIS_HARDWARE_STATUS {
   1.608 +    NdisHardwareStatusReady,
   1.609 +    NdisHardwareStatusInitializing,
   1.610 +    NdisHardwareStatusReset,
   1.611 +    NdisHardwareStatusClosing,
   1.612 +    NdisHardwareStatusNotReady
   1.613 +} NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS;
   1.614 +
   1.615 +//
   1.616 +// this is the type passed in the OID_GEN_GET_TIME_CAPS request
   1.617 +//
   1.618 +typedef struct _GEN_GET_TIME_CAPS {
   1.619 +    ULONG Flags;		// Bits defined below
   1.620 +
   1.621 +    ULONG ClockPrecision;
   1.622 +} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS;
   1.623 +
   1.624 +#define	READABLE_LOCAL_CLOCK					0x000000001
   1.625 +#define	CLOCK_NETWORK_DERIVED					0x000000002
   1.626 +#define	CLOCK_PRECISION							0x000000004
   1.627 +#define	RECEIVE_TIME_INDICATION_CAPABLE			0x000000008
   1.628 +#define	TIMED_SEND_CAPABLE						0x000000010
   1.629 +#define	TIME_STAMP_CAPABLE						0x000000020
   1.630 +//
   1.631 +//
   1.632 +// this is the type passed in the OID_GEN_GET_NETCARD_TIME request
   1.633 +//
   1.634 +typedef struct _GEN_GET_NETCARD_TIME {
   1.635 +    ULONG ReadTime;
   1.636 +} GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME;
   1.637 +
   1.638 +//
   1.639 +// Defines the attachment types for FDDI (OID_FDDI_ATTACHMENT_TYPE).
   1.640 +//
   1.641 +typedef enum _NDIS_FDDI_ATTACHMENT_TYPE {
   1.642 +    NdisFddiTypeIsolated = 1,
   1.643 +    NdisFddiTypeLocalA,
   1.644 +    NdisFddiTypeLocalB,
   1.645 +    NdisFddiTypeLocalAB,
   1.646 +    NdisFddiTypeLocalS,
   1.647 +    NdisFddiTypeWrapA,
   1.648 +    NdisFddiTypeWrapB,
   1.649 +    NdisFddiTypeWrapAB,
   1.650 +    NdisFddiTypeWrapS,
   1.651 +    NdisFddiTypeCWrapA,
   1.652 +    NdisFddiTypeCWrapB,
   1.653 +    NdisFddiTypeCWrapS,
   1.654 +    NdisFddiTypeThrough
   1.655 +} NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE;
   1.656 +
   1.657 +//
   1.658 +// Defines the ring management states for FDDI (OID_FDDI_RING_MGT_STATE).
   1.659 +//
   1.660 +typedef enum _NDIS_FDDI_RING_MGT_STATE {
   1.661 +    NdisFddiRingIsolated = 1,
   1.662 +    NdisFddiRingNonOperational,
   1.663 +    NdisFddiRingOperational,
   1.664 +    NdisFddiRingDetect,
   1.665 +    NdisFddiRingNonOperationalDup,
   1.666 +    NdisFddiRingOperationalDup,
   1.667 +    NdisFddiRingDirected,
   1.668 +    NdisFddiRingTrace
   1.669 +} NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE;
   1.670 +
   1.671 +//
   1.672 +// Defines the Lconnection state for FDDI (OID_FDDI_LCONNECTION_STATE).
   1.673 +//
   1.674 +typedef enum _NDIS_FDDI_LCONNECTION_STATE {
   1.675 +    NdisFddiStateOff = 1,
   1.676 +    NdisFddiStateBreak,
   1.677 +    NdisFddiStateTrace,
   1.678 +    NdisFddiStateConnect,
   1.679 +    NdisFddiStateNext,
   1.680 +    NdisFddiStateSignal,
   1.681 +    NdisFddiStateJoin,
   1.682 +    NdisFddiStateVerify,
   1.683 +    NdisFddiStateActive,
   1.684 +    NdisFddiStateMaintenance
   1.685 +} NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE;
   1.686 +
   1.687 +//
   1.688 +// Defines the medium subtypes for WAN medium (OID_WAN_MEDIUM_SUBTYPE).
   1.689 +//
   1.690 +typedef enum _NDIS_WAN_MEDIUM_SUBTYPE {
   1.691 +    NdisWanMediumHub,
   1.692 +    NdisWanMediumX_25,
   1.693 +    NdisWanMediumIsdn,
   1.694 +    NdisWanMediumSerial,
   1.695 +    NdisWanMediumFrameRelay,
   1.696 +    NdisWanMediumAtm,
   1.697 +    NdisWanMediumSonet,
   1.698 +    NdisWanMediumSW56K
   1.699 +} NDIS_WAN_MEDIUM_SUBTYPE, *PNDIS_WAN_MEDIUM_SUBTYPE;
   1.700 +
   1.701 +//
   1.702 +// Defines the header format for WAN medium (OID_WAN_HEADER_FORMAT).
   1.703 +//
   1.704 +typedef enum _NDIS_WAN_HEADER_FORMAT {
   1.705 +    NdisWanHeaderNative,	// src/dest based on subtype, followed by NLPID
   1.706 +     NdisWanHeaderEthernet	// emulation of ethernet header
   1.707 +} NDIS_WAN_HEADER_FORMAT, *PNDIS_WAN_HEADER_FORMAT;
   1.708 +
   1.709 +//
   1.710 +// Defines the line quality on a WAN line (OID_WAN_QUALITY_OF_SERVICE).
   1.711 +//
   1.712 +typedef enum _NDIS_WAN_QUALITY {
   1.713 +    NdisWanRaw,
   1.714 +    NdisWanErrorControl,
   1.715 +    NdisWanReliable
   1.716 +} NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY;
   1.717 +
   1.718 +//
   1.719 +// Defines the state of a token-ring adapter (OID_802_5_CURRENT_RING_STATE).
   1.720 +//
   1.721 +typedef enum _NDIS_802_5_RING_STATE {
   1.722 +    NdisRingStateOpened = 1,
   1.723 +    NdisRingStateClosed,
   1.724 +    NdisRingStateOpening,
   1.725 +    NdisRingStateClosing,
   1.726 +    NdisRingStateOpenFailure,
   1.727 +    NdisRingStateRingFailure
   1.728 +} NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE;
   1.729 +
   1.730 +//
   1.731 +// Defines the state of the LAN media
   1.732 +//
   1.733 +typedef enum _NDIS_MEDIA_STATE {
   1.734 +    NdisMediaStateConnected,
   1.735 +    NdisMediaStateDisconnected
   1.736 +} NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE;
   1.737 +
   1.738 +//
   1.739 +// The following is set on a per-packet basis as OOB data with NdisClass802_3Priority
   1.740 +//
   1.741 +typedef ULONG Priority_802_3;	// 0-7 priority levels
   1.742 +//
   1.743 +//      The following structure is used to query OID_GEN_CO_LINK_SPEED and
   1.744 +//      OID_GEN_CO_MINIMUM_LINK_SPEED.  The first OID will return the current
   1.745 +//      link speed of the adapter.  The second will return the minimum link speed
   1.746 +//      the adapter is capable of.
   1.747 +//
   1.748 +
   1.749 +typedef struct _NDIS_CO_LINK_SPEED {
   1.750 +    ULONG Outbound;
   1.751 +    ULONG Inbound;
   1.752 +} NDIS_CO_LINK_SPEED,
   1.753 +
   1.754 +*PNDIS_CO_LINK_SPEED;
   1.755 +//
   1.756 +// Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER).
   1.757 +//
   1.758 +#define NDIS_PACKET_TYPE_DIRECTED				0x0001
   1.759 +#define NDIS_PACKET_TYPE_MULTICAST				0x0002
   1.760 +#define NDIS_PACKET_TYPE_ALL_MULTICAST			0x0004
   1.761 +#define NDIS_PACKET_TYPE_BROADCAST				0x0008
   1.762 +#define NDIS_PACKET_TYPE_SOURCE_ROUTING			0x0010
   1.763 +#define NDIS_PACKET_TYPE_PROMISCUOUS			0x0020
   1.764 +#define NDIS_PACKET_TYPE_SMT					0x0040
   1.765 +#define NDIS_PACKET_TYPE_ALL_LOCAL				0x0080
   1.766 +#define NDIS_PACKET_TYPE_MAC_FRAME				0x8000
   1.767 +#define NDIS_PACKET_TYPE_FUNCTIONAL				0x4000
   1.768 +#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL			0x2000
   1.769 +#define NDIS_PACKET_TYPE_GROUP					0x1000
   1.770 +//
   1.771 +// Ndis Token-Ring Ring Status Codes (OID_802_5_CURRENT_RING_STATUS).
   1.772 +//
   1.773 +#define NDIS_RING_SIGNAL_LOSS					0x00008000
   1.774 +#define NDIS_RING_HARD_ERROR					0x00004000
   1.775 +#define NDIS_RING_SOFT_ERROR					0x00002000
   1.776 +#define NDIS_RING_TRANSMIT_BEACON				0x00001000
   1.777 +#define NDIS_RING_LOBE_WIRE_FAULT				0x00000800
   1.778 +#define NDIS_RING_AUTO_REMOVAL_ERROR			0x00000400
   1.779 +#define NDIS_RING_REMOVE_RECEIVED				0x00000200
   1.780 +#define NDIS_RING_COUNTER_OVERFLOW				0x00000100
   1.781 +#define NDIS_RING_SINGLE_STATION				0x00000080
   1.782 +#define NDIS_RING_RING_RECOVERY					0x00000040
   1.783 +//
   1.784 +// Ndis protocol option bits (OID_GEN_PROTOCOL_OPTIONS).
   1.785 +//
   1.786 +#define NDIS_PROT_OPTION_ESTIMATED_LENGTH   	0x00000001
   1.787 +#define NDIS_PROT_OPTION_NO_LOOPBACK			0x00000002
   1.788 +#define NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT		0x00000004
   1.789 +//
   1.790 +// Ndis MAC option bits (OID_GEN_MAC_OPTIONS).
   1.791 +//
   1.792 +#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 	0x00000001
   1.793 +#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED  	0x00000002
   1.794 +#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND  	0x00000004
   1.795 +#define NDIS_MAC_OPTION_NO_LOOPBACK				0x00000008
   1.796 +#define NDIS_MAC_OPTION_FULL_DUPLEX				0x00000010
   1.797 +#define	NDIS_MAC_OPTION_EOTX_INDICATION			0x00000020
   1.798 +#define NDIS_MAC_OPTION_RESERVED				0x80000000
   1.799 +//
   1.800 +//      NDIS MAC option bits for OID_GEN_CO_MAC_OPTIONS.
   1.801 +//
   1.802 +#define	NDIS_CO_MAC_OPTION_DYNAMIC_LINK_SPEED	0x00000001
   1.803 +#ifdef	IRDA
   1.804 +//
   1.805 +// The following is set on a per-packet basis as OOB data with NdisClassIrdaPacketInfo
   1.806 +// This is the per-packet info specified on a per-packet basis
   1.807 +//
   1.808 +typedef struct _NDIS_IRDA_PACKET_INFO {
   1.809 +    UINT ExtraBOFs;
   1.810 +    UINT MinTurnAroundTime;
   1.811 +} NDIS_IRDA_PACKET_INFO, *PNDIS_IRDA_PACKET_INFO;
   1.812 +
   1.813 +#endif
   1.814 +#ifdef  WIRELESS_WAN
   1.815 +//
   1.816 +// Wireless WAN structure definitions
   1.817 +//
   1.818 +//
   1.819 +// currently defined Wireless network subtypes
   1.820 +//
   1.821 +typedef enum _NDIS_WW_NETWORK_TYPE {
   1.822 +    NdisWWGeneric,
   1.823 +    NdisWWMobitex,
   1.824 +    NdisWWPinpoint,
   1.825 +    NdisWWCDPD,
   1.826 +    NdisWWArdis,
   1.827 +    NdisWWDataTAC,
   1.828 +    NdisWWMetricom,
   1.829 +    NdisWWGSM,
   1.830 +    NdisWWCDMA,
   1.831 +    NdisWWTDMA,
   1.832 +    NdisWWAMPS,
   1.833 +    NdisWWInmarsat,
   1.834 +    NdisWWpACT
   1.835 +} NDIS_WW_NETWORK_TYPE;
   1.836 +
   1.837 +//
   1.838 +// currently defined header formats
   1.839 +//
   1.840 +typedef enum _NDIS_WW_HEADER_FORMAT {
   1.841 +    NdisWWDIXEthernetFrames,
   1.842 +    NdisWWMPAKFrames,
   1.843 +    NdisWWRDLAPFrames,
   1.844 +    NdisWWMDC4800Frames
   1.845 +} NDIS_WW_HEADER_FORMAT;
   1.846 +
   1.847 +//
   1.848 +// currently defined encryption types
   1.849 +//
   1.850 +typedef enum _NDIS_WW_ENCRYPTION_TYPE {
   1.851 +    NdisWWUnknownEncryption = -1,
   1.852 +    NdisWWNoEncryption,
   1.853 +    NdisWWDefaultEncryption
   1.854 +} NDIS_WW_ENCRYPTION_TYPE, *PNDIS_WW_ENCRYPTION_TYPE;
   1.855 +
   1.856 +//
   1.857 +// OID_WW_GEN_INDICATION_REQUEST
   1.858 +//
   1.859 +typedef struct _NDIS_WW_INDICATION_REQUEST {
   1.860 +    NDIS_OID Oid;		// IN
   1.861 +
   1.862 +    UINT uIndicationFlag;	// IN
   1.863 +
   1.864 +    UINT uApplicationToken;	// IN OUT
   1.865 +
   1.866 +    HANDLE hIndicationHandle;	// IN OUT
   1.867 +
   1.868 +    INT iPollingInterval;	// IN OUT
   1.869 +
   1.870 +    NDIS_VAR_DATA_DESC InitialValue;	// IN OUT
   1.871 +
   1.872 +    NDIS_VAR_DATA_DESC OIDIndicationValue;	// OUT - only valid after indication
   1.873 +
   1.874 +    NDIS_VAR_DATA_DESC TriggerValue;	// IN
   1.875 +
   1.876 +} NDIS_WW_INDICATION_REQUEST, *PNDIS_WW_INDICATION_REQUEST;
   1.877 +
   1.878 +#define OID_INDICATION_REQUEST_ENABLE			0x0000
   1.879 +#define OID_INDICATION_REQUEST_CANCEL			0x0001
   1.880 +//
   1.881 +// OID_WW_GEN_DEVICE_INFO
   1.882 +//
   1.883 +typedef struct _WW_DEVICE_INFO {
   1.884 +    NDIS_VAR_DATA_DESC Manufacturer;
   1.885 +    NDIS_VAR_DATA_DESC ModelNum;
   1.886 +    NDIS_VAR_DATA_DESC SWVersionNum;
   1.887 +    NDIS_VAR_DATA_DESC SerialNum;
   1.888 +} WW_DEVICE_INFO, *PWW_DEVICE_INFO;
   1.889 +
   1.890 +//
   1.891 +// OID_WW_GEN_OPERATION_MODE
   1.892 +//
   1.893 +typedef INT WW_OPERATION_MODE;	//  0 = Normal mode
   1.894 +												//  1 = Power saving mode
   1.895 +												// -1 = mode unknown
   1.896 +//
   1.897 +// OID_WW_GEN_LOCK_STATUS
   1.898 +//
   1.899 +
   1.900 +typedef INT WW_LOCK_STATUS;	//  0 = unlocked
   1.901 +												//  1 = locked
   1.902 +												// -1 = unknown lock status
   1.903 +//
   1.904 +// OID_WW_GEN_DISABLE_TRANSMITTER
   1.905 +//
   1.906 +
   1.907 +typedef INT WW_DISABLE_TRANSMITTER;	//  0 = transmitter enabled
   1.908 +												//  1 = transmitter disabled
   1.909 +												// -1 = unknown value
   1.910 +//
   1.911 +// OID_WW_GEN_NETWORK_ID
   1.912 +//
   1.913 +
   1.914 +typedef NDIS_VAR_DATA_DESC WW_NETWORK_ID;
   1.915 +//
   1.916 +// OID_WW_GEN_PERMANENT_ADDRESS 
   1.917 +//
   1.918 +typedef NDIS_VAR_DATA_DESC WW_PERMANENT_ADDRESS;
   1.919 +//
   1.920 +// OID_WW_GEN_CURRENT_ADDRESS   
   1.921 +//
   1.922 +typedef struct _WW_CURRENT_ADDRESS {
   1.923 +    NDIS_WW_HEADER_FORMAT Format;
   1.924 +    NDIS_VAR_DATA_DESC Address;
   1.925 +} WW_CURRENT_ADDRESS, *PWW_CURRENT_ADDRESS;
   1.926 +
   1.927 +//
   1.928 +// OID_WW_GEN_SUSPEND_DRIVER
   1.929 +//
   1.930 +typedef BOOLEAN WW_SUSPEND_DRIVER;	// 0 = driver operational
   1.931 +												// 1 = driver suspended
   1.932 +//
   1.933 +// OID_WW_GEN_BASESTATION_ID
   1.934 +//
   1.935 +
   1.936 +typedef NDIS_VAR_DATA_DESC WW_BASESTATION_ID;
   1.937 +//
   1.938 +// OID_WW_GEN_CHANNEL_ID
   1.939 +//
   1.940 +typedef NDIS_VAR_DATA_DESC WW_CHANNEL_ID;
   1.941 +//
   1.942 +// OID_WW_GEN_ENCRYPTION_STATE
   1.943 +//
   1.944 +typedef BOOLEAN WW_ENCRYPTION_STATE;	// 0 = if encryption is disabled
   1.945 +												// 1 = if encryption is enabled
   1.946 +//
   1.947 +// OID_WW_GEN_CHANNEL_QUALITY
   1.948 +//
   1.949 +
   1.950 +typedef INT WW_CHANNEL_QUALITY;	//  0 = Not in network contact,
   1.951 +												// 1-100 = Quality of Channel (100 is highest quality).
   1.952 +												// -1 = channel quality is unknown
   1.953 +//
   1.954 +// OID_WW_GEN_REGISTRATION_STATUS
   1.955 +//
   1.956 +
   1.957 +typedef INT WW_REGISTRATION_STATUS;	//  0 = Registration denied
   1.958 +												//  1 = Registration pending
   1.959 +												//  2 = Registered
   1.960 +												// -1 = unknown registration status
   1.961 +//
   1.962 +// OID_WW_GEN_RADIO_LINK_SPEED
   1.963 +//
   1.964 +
   1.965 +typedef UINT WW_RADIO_LINK_SPEED;	// Bits per second.
   1.966 +//
   1.967 +// OID_WW_GEN_LATENCY
   1.968 +//
   1.969 +
   1.970 +typedef UINT WW_LATENCY;	//  milliseconds
   1.971 +//
   1.972 +// OID_WW_GEN_BATTERY_LEVEL
   1.973 +//
   1.974 +
   1.975 +typedef INT WW_BATTERY_LEVEL;	//  0-100 = battery level in percentage
   1.976 +												//      (100=fully charged)
   1.977 +												// -1 = unknown battery level.
   1.978 +//
   1.979 +// OID_WW_GEN_EXTERNAL_POWER
   1.980 +//
   1.981 +
   1.982 +typedef INT WW_EXTERNAL_POWER;	//   0 = no external power connected
   1.983 +												//   1 = external power connected
   1.984 +												//  -1 = unknown
   1.985 +//
   1.986 +// OID_WW_MET_FUNCTION
   1.987 +//
   1.988 +
   1.989 +typedef NDIS_VAR_DATA_DESC WW_MET_FUNCTION;
   1.990 +//
   1.991 +// OID_WW_TAC_COMPRESSION
   1.992 +//
   1.993 +typedef BOOLEAN WW_TAC_COMPRESSION;	// Determines whether or not network level compression
   1.994 +												// is being used.
   1.995 +//
   1.996 +// OID_WW_TAC_SET_CONFIG
   1.997 +//
   1.998 +
   1.999 +typedef struct _WW_TAC_SETCONFIG {
  1.1000 +    NDIS_VAR_DATA_DESC RCV_MODE;
  1.1001 +    NDIS_VAR_DATA_DESC TX_CONTROL;
  1.1002 +    NDIS_VAR_DATA_DESC RX_CONTROL;
  1.1003 +    NDIS_VAR_DATA_DESC FLOW_CONTROL;
  1.1004 +    NDIS_VAR_DATA_DESC RESET_CNF;
  1.1005 +    NDIS_VAR_DATA_DESC READ_CNF;
  1.1006 +} WW_TAC_SETCONFIG, *PWW_TAC_SETCONFIG;
  1.1007 +
  1.1008 +//
  1.1009 +// OID_WW_TAC_GET_STATUS
  1.1010 +//
  1.1011 +typedef struct _WW_TAC_GETSTATUS {
  1.1012 +    BOOLEAN Action;		// Set = Execute command.
  1.1013 +
  1.1014 +    NDIS_VAR_DATA_DESC Command;
  1.1015 +    NDIS_VAR_DATA_DESC Option;
  1.1016 +    NDIS_VAR_DATA_DESC Response;	// The response to the requested command
  1.1017 +    // - max. length of string is 256 octets.
  1.1018 +
  1.1019 +} WW_TAC_GETSTATUS, *PWW_TAC_GETSTATUS;
  1.1020 +
  1.1021 +//
  1.1022 +// OID_WW_TAC_USER_HEADER
  1.1023 +//
  1.1024 +typedef NDIS_VAR_DATA_DESC WW_TAC_USERHEADER;	// This will hold the user header - Max. 64 octets.
  1.1025 +//
  1.1026 +// OID_WW_ARD_SNDCP
  1.1027 +//
  1.1028 +
  1.1029 +typedef struct _WW_ARD_SNDCP {
  1.1030 +    NDIS_VAR_DATA_DESC Version;	// The version of SNDCP protocol supported.
  1.1031 +
  1.1032 +    INT BlockSize;		// The block size used for SNDCP
  1.1033 +
  1.1034 +    INT Window;			// The window size used in SNDCP
  1.1035 +
  1.1036 +} WW_ARD_SNDCP, *PWW_ARD_SNDCP;
  1.1037 +
  1.1038 +//
  1.1039 +// OID_WW_ARD_TMLY_MSG
  1.1040 +//
  1.1041 +typedef BOOLEAN WW_ARD_CHANNEL_STATUS;	// The current status of the inbound RF Channel.
  1.1042 +//
  1.1043 +// OID_WW_ARD_DATAGRAM
  1.1044 +//
  1.1045 +
  1.1046 +typedef struct _WW_ARD_DATAGRAM {
  1.1047 +    BOOLEAN LoadLevel;		// Byte that contains the load level info.
  1.1048 +
  1.1049 +    INT SessionTime;		// Datagram session time remaining.
  1.1050 +
  1.1051 +    NDIS_VAR_DATA_DESC HostAddr;	// Host address.
  1.1052 +
  1.1053 +    NDIS_VAR_DATA_DESC THostAddr;	// Test host address.
  1.1054 +
  1.1055 +} WW_ARD_DATAGRAM, *PWW_ARD_DATAGRAM;
  1.1056 +
  1.1057 +//
  1.1058 +// OID_WW_CDPD_SPNI
  1.1059 +//
  1.1060 +typedef struct _WW_CDPD_SPNI {
  1.1061 +    UINT SPNI[10];		//10 16-bit service provider network IDs
  1.1062 +
  1.1063 +    INT OperatingMode;		// 0 = ignore SPNI,
  1.1064 +    // 1 = require SPNI from list,
  1.1065 +    // 2 = prefer SPNI from list.
  1.1066 +    // 3 = exclude SPNI from list.
  1.1067 +
  1.1068 +} WW_CDPD_SPNI, *PWW_CDPD_SPNI;
  1.1069 +
  1.1070 +//
  1.1071 +// OID_WW_CDPD_WASI
  1.1072 +//
  1.1073 +typedef struct _WW_CDPD_WIDE_AREA_SERVICE_ID {
  1.1074 +    UINT WASI[10];		//10 16-bit wide area service IDs
  1.1075 +
  1.1076 +    INT OperatingMode;		// 0 = ignore WASI,
  1.1077 +    // 1 = Require WASI from list,
  1.1078 +    // 2 = prefer WASI from list
  1.1079 +    // 3 = exclude WASI from list.
  1.1080 +
  1.1081 +} WW_CDPD_WIDE_AREA_SERVICE_ID, *PWW_CDPD_WIDE_AREA_SERVICE_ID;
  1.1082 +
  1.1083 +//
  1.1084 +// OID_WW_CDPD_AREA_COLOR
  1.1085 +//
  1.1086 +typedef INT WW_CDPD_AREA_COLOR;
  1.1087 +//
  1.1088 +// OID_WW_CDPD_TX_POWER_LEVEL
  1.1089 +//
  1.1090 +typedef UINT WW_CDPD_TX_POWER_LEVEL;
  1.1091 +//
  1.1092 +// OID_WW_CDPD_EID
  1.1093 +//
  1.1094 +typedef NDIS_VAR_DATA_DESC WW_CDPD_EID;
  1.1095 +//
  1.1096 +// OID_WW_CDPD_HEADER_COMPRESSION
  1.1097 +//
  1.1098 +typedef INT WW_CDPD_HEADER_COMPRESSION;		//  0 = no header compression,
  1.1099 +												//  1 = always compress headers,
  1.1100 +												//  2 = compress headers if MD-IS does
  1.1101 +												// -1 = unknown
  1.1102 +//
  1.1103 +// OID_WW_CDPD_DATA_COMPRESSION
  1.1104 +//
  1.1105 +
  1.1106 +typedef INT WW_CDPD_DATA_COMPRESSION;	// 0  = no data compression,
  1.1107 +												// 1  = data compression enabled
  1.1108 +												// -1 =  unknown
  1.1109 +//
  1.1110 +// OID_WW_CDPD_CHANNEL_SELECT
  1.1111 +//
  1.1112 +
  1.1113 +typedef struct _WW_CDPD_CHANNEL_SELECT {
  1.1114 +    UINT ChannelID;		// channel number
  1.1115 +
  1.1116 +    UINT fixedDuration;		// duration in seconds
  1.1117 +
  1.1118 +} WW_CDPD_CHANNEL_SELECT, *PWW_CDPD_CHANNEL_SELECT;
  1.1119 +
  1.1120 +//
  1.1121 +// OID_WW_CDPD_CHANNEL_STATE
  1.1122 +//
  1.1123 +typedef enum _WW_CDPD_CHANNEL_STATE {
  1.1124 +    CDPDChannelNotAvail,
  1.1125 +    CDPDChannelScanning,
  1.1126 +    CDPDChannelInitAcquired,
  1.1127 +    CDPDChannelAcquired,
  1.1128 +    CDPDChannelSleeping,
  1.1129 +    CDPDChannelWaking,
  1.1130 +    CDPDChannelCSDialing,
  1.1131 +    CDPDChannelCSRedial,
  1.1132 +    CDPDChannelCSAnswering,
  1.1133 +    CDPDChannelCSConnected,
  1.1134 +    CDPDChannelCSSuspended
  1.1135 +} WW_CDPD_CHANNEL_STATE, *PWW_CDPD_CHANNEL_STATE;
  1.1136 +
  1.1137 +//
  1.1138 +// OID_WW_CDPD_NEI
  1.1139 +//
  1.1140 +typedef enum _WW_CDPD_NEI_FORMAT {
  1.1141 +    CDPDNeiIPv4,
  1.1142 +    CDPDNeiCLNP,
  1.1143 +    CDPDNeiIPv6
  1.1144 +} WW_CDPD_NEI_FORMAT, *PWW_CDPD_NEI_FORMAT;
  1.1145 +typedef enum _WW_CDPD_NEI_TYPE {
  1.1146 +    CDPDNeiIndividual,
  1.1147 +    CDPDNeiMulticast,
  1.1148 +    CDPDNeiBroadcast
  1.1149 +} WW_CDPD_NEI_TYPE;
  1.1150 +typedef struct _WW_CDPD_NEI {
  1.1151 +    UINT uNeiIndex;
  1.1152 +    WW_CDPD_NEI_FORMAT NeiFormat;
  1.1153 +    WW_CDPD_NEI_TYPE NeiType;
  1.1154 +    WORD NeiGmid;		// group member identifier, only
  1.1155 +    // meaningful if NeiType ==
  1.1156 +    // CDPDNeiMulticast
  1.1157 +
  1.1158 +    NDIS_VAR_DATA_DESC NeiAddress;
  1.1159 +} WW_CDPD_NEI;
  1.1160 +
  1.1161 +//
  1.1162 +// OID_WW_CDPD_NEI_STATE
  1.1163 +//
  1.1164 +typedef enum _WW_CDPD_NEI_STATE {
  1.1165 +    CDPDUnknown,
  1.1166 +    CDPDRegistered,
  1.1167 +    CDPDDeregistered
  1.1168 +} WW_CDPD_NEI_STATE, *PWW_CDPD_NEI_STATE;
  1.1169 +typedef enum _WW_CDPD_NEI_SUB_STATE {
  1.1170 +    CDPDPending,		// Registration pending
  1.1171 +     CDPDNoReason,		// Registration denied - no reason given
  1.1172 +     CDPDMDISNotCapable,	// Registration denied - MD-IS not capable of
  1.1173 +    //  handling M-ES at this time
  1.1174 +     CDPDNEINotAuthorized,	// Registration denied - NEI is not authorized to
  1.1175 +    //  use this subnetwork
  1.1176 +     CDPDInsufficientAuth,	// Registration denied - M-ES gave insufficient
  1.1177 +    //  authentication credentials
  1.1178 +     CDPDUnsupportedAuth,	// Registration denied - M-ES gave unsupported
  1.1179 +    //  authentication credentials
  1.1180 +     CDPDUsageExceeded,		// Registration denied - NEI has exceeded usage
  1.1181 +    //  limitations
  1.1182 +     CDPDDeniedThisNetwork	// Registration denied on this network, service
  1.1183 +    //  may be obtained on alternate Service Provider
  1.1184 +    //  network
  1.1185 +} WW_CDPD_NEI_SUB_STATE;
  1.1186 +typedef struct _WW_CDPD_NEI_REG_STATE {
  1.1187 +    UINT uNeiIndex;
  1.1188 +    WW_CDPD_NEI_STATE NeiState;
  1.1189 +    WW_CDPD_NEI_SUB_STATE NeiSubState;
  1.1190 +} WW_CDPD_NEI_REG_STATE, *PWW_CDPD_NEI_REG_STATE;
  1.1191 +
  1.1192 +//
  1.1193 +// OID_WW_CDPD_SERVICE_PROVIDER_IDENTIFIER
  1.1194 +//
  1.1195 +typedef struct _WW_CDPD_SERVICE_PROVIDER_ID {
  1.1196 +    UINT SPI[10];		//10 16-bit service provider IDs
  1.1197 +
  1.1198 +    INT OperatingMode;		// 0 = ignore SPI,
  1.1199 +    // 1 = require SPI from list,
  1.1200 +    // 2 = prefer SPI from list.
  1.1201 +    // 3 = exclude SPI from list.
  1.1202 +
  1.1203 +} WW_CDPD_SERVICE_PROVIDER_ID, *PWW_CDPD_SERVICE_PROVIDER_ID;
  1.1204 +
  1.1205 +//
  1.1206 +// OID_WW_CDPD_SLEEP_MODE
  1.1207 +//
  1.1208 +typedef INT WW_CDPD_SLEEP_MODE;
  1.1209 +//
  1.1210 +// OID_WW_CDPD_TEI
  1.1211 +//
  1.1212 +typedef ULONG WW_CDPD_TEI;
  1.1213 +//
  1.1214 +// OID_WW_CDPD_CIRCUIT_SWITCHED
  1.1215 +//
  1.1216 +typedef struct _WW_CDPD_CIRCUIT_SWITCHED {
  1.1217 +    INT service_preference;	// -1 = unknown,
  1.1218 +    //  0 = always use packet switched CDPD,
  1.1219 +    //  1 = always use CS CDPD via AMPS,
  1.1220 +    //  2 = always use CS CDPD via PSTN,
  1.1221 +    //  3 = use circuit switched via AMPS only
  1.1222 +    //      when packet switched is not available.
  1.1223 +    //  4 = use packet switched only when circuit
  1.1224 +    //   switched via AMPS is not available.
  1.1225 +    //  5 = device manuf. defined service
  1.1226 +    //   preference.
  1.1227 +    //  6 = device manuf. defined service
  1.1228 +    //   preference.
  1.1229 +
  1.1230 +    INT service_status;		// -1 = unknown,
  1.1231 +    //  0 = packet switched CDPD,
  1.1232 +    //  1 = circuit switched CDPD via AMPS,
  1.1233 +    //  2 = circuit switched CDPD via PSTN.
  1.1234 +
  1.1235 +    INT connect_rate;		//  CS connection bit rate (bits per second).
  1.1236 +    //  0 = no active connection,
  1.1237 +    // -1 = unknown
  1.1238 +    //  Dial code last used to dial.
  1.1239 +
  1.1240 +    NDIS_VAR_DATA_DESC dial_code[20];
  1.1241 +
  1.1242 +    UINT sid;			//  Current AMPS system ID
  1.1243 +
  1.1244 +    INT a_b_side_selection;	// -1 = unknown,
  1.1245 +    //  0 = no AMPS service
  1.1246 +    //  1 = AMPS "A" side channels selected
  1.1247 +    //  2 = AMPS "B" side channels selected
  1.1248 +
  1.1249 +    INT AMPS_channel;		// -1= unknown
  1.1250 +    //  0 = no AMPS service.
  1.1251 +    //  1-1023 = AMPS channel number in use
  1.1252 +
  1.1253 +    UINT action;		//  0 = no action
  1.1254 +    //  1 = suspend (hangup)
  1.1255 +    //  2 = dial
  1.1256 +
  1.1257 +    //  Default dial code for CS CDPD service
  1.1258 +    //  encoded as specified in the CS CDPD
  1.1259 +    //  implementor guidelines.
  1.1260 +    NDIS_VAR_DATA_DESC default_dial[20];
  1.1261 +
  1.1262 +    //  Number for the CS CDPD network to call
  1.1263 +    //   back the mobile, encoded as specified in
  1.1264 +    //   the CS CDPD implementor guidelines.
  1.1265 +    NDIS_VAR_DATA_DESC call_back[20];
  1.1266 +
  1.1267 +    UINT sid_list[10];		//  List of 10 16-bit preferred AMPS
  1.1268 +    //   system IDs for CS CDPD.
  1.1269 +
  1.1270 +    UINT inactivity_timer;	//  Wait time after last data before dropping
  1.1271 +    //   call.
  1.1272 +    //  0-65535 = inactivity time limit (seconds).
  1.1273 +
  1.1274 +    UINT receive_timer;		//  secs. per CS-CDPD Implementor Guidelines.
  1.1275 +
  1.1276 +    UINT conn_resp_timer;	//  secs. per CS-CDPD Implementor Guidelines.
  1.1277 +
  1.1278 +    UINT reconn_resp_timer;	//  secs. per CS-CDPD Implementor Guidelines.
  1.1279 +
  1.1280 +    UINT disconn_timer;		//  secs. per CS-CDPD Implementor Guidelines.
  1.1281 +
  1.1282 +    UINT NEI_reg_timer;		//  secs. per CS-CDPD Implementor Guidelines.
  1.1283 +
  1.1284 +    UINT reconn_retry_timer;	//  secs. per CS-CDPD Implementor Guidelines.
  1.1285 +
  1.1286 +    UINT link_reset_timer;	//  secs. per CS-CDPD Implementor Guidelines.
  1.1287 +
  1.1288 +    UINT link_reset_ack_timer;	//  secs. per CS-CDPD Implementor Guidelines.
  1.1289 +
  1.1290 +    UINT n401_retry_limit;	//  per CS-CDPD Implementor Guidelines.
  1.1291 +
  1.1292 +    UINT n402_retry_limit;	//  per CS-CDPD Implementor Guidelines.
  1.1293 +
  1.1294 +    UINT n404_retry_limit;	//  per CS-CDPD Implementor Guidelines.
  1.1295 +
  1.1296 +    UINT n405_retry_limit;	//  per CS-CDPD Implementor Guidelines.
  1.1297 +
  1.1298 +} WW_CDPD_CIRCUIT_SWITCHED, *WW_PCDPD_CIRCUIT_SWITCHED;
  1.1299 +typedef UINT WW_CDPD_RSSI;
  1.1300 +//
  1.1301 +// OID_WW_PIN_LOC_AUTHORIZE
  1.1302 +//
  1.1303 +typedef INT WW_PIN_AUTHORIZED;	// 0  = unauthorized
  1.1304 +												// 1  = authorized
  1.1305 +												// -1 = unknown
  1.1306 +//
  1.1307 +// OID_WW_PIN_LAST_LOCATION
  1.1308 +// OID_WW_PIN_LOC_FIX
  1.1309 +//
  1.1310 +
  1.1311 +typedef struct _WW_PIN_LOCATION {
  1.1312 +    INT Latitude;		// Latitude in hundredths of a second
  1.1313 +
  1.1314 +    INT Longitude;		// Longitude in hundredths of a second
  1.1315 +
  1.1316 +    INT Altitude;		// Altitude in feet
  1.1317 +
  1.1318 +    INT FixTime;		// Time of the location fix, since midnight,  local time (of the
  1.1319 +    // current day), in tenths of a second
  1.1320 +
  1.1321 +    INT NetTime;		// Current local network time of the current day, since midnight,
  1.1322 +    // in tenths of a second
  1.1323 +
  1.1324 +    INT LocQuality;		// 0-100 = location quality
  1.1325 +
  1.1326 +    INT LatReg;			// Latitude registration offset, in hundredths of a second
  1.1327 +
  1.1328 +    INT LongReg;		// Longitude registration offset, in hundredths of a second
  1.1329 +
  1.1330 +    INT GMTOffset;		// Offset in minutes of the local time zone from GMT
  1.1331 +
  1.1332 +} WW_PIN_LOCATION, *PWW_PIN_LOCATION;
  1.1333 +
  1.1334 +//
  1.1335 +// The following is set on a per-packet basis as OOB data with NdisClassWirelessWanMbxMailbox
  1.1336 +//
  1.1337 +typedef ULONG WW_MBX_MAILBOX_FLAG;	// 1 = set mailbox flag, 0 = do not set mailbox flag
  1.1338 +//
  1.1339 +// OID_WW_MBX_SUBADDR
  1.1340 +//
  1.1341 +
  1.1342 +typedef struct _WW_MBX_PMAN {
  1.1343 +    BOOLEAN ACTION;		// 0 = Login PMAN,  1 = Logout PMAN
  1.1344 +
  1.1345 +    UINT MAN;
  1.1346 +    UCHAR PASSWORD[8];		// Password should be null for Logout and indications.
  1.1347 +    // Maximum length of password is 8 chars.
  1.1348 +
  1.1349 +} WW_MBX_PMAN, *PWW_MBX_PMAN;
  1.1350 +
  1.1351 +//
  1.1352 +// OID_WW_MBX_FLEXLIST
  1.1353 +//
  1.1354 +typedef struct _WW_MBX_FLEXLIST {
  1.1355 +    INT count;			//  Number of MAN entries used.
  1.1356 +    // -1=unknown.
  1.1357 +
  1.1358 +    UINT MAN[7];		//  List of MANs.
  1.1359 +
  1.1360 +} WW_MBX_FLEXLIST;
  1.1361 +
  1.1362 +//
  1.1363 +// OID_WW_MBX_GROUPLIST
  1.1364 +//
  1.1365 +typedef struct _WW_MBX_GROUPLIST {
  1.1366 +    INT count;			//  Number of MAN entries used.
  1.1367 +    // -1=unknown.
  1.1368 +
  1.1369 +    UINT MAN[15];		//  List of MANs.
  1.1370 +
  1.1371 +} WW_MBX_GROUPLIST;
  1.1372 +
  1.1373 +//
  1.1374 +// OID_WW_MBX_TRAFFIC_AREA
  1.1375 +//
  1.1376 +typedef enum _WW_MBX_TRAFFIC_AREA {
  1.1377 +    unknown_traffic_area,	// The driver has no information about the current traffic area.
  1.1378 +     in_traffic_area,		// Mobile unit has entered a subscribed traffic area.
  1.1379 +     in_auth_traffic_area,	// Mobile unit is outside traffic area but is authorized.
  1.1380 +     unauth_traffic_area	// Mobile unit is outside traffic area but is un-authorized.
  1.1381 +} WW_MBX_TRAFFIC_AREA;
  1.1382 +
  1.1383 +//
  1.1384 +// OID_WW_MBX_LIVE_DIE
  1.1385 +//
  1.1386 +typedef INT WW_MBX_LIVE_DIE;	//  0 = DIE last received       
  1.1387 +												//  1 = LIVE last received
  1.1388 +												// -1 = unknown
  1.1389 +//
  1.1390 +// OID_WW_MBX_TEMP_DEFAULTLIST
  1.1391 +//
  1.1392 +
  1.1393 +typedef struct _WW_MBX_CHANNEL_PAIR {
  1.1394 +    UINT Mobile_Tx;
  1.1395 +    UINT Mobile_Rx;
  1.1396 +} WW_MBX_CHANNEL_PAIR, *PWW_MBX_CHANNEL_PAIR;
  1.1397 +typedef struct _WW_MBX_TEMPDEFAULTLIST {
  1.1398 +    UINT Length;
  1.1399 +    WW_MBX_CHANNEL_PAIR ChannelPair[1];
  1.1400 +} WW_MBX_TEMPDEFAULTLIST, *WW_PMBX_TEMPDEFAULTLIST;
  1.1401 +
  1.1402 +#endif				// WIRELESS_WAN
  1.1403 +#endif				// _NTDDNDIS_