📄 common.mof
字号:
//***************************************************************************
//
// common.mof
//
// Module: iScsi Discovery api
//
// Purpose: Common definitions used for iscsi mofs
//
// Copyright (c) 2001 Microsoft Corporation
//
//***************************************************************************
//
// Include common definitions
//
#define MOFCOMP_PASS
#include "iscsidsc.h"
#include "iscsierr.h"
//
// ISCSI method execution status code
//
#define ISCSI_STATUS uint32
#define ISCSI_STATUS_QUALIFIERS \
Description("Status code resulting from operation") : amended, \
Values { "Success", \
"Non Specific Error", \
"Login Failed", \
"Connection Failed", \
"Initiator Node Already Exists", \
"Initiator Node Does Not Exist", \
"Target Moved Temporarily", \
"Target Moved Permamently", \
"Initiator Error", \
"Authentication Failure", \
"Authorization Failure", \
"Not Found", \
"Target Removed", \
"Unsupported Version", \
"Too many Connections", \
"Missing Parameter", \
"Can not include in session", \
"Session type not supported", \
"Target Error", \
"Service Unavailable", \
"Out of Resources", \
"Connections already exist on initiator node", \
"Session Already Exists", \
"Initiator Instance Does Not Exist", \
"Target Already Exists", \
"The iscsi driver implementation did not complete an operation correctly", \
"An invalid key text was encountered", \
"Invalid SendTargets response text was encountered", \
"Invalid Session Id", \
"The scsi request failed", \
"Exceeded max sessions for this initiator.", \
"Session is busy since a request is already in progress.", \
"The target mapping is not available", \
"The Target Address type given is not supported", \
"Logon Failed", \
"TCP Send Failed", \
"TCP Transport Error", \
"iSCSI Version Mismatch", \
"The Target Mapping Address passed is out of range for the adapter configuration", \
"The preshared key for the target or IKE identification payload is not available.", \
"The authentication information for the target is not available", \
"The target name is not found or is marked as hidden from login.", \
"One or more parameters specified in LoginTargetIN structure is invalid.", \
"Given target mapping already exists.", \
"The HBA security information cache is full.", \
"The port number passed is not valid for the initiator.", \
"Operation was not successful for all initiators.", \
"The HBA security information cache is not supported by this adapter.", \
"The IKE id payload type specified is not supported.", \
"The IKE id payload size specified is not correct.", \
"Target Portal Structure Already Exists.", \
"Target Address Structure Already Exists.", \
"There is no IKE authentication information available.", \
"There is no tunnel mode outer address specified.", \
"Authentication or tunnel address cache is corrupted.", \
"The request or operation is not supported.", \
"The target does not have enough resources to process the given request.", \
"The initiator service did not respond to the request sent by the driver.", \
"The iSNS server was not found or is unavailable.", \
"The operation was successful but requires a driver reload or reboot to become effective.", \
"There is no target portal available to complete the login.", \
"Cannot remove the last connection for a session.", \
"The Microsoft iSCSI initiator service has not been started.", \
"The target has already been logged in via an iSCSI session.", \
"The session cannot be logged out since a device on that session is currently being used.", \
"Failed to save persistent login information.", \
"Failed to remove persistent login information.", \
"The specified initiator name was not found.", \
"The specified portal was not found.", \
"The specified discovery mechanism was not found.", \
"iSCSI does not support IPSEC for this version of the OS.", \
"The iSCSI service timed out waiting for all persistent logins to complete.", \
"The specified CHAP secret is less than 96 bits and will not be usable for authenticating over non ipsec connections.", \
"The evaluation period for the iSCSI initiator service has expired.", \
"CHAP secret given does not conform to the standard. Please see system event log for more information.", \
"Target CHAP secret given is invalid.", \
"Initiator CHAP secret given is invalid.", \
"CHAP Username given is invalid.", \
"Logon Authentication type given is invalid.", \
"Target Mapping information given is invalid.", \
"Target Id given in Target Mapping is invalid.", \
"The iSCSI name specified contains invalid characters or is too long.", \
"The iSNS version number returned from the iSNS server is not compatible with this version of the iSNS client.", \
"Initiator failed to configure IPSec for the given connection. This could be because of low resources.", \
"The buffer given for processing the request is too small.", \
"The given Load Balance policy is not recognized by iScsi initiator.", \
"One or more paramaters specified is not valid.", \
"Duplicate PathIds were specified in the call to set Load Balance Policy.", \
"Number of paths specified in Set Load Balance Policy does not match the number of paths to the target.", \
"Path Id specified in the call to set Load Balance Policy is not valid.", \
"Multiple primary paths specified when only one primary path is expected.", \
"No primary path specified when at least one is expected.", \
"Volume is already a persistently bound volume.", \
"Volume was not found.", \
"The volume specified does not originate from an iSCSI disk.", \
"The DNS name specified was not resolved.", \
"There is no connection available in the iSCSI session to process the request.", \
"The given Load Balance policy is not supported.", \
"A remove connection request is already in progress for this session.", \
"Given connection was not found in the session.", \
"The leading connection in the session cannot be removed." \
}, \
ValueMap { "0", \
"0xEFFF0001", \
"0xEFFF0002", \
"0xEFFF0003", \
"0xEFFF0004", \
"0xEFFF0005", \
"0xEFFF0006", \
"0xEFFF0007", \
"0xEFFF0008", \
"0xEFFF0009", \
"0xEFFF000A", \
"0xEFFF000B", \
"0xEFFF000C", \
"0xEFFF000D", \
"0xEFFF000E", \
"0xEFFF000F", \
"0xEFFF0010", \
"0xEFFF0011", \
"0xEFFF0012", \
"0xEFFF0013", \
"0xEFFF0014", \
"0xEFFF0015", \
"0xEFFF0016", \
"0xEFFF0017", \
"0xEFFF0018", \
"0xEFFF0019", \
"0xEFFF001A", \
"0xEFFF001B", \
"0xEFFF001C", \
"0xEFFF001D", \
"0xEFFF001E", \
"0xEFFF001F", \
"0xEFFF0020", \
"0xEFFF0021", \
"0xEFFF0022", \
"0xEFFF0023", \
"0xEFFF0024", \
"0xEFFF0025", \
"0xEFFF0026", \
"0xEFFF0027", \
"0xEFFF0028", \
"0xEFFF0029", \
"0xEFFF002A", \
"0xEFFF002B", \
"0xEFFF002C", \
"0xEFFF002D", \
"0xEFFF002E", \
"0xEFFF002F", \
"0xEFFF0030", \
"0xEFFF0031", \
"0xEFFF0032", \
"0xEFFF0033", \
"0xEFFF0034", \
"0xEFFF0035", \
"0xEFFF0036", \
"0xEFFF0037", \
"0xEFFF0038", \
"0xEFFF0039", \
"0xEFFF003A", \
"0xAFFF003B", \
"0xEFFF003C", \
"0xEFFF003D", \
"0xEFFF003E", \
"0xEFFF003F", \
"0xEFFF0040", \
"0xEFFF0041", \
"0xEFFF0042", \
"0xEFFF0043", \
"0xEFFF0044", \
"0xEFFF0045", \
"0xEFFF0046", \
"0xEFFF0047", \
"0xAFFF0048", \
"0xEFFF0049", \
"0xEFFF004A", \
"0xEFFF004B", \
"0xEFFF004C", \
"0xAFFF004D", \
"0xEFFF004E", \
"0xEFFF004F", \
"0xEFFF0050", \
"0xEFFF0051", \
"0xEFFF0052", \
"0xEFFF0053", \
"0xEFFF0054", \
"0xEFFF0055", \
"0xEFFF0056", \
"0xEFFF0057", \
"0xEFFF0058", \
"0xEFFF0059", \
"0xEFFF005A", \
"0xEFFF005B", \
"0xEFFF005C", \
"0xEFFF005D", \
"0xEFFF005E", \
"0xEFFF005F", \
"0xEFFF0060", \
"0xEFFF0061", \
"0xEFFF0062", \
"0xEFFF0063", \
"0xEFFF0064" \
}
[
WmiGenerateHeader(GENERATE_HEADER),
WMI,
DisplayName("IP Address") : amended,
guid("{9AC5D4A1-1A1A-48ec-8E79-735806E9A1FA}"),
cpp_quote(MODULE_HEADER
ISCSI_SECURITY_FLAGS_CPPQUOTE
"\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"}
]
#define ISCSIIPADDRESSTYPE uint32
ISCSIIPADDRESSTYPE 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,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -