3.1.4.2 Protocol Version 3

This protocol MUST indicate to the RPC runtime that it is to perform a strict NDR consistency check at target level 6.0, as specified in [MS-RPCE] section 3.

This protocol MUST indicate to the RPC runtime that it is to reject a NULL unique pointer or NULL full pointer with nonzero conformant value, as specified in [MS-RPCE] section 3.

This protocol MUST indicate to the RPC runtime by means of the strict_context_handle attribute that it is to reject the use of context handles that are created by a method of an RPC interface that is different from this one, as specified in [MS-RPCE] section 3.

The methods MUST NOT throw an exception except those thrown by the underlying RPC protocol [MS-RPCE], as specified in [MS-RPCE].

Any active node in the cluster MUST have protocol server state set to read/write, as specified in section 3.1.1. As such, it MUST accept ClusAPI Protocol requests from clients that have successfully completed the initialization steps, as specified in section 3.2.3. For client requests that change the cluster state, after the client request is completed, the updated state MUST be accessible to the same or other protocol clients by means of a ClusAPI Protocol session to any active node. For client requests that change non-volatile cluster state, after the client request has completed, the updated state MUST be accessible to the same or other protocol clients by means of a ClusAPI Protocol session to any active node, even after one or all nodes have failed or restarted.

Any active node in the cluster MUST accept ClusAPI Protocol requests from valid clients. A valid client is a client that has successfully completed the initialization steps as specified in section 3.2.3. For client requests that change the cluster state, after the client request is completed, the updated cluster state MUST be accessible to the same or other protocol clients by means of a ClusAPI Protocol session to any active node.

A node that is running the cluster software but is not yet an active node in the cluster SHOULD accept ClusAPI Protocol requests that do not modify the cluster state. As such, each node SHOULD locally maintain its protocol server state, which indicates the extent to which it can accept protocol requests that operate on the cluster state. A server SHOULD support the following values for protocol server state:

None: Indicates that the node has not sufficiently initialized to accept any protocol requests.

Read-Only: Indicates that the node accepts requests that do not modify the cluster state.

Read/Write: Indicates that the node accepts all requests.

If a client has successfully completed the initialization steps, as specified in section 3.2.3, and calls a method that requires greater access than the server's current protocol server state allows, as specified in section 3.1.1, the server MUST NOT accept the method request, and it MUST fail the method with error 0x00000046 (ERROR_SHARING_PAUSED).Error codes are specified in [SYSERR].

It is implementation-specific how a server determines when to stop processing protocol requests as it ceases to be an active node. For example, a server typically ceases to be an active node when the server computer is shut down or when the server software is terminated.

If a server receives a protocol request but determines that it is unable to process that request because it is no longer an active node, the server MUST return 0x000013D0 (ERROR_CLUSTER_NODE_NOT_READY) or 0x000013D1 (ERROR_CLUSTER_NODE_SHUTTING_DOWN). Note that failure of the server to respond will result in an RPC error on the client, as specified in [MS-RPCE]. The client SHOULD treat all of these responses the same.

Methods in the RPC interface require that the client have appropriate security access. There are three levels of security access: "All", "Read with Backup Privilege", and "Read".<75> The access level "All" subsumes the access level of "Read with Backup Privilege", which subsumes the access level of "Read". The "All" access level is said to be of greater access than "Read with Backup Privilege", which is said to be of greater access than "Read".

The server SHOULD require the access level specified per method in the following subsections. For some methods, as specified in the following subsections, the server SHOULD determine the required access level based on the input parameters set by the client.

The server SHOULD treat a method invocation as an implicit request by the client for the minimum level of access required for the method being invoked, except for the following methods. In the following methods, the server SHOULD evaluate the level of access explicitly requested by the client: ApiOpenClusterEx (section 3.1.4.2.116), ApiOpenNodeEx (section 3.1.4.2.117), ApiOpenGroupEx (section 3.1.4.2.118), ApiOpenResourceEx (section 3.1.4.2.119), ApiOpenNetworkEx (section 3.1.4.2.120), and ApiOpenNetInterfaceEx (section 3.1.4.2.121). If a client implicitly or explicitly requests a level of access greater than the client is entitled to, the server MUST fail the method with error 0x00000005 (ERROR_ACCESS_DENIED).

The server MUST determine the level of access a client can obtain both from the cluster security descriptor and from whether the client has the backup privilege [MS-LSAD]. In particular, the server SHOULD evaluate the client's request for access as follows:

If a client (with or without the backup privilege) requests "All" access and the cluster security descriptor does not allow the client to have "All" access, the server SHOULD fail the method with error 0x00000005 (ERROR_ACCESS_DENIED). If the cluster security descriptor does allow the client "All" access, then the server SHOULD accept the client's request and grant the client an access level of "All".

If a client without the backup privilege requests "Read" access and the cluster security descriptor does not permit the client "Read" access, the server SHOULD fail the method with error 0x00000005 (ERROR_ACCESS_DENIED). If the cluster security descriptor does permit the client "Read" access, then the server SHOULD accept the client's request and grant the client an access level of "Read".

If a client with the backup privilege requests "Read" access, the server SHOULD accept the client's request and grant the client an access level of "Read with Backup Privilege".

For methods that do not have one of the following context handles as a parameter, the server MUST perform an access check for the particular client when the method is called. If the particular client does not have the required level of access, the server MUST fail the method with error 0x00000005 (ERROR_ACCESS_DENIED).

  • HCLUSTER_RPC, HRES_RPC, HGROUP_RPC, HNODE_RPC, HNETWORK_RPC, or HNETINTERFACE_RPC

For methods that return one of the following context handles, the server MUST maintain with the state represented by this context handle the level of access granted to the client:

  • HCLUSTER_RPC, HRES_RPC, HGROUP_RPC, HNODE_RPC, HNETWORK_RPC, or HNETINTERFACE_RPC

When the client invokes a method using one of the following context handles the server MUST validate that the level of access granted upon context handle creation is sufficient. If a client calls a method using a context handle that was opened with insufficient access, the server MUST fail the method with error 0x00000005 (ERROR_ACCESS_DENIED).

  • HCLUSTER_RPC, HRES_RPC, HGROUP_RPC, HNODE_RPC, HNETWORK_RPC, or HNETINTERFACE_RPC

The server SHOULD NOT<76> return any of the following context handles that do not have "Read" access or higher:

  • HCLUSTER_RPC, HRES_RPC, HGROUP_RPC, HNODE_RPC, HNETWORK_RPC, or HNETINTERFACE_RPC

RPC parameters for methods in this protocol have maximum size restrictions as follows:

Methods in RPC Opnum Order

Method

Description

ApiOpenCluster

Obtains an HCLUSTER_RPC context handle to a cluster, enabling the client to issue subsequent methods pertaining to the specified cluster.

Opnum: 0

ApiCloseCluster

Instructs the server to free the context specified by the HCLUSTER_RPC context handle previously obtained by ApiOpenCluster.

Opnum: 1

ApiSetClusterName

Changes the name of the cluster.

Opnum: 2

ApiGetClusterName

Queries the cluster name and the host name of the node acting as an RPC interface server.

Opnum: 3

ApiGetClusterVersion

Queries version information about the cluster and the protocol server software.

Opnum: 4

ApiGetQuorumResource

Queries the quorum configuration for the cluster.

Opnum: 5

ApiSetQuorumResource

Changes the quorum configuration for the cluster.

Opnum: 6

ApiCreateEnum

Queries an enumeration of named objects from the cluster state.

Opnum: 7

ApiOpenResource

Obtains an HRES_RPC context handle to a resource, enabling the client to issue subsequent methods pertaining to the specified resource.

Opnum: 8

ApiCreateResource

Creates an instance of a cluster resource in the non-volatile cluster state for the specified resource type. Returns an HRES_RPC context handle to the resource, enabling the client to issue subsequent methods pertaining to the specified resource.

Opnum: 9

ApiDeleteResource

Removes the specified resource from the non-volatile cluster state.

Opnum: 10

ApiCloseResource

Instructs the server to free the context specified by the HRES_RPC context handle previously obtained by ApiOpenResource or ApiOpenResourceEx.

Opnum: 11

ApiGetResourceState

Queries the current state of the specified resource.

Opnum: 12

ApiSetResourceName

Changes the name of the specified resource.

Opnum: 13

ApiGetResourceId

Queries the unique identifier (UID) of the specified resource.

Opnum: 14

ApiGetResourceType

Queries a string identifying the resource type of the designated resource.

Opnum: 15

ApiFailResource

Initiates a failure of the specified resource. Tests the recovery policy associated with the resource.

Opnum: 16

ApiOnlineResource

Instructs the server to bring the specified resource to the online state.

Opnum: 17

ApiOfflineResource

Instructs the server to bring the specified resource to the offline state.

Opnum: 18

ApiAddResourceDependency

Instructs the server to add a simple dependency between the two specified resources.

Opnum: 19

ApiRemoveResourceDependency

Instructs the server to remove the dependency between the two specified resources.

Opnum: 20

ApiCanResourceBeDependent

Determines whether the specified resource can be dependent on another specified resource.

Opnum: 21

ApiCreateResEnum

Queries an enumeration of the resources on which the specified resource depends.

Opnum: 22

ApiAddResourceNode

Adds the specified node to the set of nodes that can host the specified resource.

Opnum: 23

ApiRemoveResourceNode

Removes the specified node from the set of nodes that can host the specified resource.

Opnum: 24

ApiChangeResourceGroup

Moves the specified resource from its current group to the specified group.

Opnum: 25

ApiCreateResourceType

Adds the specified resource type to the non-volatile cluster state.

Opnum: 26

ApiDeleteResourceType

Removes the specified resource type from the non-volatile cluster state.

Opnum: 27

ApiGetRootKey

Obtains a context handle for the root key of the cluster registry.

Opnum: 28

ApiCreateKey

Creates a key in the cluster registry and returns a context handle for the created key.

Opnum: 29

ApiOpenKey

Opens and returns a context handle to a key in the cluster registry.

Opnum: 30

ApiEnumKey

Obtains, by index, the name of a subkey of a key in the cluster registry.

Opnum: 31

ApiSetValue

Sets the data stored in a value in the cluster registry.

Opnum: 32

ApiDeleteValue

Deletes a value from the cluster registry.

Opnum: 33

ApiQueryValue

Queries the data stored in a value in the cluster registry.

Opnum: 34

ApiDeleteKey

Deletes a key from the cluster registry.

Opnum: 35

ApiEnumValue

Retrieve, by index, a value under a key in the cluster registry.

Opnum: 36

ApiCloseKey

Close a cluster registry key.

Opnum: 37

ApiQueryInfoKey

Queries information about a key in the cluster registry.

Opnum: 38

ApiSetKeySecurity

Sets the security descriptor of a key in the cluster registry.

Opnum: 39

ApiGetKeySecurity

Retrieves the security descriptor of a key in the cluster registry.

Opnum: 40

ApiOpenGroup

Obtains an HGROUP_RPC context handle to a group, enabling the client to issue subsequent methods pertaining to the specified group.

Opnum: 41

ApiCreateGroup

Creates an instance of a cluster group in the non-volatile cluster state. Returns an HGROUP_RPC context handle to the group, enabling the client to issue subsequent methods pertaining to the specified group.

Opnum: 42

ApiDeleteGroup

Removes the specified group from the non-volatile cluster state.

Opnum: 43

ApiCloseGroup

Instructs the server to free the context specified by the HGROUP_RPC context handle previously obtained by ApiOpenGroup.

Opnum: 44

ApiGetGroupState

Queries the current state of the specified group.

Opnum: 45

ApiSetGroupName

Changes the name of the specified group.

Opnum: 46

ApiGetGroupId

Queries the UID of the specified group.

Opnum: 47

ApiGetNodeId

Queries the unique identifier (UID) of the specified node.

Opnum: 48

ApiOnlineGroup

Instructs the server to bring the specified group to the ClusterGroupOnline state.

Opnum: 49

ApiOfflineGroup

Instructs the server to bring the specified resource to the ClusterGroupOffline state.

Opnum: 50

ApiMoveGroup

Instructs the server to move the group to another node in the cluster.

Opnum: 51

ApiMoveGroupToNode

Instructs the server to move the group to the specified node.

Opnum: 52

ApiCreateGroupResourceEnum

Queries an enumeration of the resources that are contained in the specified group.

Opnum: 53

ApiSetGroupNodeList

Sets a list of nodes, in order of preference, indicating where the specified group is hosted.

Opnum: 54

ApiCreateNotify

Obtains an HNOTIFY_RPC context handle to a notification port, enabling the client to issue subsequent methods pertaining to the events in the cluster.

Opnum: 55

ApiCloseNotify

Instructs the server to free the context specified by the HNOTIFY_RPC context handle previously obtained by ApiCreateNotify.

Opnum: 56

ApiAddNotifyCluster

Registers an event filter mask with the specified notification port whose scope covers all objects in the cluster.

Opnum: 57

ApiAddNotifyNode

Registers an event filter mask with the specified notification port whose scope is limited to the specified node.

Opnum: 58

ApiAddNotifyGroup

Registers an event filter mask with the specified notification port whose scope is limited to the specified group.

Opnum: 59

ApiAddNotifyResource

Registers an event filter mask with the specified notification port whose scope is limited to the specified resource.

Opnum: 60

ApiAddNotifyKey

Registers an event filter mask with the specified notification port whose scope is limited to the specified cluster registry key.

Opnum: 61

ApiReAddNotifyNode

Re-registers an event filter mask with the specified notification port whose scope is limited to the specified node.

Opnum: 62

ApiReAddNotifyGroup

Re-registers an event filter mask with the specified notification port whose scope is limited to the specified group.

Opnum: 63

ApiReAddNotifyResource

Re-registers an event filter mask with the specified notification port whose scope is limited to the specified resource.

Opnum: 64

ApiGetNotify

Retrieves the next event from the specified notification port.

Opnum: 65

ApiOpenNode

Obtains an HNODE_RPC context handle to a node, enabling the client to issue subsequent methods pertaining to the specified node.

Opnum: 66

ApiCloseNode

Instructs the server to free the context specified by the HNODE_RPC context handle previously obtained by ApiOpenNode.

Opnum: 67

ApiGetNodeState

Queries the current state of the specified node.

Opnum: 68

ApiPauseNode

Instructs the server to pause group failover activity on the specified node.

Opnum: 69

ApiResumeNode

Instructs the server to resume group failover activity on the specified node.

Opnum: 70

ApiEvictNode

Instructs the server to remove the specified node as a configured node in the cluster.

Opnum: 71

ApiNodeResourceControl

Instructs the server to initiate an operation on the specified resource based on the specified control code. The operation is executed on the specified node.

Opnum: 72

ApiResourceControl

Instructs the server to initiate an operation on the specified resource based on the specified control code. The operation is executed on the node hosting the group that contains the resource.

Opnum: 73

ApiNodeResourceTypeControl

Instructs the server to initiate an operation on the specified resource type based on the specified control code. The operation is executed on the specified node.

Opnum: 74

ApiResourceTypeControl

Instructs the server to initiate an operation on the specified resource type based on the specified control code. The operation is executed on the node where the HCLUSTER_RPC context handle was obtained.

Opnum: 75

ApiNodeGroupControl

Instructs the server to initiate an operation on the specified group based on the specified control code. The operation is executed on the specified node.

Opnum: 76

ApiGroupControl

Instructs the server to initiate an operation on the specified group based on the specified control code. The operation is executed on the node hosting the group.

Opnum: 77

ApiNodeNodeControl

Instructs the server to initiate an operation on the specified node based on the specified control code. The operation is executed on the specified node.

Opnum: 78

ApiNodeControl

Instructs the server to initiate an operation on the specified node based on the specified control code. The operation is executed on the node where the HNODE_RPC context handle was obtained.

Opnum: 79

Opnum80NotUsedOnWire

Reserved for local use. Opnum: 80

Opnum: 80

ApiOpenNetwork

Obtains an HNETWORK_RPC context handle to a cluster network, enabling the client to issue subsequent methods pertaining to the specified cluster network.

Opnum: 81

ApiCloseNetwork

Instructs the server to free the context specified by the HNETWORK_RPC context handle previously obtained by ApiOpenNetwork or ApiOpenNetworkEx.

Opnum: 82

ApiGetNetworkState

Queries the current state of the specified cluster network.

Opnum: 83

ApiSetNetworkName

Changes the name of the specified cluster network.

Opnum: 84

ApiCreateNetworkEnum

Queries an enumeration of cluster network interface objects that are installed on the specified cluster network.

Opnum: 85

ApiGetNetworkId

Queries the unique ID of the specified cluster network.

Opnum: 86

ApiSetNetworkPriorityOrder

Sets the priority ordered list of internal cluster networks to use for internal cluster communication.

Opnum: 87

ApiNodeNetworkControl

Instructs the server to initiate an operation on the specified cluster network based on the specified control code. The operation is executed on the specified node.

Opnum: 88

ApiNetworkControl

Instructs the server to initiate an operation on the specified cluster network based on the specified control code. The operation is executed on the node where the HNETWORK_RPC context handle was obtained.

Opnum: 89

ApiAddNotifyNetwork

Registers an event filter mask with the specified notification port whose scope is limited to the specified cluster network.

Opnum: 90

ApiReAddNotifyNetwork

Re-registers an event filter mask with the specified notification port whose scope is limited to the specified cluster network.

Opnum: 91

ApiOpenNetInterface

Obtains an HNETINTERFACE_RPC context handle to a cluster network interface, enabling the client to issue subsequent methods pertaining to the specified cluster network interface.

Opnum: 92

ApiCloseNetInterface

Instructs the server to free the context specified by the HNETINTERFACE_RPC context handle previously obtained by ApiOpenNetInterface or ApiOpenNetInterfaceEx.

Opnum: 93

ApiGetNetInterfaceState

Queries the current state of the specified cluster network interface.

Opnum: 94

ApiGetNetInterface

Queries the name of a cluster network interface for a specified node and cluster network.

Opnum: 95

ApiGetNetInterfaceId

Queries the unique ID of the specified cluster network interface.

Opnum: 96

ApiNodeNetInterfaceControl

Instructs the server to initiate an operation on the specified cluster network interface based on the specified control code. The operation is executed on the specified node.

Opnum: 97

ApiNetInterfaceControl

Instructs the server to initiate an operation on the specified cluster network interface based on the specified control code. The operation is executed on the node where the HNETINTERFACE_RPC context handle was obtained.

Opnum: 98

ApiAddNotifyNetInterface

Registers an event filter mask with the specified notification port whose scope is limited to the specified cluster network interface.

Opnum: 99

ApiReAddNotifyNetInterface

Re-registers an event filter mask with the specified notification port whose scope is limited to the specified cluster network interface.

Opnum: 100

ApiCreateNodeEnum

Queries an enumeration of named cluster objects that are associated with a particular node.

Opnum: 101

ApiGetClusterVersion2

Queries version information about the cluster and the protocol server software.

Opnum: 102

ApiCreateResTypeEnum

Queries an enumeration of named cluster objects associated with the specified resource type.

Opnum: 103

ApiBackupClusterDatabase

Instructs the server to make a backup copy of the cluster configuration data.

Opnum: 104

ApiNodeClusterControl

Instructs the server to initiate an operation on the specified cluster based on the specified control code. The operation is executed on the specified node.

Opnum: 105

ApiClusterControl

Instructs the server to initiate an operation on the specified cluster based on the specified control code. The operation is executed on the node where the HCLUSTER_RPC context handle was obtained.

Opnum: 106

ApiUnblockGetNotifyCall

Instructs the server to complete any outstanding ApiGetNotify calls as a precursor to closing the notification port.

Opnum: 107

ApiSetServiceAccountPassword

Changes the password associated with the operational identity of the cluster service.

Opnum: 108

ApiSetResourceDependencyExpression

Instructs the server to modify a complex dependency for the resource.

Opnum: 109

ApiGetResourceDependencyExpression

Instructs the server to retrieve the complex dependency for the resource.

Opnum: 110

Opnum111NotUsedOnWire

Reserved for local use. Opnum: 111

Opnum: 111

ApiGetResourceNetworkName

Retrieves the name of the resource matching resource type "Network Name" on which the specified resource depends.

Opnum: 112

ApiExecuteBatch

Modifies the cluster registry through a series of transactions.

Opnum: 113

ApiCreateBatchPort

Obtains an HBATCH_NOTIFY_RPC context handle to a cluster registry batch update notification port, enabling the client to issue subsequent methods pertaining to the specified cluster network interface.

Opnum: 114

ApiGetBatchNotification

Instructs the server to retrieve batch update notifications, which indicate a set of modifications made to the cluster registry.

Opnum: 115

ApiCloseBatchPort

Instructs the server to free the context specified by the HBATCH_NOTIFY_RPC context handle previously obtained by a call to the ApiCreateBatchPort method.

Opnum: 116

ApiOpenClusterEx

Obtains an HCLUSTER_RPC context handle to a cluster at a specified access level, enabling the client to issue subsequent methods pertaining to the specified cluster.

Opnum: 117

ApiOpenNodeEx

Obtains an HNODE_RPC context handle to a node at a specified access level, enabling the client to issue subsequent methods pertaining to the specified node.

Opnum: 118

ApiOpenGroupEx

Obtains an HGROUP_RPC context handle to a group at a specified access level, enabling the client to issue subsequent methods pertaining to the specified group.

Opnum: 119

ApiOpenResourceEx

Obtains an HRES_RPC context handle to a resource at a specified access level, enabling the client to issue subsequent methods pertaining to the specified resource.

Opnum: 120

ApiOpenNetworkEx

Obtains an HNETWORK_RPC context handle to a cluster network at a specified access level, enabling the client to issue subsequent methods pertaining to the specified cluster network.

Opnum: 121

ApiOpenNetInterfaceEx

Obtains an HNETINTERFACE_RPC context handle to a cluster network interface at a specified access level, enabling the client to issue subsequent methods pertaining to the specified cluster network interface.

Opnum: 122

ApiChangeCsvState

Instructs the server to change the accessibility of a clustered disk.

Opnum: 123

ApiCreateNodeEnumEx

Queries from the cluster state an enumeration of names and IDs of objects associated with a particular node.

Opnum: 124

ApiCreateEnumEx

Queries from the cluster state an enumeration of names and IDs of objects.

Opnum: 125

ApiPauseNodeEx

Instructs the server to pause group failover activity on the specified node. The caller can also specify whether to move all groups off the cluster node.

Opnum: 126

ApiPauseNodeWithDrainTarget

Instructs the server to suspend group failover activity on the specified cluster node and move all the groups from the target cluster node to the specified destination cluster node.

Opnum: 127

ApiResumeNodeEx

Instructs the server to resume group failover activity on the specified node.

Opnum: 128

ApiCreateGroupEx

Creates an instance of a cluster group in the nonvolatile cluster state. Returns an HGROUP_RPC context handle to the group, enabling the client to issue subsequent methods pertaining to the group.

Opnum: 129

ApiOnlineGroupEx

Instructs the server to bring the specified group to the ClusterGroupOnline state.

Opnum: 130

ApiOfflineGroupEx

Instructs the server to bring the specified group to the ClusterGroupOffline state.

Opnum: 131

ApiMoveGroupEx

Instructs the server to move the group to another node in the cluster.

Opnum: 132

ApiMoveGroupToNodeEx

Instructs the server to move the group to a particular node, given as a parameter to the call.

Opnum: 133

ApiCancelClusterGroupOperation

Instructs the server to cancel any existing move operation on the specified group.

Opnum: 134

ApiOnlineResourceEx

Instructs the server to bring the specified resource to the online state.

Opnum: 135

ApiOfflineResourceEx

Instructs the server to bring the specified resource to the offline state.

Opnum: 136

ApiCreateNotifyV2

Obtains an HNOTIFY_RPC context handle to a cluster's notification port, enabling the client to issue subsequent method calls pertaining to the events in the cluster.

Opnum: 137

ApiAddNotifyV2

Registers for notifications for the object and type specified on a given HNOTIFY_RPC context handle.

Opnum: 138

ApiGetNotifyV2

Retrieves the next event from the specified notification port.

Opnum: 139

Opnum140NotUsedOnWire

Reserved for local use. Opnum: 140

Opnum: 140

Opnum141NotUsedOnWire

Reserved for local use. Opnum: 141.

Opnum: 141

Opnum142NotUsedOnWire

Reserved for local use. Opnum: 142

Opnum: 142

ApiCreateGroupEnum

Obtains an enumeration of information about groups in a given cluster state.

Opnum: 143

ApiCreateResourceEnum

Obtains an enumeration of information about resources in a given cluster state.

Opnum: 144

ApiExecuteReadBatch

Retrieves a set of values from the cluster registry.

Opnum: 145

ApiRestartResource

Instructs the server to take the designated resource offline and then bring it back online without changing its persistent state.

Opnum: 146

ApiGetNotifyAsync

Retrieves a set of next events from the specified notification port.

Opnum: 147

Opnum148NotUsedOnWire

Reserved for local use. Opnum: 148

Opnum: 148

Opnum149NotUsedOnWire

Reserved for local use. Opnum: 149

Opnum: 149

Opnum150NotUsedOnWire

Reserved for local use. Opnum: 150

Opnum: 150

Opnum151NotUsedOnWire

Reserved for local use. Opnum: 151

Opnum: 151

Opnum152NotUsedOnWire

Reserved for local use. Opnum: 152

Opnum: 152

Opnum153NotUsedOnWire

Reserved for local use: Opnum: 153

Opnum: 153

Opnum154NotUsedOnWire

Reserved for local use: Opnum: 154

Opnum: 154

ApiAddNotifyResourceTypeV2

Registers for notifications for a resource type specified on a given HNOTIFY_RPC context handle.

Opnum: 155

Opnum156NotUsedOnWire

Reserved for local use: Opnum: 156

Opnum: 156

ApiExecuteReadBatchEx

Retrieves a set of values from the cluster registry.

Opnum: 157

Opnum158NotUsedOnWire

Reserved for local use: Opnum: 158

Opnum: 158

Opnum159NotUsedOnWire

Reserved for local use: Opnum: 159

Opnum: 159

Opnum160NotUsedOnWire

Reserved for local use: Opnum: 160

Opnum: 160

Opnum161NotUsedOnWire

Reserved for local use: Opnum: 161

Opnum: 161

Opnum162NotUsedOnWire

Reserved for local use: Opnum: 162

Opnum: 162

ApiCreateGroupSet

Instructs the server to create a new group set object.

Opnum: 163

ApiOpenGroupSet

Instructs the server to open the handle to an existing group set object is created by ApiCreateGroupSet methods.

Opnum: 164

ApiCloseGroupSet

Instructs the server to free any context information that is created in a previous ApiOpenGroupSet or ApiCreateGroupSet methods.

Opnum: 165

ApiDeleteGroupSet

Removes the designated cluster group set from the nonvolatile cluster state.

Opnum: 166

ApiAddGroupToGroupSet

Adds an existing group to the cluster group set, which is created successfully earlier using the ApiCreateGroupSet or ApiOpenGroupSet method.

Opnum: 167

ApiRemoveGroupFromGroupSet

Instructs the server to remove the designated group from a group set.

Opnum: 168

ApiMoveGroupToGroupSet

Instructs the server to move the specified group into the specified group set in the cluster.

Opnum: 169

Opnum170NotUsedOnWire

Reserved for local use: Opnum: 170

Opnum: 170

ApiAddGroupSetDependency

Adds dependency between two cluster group sets.

Opnum: 171

ApiAddGroupToGroupSetDependency

Adds dependency between a cluster group and a cluster group set.

Opnum: 172

ApiNodeGroupSetControl

Instructs the server to initiate, on the specified group set, an operation that is defined by the specified control code.

Opnum: 173

ApiGroupSetControl

Instructs the server to initiate, on the specified group set, an operation that is defined by the specified control code. The operation is performed on the node hosting the group set.

Opnum: 174

ApiSetGroupDependencyExpression

Instructs the server to set the dependency relationship for the Cluster Group.

Opnum: 175

ApiRemoveClusterGroupDependency

Instructs the server to remove the dependency relation that exists from the Cluster Group.

Opnum: 176

ApiSetGroupSetDependencyExpression

Instructs the server to set the dependency relationship for the cluster group set.

Opnum: 177

ApiRemoveGroupSetDependency

Instructs the server to remove the dependency relation that exists from the group set.

Opnum: 178

ApiRemoveClusterGroupToGroupSetDependency

Instructs the server to remove the dependency that exists from the group set.

Opnum: 179

ApiCreateGroupSetEnum

Returns an enumeration of group sets from the current cluster.

Opnum: 180

ApiCreateNetInterfaceEnum

Returns a collection of cluster network interface names from the cluster state that is installed on the cluster network.

Opnum: 181

ApiChangeCsvStateEx

Instructs the server to change the accessibility of the disk.

Opnum: 182

ApiAddGroupToGroupSetEx

Adds an existing group to an existing cluster group set. Additionally adds the group to the specified FaultDomain and UpdateDomain.

Opnum: 183

ApiChangeResourceGroupEx

Moves the specified resource from its current group to the specified group.

Opnum: 184

Opnum185Reserved

Reserved for future use.

Opnum: 185

Opnum186Reserved

Reserved for future use.

Opnum: 186

Opnum187Reserved

Reserved for future use.

Opnum: 187

Opnum188Reserved

Reserved for future use.

Opnum: 188

Opnum189Reserved

Reserved for future use.

Opnum: 189

Opnum190Reserved

Reserved for future use.

Opnum: 190

Opnum191Reserved

Reserved for future use.

Opnum: 191

Opnum192Reserved

Reserved for future use.

Opnum: 192

Opnum193Reserved

Reserved for future use.

Opnum: 193

Opnum194Reserved

Reserved for future use.

Opnum: 194

Opnum195Reserved

Reserved for future use.

Opnum: 195

Opnum196Reserved

Reserved for future use.

Opnum: 196

Opnum197Reserved

Reserved for future use.

Opnum: 197

Opnum198Reserved

Reserved for future use.

Opnum: 198

Opnum199Reserved

Reserved for future use.

Opnum: 199

Opnum200Reserved

Reserved for future use.

Opnum: 200

Opnum201Reserved

Reserved for future use.

Opnum: 201

Opnum202Reserved

Reserved for future use.

Opnum: 202

Opnum203Reserved

Reserved for future use.

Opnum: 203

Opnum204Reserved

Reserved for future use.

Opnum: 204

Opnum205Reserved

Reserved for future use.

Opnum: 205

Opnum206Reserved

Reserved for future use.

Opnum: 206

Opnum207Reserved

Reserved for future use.

Opnum: 207

Opnum208Reserved

Reserved for future use.

Opnum: 208

Opnum209Reserved

Reserved for future use.

Opnum: 209

Opnum210Reserved

Reserved for future use.

Opnum: 210

Opnum211Reserved

Reserved for future use.

Opnum: 211

Opnum212Reserved

Reserved for future use.

Opnum: 212

Opnum213Reserved

Reserved for future use.

Opnum: 213

Opnum214Reserved

Reserved for future use.

Opnum: 214

Opnum215Reserved

Reserved for future use.

Opnum: 215

Opnum216Reserved

Reserved for future use.

Opnum: 216

Opnum217Reserved

Reserved for future use.

Opnum: 217

Opnum218Reserved

Reserved for future use.

Opnum: 218

Opnum219Reserved

Reserved for future use.

Opnum: 219

Opnum220Reserved

Reserved for future use.

Opnum: 220

Opnum221Reserved

Reserved for future use.

Opnum: 221

Opnum222Reserved

Reserved for future use.

Opnum: 222

Opnum223Reserved

Reserved for future use.

Opnum: 223

Opnum224Reserved

Reserved for future use.

Opnum: 224

Opnum225Reserved

Reserved for future use.

Opnum: 225

Opnum226Reserved

Reserved for future use.

Opnum: 226

Opnum227Reserved

Reserved for future use.

Opnum: 227

Opnum228Reserved

Reserved for future use.

Opnum: 228

Opnum229Reserved

Reserved for future use.

Opnum: 229

Opnum230Reserved

Reserved for future use.

Opnum: 230

Opnum231Reserved

Reserved for future use.

Opnum: 231

Opnum232Reserved

Reserved for future use.

Opnum: 232

Opnum233Reserved

Reserved for future use.

Opnum: 233

Opnum234Reserved

Reserved for future use.

Opnum: 234

Opnum235Reserved

Reserved for future use.

Opnum: 235

Opnum236Reserved

Reserved for future use.

Opnum: 236

Opnum237Reserved

Reserved for future use.

Opnum: 237

Opnum238Reserved

Reserved for future use.

Opnum: 238

Opnum239Reserved

Reserved for future use.

Opnum: 239

Opnum240Reserved

Reserved for future use.

Opnum: 240

Opnum241Reserved

Reserved for future use.

Opnum: 241

Opnum242Reserved

Reserved for future use.

Opnum: 242

Opnum243Reserved

Reserved for future use.

Opnum: 243

Opnum244Reserved

Reserved for future use.

Opnum: 244

Opnum245Reserved

Reserved for future use.

Opnum: 245

Opnum246Reserved

Reserved for future use.

Opnum: 246

Opnum247Reserved

Reserved for future use.

Opnum: 247

Opnum248Reserved

Reserved for future use.

Opnum: 248

Opnum249Reserved

Reserved for future use.

Opnum: 249

Opnum250Reserved

Reserved for future use.

Opnum: 250

Opnum251Reserved

Reserved for future use.

Opnum: 251

Opnum252Reserved

Reserved for future use.

Opnum: 252

Opnum253Reserved

Reserved for future use.

Opnum: 253

Opnum254Reserved

Reserved for future use.

Opnum: 254

Opnum255Reserved

Reserved for future use.

Opnum: 255

Opnum256Reserved

Reserved for future use.

Opnum: 256

Opnum257Reserved

Reserved for future use.

Opnum: 257

Opnum258Reserved

Reserved for future use.

Opnum: 258

Opnum259Reserved

Reserved for future use.

Opnum: 259

Opnum260Reserved

Reserved for future use.

Opnum: 260

Opnum261Reserved

Reserved for future use.

Opnum: 261

Opnum262Reserved

Reserved for future use.

Opnum: 262

Opnum263Reserved

Reserved for future use.

Opnum: 263

Opnum264NotUsedOnWire

Reserved for local use.

Opnum: 264

In the preceding table, the phrase “Reserved for local use” means that the client MUST NOT send the opnum and that the server behavior is undefined because it does not affect interoperability.

In the preceding table, the phrase “Reserved for future use” (Opnum185Reserved through Opnum263Reserved) means that the client SHOULD NOT send the opnum and the server MUST return RPC_S_PROCNUM_OUT_OF_RANGE (0x000006D1).