CLUSCTL_CLUSTER_CHECK_VOTER_DOWN control code

Queries the server for whether taking a quorum resource offline or stopping an active node will cause the cluster to lose quorum. Applications use this control code as a parameter to the ClusterControl function.

ClusterControl( hCluster,                         // cluster handle
                hHostNode,                        // optional node handle
                CLUSCTL_CLUSTER_CHECK_VOTER_DOWN, // this control code
                lpInBuffer,                       // input buffer: resource\node ID
                nInBufferSize,                    // input buffer size (bytes)
                lpOutBuffer,                      // output buffer: quorum status
                cbOutBufferSize,                  // output buffer size (bytes)
                lpcbBytesReturned );              // resulting data size (bytes)

Parameters

The following control code function parameters are specific to this control code. For complete parameter descriptions, see ClusterControl.

lpInBuffer

Points to a NULL-terminated Unicode string containing either a resource ID for the specified quorum resource or node ID for the specified active node.

lpOutBuffer

On a successful return, points to a 32-bit integer containing an enumerator from the CLUSTER_QUORUM_VALUE enumeration indicating whether or not quorum will be lost. lpOutBuffer points to one of the following enumeration values.

CLUSTER_QUORUM_MAINTAINED (0)

The quorum will be maintained.

CLUSTER_QUORUM_LOST (1)

The quorum will be lost.

Return value

ClusterControl returns one of the following values.

ERROR_SUCCESS

0

The operation completed successfully. The lpcbBytesReturned parameter points to the actual size of the returned data.

ERROR_INVALID_FUNCTION

1 (0x1)

Incorrect function. This value is returned if the specified resource pointed to by lpInBuffer is not the one currently configured as the quorum resource.

ERROR_MORE_DATA

234 (0xEA)

More data is available. The output buffer pointed to by lpOutBuffer was not large enough to hold the data resulting from the operation. The lpcbBytesReturned parameter points to the size required for the output buffer.

System error code

If any other value is returned, then the operation failed. The value of lpcbBytesReturned is unreliable.

Remarks

ClusAPI.h defines the 32 bits of CLUSCTL_CLUSTER_CHECK_VOTER_DOWN (0x07000049) as follows:

Component Bit location Value
Object code
24 31
CLUS_OBJECT_CLUSTER (0x7)
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_CHECK_VOTER_DOWN (0x49)
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 Enterprise, Windows Server 2008 Datacenter
Header
ClusAPI.h

See also

Cluster Control Codes

ClusterControl