⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mgmt.mof

📁 WMI implementation in a iSCSI miniport can be tested using the iscsicli.exe application, device ma
💻 MOF
📖 第 1 页 / 共 4 页
字号:
#define ISCSI_CONNECTION_STATE_TYPE_QUALIFIERS \
     ValueMap{"0", "1","2"},\
     Values{ \
             "login", \
             "full", \
             "logout" \
     },\
     DefineValues {"login",  \
                   "full",\
                   "logout"}

#define ISCSI_CONNECTION_PROTOCOL_TYPE uint8
//
// Common qualifiers needed for ISCSI_CONNECTION_PROTOCOL_TYPE values
//
#define ISCSI_CONNECTION_PROTOCOL_TYPE_QUALIFIERS \
     ValueMap{"6"},\
     Values{ \
             "TCP" \
     },\
     DefineValues {"TCP"}

#define ISCSI_SESSION_TYPE uint8
//
// Common qualifiers needed for ISCSI_SESSION_TYPE values
//
#define ISCSI_SESSION_TYPE_QUALIFIERS \
     ValueMap{"0", "1","2","3"},\
     Values{ \
             "discoverySession", \
             "informationalSession", \
             "dataSession", \
             "bootSession" \
     },\
     DefineValues { \
                   "discoverySession",\
                   "informationalSession", \
                   "dataSession", \
                   "bootSession"  \
                  }


#define ISCSI_HEADER_INTEGRITY_TYPE uint8
//
// Common qualifiers needed for ISCSI_HEADER_INTEGRITY_TYPE values
//
#define ISCSI_HEADER_INTEGRITY_TYPE_QUALIFIERS \
     ValueMap{"0", "1"},\
     Values{ \
             "None", \
             "crc32c" \
     },\
     DefineValues {"None",  \
                   "crc32c" }

#define ISCSI_DATA_INTEGRITY_TYPE uint8
//
// Common qualifiers needed for ISCSI_DATA_INTEGRITY_TYPE values
//
#define ISCSI_DATA_INTEGRITY_TYPE_QUALIFIERS \
     ValueMap{"0", "1"},\
     Values{ \
             "None", \
             "crc32c" \
     },\
     DefineValues {"None",  \
                   "crc32c" }


#define ISCSI_PORTAL_TYPE uint8
//
// Common qualifiers needed for ISCSI_PORTAL_TYPE values
//
#define ISCSI_PORTAL_TYPE_QUALIFIERS \
     ValueMap{"0", "1"},\
     Values{ \
             "Initiator", \
             "Target" \
     },\
     DefineValues {"InitiatorPortals",  \
                   "TargetPortals"}

#define ISCSI_INITIATOR_NODE_FAILURE_TYPE uint8
//
// Common qualifiers needed for ISCSI_INITIATOR_NODE_FAILURE_TYPE values
//
#define ISCSI_INITIATOR_NODE_FAILURE_TYPE_QUALIFIERS \
     ValueMap{"0", "1","2"},\
     Values{ \
             "SessionDigestError", \
             "SessionCxnTimeoutError", \
             "SessionFormatError" \
     },\
     DefineValues {"SessionDigestError",  \
                   "SessionCxnTimeoutError", \
                   "SessionFormatError"}


#define ISCSI_INITIATOR_FAILURE_TYPE uint8
//
// Common qualifiers needed for ISCSI_INITIATOR_FAILURE_TYPE values
//
#define ISCSI_INITIATOR_FAILURE_TYPE_QUALIFIERS \
     ValueMap{"0", "1","2","3","4"},\
     Values{ \
             "LoginOtherFail", \
             "LoginAuthFail", \
             "LoginAuthenticateFail", \
             "LoginNegotiateFail", \
             "LogoutOthers" \
     },\
     DefineValues {"LoginOtherFail",  \
                   "LoginAuthFail", \
                   "LoginAuthenticateFail", \
                   "LoginNegotiateFail", \
                   "LogoutOthers"}

[
    WMI,
    Description ("iSCSI Static Connection Statistics Information") : amended,
    guid ("{3CE2D6A0-7346-4826-972F-F2C19779D1D1}")
]
class ISCSI_ConnectionStaticInfo
{
    [read,
     WmiDataId(1),
     Description("A uniquely generated connection ID. Do not confuse this with CID."): amended
     ] uint64 UniqueConnectionId;

    [read,
     WmiDataId(2),
     Description("The iSCSI connection ID for this connection instance."): amended
    ] uint16 CID; //session wide namespace

    [read,
     WmiDataId(3),
     ISCSI_CONNECTION_STATE_TYPE_QUALIFIERS,
     Description("**typedef** Indicates the current state of this connection"): amended,
     cpp_quote("\n"
                     "    //login          - The TCP connection has been established, but a valid iSCSI\n"
                     "    //                    login response with the final bit set has not been sent or received.\n"
                     "    //full            - A valid iSCSI login response with the final bit set \n"
                     "    //                   has been sent or received.\n"
                     "    //logout       - A valid iSCSI logout command has been sent or received, but\n"
                     "    //                  the TCP connection has not yet been closed.\n"
                     "\n"
     )
     ] ISCSI_CONNECTION_STATE_TYPE State;


    [read,
     WmiDataId(4),
     ISCSI_CONNECTION_PROTOCOL_TYPE_QUALIFIERS,
     Description("**typedef** The transport protocol over which this connection instance is running."): amended
     ] ISCSI_CONNECTION_PROTOCOL_TYPE Protocol;

    [read,
     WmiDataId(5),
     ISCSI_HEADER_INTEGRITY_TYPE_QUALIFIERS,
     description("**typedef** The name of the iSCSI header digest scheme in use within this session."),
     WmiVersion(1)
     ] ISCSI_HEADER_INTEGRITY_TYPE HeaderIntegrity;

    [read,
     WmiDataId(6),
     ISCSI_DATA_INTEGRITY_TYPE_QUALIFIERS,
     description("**typedef** The name of the iSCSI data digest scheme in use within this session."),
     WmiVersion(1)
     ] ISCSI_DATA_INTEGRITY_TYPE DataIntegrity;

    [read,
     WmiDataId(7),
     description("Must be zero")
    ] uint16 Reserved;
    
    [read,
     WmiDataId(8),
     description("The maximum data payload size supported for command or data PDUs within this session."),
     WmiVersion(1)] uint32 MaxRecvDataSegmentLength;

    [read,
     WmiDataId(9),
     ISCSI_AUTH_TYPES_QUALIFIERS,
     description("**typedef** Authentication type used when establishing the connection.")
    ] ISCSI_AUTH_TYPES AuthType;

    
    [read,
     WmiDataId(10),
     Description("The local network address used for the connection"): amended
     ] ISCSI_IP_Address LocalAddr;

    [read,
     WmiDataId(11),
     Description("The local port used for the connection"): amended
     ] uint32 LocalPort;

    [read,
     WmiDataId(12),
     Description("The remote network address used for the connection"): amended
     ] ISCSI_IP_Address RemoteAddr;

    [read,
     WmiDataId(13),
     Description("The remote port used for the connection"): amended
     ] uint32 RemotePort;

    [read,
     WmiDataId(14),
     Description("Estimated throughput of the link in bytes per second"): amended
     ] uint64 EstimatedThroughput;

    [read,
     WmiDataId(15),
     Description("Maximum Datagram size supported by the transport in bytes"): amended
     ] uint32 MaxDatagramSize;
};


[
    WMI,
    Description ("iSCSI Static Sessions Statistics Information") : amended,
    guid ("{B71D2538-57E2-4228-888B-1AF9B3BD01CD}")
]
class ISCSI_SessionStaticInfo
{
    [read,
     WmiDataId(1),
     Description("A uniquely generated session ID, it is the same id returned by the LoginToTarget method.  Do not confuse this with ISID or SSID."): amended,
     WmiVersion(1)] uint64 UniqueSessionId;

    [read,
     WmiDataId(2),
     WmiVersion(1),
     description("Initiator node name used to establish the session"),
     MaxLen(MAX_ISCSI_NAME_LEN)] string InitiatoriSCSIName;
    
    [read,
     WmiDataId(3),
     WmiVersion(1),
     Description("iSCSI node name of the target"): amended,
     MaxLen(MAX_ISCSI_NAME_LEN)] String TargetiSCSIName;

    [read,
     WmiDataId(4),
     Description("Target-defined portion of the iSCSI Session ID"): amended,
     WmiVersion(1)] uint16 TSID;

