📄 iscsihba.mof
字号:
[
WmiGenerateHeader(TRUE),
WMI,
DisplayName("IP Address") : amended,
guid("{9AC5D4A1-1A1A-48ec-8E79-735806E9A1FA}"),
cpp_quote("\n" "//***************************************************************************\n" "//\n" "// iscsidef.h\n" "// \n" "// Module: iScsi Discovery api\n" "//\n" "// Purpose: Internal header defining interface between user mode discovery\n" "// api dll and HBA driver miniport.\n" "//\n" "// Copyright (c) 2001 Microsoft Corporation\n" "//\n" "//***************************************************************************\n\n"
"//\n" "// Definitions for iscsi security flags. These flags provide\n" "// information about the security expectations of a target portal and\n" "// are needed to insure a successful IKE/IPSEC negotiation. Note that\n" "// the flags and values are taken directly from the iSNS spec\n" "//\n" "\n" " // 1 = Tunnel Mode Preferred; 0 = No Preference\n" "#define ISCSI_SECURITY_FLAG_TUNNEL_MODE_PREFERRED 0x00000040\n" "\n" " // 1 = Transport Mode Preferred; 0 = No Preference\n" "#define ISCSI_SECURITY_FLAG_TRANSPORT_MODE_PREFERRED 0x00000020\n" " \n" " // 1 = PFS Enabled; 0 = PFS Disabled\n" "#define ISCSI_SECURITY_FLAG_PFS_ENABLED 0x00000010\n" " \n" " // 1 = Aggressive Mode Enabled; 0 = Disabled\n" "#define ISCSI_SECURITY_FLAG_AGGRESSIVE_MODE_ENABLED 0x00000008\n" " \n" " // 1 = Main Mode Enabled; 0 = MM Disabled\n" "#define ISCSI_SECURITY_FLAG_MAIN_MODE_ENABLED 0x00000004\n" " \n" " // 1 = IKE/IPSec Enabled; 0 = IKE/IPSec Disabled\n" "#define ISCSI_SECURITY_FLAG_IKE_IPSEC_ENABLED 0x00000002\n" "\n" " // If set then all other ISCSI_SECURITY_FLAGS are valid \n" "#define ISCSI_SECURITY_FLAG_VALID 0x00000001 \n" "\n"
"\n"
"//\n"
"// Types of addresses that can be passed by management app to driver\n"
"//\n"
"typedef enum {\n"
" // Text based host name. This needs to be resolved to binary form\n"
" ISCSI_IP_ADDRESS_TEXT = 0,\n"
" // Binary IPv4 address\n"
" ISCSI_IP_ADDRESS_IPV4 = 1,\n"
" // Binary IPv6 address\n"
" ISCSI_IP_ADDRESS_IPV6 = 2,\n"
" // Empty address\n"
" ISCSI_IP_ADDRESS_EMPTY = 3\n"
"} ISCSIIPADDRESSTYPE, *PISCSIIPADDRESSTYPE;\n"
)
]
class ISCSI_IP_Address
{
[WmiDataId(1),
read, write,
DisplayName("Address Format") : amended,
description("Type of address specified. It can be text: a DNS or dotted address or it can be a binary ipv4 or ipv6 address") : amended,
Values{ "Text Address",
"IpV4 Address",
"IpV6 Address",
"Empty Address"},
ValueMap{ "0",
"1",
"2",
"3"}
]
uint32 Type;
[WmiDataId(2),
read, write,
DisplayInHex,
DisplayName("IPV4 Address"): amended,
description("If IPV4 Address is specified as the Address Format then this conains the binary IPv4 ip address") : amended
]
uint32 IpV4Address;
[WmiDataId(3),
DisplayName("IPV6 Address"): amended,
read, write,
description("If IPV6 Address is specified as the Address Format then this conains the binary IPv6 ip address") : amended
]
uint8 IpV6Address[16];
[WmiDataId(4),
read, write,
DisplayName("IPV6 Flow Information") : amended,
description("IPV6 flow information") : amended
]
uint32 IpV6FlowInfo;
[WmiDataId(5),
read, write,
DisplayName("IPV6 Scope Id") : amended,
description("IPV6 scope id") : amended
]
uint32 IpV6ScopeId;
[WmiDataId(6),
read, write,
DisplayName("Text Address") : amended,
description("Text address, either a DNS address or dotted address") : amended,
MaxLen(256)
]
string TextAddress;
};
[
WmiGenerateHeader(TRUE),
WMI,
guid("{DE5051A7-BF27-48f1-BD12-07CADE92AEFD}"),
description("ISCSI target portal") : amended
]
class ISCSI_TargetPortal
{
[WmiDataId(1),
Description("Network Address") : amended
]
ISCSI_IP_Address Address;
[WmiDataId(2),
Description("Reserved") : amended
]
uint32 Reserved;
[WmiDataId(3),
Description("Socket number") : amended
]
uint16 Socket;
};
[WMI,
WmiGenerateHeader(TRUE),
guid("{3081F2A5-95F5-4d2a-813D-EE59864C6FC5}"),
description("iSCSI target portal group") : amended
]
class ISCSI_TargetPortalGroup
{
[WmiDataId(1),
description("Number of portals in group") : amended
]
uint32 PortalCount;
[WmiDataId(2),
WmiSizeIs("PortalCount"),
description("Target portals in group") : amended
]
ISCSI_TargetPortal Portals[];
};
[WMI,
WmiGenerateHeader(TRUE),
guid("{3011A7BD-0491-478e-8C79-3C76424D05E2}"),
cpp_quote("#ifndef _ISCSI_ISCSIDSC_\n" "typedef enum\n" "{\n" " ISCSI_DIGEST_TYPE_NONE = 0,\n" " ISCSI_DIGEST_TYPE_CRC32C = 1\n" "} ISCSI_DIGEST_TYPES, *PISCSI_DIGEST_TYPES;\n" "\n" "typedef enum\n" "{\n" " ISCSI_NO_AUTH_TYPE = 0,\n" " ISCSI_CHAP_AUTH_TYPE = 1,\n" " ISCSI_MUTUAL_CHAP_AUTH_TYPE = 2 \n" "} ISCSI_AUTH_TYPES, *PISCSI_AUTH_TYPES;\n" "#endif\n"),
Description("These are options that can be used for logging into a target")
]
class ISCSI_LoginOptions
{
[WmiDataId(1),
description("Bit flags that specify which login option values are specified") : amended,
BitMap{ "0x00000001", "0x00000002", "0x00000004", "0x00000008", "0x00000010" }, BitValues{"HeaderDigest", "DataDigest", "MaxConnections", "DefaultTime2Wait", "DefaultTime2Retain" } : amended,
cpp_quote("//\n" "// Bit flags for InformationSpecifies\n" "//\n" "#define ISCSI_LOGIN_OPTIONS_HEADER_DIGEST 0x00000001\n" "#define ISCSI_LOGIN_OPTIONS_DATA_DIGEST 0x00000002\n" "#define ISCSI_LOGIN_OPTIONS_MAXIMUM_CONNECTIONS 0x00000004\n" "#define ISCSI_LOGIN_OPTIONS_DEFAULT_TIME_2_WAIT 0x00000008\n" "#define ISCSI_LOGIN_OPTIONS_DEFAULT_TIME_2_RETAIN 0x00000010\n" "#define ISCSI_LOGIN_OPTIONS_USERNAME 0x00000020\n" "#define ISCSI_LOGIN_OPTIONS_PASSWORD 0x00000040\n" "#define ISCSI_LOGIN_OPTIONS_AUTH_TYPE 0x00000080\n" "\n")
] uint32 InformationSpecified;
[WmiDataId(2),
ValueMap{ "0",
"1" },
Values{ "None", "CRC32C" },
description("cyclic integrity checksums that can be negotiated for the header digests") : amended
] uint32 HeaderDigest;
[WmiDataId(3),
ValueMap{ "0",
"1" },
Values{ "None", "CRC32C" },
description("cyclic integrity checksums that can be negotiated for the header digests") : amended
] uint32 DataDigest;
[WmiDataId(4),
Description("Maximum number of connections, 0 implies no limit") : amended
]
uint32 MaximumConnections;
[WmiDataId(5),
Description("The initiator and target negotiate the minimum time, in seconds, to wait before attempting an explicit/implicit logout or active task reassignment after an unexpected connection termination or a connection reset.") : amended
]
uint32 DefaultTime2Wait;
[WmiDataId(6),
Description(" The initiator and target negotiate the maximum time, in seconds after an initial wait (Time2Wait), before which an explicit/implicit connection Logout or active task reassignment is still possible after an unexpected connection termination or a connection reset.") : amended
]
uint32 DefaultTime2Retain;
[WmiDataId(7),
Description("Flags that affect how login occurs") : amended,
cpp_quote("//\n" "// bit flags for ISCSI_LOGIN_FLAGS\n" "//\n" "#ifndef _ISCSI_ISCSIDSC_\n" "#define ISCSI_LOGIN_FLAGS ULONG\n\n" "#define ISCSI_LOGIN_FLAG_REQUIRE_IPSEC 0x00000001\n" "#define ISCSI_LOGIN_FLAG_MULTIPATH_ENABLED 0x00000002\n" "#define ISCSI_LOGIN_FLAG_RESERVED1 0x00000004\n" "#define ISCSI_LOGIN_FLAG_ALLOW_PORTAL_HOPPING 0x00000008\n" "#define ISCSI_LOGIN_FLAG_USE_RADIUS_RESPONSE 0x00000010\n" "#define ISCSI_LOGIN_FLAG_USE_RADIUS_VERIFICATION 0x00000020\n" "\n" "#endif\n"),
BitValues{"Require IPSEC", "Multipath Enabled", "Reserved1", "Allow Portal Hopping"}, BitMap{ "0x00000001", "0x00000002", "0x00000004", "0x00000008" }
]
uint32 LoginFlags;
[WmiDataId(8),
Description("Authentication method specified for login") : amended,
Values{"No Authentication", "CHAP", "Mutual CHAP" } : amended, ValueMap{"0", "1", "2"}
]
uint32 AuthType;
};
[WMI,
WmiGenerateHeader(TRUE),
guid("{994FF278-3512-4d9b-A241-54CEF45F5A25}"),
description("This class describes a mapping from a an OS LUN to target device LUN") : amended
]
class ISCSI_LUNList
{
[WmiDataId(1),
description("Target LUN") : amended
]
uint64 TargetLUN;
[WmiDataId(2),
description("OS Scsi bus number target is mapped to") : amended
]
uint32 OSLUN;
[WmiDataId(3),
description("Reserved") : amended
]
uint32 Reserved;
};
[WMI,
WmiGenerateHeader(TRUE),
guid("{21A28820-3C4C-4944-AC4F-DA7FEBA21168}"),
description("This class describes a mapping from a target LUN to a Windows port driver LUN") : amended
]
class ISCSI_TargetMapping
{
[WmiDataId(1),
description("OS Scsi bus number target is mapped to. If 0xffffffff then any value can be picked by the miniport.") : amended
]
uint32 OSBus;
[WmiDataId(2),
description("OS Scsi Target number target is mapped to. If 0xffffffff then any value can be picked by the miniport.") : amended
]
uint32 OSTarget;
[WmiDataId(3),
Description("Unique Session ID for the target mapping") : amended
] uint64 UniqueSessionId;
[WmiDataId(4),
description("Count of LUNs mapped for this target") : amended
]
uint32 LUNCount;
[WmiDataId(5),
MaxLen(223),
description("Target Name") : amended
]
string TargetName;
[WmiDataId(6),
Description("TRUE if session created from a persistent login") : amended
]
boolean FromPersistentLogin;
[WmiDataId(7),
description("Reserved") : amended
]
uint64 Reserved;
[WmiDataId(8),
WmiSizeIs("LunCount"),
description("List of LUNs mapped for this target") : amended
]
ISCSI_LUNList LUNList[];
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -