Annotation of ntddk/src/network/inc/ntddndis.h, revision 1.1.1.1

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_

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.