Delen via


WMI-klasse MSiSCSI_HBAInformation

De iSCSI-initiatorservice maakt gebruik van de WMI-klasse MSiSCSI_HBAInformation om te communiceren met uw adapter. U moet een afzonderlijk exemplaar van deze klasse hebben voor elk exemplaar van het minipoortstuurprogramma dat is geladen.

Omdat deze klasse is gekoppeld aan een bepaald exemplaar van een minipoortstuurprogramma voor opslag, moet het minipoortstuurprogramma de klasse registreren met de naam van het specifieke fysieke apparaatobject (PDO) dat het minipoortstuurprogramma beheert.

De klasse MSiSCSI_HBAInformation wordt als volgt gedefinieerd in Mgmt.mof.

class MSiSCSI_HBAInformation {
  [key] string  InstanceName;
  boolean  Active;
  [WmiDataId(1), DisplayName("Adapter Id") : amended,
    DisplayInHex, description("Id that is globally unique to
    each instance of each adapter. Using the address of the
    Adapter Extension is a good idea.") : amended]
    uint64  UniqueAdapterId;
  [WmiDataId(2), DisplayName("Integrated Networking") :
    amended, description("TRUE if TCP/IP traffic is
    integrated with the Windows networking TCP/IP stack via
    a software only initiator") : amended]
    boolean  IntegratedTCPIP;
  [WmiDataId(3), Displayname("Requires Binary Addresses") :
    amended, description("TRUE if HBA requires binary ip
    addresses. If unchecked then DNS must be available on
    HBA.") : amended]
    boolean  RequiresBinaryIpAddresses;
  [read, WmiDataId(4), DisplayName("Minimum iSCSI
    Version")
    : amended, description("Minimum version number of the
    iScsi spec supported by HBA") : amended]
    uint8  VersionMin;
  [read, WmiDataId(5), DisplayName("Maximum iSCSI
    Version")
    : amended, description("Maximum version number of the
    iSCSI spec supported by HBA") : amended]
    uint8  VersionMax;
  [read, WmiDataId(6), DisplayName("Multifunction Device") :
    amended, description("TRUE if this adapter is a
    multifunction device, that is it also exposes a netcard
    interface") : amended]
    boolean  MultifunctionDevice;
  [read, WmiDataId(7), DisplayName("Valid Cache") : amended,
    description("TRUE if the adapter caches are valid") :
    amended] boolean  CacheValid;
  [read, WmiDataId(8), Displayname("Number of ports") :
    amended, description("Number of ports attached to HBA")
    : amended] uint32  NumberOfPorts;
  [read, WmiDataId(9), Displayname("Status") : amended,
    description("Current status of HBA") : amended,
    Values{ "Working", "Degraded", "Critical", "Failed"},
    ValueMap{ "0",     "1",        "2",        "3" },
    cpp_quote(
    "#define ISCSI_HBA_STATUS_WORKING           0\n"
    "#define ISCSI_HBA_STATUS_DEGRADED          1\n"
    "#define ISCSI_HBA_STATUS_CRITICAL          2\n"
    "#define ISCSI_HBA_STATUS_FAILED            3\n"
    )] uint32  Status;
  [read, WmiDataId(10), DisplayName("Functionality
    Supported") : amended, Description("Bit flags that
    indicate various functionality supported") : amended,
    BitValueMap{"0x00000001",
                "0x00000002",
                "0x00000004",
                "0x00000008",
                "0x00000010",
                "0x00000020"
                },
    BitValues{"Preshared Key Cache",
              "iSCSI Authentication Cache",
              "Tunnel Mode",
              "CHAP authentication via RADIUS",
              "Discovery via iSNS",
              "Discovery via SLP"
              } : amended,
    cpp_quote(
    "\n"
    "//\n"
    "// Flags that define the functionality
    supported by the HBA\n"
    "//\n"
    "#define ISCSI_HBA_PRESHARED_KEY_CACHE  0x00000001\n"
    "#define ISCSI_HBA_ISCSI_AUTHENTICATION_CACHE
     x00000002\n"
    "#define ISCSI_HBA_IPSEC_TUNNEL_MODE    0x00000004\n"
    "#define ISCSI_HBA_CHAP_VIA_RADIUS      0x00000008\n"
    "#define ISCSI_HBA_ISNS_DISCOVERY       0x00000010\n"
    "#define ISCSI_HBA_SLP_DISCOVERY        0x00000020\n"
    "\n")]
    uint32  FunctionalitySupported;
  [read, WmiDataId(11), DisplayName("Generational Guid") :
    amended, Description("Generational Guid") : amended]
    uint8  GenerationalGuid[16];
  [read, WmiDataId(12), DisplayName("Max CDB Length") :
    amended, Description("Max CDB Length") : amended]
    uint32  MaxCDBLength;
  [read, WmiDataId(13), DisplayName("Bi-directional SCSI
    command supported") : amended, Description("Bi-
    directional SCSI command supported") : amended]
    boolean  BiDiScsiCommands;
  [read, WmiDataId(14), DisplayName("Manufacturer") :
    amended, description("A text string describing the
    manufacturer of HBA") : amended, MaxLen(255)]
    string  VendorID;
  [read, WmiDataId(15), Displayname("Model") : amended,
    description("A text string set by the manufacturer
    describing the model of HBA") : amended, MaxLen(255)]
    string  VendorModel;
  [read, WmiDataId(16), Displayname("Version") : amended,
    description("A text string set by the manufacturer
    describing the version of HBA") : amended, MaxLen(255)]
    string  VendorVersion;
  [read, WmiDataId(17), displayName("Firmware Version") :
    amended, description("A text string set by the
    manufacturer describing the firmware version of HBA") : amended, MaxLen(255)]
    string  FirmwareVersion;
  [read, WmiDataId(18), displayName("ASIC Version") :
    amended, description("A text string set by the
    manufacturer describing the firmware version of HBA") :
    amended, MaxLen(255)]
    string  AsicVersion;
  [read, WmiDataId(19), displayName("Option Rom Version") :
  amended, description("A text string set by the
  manufacturer describing the option rom version of HBA")
  : amended, MaxLen(255)]
  string  OptionRomVersion;
  [read, WmiDataId(20), Displayname("Serial Number") :
    amended, description("A text string set by the
    manufacturer describing the serial number of HBA") :
    amended, MaxLen(255)]
    string  SerialNumber;
  [read, WmiDataId(21), Displayname("Driver Name") :
    amended, description("A text string specifying the name
    of the driver for the HBA") : amended, MaxLen(255)]
    string  DriverName;
};

Wanneer de WMI-hulpprogrammasuite de voorgaande klassedefinitie compileert, wordt de MSiSCSI_HBAInformation gegevensstructuur geproduceerd.