Share via


HidePaths method of the MSISCSITARGET_ControllerConfigurationService class

Hides a list of SCSI logical units such as a RAID volume or tape drive from a specified list of initiator and target ports on a CIM_SCSIProtocolController instance (SPC).

This method overrides the method inherited from the CIM_ControllerConfigurationService class.

Syntax

uint32 HidePaths(
  [out]     CIM_ConcreteJob            REF Job,
  [in]      string                         LUNames[],
  [in]      string                         InitiatorPortIDs[],
  [in]      string                         TargetPortIDs[],
  [in, out] CIM_SCSIProtocolController REF ProtocolControllers[]
);

Parameters

Job [out]

On return contains a reference to the job if one was created, otherwise contains NULL. If this method returns Method Parameters Checked - Job Started this parameter may be null if the job completed.

LUNames [in]

Specifies the IDs of existing logical unit instances to use. The logical unit instances must already exist. The members of this array must match the Name property of existing CIM_LogicalDevice instances. For more information on when this parameter may be NULL, see Remarks.

InitiatorPortIDs [in]

Specifies the IDs of initiator ports to use. For more information on when this parameter may be NULL, see Remarks.

TargetPortIDs [in]

Specifies the IDs of target ports to use. For more information on when this parameter may be NULL, see Remarks.

ProtocolControllers [in, out]

Contains an array of references to CIM_SCSIProtocolController instances.

On input, this must contain exactly one SPC. On return this is an array of references to the SPCs created or modified as the result of processing the request.

The implementation will attempt to remove associations, LUNames, InitiatorPortIDs, and TargetPortIDs, from this SPC. The implementation may need to create new SPCs with a subset of the remaining associations.

Return value

This method returns one of the following values.

Success (0)

Not Supported (1)

Unspecified Error (2)

Timeout (3)

Failed (4)

Invalid Parameter (5)

DMTF Reserved (6 4095)

Method Parameters Checked - Job Started (4096)

Invalid logical unit ID (4097)

Invalid initiator port ID (4098)

Invalid target port ID (4099)

Target/initiator combination not exposed (4100)

Method Reserved (4101 32767)

Vendor Specific (32768 65535)

Remarks

When hiding logical units, there are three scenarios that the implementation must support. Each scenario requires a different combination of parameters. Other vendor-specific scenarios are allowed.

  • Remove logical units from a view

    The LUNames parameter must not be NULL and that the InitiatorIDs and TargetPortIDs parameters must be NULL.

  • Remove initiator IDs from a view

    The LUNames and TargetPortIDs parameters must be NULL and the InitiatorIDs must not be NULL.

  • Remove target port IDs from a view

    The LUNames and InitiatorPortIDs parameters must be NULL.

The SPC may be automatically deleted when the last logical unit, initiator ID, or target port ID is removed depending on the state of CIM_ProtocolControllerMaskingCapabilites properties. If the SPCAllowsNoLUs property is false, then the SPC is automatically deleted when the last logical unit is removed. If the SPCAllowsNoTargets is false, then the SPC is automatically deleted when the last target port ID is removed. If the SPCAllowsNoInitiators property is false, then the SPC is automatically deleted when the last initiator port ID is removed. In all other cases, the SPC must be explicitly deleted via the DeleteInstance method.

Requirements

Minimum supported client
None supported
Minimum supported server
Windows Server 2012 R2
Namespace
Root\CIMv2\Storage\iScsiTarget
MOF
SmIscsiTarget.mof
DLL
SMiSCSITargetProv.dll

See also

MSISCSITARGET_ControllerConfigurationService

CIM_SCSIProtocolController