    [read,
     WmiDataId(5),
     Description("Initiator-defined portion of the iSCSI Session ID"): amended,
     WmiVersion(1)] uint8 ISID[6];

    [read,
     WmiDataId(6),
     description("If TRUE, the initiator must wait for an R2T before sending data to the target.  If FALSE, the initiator may send data immediately, within limits set by FirstBurstSize and the expected data transfer length of the request."),
     WmiVersion(1)] boolean InitialR2t;

    [read,
     WmiDataId(7),
     description("If TRUE indicates whether the initiator and target have agreed to support immediate commands on this session."),
     WmiVersion(1)] boolean ImmediateData;

    [read,
     WmiDataId(8),
     Description("**typedef** Type of iSCSI session") : amended, \
     ISCSI_SESSION_TYPE_QUALIFIERS,
     cpp_quote("\n"
                     "    // Type of iSCSI session\n"
                     "    // discoverySession      - session is being used only for discovery\n"
                     "    // informationalSession  - session is used for a limited number of scsi commands\n"
                     "    // dataSession           - session is being used as a full feature session\n"
                     "    // bootSession           - session is being used to boot an initiator\n"
                     "\n"
     ),
     WmiVersion(1)] ISCSI_SESSION_TYPE Type;

    [read,
     WmiDataId(9),
     description("If FALSE indicates that data PDU Sequences may be transferred in any order.  If TRUE indicates that data PDU sequences must be transferred using continuously increasing offsets, except during error recovery."),
     WmiVersion(1)] boolean DataSequenceInOrder;

    [read,
     WmiDataId(10),
     description("If FALSE indicates that data PDUs within sequences may be in any order. If TRUE indicates that data PDUs within sequences must be at continuously increasing addresses, with no gaps or overlay between PDUs."),
     WmiVersion(1)] boolean DataPduInOrder;

    [read,
     WmiDataId(11),
     description("The level of error recovery negotiated between the initiator and the target."),
     WmiVersion(1)] uint8 ErrorRecoveryLevel;

    [read,
     WmiDataId(12),
     description("The maximum number of outstanding request-to-transmit (R2T) per task within this session"),
     WmiVersion(1)] uint32 MaxOutstandingR2t;

    [read,
     WmiDataId(13),
     description("The maximum length supported for unsolicited data sent within this session"),
     WmiVersion(1)] uint32 FirstBurstLength;

    [read,
     WmiDataId(14),
     description("The maximum number of bytes which can be sent within a single sequence of Data-In or Data-Out PDUs"),
     WmiVersion(1)] uint32 MaxBurstLength;

    [read,
     WmiDataId(15),
     description("The maximum number of connections that will be allowed within this session"),
     WmiVersion(1)] uint32 MaxConnections;

    [read,
     WmiDataId(16),
     description("The number of connections that currently belong to this session"),
     WmiVersion(1)] uint16 ConnectionCount;

    [WmiDataId(17),
     read,
     DisplayName("List of Connections") : amended,
     Description("List of ISCSI_ConnectionStaticInfo.  ConnectionCount specifies the number of elements in the array. NOTE: This is a variable length array.") : amended,
     WmiSizeIs("ConnectionCount")
    ]  ISCSI_ConnectionStaticInfo ConnectionsList[];
};


[
    WMI,
    Description ("iSCSI Portal Info") : amended,
    guid ("{4FB9130E-1FEF-4ae6-9E48-77839204D413}")
]
class ISCSI_PortalInfo
{
    [read,
     WmiDataId(1),
     description("An integer used to uniquely identify a paticular port"),
     WmiVersion(1)] uint32 Index;

    [read,
     WmiDataId(2),
     ISCSI_PORTAL_TYPE_QUALIFIERS,
     description("**typedef** The type of portal (Initiator or Target) \n"),
     WmiVersion(1)] ISCSI_PORTAL_TYPE PortalType;

    [read,
     WmiDataId(3),
     ISCSI_CONNECTION_PROTOCOL_TYPE_QUALIFIERS,
     //Description("The portal's transport protocol"): amended,
     description("The portal's transport protocol"),
     WmiVersion(1)] ISCSI_CONNECTION_PROTOCOL_TYPE Protocol;

    [read,
     WmiDataId(4),
     WmiVersion(1)] uint8 Reserved1;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -