|
|
1.1 ! root 1: /*++ BUILD Version: 0001 // Increment this if a change has global effects ! 2: ! 3: Copyright (c) 1990-1993 Microsoft Corporation ! 4: ! 5: Module Name: ! 6: ! 7: ntddndis.h ! 8: ! 9: Abstract: ! 10: ! 11: This is the include file that defines all constants and types for ! 12: accessing the Network driver interface device. ! 13: ! 14: Author: ! 15: ! 16: Steve Wood (stevewo) 27-May-1990 ! 17: ! 18: Revision History: ! 19: ! 20: Adam Barr (adamba) 04-Nov-1992 ! 21: added the correct values for NDIS 3.0. ! 22: ! 23: --*/ ! 24: ! 25: #ifndef _NTDDNDIS_ ! 26: #define _NTDDNDIS_ ! 27: ! 28: ! 29: // ! 30: // Device Name - this string is the name of the device. It is the name ! 31: // that should be passed to NtOpenFile when accessing the device. ! 32: // ! 33: // Note: For devices that support multiple units, it should be suffixed ! 34: // with the Ascii representation of the unit number. ! 35: // ! 36: ! 37: #define DD_NDIS_DEVICE_NAME "\\Device\\UNKNOWN" ! 38: ! 39: ! 40: // ! 41: // NtDeviceIoControlFile IoControlCode values for this device. ! 42: // ! 43: // Warning: Remember that the low two bits of the code specify how the ! 44: // buffers are passed to the driver! ! 45: // ! 46: ! 47: #define _NDIS_CONTROL_CODE(request,method) \ ! 48: CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, request, method, FILE_ANY_ACCESS) ! 49: ! 50: #define IOCTL_NDIS_QUERY_GLOBAL_STATS _NDIS_CONTROL_CODE( 0, METHOD_OUT_DIRECT ) ! 51: #define IOCTL_NDIS_QUERY_ALL_STATS _NDIS_CONTROL_CODE( 1, METHOD_OUT_DIRECT ) ! 52: ! 53: ! 54: // ! 55: // NtDeviceIoControlFile InputBuffer/OutputBuffer record structures for ! 56: // this device. ! 57: // ! 58: ! 59: // ! 60: // This is the type of an NDIS OID value. ! 61: // ! 62: ! 63: typedef ULONG NDIS_OID, *PNDIS_OID; ! 64: ! 65: ! 66: // ! 67: // IOCTL_NDIS_QUERY_ALL_STATS returns a sequence of these, packed ! 68: // together (no padding is required since statistics all have ! 69: // four or eight bytes of data). ! 70: // ! 71: ! 72: typedef struct _NDIS_STATISTICS_VALUE { ! 73: NDIS_OID Oid; ! 74: ULONG DataLength; ! 75: UCHAR Data[1]; // variable length ! 76: } NDIS_STATISTICS_VALUE, *PNDIS_STATISTICS_VALUE; ! 77: ! 78: ! 79: // ! 80: // Object Identifiers used by NdisRequest Query/Set Information ! 81: // ! 82: ! 83: // ! 84: // General Objects ! 85: // ! 86: ! 87: #define OID_GEN_SUPPORTED_LIST 0x00010101 ! 88: #define OID_GEN_HARDWARE_STATUS 0x00010102 ! 89: #define OID_GEN_MEDIA_SUPPORTED 0x00010103 ! 90: #define OID_GEN_MEDIA_IN_USE 0x00010104 ! 91: #define OID_GEN_MAXIMUM_LOOKAHEAD 0x00010105 ! 92: #define OID_GEN_MAXIMUM_FRAME_SIZE 0x00010106 ! 93: #define OID_GEN_LINK_SPEED 0x00010107 ! 94: #define OID_GEN_TRANSMIT_BUFFER_SPACE 0x00010108 ! 95: #define OID_GEN_RECEIVE_BUFFER_SPACE 0x00010109 ! 96: #define OID_GEN_TRANSMIT_BLOCK_SIZE 0x0001010A ! 97: #define OID_GEN_RECEIVE_BLOCK_SIZE 0x0001010B ! 98: #define OID_GEN_VENDOR_ID 0x0001010C ! 99: #define OID_GEN_VENDOR_DESCRIPTION 0x0001010D ! 100: #define OID_GEN_CURRENT_PACKET_FILTER 0x0001010E ! 101: #define OID_GEN_CURRENT_LOOKAHEAD 0x0001010F ! 102: #define OID_GEN_DRIVER_VERSION 0x00010110 ! 103: #define OID_GEN_MAXIMUM_TOTAL_SIZE 0x00010111 ! 104: #define OID_GEN_PROTOCOL_OPTIONS 0x00010112 ! 105: #define OID_GEN_MAC_OPTIONS 0x00010113 ! 106: ! 107: #define OID_GEN_XMIT_OK 0x00020101 ! 108: #define OID_GEN_RCV_OK 0x00020102 ! 109: #define OID_GEN_XMIT_ERROR 0x00020103 ! 110: #define OID_GEN_RCV_ERROR 0x00020104 ! 111: #define OID_GEN_RCV_NO_BUFFER 0x00020105 ! 112: ! 113: #define OID_GEN_DIRECTED_BYTES_XMIT 0x00020201 ! 114: #define OID_GEN_DIRECTED_FRAMES_XMIT 0x00020202 ! 115: #define OID_GEN_MULTICAST_BYTES_XMIT 0x00020203 ! 116: #define OID_GEN_MULTICAST_FRAMES_XMIT 0x00020204 ! 117: #define OID_GEN_BROADCAST_BYTES_XMIT 0x00020205 ! 118: #define OID_GEN_BROADCAST_FRAMES_XMIT 0x00020206 ! 119: #define OID_GEN_DIRECTED_BYTES_RCV 0x00020207 ! 120: #define OID_GEN_DIRECTED_FRAMES_RCV 0x00020208 ! 121: #define OID_GEN_MULTICAST_BYTES_RCV 0x00020209 ! 122: #define OID_GEN_MULTICAST_FRAMES_RCV 0x0002020A ! 123: #define OID_GEN_BROADCAST_BYTES_RCV 0x0002020B ! 124: #define OID_GEN_BROADCAST_FRAMES_RCV 0x0002020C ! 125: ! 126: #define OID_GEN_RCV_CRC_ERROR 0x0002020D ! 127: #define OID_GEN_TRANSMIT_QUEUE_LENGTH 0x0002020E ! 128: ! 129: ! 130: // ! 131: // 802.3 Objects (Ethernet) ! 132: // ! 133: ! 134: #define OID_802_3_PERMANENT_ADDRESS 0x01010101 ! 135: #define OID_802_3_CURRENT_ADDRESS 0x01010102 ! 136: #define OID_802_3_MULTICAST_LIST 0x01010103 ! 137: #define OID_802_3_MAXIMUM_LIST_SIZE 0x01010104 ! 138: ! 139: #define OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101 ! 140: #define OID_802_3_XMIT_ONE_COLLISION 0x01020102 ! 141: #define OID_802_3_XMIT_MORE_COLLISIONS 0x01020103 ! 142: ! 143: #define OID_802_3_XMIT_DEFERRED 0x01020201 ! 144: #define OID_802_3_XMIT_MAX_COLLISIONS 0x01020202 ! 145: #define OID_802_3_RCV_OVERRUN 0x01020203 ! 146: #define OID_802_3_XMIT_UNDERRUN 0x01020204 ! 147: #define OID_802_3_XMIT_HEARTBEAT_FAILURE 0x01020205 ! 148: #define OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206 ! 149: #define OID_802_3_XMIT_LATE_COLLISIONS 0x01020207 ! 150: ! 151: ! 152: // ! 153: // 802.5 Objects (Token-Ring) ! 154: // ! 155: ! 156: #define OID_802_5_PERMANENT_ADDRESS 0x02010101 ! 157: #define OID_802_5_CURRENT_ADDRESS 0x02010102 ! 158: #define OID_802_5_CURRENT_FUNCTIONAL 0x02010103 ! 159: #define OID_802_5_CURRENT_GROUP 0x02010104 ! 160: #define OID_802_5_LAST_OPEN_STATUS 0x02010105 ! 161: #define OID_802_5_CURRENT_RING_STATUS 0x02010106 ! 162: #define OID_802_5_CURRENT_RING_STATE 0x02010107 ! 163: ! 164: #define OID_802_5_LINE_ERRORS 0x02020101 ! 165: #define OID_802_5_LOST_FRAMES 0x02020102 ! 166: ! 167: #define OID_802_5_BURST_ERRORS 0x02020201 ! 168: #define OID_802_5_AC_ERRORS 0x02020202 ! 169: #define OID_802_5_ABORT_DELIMETERS 0x02020203 ! 170: #define OID_802_5_FRAME_COPIED_ERRORS 0x02020204 ! 171: #define OID_802_5_FREQUENCY_ERRORS 0x02020205 ! 172: #define OID_802_5_TOKEN_ERRORS 0x02020206 ! 173: #define OID_802_5_INTERNAL_ERRORS 0x02020207 ! 174: ! 175: ! 176: // ! 177: // FDDI Objects ! 178: // ! 179: ! 180: #define OID_FDDI_LONG_PERMANENT_ADDR 0x03010101 ! 181: #define OID_FDDI_LONG_CURRENT_ADDR 0x03010102 ! 182: #define OID_FDDI_LONG_MULTICAST_LIST 0x03010103 ! 183: #define OID_FDDI_LONG_MAX_LIST_SIZE 0x03010104 ! 184: #define OID_FDDI_SHORT_PERMANENT_ADDR 0x03010105 ! 185: #define OID_FDDI_SHORT_CURRENT_ADDR 0x03010106 ! 186: #define OID_FDDI_SHORT_MULTICAST_LIST 0x03010107 ! 187: #define OID_FDDI_SHORT_MAX_LIST_SIZE 0x03010108 ! 188: ! 189: #define OID_FDDI_ATTACHMENT_TYPE 0x03020101 ! 190: #define OID_FDDI_UPSTREAM_NODE_LONG 0x03020102 ! 191: #define OID_FDDI_DOWNSTREAM_NODE_LONG 0x03020103 ! 192: #define OID_FDDI_FRAME_ERRORS 0x03020104 ! 193: #define OID_FDDI_FRAMES_LOST 0x03020105 ! 194: #define OID_FDDI_RING_MGT_STATE 0x03020106 ! 195: #define OID_FDDI_LCT_FAILURES 0x03020107 ! 196: #define OID_FDDI_LEM_REJECTS 0x03020108 ! 197: #define OID_FDDI_LCONNECTION_STATE 0x03020109 ! 198: ! 199: #define OID_FDDI_SMT_STATION_ID 0x03030201 ! 200: #define OID_FDDI_SMT_OP_VERSION_ID 0x03030202 ! 201: #define OID_FDDI_SMT_HI_VERSION_ID 0x03030203 ! 202: #define OID_FDDI_SMT_LO_VERSION_ID 0x03030204 ! 203: #define OID_FDDI_SMT_MANUFACTURER_DATA 0x03030205 ! 204: #define OID_FDDI_SMT_USER_DATA 0x03030206 ! 205: #define OID_FDDI_SMT_MIB_VERSION_ID 0x03030207 ! 206: #define OID_FDDI_SMT_MAC_CT 0x03030208 ! 207: #define OID_FDDI_SMT_NON_MASTER_CT 0x03030209 ! 208: #define OID_FDDI_SMT_MASTER_CT 0x0303020A ! 209: #define OID_FDDI_SMT_AVAILABLE_PATHS 0x0303020B ! 210: #define OID_FDDI_SMT_CONFIG_CAPABILITIES 0x0303020C ! 211: #define OID_FDDI_SMT_CONFIG_POLICY 0x0303020D ! 212: #define OID_FDDI_SMT_CONNECTION_POLICY 0x0303020E ! 213: #define OID_FDDI_SMT_T_NOTIFY 0x0303020F ! 214: #define OID_FDDI_SMT_STAT_RPT_POLICY 0x03030210 ! 215: #define OID_FDDI_SMT_TRACE_MAX_EXPIRATION 0x03030211 ! 216: #define OID_FDDI_SMT_PORT_INDEXES 0x03030212 ! 217: #define OID_FDDI_SMT_MAC_INDEXES 0x03030213 ! 218: #define OID_FDDI_SMT_BYPASS_PRESENT 0x03030214 ! 219: #define OID_FDDI_SMT_ECM_STATE 0x03030215 ! 220: #define OID_FDDI_SMT_CF_STATE 0x03030216 ! 221: #define OID_FDDI_SMT_HOLD_STATE 0x03030217 ! 222: #define OID_FDDI_SMT_REMOTE_DISCONNECT_FLAG 0x03030218 ! 223: #define OID_FDDI_SMT_STATION_STATUS 0x03030219 ! 224: #define OID_FDDI_SMT_PEER_WRAP_FLAG 0x0303021A ! 225: #define OID_FDDI_SMT_MSG_TIME_STAMP 0x0303021B ! 226: #define OID_FDDI_SMT_TRANSITION_TIME_STAMP 0x0303021C ! 227: #define OID_FDDI_SMT_SET_COUNT 0x0303021D ! 228: #define OID_FDDI_SMT_LAST_SET_STATION_ID 0x0303021E ! 229: #define OID_FDDI_MAC_FRAME_STATUS_FUNCTIONS 0x0303021F ! 230: #define OID_FDDI_MAC_BRIDGE_FUNCTIONS 0x03030220 ! 231: #define OID_FDDI_MAC_T_MAX_CAPABILITY 0x03030221 ! 232: #define OID_FDDI_MAC_TVX_CAPABILITY 0x03030222 ! 233: #define OID_FDDI_MAC_AVAILABLE_PATHS 0x03030223 ! 234: #define OID_FDDI_MAC_CURRENT_PATH 0x03030224 ! 235: #define OID_FDDI_MAC_UPSTREAM_NBR 0x03030225 ! 236: #define OID_FDDI_MAC_DOWNSTREAM_NBR 0x03030226 ! 237: #define OID_FDDI_MAC_OLD_UPSTREAM_NBR 0x03030227 ! 238: #define OID_FDDI_MAC_OLD_DOWNSTREAM_NBR 0x03030228 ! 239: #define OID_FDDI_MAC_DUP_ADDRESS_TEST 0x03030229 ! 240: #define OID_FDDI_MAC_REQUESTED_PATHS 0x0303022A ! 241: #define OID_FDDI_MAC_DOWNSTREAM_PORT_TYPE 0x0303022B ! 242: #define OID_FDDI_MAC_INDEX 0x0303022C ! 243: #define OID_FDDI_MAC_SMT_ADDRESS 0x0303022D ! 244: #define OID_FDDI_MAC_LONG_GRP_ADDRESS 0x0303022E ! 245: #define OID_FDDI_MAC_SHORT_GRP_ADDRESS 0x0303022F ! 246: #define OID_FDDI_MAC_T_REQ 0x03030230 ! 247: #define OID_FDDI_MAC_T_NEG 0x03030231 ! 248: #define OID_FDDI_MAC_T_MAX 0x03030232 ! 249: #define OID_FDDI_MAC_TVX_VALUE 0x03030233 ! 250: #define OID_FDDI_MAC_T_PRI0 0x03030234 ! 251: #define OID_FDDI_MAC_T_PRI1 0x03030235 ! 252: #define OID_FDDI_MAC_T_PRI2 0x03030236 ! 253: #define OID_FDDI_MAC_T_PRI3 0x03030237 ! 254: #define OID_FDDI_MAC_T_PRI4 0x03030238 ! 255: #define OID_FDDI_MAC_T_PRI5 0x03030239 ! 256: #define OID_FDDI_MAC_T_PRI6 0x0303023A ! 257: #define OID_FDDI_MAC_FRAME_CT 0x0303023B ! 258: #define OID_FDDI_MAC_COPIED_CT 0x0303023C ! 259: #define OID_FDDI_MAC_TRANSMIT_CT 0x0303023D ! 260: #define OID_FDDI_MAC_TOKEN_CT 0x0303023E ! 261: #define OID_FDDI_MAC_ERROR_CT 0x0303023F ! 262: #define OID_FDDI_MAC_LOST_CT 0x03030240 ! 263: #define OID_FDDI_MAC_TVX_EXPIRED_CT 0x03030241 ! 264: #define OID_FDDI_MAC_NOT_COPIED_CT 0x03030242 ! 265: #define OID_FDDI_MAC_LATE_CT 0x03030243 ! 266: #define OID_FDDI_MAC_RING_OP_CT 0x03030244 ! 267: #define OID_FDDI_MAC_FRAME_ERROR_THRESHOLD 0x03030245 ! 268: #define OID_FDDI_MAC_FRAME_ERROR_RATIO 0x03030246 ! 269: #define OID_FDDI_MAC_NOT_COPIED_THRESHOLD 0x03030247 ! 270: #define OID_FDDI_MAC_NOT_COPIED_RATIO 0x03030248 ! 271: #define OID_FDDI_MAC_RMT_STATE 0x03030249 ! 272: #define OID_FDDI_MAC_DA_FLAG 0x0303024A ! 273: #define OID_FDDI_MAC_UNDA_FLAG 0x0303024B ! 274: #define OID_FDDI_MAC_FRAME_ERROR_FLAG 0x0303024C ! 275: #define OID_FDDI_MAC_NOT_COPIED_FLAG 0x0303024D ! 276: #define OID_FDDI_MAC_MA_UNITDATA_AVAILABLE 0x0303024E ! 277: #define OID_FDDI_MAC_HARDWARE_PRESENT 0x0303024F ! 278: #define OID_FDDI_MAC_MA_UNITDATA_ENABLE 0x03030250 ! 279: #define OID_FDDI_PATH_INDEX 0x03030251 ! 280: #define OID_FDDI_PATH_RING_LATENCY 0x03030252 ! 281: #define OID_FDDI_PATH_TRACE_STATUS 0x03030253 ! 282: #define OID_FDDI_PATH_SBA_PAYLOAD 0x03030254 ! 283: #define OID_FDDI_PATH_SBA_OVERHEAD 0x03030255 ! 284: #define OID_FDDI_PATH_CONFIGURATION 0x03030256 ! 285: #define OID_FDDI_PATH_T_R_MODE 0x03030257 ! 286: #define OID_FDDI_PATH_SBA_AVAILABLE 0x03030258 ! 287: #define OID_FDDI_PATH_TVX_LOWER_BOUND 0x03030259 ! 288: #define OID_FDDI_PATH_T_MAX_LOWER_BOUND 0x0303025A ! 289: #define OID_FDDI_PATH_MAX_T_REQ 0x0303025B ! 290: #define OID_FDDI_PORT_MY_TYPE 0x0303025C ! 291: #define OID_FDDI_PORT_NEIGHBOR_TYPE 0x0303025D ! 292: #define OID_FDDI_PORT_CONNECTION_POLICIES 0x0303025E ! 293: #define OID_FDDI_PORT_MAC_INDICATED 0x0303025F ! 294: #define OID_FDDI_PORT_CURRENT_PATH 0x03030260 ! 295: #define OID_FDDI_PORT_REQUESTED_PATHS 0x03030261 ! 296: #define OID_FDDI_PORT_MAC_PLACEMENT 0x03030262 ! 297: #define OID_FDDI_PORT_AVAILABLE_PATHS 0x03030263 ! 298: #define OID_FDDI_PORT_MAC_LOOP_TIME 0x03030264 ! 299: #define OID_FDDI_PORT_PMD_CLASS 0x03030265 ! 300: #define OID_FDDI_PORT_CONNECTION_CAPABILITIES 0x03030266 ! 301: #define OID_FDDI_PORT_INDEX 0x03030267 ! 302: #define OID_FDDI_PORT_MAINT_LS 0x03030268 ! 303: #define OID_FDDI_PORT_BS_FLAG 0x03030269 ! 304: #define OID_FDDI_PORT_PC_LS 0x0303026A ! 305: #define OID_FDDI_PORT_EB_ERROR_CT 0x0303026B ! 306: #define OID_FDDI_PORT_LCT_FAIL_CT 0x0303026C ! 307: #define OID_FDDI_PORT_LER_ESTIMATE 0x0303026D ! 308: #define OID_FDDI_PORT_LEM_REJECT_CT 0x0303026E ! 309: #define OID_FDDI_PORT_LEM_CT 0x0303026F ! 310: #define OID_FDDI_PORT_LER_CUTOFF 0x03030270 ! 311: #define OID_FDDI_PORT_LER_ALARM 0x03030271 ! 312: #define OID_FDDI_PORT_CONNNECT_STATE 0x03030272 ! 313: #define OID_FDDI_PORT_PCM_STATE 0x03030273 ! 314: #define OID_FDDI_PORT_PC_WITHHOLD 0x03030274 ! 315: #define OID_FDDI_PORT_LER_FLAG 0x03030275 ! 316: #define OID_FDDI_PORT_HARDWARE_PRESENT 0x03030276 ! 317: #define OID_FDDI_SMT_STATION_ACTION 0x03030277 ! 318: #define OID_FDDI_PORT_ACTION 0x03030278 ! 319: #define OID_FDDI_IF_DESCR 0x03030279 ! 320: #define OID_FDDI_IF_TYPE 0x0303027A ! 321: #define OID_FDDI_IF_MTU 0x0303027B ! 322: #define OID_FDDI_IF_SPEED 0x0303027C ! 323: #define OID_FDDI_IF_PHYS_ADDRESS 0x0303027D ! 324: #define OID_FDDI_IF_ADMIN_STATUS 0x0303027E ! 325: #define OID_FDDI_IF_OPER_STATUS 0x0303027F ! 326: #define OID_FDDI_IF_LAST_CHANGE 0x03030280 ! 327: #define OID_FDDI_IF_IN_OCTETS 0x03030281 ! 328: #define OID_FDDI_IF_IN_UCAST_PKTS 0x03030282 ! 329: #define OID_FDDI_IF_IN_NUCAST_PKTS 0x03030283 ! 330: #define OID_FDDI_IF_IN_DISCARDS 0x03030284 ! 331: #define OID_FDDI_IF_IN_ERRORS 0x03030285 ! 332: #define OID_FDDI_IF_IN_UNKNOWN_PROTOS 0x03030286 ! 333: #define OID_FDDI_IF_OUT_OCTETS 0x03030287 ! 334: #define OID_FDDI_IF_OUT_UCAST_PKTS 0x03030288 ! 335: #define OID_FDDI_IF_OUT_NUCAST_PKTS 0x03030289 ! 336: #define OID_FDDI_IF_OUT_DISCARDS 0x0303028A ! 337: #define OID_FDDI_IF_OUT_ERRORS 0x0303028B ! 338: #define OID_FDDI_IF_OUT_QLEN 0x0303028C ! 339: #define OID_FDDI_IF_SPECIFIC 0x0303028D ! 340: ! 341: ! 342: ! 343: // ! 344: // WAN objects ! 345: // ! 346: ! 347: #define OID_WAN_PERMANENT_ADDRESS 0x04010101 ! 348: #define OID_WAN_CURRENT_ADDRESS 0x04010102 ! 349: #define OID_WAN_QUALITY_OF_SERVICE 0x04010103 ! 350: #define OID_WAN_PROTOCOL_TYPE 0x04010104 ! 351: #define OID_WAN_MEDIUM_SUBTYPE 0x04010105 ! 352: #define OID_WAN_HEADER_FORMAT 0x04010106 ! 353: ! 354: ! 355: // ! 356: // LocalTalk objects ! 357: // ! 358: ! 359: #define OID_LTALK_CURRENT_NODE_ID 0x05010102 ! 360: ! 361: #define OID_LTALK_IN_BROADCASTS 0x05020101 ! 362: #define OID_LTALK_IN_LENGTH_ERRORS 0x05020102 ! 363: ! 364: #define OID_LTALK_OUT_NO_HANDLERS 0x05020201 ! 365: #define OID_LTALK_COLLISIONS 0x05020202 ! 366: #define OID_LTALK_DEFERS 0x05020203 ! 367: #define OID_LTALK_NO_DATA_ERRORS 0x05020204 ! 368: #define OID_LTALK_RANDOM_CTS_ERRORS 0x05020205 ! 369: #define OID_LTALK_FCS_ERRORS 0x05020206 ! 370: ! 371: ! 372: // ! 373: // Arcnet objects ! 374: // ! 375: ! 376: #define OID_ARCNET_PERMANENT_ADDRESS 0x06010101 ! 377: #define OID_ARCNET_CURRENT_ADDRESS 0x06010102 ! 378: ! 379: #define OID_ARCNET_RECONFIGURATIONS 0x06020201 ! 380: ! 381: ! 382: // ! 383: // Medium the Ndis Driver is running on (OID_GEN_MEDIA_SUPPORTED/ ! 384: // OID_GEN_MEDIA_IN_USE). ! 385: // ! 386: ! 387: typedef enum _NDIS_MEDIUM { ! 388: NdisMedium802_3, ! 389: NdisMedium802_5, ! 390: NdisMediumFddi, ! 391: NdisMediumWan, ! 392: NdisMediumLocalTalk, ! 393: NdisMediumDix, // defined for convenience, not a real medium ! 394: NdisMediumArcnetRaw, ! 395: NdisMediumArcnet878_2 ! 396: } NDIS_MEDIUM, *PNDIS_MEDIUM; ! 397: ! 398: ! 399: // ! 400: // Hardware status codes (OID_GEN_HARDWARE_STATUS). ! 401: // ! 402: ! 403: typedef enum _NDIS_HARDWARE_STATUS { ! 404: NdisHardwareStatusReady, ! 405: NdisHardwareStatusInitializing, ! 406: NdisHardwareStatusReset, ! 407: NdisHardwareStatusClosing, ! 408: NdisHardwareStatusNotReady ! 409: } NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS; ! 410: ! 411: ! 412: // ! 413: // Defines the attachment types for FDDI (OID_FDDI_ATTACHMENT_TYPE). ! 414: // ! 415: ! 416: typedef enum _NDIS_FDDI_ATTACHMENT_TYPE { ! 417: NdisFddiTypeIsolated = 1, ! 418: NdisFddiTypeLocalA, ! 419: NdisFddiTypeLocalB, ! 420: NdisFddiTypeLocalAB, ! 421: NdisFddiTypeLocalS, ! 422: NdisFddiTypeWrapA, ! 423: NdisFddiTypeWrapB, ! 424: NdisFddiTypeWrapAB, ! 425: NdisFddiTypeWrapS, ! 426: NdisFddiTypeCWrapA, ! 427: NdisFddiTypeCWrapB, ! 428: NdisFddiTypeCWrapS, ! 429: NdisFddiTypeThrough ! 430: } NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE; ! 431: ! 432: ! 433: // ! 434: // Defines the ring management states for FDDI (OID_FDDI_RING_MGT_STATE). ! 435: // ! 436: ! 437: typedef enum _NDIS_FDDI_RING_MGT_STATE { ! 438: NdisFddiRingIsolated = 1, ! 439: NdisFddiRingNonOperational, ! 440: NdisFddiRingOperational, ! 441: NdisFddiRingDetect, ! 442: NdisFddiRingNonOperationalDup, ! 443: NdisFddiRingOperationalDup, ! 444: NdisFddiRingDirected, ! 445: NdisFddiRingTrace ! 446: } NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE; ! 447: ! 448: ! 449: // ! 450: // Defines the Lconnection state for FDDI (OID_FDDI_LCONNECTION_STATE). ! 451: // ! 452: ! 453: typedef enum _NDIS_FDDI_LCONNECTION_STATE { ! 454: NdisFddiStateOff = 1, ! 455: NdisFddiStateBreak, ! 456: NdisFddiStateTrace, ! 457: NdisFddiStateConnect, ! 458: NdisFddiStateNext, ! 459: NdisFddiStateSignal, ! 460: NdisFddiStateJoin, ! 461: NdisFddiStateVerify, ! 462: NdisFddiStateActive, ! 463: NdisFddiStateMaintenance ! 464: } NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE; ! 465: ! 466: ! 467: // ! 468: // Defines the medium subtypes for WAN medium (OID_WAN_MEDIUM_SUBTYPE). ! 469: // ! 470: ! 471: typedef enum _NDIS_WAN_MEDIUM_SUBTYPE { ! 472: NdisWanMediumHub, ! 473: NdisWanMediumX_25, ! 474: NdisWanMediumIsdn, ! 475: NdisWanMediumSerial, ! 476: NdisWanMediumFrameRelay ! 477: } NDIS_WAN_MEDIUM_SUBTYPE, *PNDIS_WAN_MEDIUM_SUBTYPE; ! 478: ! 479: ! 480: // ! 481: // Defines the header format for WAN medium (OID_WAN_HEADER_FORMAT). ! 482: // ! 483: ! 484: typedef enum _NDIS_WAN_HEADER_FORMAT { ! 485: NdisWanHeaderNative, // src/dest based on subtype, followed by NLPID ! 486: NdisWanHeaderEthernet // emulation of ethernet header ! 487: } NDIS_WAN_HEADER_FORMAT, *PNDIS_WAN_HEADER_FORMAT; ! 488: ! 489: ! 490: // ! 491: // Defines the line quality on a WAN line (OID_WAN_QUALITY_OF_SERVICE). ! 492: // ! 493: ! 494: typedef enum _NDIS_WAN_QUALITY { ! 495: NdisWanRaw, ! 496: NdisWanErrorControl, ! 497: NdisWanReliable ! 498: } NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY; ! 499: ! 500: ! 501: // ! 502: // Defines the state of a token-ring adapter (OID_802_5_CURRENT_RING_STATE). ! 503: // ! 504: ! 505: typedef enum _NDIS_802_5_RING_STATE { ! 506: NdisRingStateOpened = 1, ! 507: NdisRingStateClosed, ! 508: NdisRingStateOpening, ! 509: NdisRingStateClosing, ! 510: NdisRingStateOpenFailure, ! 511: NdisRingStateRingFailure ! 512: } NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE; ! 513: ! 514: ! 515: ! 516: // ! 517: // Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER). ! 518: // ! 519: ! 520: #define NDIS_PACKET_TYPE_DIRECTED 0x0001 ! 521: #define NDIS_PACKET_TYPE_MULTICAST 0x0002 ! 522: #define NDIS_PACKET_TYPE_ALL_MULTICAST 0x0004 ! 523: #define NDIS_PACKET_TYPE_BROADCAST 0x0008 ! 524: #define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x0010 ! 525: #define NDIS_PACKET_TYPE_PROMISCUOUS 0x0020 ! 526: #define NDIS_PACKET_TYPE_SMT 0x0040 ! 527: #define NDIS_PACKET_TYPE_MAC_FRAME 0x8000 ! 528: #define NDIS_PACKET_TYPE_FUNCTIONAL 0x4000 ! 529: #define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x2000 ! 530: #define NDIS_PACKET_TYPE_GROUP 0x1000 ! 531: ! 532: ! 533: // ! 534: // Ndis Token-Ring Ring Status Codes (OID_802_5_CURRENT_RING_STATUS). ! 535: // ! 536: ! 537: #define NDIS_RING_SIGNAL_LOSS 0x00008000 ! 538: #define NDIS_RING_HARD_ERROR 0x00004000 ! 539: #define NDIS_RING_SOFT_ERROR 0x00002000 ! 540: #define NDIS_RING_TRANSMIT_BEACON 0x00001000 ! 541: #define NDIS_RING_LOBE_WIRE_FAULT 0x00000800 ! 542: #define NDIS_RING_AUTO_REMOVAL_ERROR 0x00000400 ! 543: #define NDIS_RING_REMOVE_RECEIVED 0x00000200 ! 544: #define NDIS_RING_COUNTER_OVERFLOW 0x00000100 ! 545: #define NDIS_RING_SINGLE_STATION 0x00000080 ! 546: #define NDIS_RING_RING_RECOVERY 0x00000040 ! 547: ! 548: ! 549: // ! 550: // Ndis protocol option bits (OID_GEN_PROTOCOL_OPTIONS). ! 551: // ! 552: ! 553: #define NDIS_PROT_OPTION_ESTIMATED_LENGTH 0x00000001 ! 554: ! 555: ! 556: // ! 557: // Ndis MAC option bits (OID_GEN_MAC_OPTIONS). ! 558: // ! 559: ! 560: #define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001 ! 561: #define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002 ! 562: #define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004 ! 563: ! 564: ! 565: #endif // ndef _NTDDNDIS_
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.