CLUSCTL_RESOURCE_QUERY_MAINTENANCE_MODE control code
Queries the maintenance mode state of the specified disk resource. Applications use this control code as a parameter to the ClusterResourceControl function.
ClusterResourceControl( hResource, // resource handle
hHostNode, // host node
CLUSCTL_RESOURCE_QUERY_MAINTENANCE_MODE, // this control code
NULL, // not used
0, // not used
lpOutBuffer, // output buffer: string
cbOutBufferSize, // allocated buffer size (bytes)
lpcbBytesReturned ); // size of returned data (bytes)
Parameters
The following control code function and DLL support parameters are specific to this control code. For complete parameter descriptions, see ClusterResourceControl.
-
lpOutBuffer
-
On a successful return, points to a CLUS_MAINTENANCE_MODE_INFO structure containing the current maintenance mode state of the disk resource.
Return value
ClusterResourceControl returns one of the following values:
-
ERROR_SUCCESS
-
0
The disk resource DLL supports maintenance mode and the function request was completed successfully.
-
ERROR_INVALID_FUNCTION
-
1
The disk resource DLL does not support maintenance mode.
-
ERROR_MORE_DATA
-
234 (0xEA)
Output buffer size is too small to return the requested data.
-
ERROR_INVALID_STATE
-
1369 (0x559)
The disk resource is offline.
-
ERROR_HOST_NODE_NOT_RESOURCE_OWNER
-
5015 (0x1397)
A disk resource not owned by the hosting node cannot be queried for maintenance mode status.
-
ERROR_CLUSTER_INVALID_REQUEST
-
5048 (0x13B8)
A quorum resource cannot be queried for maintenance mode status.
-
The operation failed. The value of lpcbBytesReturned is unreliable.
Remarks
Only disk resources support maintenance mode.
A resource must be online and not identified as the quorum resource in order to be placed in maintenance mode.
The calling application must direct the maintenance mode resource control codes to the node hosting the resource.
ClusAPI.h defines the 32 bits of CLUSCTL_RESOURCE_QUERY_MAINTENANCE_MODE (0x010001e1) as follows:
Component | Bit location | Value |
---|---|---|
Object code |
24 31 |
CLUS_OBJECT_RESOURCE (0x1) |
Global bit |
23 |
CLUS_NOT_GLOBAL (0x0) |
Modify bit |
22 |
CLUS_NO_MODIFY (0x0) |
User bit |
21 |
CLCTL_CLUSTER_BASE (0x0) |
Type bit |
20 |
External (0x0) |
Operation code |
0 23 |
CLCTL_QUERY_MAINTENANCE_MODE (0x1e1) |
Access code |
0 1 |
CLUS_ACCESS_READ (0x1) |
For more information, see Control Code Architecture.
Requirements
Minimum supported client |
None supported |
Minimum supported server |
Windows Server 2008 Datacenter with SP1, Windows Server 2008 Enterprise with SP1 |
Header |
|