6 uuid(b97db8b2
-4c63
-11cf
-bff6
-08002be23f2f
),
8 pointer_default(unique),
9 endpoint("ncacn_ip_tcp:"),
10 authservice
("MSServerClusterMgmtAPI"),
11 helpstring("Failover Cluster Management API (clusapi)")
16 typedef [context_handle] void *HCLUSTER_RPC
;
17 typedef [context_handle] void *HNODE_RPC
;
18 typedef [context_handle] void *HGROUP_RPC
;
19 typedef [context_handle] void *HRES_RPC
;
20 typedef [context_handle] void *HKEY_RPC
;
21 typedef [context_handle] void *HNOTIFY_RPC
;
22 typedef [context_handle] void *HNETWORK_RPC
;
23 typedef [context_handle] void *HNETINTERFACE_RPC
;
24 typedef [context_handle] void *HBATCH_PORT_RPC
;
26 #define HCLUSTER_RPC policy_handle
27 #define HNODE_RPC policy_handle
28 #define HGROUP_RPC policy_handle
29 #define HRES_RPC policy_handle
30 #define HKEY_RPC policy_handle
31 #define HNOTIFY_RPC policy_handle
32 #define HNETWORK_RPC policy_handle
33 #define HNETINTERFACE_RPC policy_handle
34 #define HBATCH_PORT_RPC policy_handle
38 [ size_is( cbInSecurityDescriptor
), length_is( cbOutSecurityDescriptor
) ] uint8
*lpSecurityDescriptor
;
39 uint32 cbInSecurityDescriptor
;
40 uint32 cbOutSecurityDescriptor
;
41 } RPC_SECURITY_DESCRIPTOR
;
45 RPC_SECURITY_DESCRIPTOR RpcSecurityDescriptor
;
47 } RPC_SECURITY_ATTRIBUTES
;
50 [value
(20)] uint32 dwSize
;
51 uint32 dwClusterHighestVersion
;
52 uint32 dwClusterLowestVersion
;
55 } CLUSTER_OPERATIONAL_VERSION_INFO
;
59 boolean8 SetAttempted
;
61 } IDL_CLUSTER_SET_PASSWORD_STATUS
;
64 IDL_CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES
= 1
65 } IDL_CLUSTER_SET_PASSWORD_FLAGS
;
70 } CLUSTER_CREATE_GROUP_INFO_RPC
;
78 [ out ] WERROR
*Status
83 [ out ] WERROR
*Status
,
84 [ out ] HCLUSTER_RPC
*Cluster
93 [ in, out ] HCLUSTER_RPC
*Cluster
100 clusapi_SetClusterName
(
101 [ in, string ] [charset
(UTF16
)] uint16
*NewClusterName
,
102 [ out ] WERROR
*rpc_status
109 clusapi_GetClusterName
(
110 [ out, string ] [charset
(UTF16
)] uint16
**ClusterName
,
111 [ out, string ] [charset
(UTF16
)] uint16
**NodeName
118 clusapi_GetClusterVersion
(
119 [ out ] uint16
*lpwMajorVersion
,
120 [ out ] uint16
*lpwMinorVersion
,
121 [ out ] uint16
*lpwBuildNumber
,
122 [ out, string ] [charset
(UTF16
)] uint16
**lpszVendorId
,
123 [ out, string ] [charset
(UTF16
)] uint16
**lpszCSDVersion
130 clusapi_GetQuorumResource
(
131 [ out, string ] [charset
(UTF16
)] uint16
**lpszResourceName
,
132 [ out, string ] [charset
(UTF16
)] uint16
**lpszDeviceName
,
133 [ out ] uint32
*pdwMaxQuorumLogSize
,
134 [ out ] WERROR
*rpc_status
141 clusapi_SetQuorumResource
(
142 [ in ] HRES_RPC hResource
,
143 [ in, string ] [charset
(UTF16
)] uint16
*lpszDeviceName
,
144 [ in ] uint32 dwMaxQuorumLogSize
,
145 [ out ] WERROR
*rpc_status
148 typedef [bitmap32bit
] bitmap
{
149 CLUSTER_ENUM_NODE
= 0x00000001,
150 CLUSTER_ENUM_RESTYPE
= 0x00000002,
151 CLUSTER_ENUM_RESOURCE
= 0x00000004,
152 CLUSTER_ENUM_GROUP
= 0x00000008,
153 CLUSTER_ENUM_NETWORK
= 0x00000010,
154 CLUSTER_ENUM_NETINTERFACE
= 0x00000020,
155 CLUSTER_ENUM_INTERNAL_NETWORK
= 0x80000000,
156 CLUSTER_ENUM_SHARED_VOLUME_RESOURCE
= 0x40000000
160 ClusterEnumType Type
;
161 [string] [charset
(UTF16
)] uint16
*Name
;
166 [size_is(EntryCount
)] ENUM_ENTRY
Entry[*];
170 [string] [charset
(UTF16
)] uint16
*Name
;
171 [string] [charset
(UTF16
)] uint16
*Id;
173 [string] [charset
(UTF16
)] uint16
*Owner
;
176 [size_is(cbProperties
)] uint8
* Properties
;
177 uint32 cbRoProperties
;
178 [size_is(cbRoProperties
)] uint8
* RoProperties
;
182 [string] [charset
(UTF16
)] uint16
*Name
;
183 [string] [charset
(UTF16
)] uint16
*Id;
184 [string] [charset
(UTF16
)] uint16
*OwnerName
;
185 [string] [charset
(UTF16
)] uint16
*OwnerId
;
187 [size_is(cbProperties
)] uint8
* Properties
;
188 uint32 cbRoProperties
;
189 [size_is(cbRoProperties
)] uint8
* RoProperties
;
190 } RESOURCE_ENUM_ENTRY
;
194 [size_is(EntryCount
)] GROUP_ENUM_ENTRY
Entry[*];
199 [size_is(EntryCount
)] RESOURCE_ENUM_ENTRY
Entry[*];
200 } RESOURCE_ENUM_LIST
;
207 [ in ] ClusterEnumType dwType
,
208 [ out ] ENUM_LIST
**ReturnEnum
,
209 [ out ] WERROR
*rpc_status
217 clusapi_OpenResource
(
218 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
219 [ out ] WERROR
*Status
,
220 [ out ] WERROR
*rpc_status
224 clusapi_OpenResource
(
225 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
226 [ out ] WERROR
*Status
,
227 [ out ] WERROR
*rpc_status
,
228 [ out ] HRES_RPC
*hResource
234 typedef [v1_enum] enum {
235 CLUSTER_RESOURCE_DEFAULT_MONITOR
= 0x00000000,
236 CLUSTER_RESOURCE_SEPARATE_MONITOR
= 0x00000001
237 } clusapi_CreateResourceFlags
;
241 clusapi_CreateResource
(
242 [ in ] HGROUP_RPC hGroup
,
243 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
244 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceType
,
245 [ in ] clusapi_CreateResourceFlags dwFlags
,
246 [ out ] WERROR
*Status
,
247 [ out ] WERROR
*rpc_status
251 clusapi_CreateResource
(
252 [ in ] HGROUP_RPC hGroup
,
253 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
254 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceType
,
255 [ in ] clusapi_CreateResourceFlags dwFlags
,
256 [ out ] WERROR
*Status
,
257 [ out ] WERROR
*rpc_status
,
258 [ out ] HRES_RPC
*hResource
265 clusapi_DeleteResource
(
266 [ in ] HRES_RPC hResource
,
267 [ out ] WERROR
*rpc_status
274 clusapi_CloseResource
(
275 [ in, out ] HRES_RPC
*Resource
281 typedef [v1_enum] enum {
282 ClusterResourceInitializing
= 0x00000001,
283 ClusterResourceOnline
= 0x00000002,
284 ClusterResourceOffline
= 0x00000003,
285 ClusterResourceFailed
= 0x00000004,
286 ClusterResourceOnlinePending
= 0x00000081,
287 ClusterResourceOfflinePending
= 0x00000082,
288 ClusterResourceStateUnknown
= 0xFFFFFFFF
289 } clusapi_ClusterResourceState
;
292 clusapi_GetResourceState
(
293 [ in ] HRES_RPC hResource
,
294 [ out ] clusapi_ClusterResourceState
*State
,
295 [ out, string ] [charset
(UTF16
)] uint16
**NodeName
,
296 [ out, string ] [charset
(UTF16
)] uint16
**GroupName
,
297 [ out ] WERROR
*rpc_status
304 clusapi_SetResourceName
(
305 [ in ] HRES_RPC hResource
,
306 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
307 [ out ] WERROR
*rpc_status
314 clusapi_GetResourceId
(
315 [ in ] HRES_RPC hResource
,
316 [ out, string ] [charset
(UTF16
)] uint16
**pGuid
,
317 [ out ] WERROR
*rpc_status
324 clusapi_GetResourceType
(
325 [ in ] HRES_RPC hResource
,
326 [ out, string ] [charset
(UTF16
)] uint16
**lpszResourceType
,
327 [ out ] WERROR
*rpc_status
334 clusapi_FailResource
(
335 [ in ] HRES_RPC hResource
,
336 [ out ] WERROR
*rpc_status
343 clusapi_OnlineResource
(
344 [ in ] HRES_RPC hResource
,
345 [ out ] WERROR
*rpc_status
352 clusapi_OfflineResource
(
353 [ in ] HRES_RPC hResource
,
354 [ out ] WERROR
*rpc_status
361 clusapi_AddResourceDependency
(
362 [ in ] HRES_RPC hResource
,
363 [ in ] HRES_RPC hDependsOn
,
364 [ out ] WERROR
*rpc_status
371 clusapi_RemoveResourceDependency
(
372 [ in ] HRES_RPC hResource
,
373 [ in ] HRES_RPC hDependsOn
,
374 [ out ] WERROR
*rpc_status
381 clusapi_CanResourceBeDependent
(
382 [ in ] HRES_RPC hResource
,
383 [ in ] HRES_RPC hResourceDependent
,
384 [ out ] WERROR
*rpc_status
391 clusapi_CreateResEnum
(
392 [ in ] HRES_RPC hResource
,
393 [ in ] uint32 dwType
,
394 [ out ] ENUM_LIST
**ReturnEnum
,
395 [ out ] WERROR
*rpc_status
402 clusapi_AddResourceNode
(
403 [ in ] HRES_RPC hResource
,
404 [ in ] HNODE_RPC hNode
,
405 [ out ] WERROR
*rpc_status
412 clusapi_RemoveResourceNode
(
413 [ in ] HRES_RPC hResource
,
414 [ in ] HNODE_RPC hNode
,
415 [ out ] WERROR
*rpc_status
422 clusapi_ChangeResourceGroup
(
423 [ in ] HRES_RPC hResource
,
424 [ in ] HGROUP_RPC hGroup
,
425 [ out ] WERROR
*rpc_status
432 clusapi_CreateResourceType
(
433 [ in, string ] [charset
(UTF16
)] uint16
*lpszTypeName
,
434 [ in, string ] [charset
(UTF16
)] uint16
*lpszDisplayName
,
435 [ in, string ] [charset
(UTF16
)] uint16
*lpszDllName
,
436 [ in ] uint32 dwLooksAlive
,
437 [ in ] uint32 dwIsAlive
,
438 [ out ] WERROR
*rpc_status
445 clusapi_DeleteResourceType
(
446 [ in, string ] [charset
(UTF16
)] uint16
*lpszTypeName
,
447 [ out ] WERROR
*rpc_status
455 [ in ] uint32 samDesired
,
456 [ out ] WERROR
*Status
,
457 [ out ] WERROR
*rpc_status
462 [ in ] uint32 samDesired
,
463 [ out ] WERROR
*Status
,
464 [ out ] WERROR
*rpc_status
,
465 [ out ] HKEY_RPC
*phKey
473 [ in ] HKEY_RPC hKey
,
474 [ in, string ] [charset
(UTF16
)] uint16
*lpSubKey
,
475 [ in ] uint32 dwOptions
,
476 [ in ] uint32 samDesired
,
477 [ in, unique ] RPC_SECURITY_ATTRIBUTES
*lpSecurityAttributes
,
478 [ out ] uint32
*lpdwDisposition
,
479 [ out ] WERROR
*Status
,
480 [ out ] WERROR
*rpc_status
485 [ in ] HKEY_RPC hKey
,
486 [ in, string ] [charset
(UTF16
)] uint16
*lpSubKey
,
487 [ in ] uint32 dwOptions
,
488 [ in ] uint32 samDesired
,
489 [ in, unique ] RPC_SECURITY_ATTRIBUTES
*lpSecurityAttributes
,
490 [ out ] uint32
*lpdwDisposition
,
491 [ out ] WERROR
*Status
,
492 [ out ] WERROR
*rpc_status
,
493 [ out ] HKEY_RPC
*phKey
501 [ in ] HKEY_RPC hKey
,
502 [ in, string ] [charset
(UTF16
)] uint16
*lpSubKey
,
503 [ in ] uint32 samDesired
,
504 [ out ] WERROR
*Status
,
505 [ out ] WERROR
*rpc_status
510 [ in ] HKEY_RPC hKey
,
511 [ in, string ] [charset
(UTF16
)] uint16
*lpSubKey
,
512 [ in ] uint32 samDesired
,
513 [ out ] WERROR
*Status
,
514 [ out ] WERROR
*rpc_status
,
515 [ out ] HKEY_RPC
*phKey
523 [ in ] HKEY_RPC hKey
,
524 [ in ] uint32 dwIndex
,
525 [ out, string ] [charset
(UTF16
)] uint16
**KeyName
,
526 [ out ] NTTIME
*lpftLastWriteTime
,
527 [ out ] WERROR
*rpc_status
535 [ in ] HKEY_RPC hKey
,
536 [ in, string ] [charset
(UTF16
)] uint16
*lpValueName
,
537 [ in ] uint32 dwType
,
538 [ in, size_is(cbData
) ] uint8
*lpData
,
539 [ in ] uint32 cbData
,
540 [ out ] WERROR
*rpc_status
548 [ in ] HKEY_RPC hKey
,
549 [ in, string ] [charset
(UTF16
)] uint16
*lpValueName
,
550 [ out ] WERROR
*rpc_status
558 [ in ] HKEY_RPC hKey
,
559 [ in, string ] [charset
(UTF16
)] uint16
*lpValueName
,
560 [ out ] uint32
*lpValueType
,
561 [ out, size_is(cbData
) ] uint8
*lpData
,
562 [ in ] uint32 cbData
,
563 [ out ] uint32
*lpcbRequired
,
564 [ out ] WERROR
*rpc_status
572 [ in ] HKEY_RPC hKey
,
573 [ in, string ] [charset
(UTF16
)] uint16
*lpSubKey
,
574 [ out ] WERROR
*rpc_status
582 [ in ] HKEY_RPC hKey
,
583 [ in ] uint32 dwIndex
,
584 [ out, string ] [charset
(UTF16
)] uint16
**lpValueName
,
585 [ out ] uint32
*lpType
,
586 [ out, size_is(*lpcbData
) ] uint8
*lpData
,
587 [ in, out ] uint32
*lpcbData
,
588 [ out ] uint32
*TotalSize
,
589 [ out ] WERROR
*rpc_status
597 [ in, out ] HKEY_RPC
*pKey
604 clusapi_QueryInfoKey
(
605 [ in ] HKEY_RPC hKey
,
606 [ out ] uint32
*lpcSubKeys
,
607 [ out ] uint32
*lpcbMaxSubKeyLen
,
608 [ out ] uint32
*lpcValues
,
609 [ out ] uint32
*lpcbMaxValueNameLen
,
610 [ out ] uint32
*lpcbMaxValueLen
,
611 [ out ] uint32
*lpcbSecurityDescriptor
,
612 [ out ] NTTIME
*lpftLastWriteTime
,
613 [ out ] WERROR
*rpc_status
620 clusapi_SetKeySecurity
(
621 [ in ] HKEY_RPC hKey
,
622 [ in ] uint32 SecurityInformation
,
623 [ in ] RPC_SECURITY_DESCRIPTOR
*pRpcSecurityDescriptor
,
624 [ out ] WERROR
*rpc_status
631 clusapi_GetKeySecurity
(
632 [ in ] HKEY_RPC hKey
,
633 [ in ] uint32 SecurityInformation
,
634 [ in, out ] RPC_SECURITY_DESCRIPTOR
*pRpcSecurityDescriptor
,
635 [ out ] WERROR
*rpc_status
643 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
644 [ out ] WERROR
*Status
,
645 [ out ] WERROR
*rpc_status
650 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
651 [ out ] WERROR
*Status
,
652 [ out ] WERROR
*rpc_status
,
653 [ out ] HGROUP_RPC
*hGroup
661 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
662 [ out ] WERROR
*Status
,
663 [ out ] WERROR
*rpc_status
668 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
669 [ out ] WERROR
*Status
,
670 [ out ] WERROR
*rpc_status
,
671 [ out ] HGROUP_RPC
*hGroup
679 [ in ] HGROUP_RPC Group
,
680 [ in ] boolean8 force
,
681 [ out ] WERROR
*rpc_status
689 [ in, out ] HGROUP_RPC
*Group
695 typedef [v1_enum] enum {
696 ClusterGroupOnline
= 0x00000000,
697 ClusterGroupOffline
= 0x00000001,
698 ClusterGroupFailed
= 0x00000002,
699 ClusterGroupPartialOnline
= 0x00000003,
700 ClusterGroupPending
= 0x00000004,
701 ClusterGroupStateUnknown
= 0xFFFFFFFF
702 } clusapi_ClusterGroupState
;
705 clusapi_GetGroupState
(
706 [ in ] HGROUP_RPC hGroup
,
707 [ out ] clusapi_ClusterGroupState
*State
,
708 [ out, string ] [charset
(UTF16
)] uint16
**NodeName
,
709 [ out ] WERROR
*rpc_status
716 clusapi_SetGroupName
(
717 [ in ] HGROUP_RPC hGroup
,
718 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
719 [ out ] WERROR
*rpc_status
727 [ in ] HGROUP_RPC hGroup
,
728 [ out, string ] [charset
(UTF16
)] uint16
**pGuid
,
729 [ out ] WERROR
*rpc_status
737 [ in ] HNODE_RPC hNode
,
738 [ out, string ] [charset
(UTF16
)] uint16
**pGuid
,
739 [ out ] WERROR
*rpc_status
747 [ in ] HGROUP_RPC hGroup
,
748 [ out ] WERROR
*rpc_status
755 clusapi_OfflineGroup
(
756 [ in ] HGROUP_RPC hGroup
,
757 [ out ] WERROR
*rpc_status
765 [ in ] HGROUP_RPC hGroup
,
766 [ out ] WERROR
*rpc_status
773 clusapi_MoveGroupToNode
(
774 [ in ] HGROUP_RPC hGroup
,
775 [ in ] HNODE_RPC hNode
,
776 [ out ] WERROR
*rpc_status
783 clusapi_CreateGroupResourceEnum
(
784 [ in ] HGROUP_RPC hGroup
,
785 [ in ] uint32 dwType
,
786 [ out ] ENUM_LIST
**ReturnEnum
,
787 [ out ] WERROR
*rpc_status
794 clusapi_SetGroupNodeList
(
795 [ in ] HGROUP_RPC hGroup
,
796 [ in, unique, size_is(cchListSize
) ] uint16
*multiSzNodeList
,
797 [ in ] uint32 cchListSize
,
798 [ out ] WERROR
*rpc_status
805 clusapi_CreateNotify
(
806 [ out ] WERROR
*Status
,
807 [ out ] WERROR
*rpc_status
811 clusapi_CreateNotify
(
812 [ out ] WERROR
*Status
,
813 [ out ] WERROR
*rpc_status
,
814 [ out ] HNOTIFY_RPC
*hNotify
822 [ in, out ] HNOTIFY_RPC
*Notify
829 clusapi_AddNotifyCluster
(
830 [ in ] HNOTIFY_RPC hNotify
,
831 [ in ] HCLUSTER_RPC hCluster
,
832 [ in ] uint32 dwFilter
,
833 [ in ] uint32 dwNotifyKey
,
834 [ out ] WERROR
*rpc_status
841 clusapi_AddNotifyNode
(
842 [ in ] HNOTIFY_RPC hNotify
,
843 [ in ] HNODE_RPC hNode
,
844 [ in ] uint32 dwFilter
,
845 [ in ] uint32 dwNotifyKey
,
846 [ out ] uint32
*dwStateSequence
,
847 [ out ] WERROR
*rpc_status
854 clusapi_AddNotifyGroup
(
855 [ in ] HNOTIFY_RPC hNotify
,
856 [ in ] HGROUP_RPC hGroup
,
857 [ in ] uint32 dwFilter
,
858 [ in ] uint32 dwNotifyKey
,
859 [ out ] uint32
*dwStateSequence
,
860 [ out ] WERROR
*rpc_status
867 clusapi_AddNotifyResource
(
868 [ in ] HNOTIFY_RPC hNotify
,
869 [ in ] HRES_RPC hResource
,
870 [ in ] uint32 dwFilter
,
871 [ in ] uint32 dwNotifyKey
,
872 [ out ] uint32
*dwStateSequence
,
873 [ out ] WERROR
*rpc_status
880 clusapi_AddNotifyKey
(
881 [ in ] HNOTIFY_RPC hNotify
,
882 [ in ] HKEY_RPC hKey
,
883 [ in ] uint32 dwNotifyKey
,
884 [ in ] uint32 Filter
,
885 [ in ] boolean8 WatchSubTree
,
886 [ out ] WERROR
*rpc_status
893 clusapi_ReAddNotifyNode
(
894 [ in ] HNOTIFY_RPC hNotify
,
895 [ in ] HNODE_RPC hNode
,
896 [ in ] uint32 dwFilter
,
897 [ in ] uint32 dwNotifyKey
,
898 [ in ] uint32 StateSequence
,
899 [ out ] WERROR
*rpc_status
906 clusapi_ReAddNotifyGroup
(
907 [ in ] HNOTIFY_RPC hNotify
,
908 [ in ] HGROUP_RPC hGroup
,
909 [ in ] uint32 dwFilter
,
910 [ in ] uint32 dwNotifyKey
,
911 [ in ] uint32 StateSequence
,
912 [ out ] WERROR
*rpc_status
919 clusapi_ReAddNotifyResource
(
920 [ in ] HNOTIFY_RPC hNotify
,
921 [ in ] HRES_RPC hResource
,
922 [ in ] uint32 dwFilter
,
923 [ in ] uint32 dwNotifyKey
,
924 [ in ] uint32 StateSequence
,
925 [ out ] WERROR
*rpc_status
933 [ in ] HNOTIFY_RPC hNotify
,
934 [ out ] uint32
*dwNotifyKey
,
935 [ out ] uint32
*dwFilter
,
936 [ out ] uint32
*dwStateSequence
,
937 [ out, string ] [charset
(UTF16
)] uint16
**Name
,
938 [ out ] WERROR
*rpc_status
946 [ in, string ] [charset
(UTF16
)] uint16
*lpszNodeName
,
947 [ out ] WERROR
*Status
,
948 [ out ] WERROR
*rpc_status
953 [ in, string ] [charset
(UTF16
)] uint16
*lpszNodeName
,
954 [ out ] WERROR
*Status
,
955 [ out ] WERROR
*rpc_status
,
956 [ out ] HNODE_RPC
*hNode
964 [ in, out ] HNODE_RPC
*Node
970 typedef [v1_enum] enum {
971 ClusterNodeUp
= 0x00000000,
972 ClusterNodeDown
= 0x00000001,
973 ClusterNodePaused
= 0x00000002,
974 ClusterNodeJoining
= 0x00000003,
975 ClusterNodeStateUnknown
= 0xFFFFFFFF
976 } clusapi_ClusterNodeState
;
979 clusapi_GetNodeState
(
980 [ in ] HNODE_RPC hNode
,
981 [ out ] clusapi_ClusterNodeState
*State
,
982 [ out ] WERROR
*rpc_status
990 [ in ] HNODE_RPC hNode
,
991 [ out ] WERROR
*rpc_status
999 [ in ] HNODE_RPC hNode
,
1000 [ out ] WERROR
*rpc_status
1008 [ in ] HNODE_RPC hNode
,
1009 [ out ] WERROR
*rpc_status
1016 clusapi_NodeResourceControl
(
1017 [ in ] HRES_RPC hResource
,
1018 [ in ] HNODE_RPC hNode
,
1019 [ in ] uint32 dwControlCode
,
1020 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1021 [ in ] uint32 nInBufferSize
,
1022 [ out, size_is(nOutBufferSize
),
1023 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1024 [ in ] uint32 nOutBufferSize
,
1025 [ out ] uint32
*lpBytesReturned
,
1026 [ out ] uint32
*lpcbRequired
,
1027 [ out ] WERROR
*rpc_status
1034 clusapi_ResourceControl
(
1035 [ in ] HRES_RPC hResource
,
1036 [ in ] uint32 dwControlCode
,
1037 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1038 [ in ] uint32 nInBufferSize
,
1039 [ out, size_is(nOutBufferSize
),
1040 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1041 [ in ] uint32 nOutBufferSize
,
1042 [ out ] uint32
*lpBytesReturned
,
1043 [ out ] uint32
*lpcbRequired
,
1044 [ out ] WERROR
*rpc_status
1051 clusapi_NodeResourceTypeControl
(
1052 [ in ] HCLUSTER_RPC hCluster
,
1053 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceTypeName
,
1054 [ in ] HNODE_RPC hNode
,
1055 [ in ] uint32 dwControlCode
,
1056 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1057 [ in ] uint32 nInBufferSize
,
1058 [ out, size_is(nOutBufferSize
),
1059 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1060 [ in ] uint32 nOutBufferSize
,
1061 [ out ] uint32
*lpBytesReturned
,
1062 [ out ] uint32
*lpcbRequired
,
1063 [ out ] WERROR
*rpc_status
1070 clusapi_ResourceTypeControl
(
1071 [ in ] HCLUSTER_RPC hCluster
,
1072 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceTypeName
,
1073 [ in ] uint32 dwControlCode
,
1074 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1075 [ in ] uint32 nInBufferSize
,
1076 [ out, size_is(nOutBufferSize
),
1077 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1078 [ in ] uint32 nOutBufferSize
,
1079 [ out ] uint32
*lpBytesReturned
,
1080 [ out ] uint32
*lpcbRequired
,
1081 [ out ] WERROR
*rpc_status
1088 clusapi_NodeGroupControl
(
1089 [ in ] HGROUP_RPC hGroup
,
1090 [ in ] HNODE_RPC hNode
,
1091 [ in ] uint32 dwControlCode
,
1092 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1093 [ in ] uint32 nInBufferSize
,
1094 [ out, size_is(nOutBufferSize
),
1095 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1096 [ in ] uint32 nOutBufferSize
,
1097 [ out ] uint32
*lpBytesReturned
,
1098 [ out ] uint32
*lpcbRequired
,
1099 [ out ] WERROR
*rpc_status
1106 clusapi_GroupControl
(
1107 [ in ] HGROUP_RPC hGroup
,
1108 [ in ] uint32 dwControlCode
,
1109 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1110 [ in ] uint32 nInBufferSize
,
1111 [ out, size_is(nOutBufferSize
),
1112 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1113 [ in ] uint32 nOutBufferSize
,
1114 [ out ] uint32
*lpBytesReturned
,
1115 [ out ] uint32
*lpcbRequired
,
1116 [ out ] WERROR
*rpc_status
1123 clusapi_NodeNodeControl
(
1124 [ in ] HNODE_RPC hNode
,
1125 [ in ] HNODE_RPC hHostNode
,
1126 [ in ] uint32 dwControlCode
,
1127 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1128 [ in ] uint32 nInBufferSize
,
1129 [ out, size_is(nOutBufferSize
),
1130 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1131 [ in ] uint32 nOutBufferSize
,
1132 [ out ] uint32
*lpBytesReturned
,
1133 [ out ] uint32
*lpcbRequired
,
1134 [ out ] WERROR
*rpc_status
1141 clusapi_NodeControl
(
1142 [ in ] HNODE_RPC hNode
,
1143 [ in ] uint32 dwControlCode
,
1144 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1145 [ in ] uint32 nInBufferSize
,
1146 [ out, size_is(nOutBufferSize
),
1147 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1148 [ in ] uint32 nOutBufferSize
,
1149 [ out ] uint32
*lpBytesReturned
,
1150 [ out ] uint32
*lpcbRequired
,
1151 [ out ] WERROR
*rpc_status
1158 Opnum80NotUsedOnWire
(void);
1164 clusapi_OpenNetwork
(
1165 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1166 [ out ] WERROR
*Status
,
1167 [ out ] WERROR
*rpc_status
1171 clusapi_OpenNetwork
(
1172 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1173 [ out ] WERROR
*Status
,
1174 [ out ] WERROR
*rpc_status
,
1175 [ out ] HNETWORK_RPC
*hNetwork
1182 clusapi_CloseNetwork
(
1183 [ in, out ] HNETWORK_RPC
*Network
1189 typedef [v1_enum] enum {
1190 ClusterNetworkUnavailable
= 0x00000000,
1191 ClusterNetworkDown
= 0x00000001,
1192 ClusterNetworkPartitioned
= 0x00000002,
1193 ClusterNetworkUp
= 0x00000003,
1194 ClusterNetworkStateUnknown
= 0xFFFFFFFF
1195 } clusapi_ClusterNetworkState
;
1198 clusapi_GetNetworkState
(
1199 [ in ] HNETWORK_RPC hNetwork
,
1200 [ out ] clusapi_ClusterNetworkState
*State
,
1201 [ out ] WERROR
*rpc_status
1208 clusapi_SetNetworkName
(
1209 [ in ] HNETWORK_RPC hNetwork
,
1210 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1211 [ out ] WERROR
*rpc_status
1218 clusapi_CreateNetworkEnum
(
1219 [ in ] HNETWORK_RPC hNetwork
,
1220 [ in ] uint32 dwType
,
1221 [ out ] ENUM_LIST
**ReturnEnum
,
1222 [ out ] WERROR
*rpc_status
1229 clusapi_GetNetworkId
(
1230 [ in ] HNETWORK_RPC hNetwork
,
1231 [ out, string ] [charset
(UTF16
)] uint16
**pGuid
,
1232 [ out ] WERROR
*rpc_status
1239 clusapi_SetNetworkPriorityOrder
(
1240 [ in, range(0, 1000)] uint32 NetworkCount
,
1241 [ in, string, size_is(NetworkCount
) ] [charset
(UTF16
)] uint16 NetworkIdList
[*],
1242 [ out ] WERROR
*rpc_status
1249 clusapi_NodeNetworkControl
(
1250 [ in ] HNETWORK_RPC hNetwork
,
1251 [ in ] HNODE_RPC hNode
,
1252 [ in ] uint32 dwControlCode
,
1253 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1254 [ in ] uint32 nInBufferSize
,
1255 [ out, size_is(nOutBufferSize
),
1256 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1257 [ in ] uint32 nOutBufferSize
,
1258 [ out ] uint32
*lpBytesReturned
,
1259 [ out ] uint32
*lpcbRequired
,
1260 [ out ] WERROR
*rpc_status
1267 clusapi_NetworkControl
(
1268 [ in ] HNETWORK_RPC hNetwork
,
1269 [ in ] uint32 dwControlCode
,
1270 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1271 [ in ] uint32 nInBufferSize
,
1272 [ out, size_is(nOutBufferSize
),
1273 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1274 [ in ] uint32 nOutBufferSize
,
1275 [ out ] uint32
*lpBytesReturned
,
1276 [ out ] uint32
*lpcbRequired
,
1277 [ out ] WERROR
*rpc_status
1284 clusapi_AddNotifyNetwork
(
1285 [ in ] HNOTIFY_RPC hNotify
,
1286 [ in ] HNETWORK_RPC hNetwork
,
1287 [ in ] uint32 dwFilter
,
1288 [ in ] uint32 dwNotifyKey
,
1289 [ out ] uint32
*dwStateSequence
,
1290 [ out ] WERROR
*rpc_status
1297 clusapi_ReAddNotifyNetwork
(
1298 [ in ] HNOTIFY_RPC hNotify
,
1299 [ in ] HNETWORK_RPC hNetwork
,
1300 [ in ] uint32 dwFilter
,
1301 [ in ] uint32 dwNotifyKey
,
1302 [ in ] uint32 StateSequence
,
1303 [ out ] WERROR
*rpc_status
1310 clusapi_OpenNetInterface
(
1311 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetInterfaceName
,
1312 [ out ] WERROR
*Status
,
1313 [ out ] WERROR
*rpc_status
1317 clusapi_OpenNetInterface
(
1318 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetInterfaceName
,
1319 [ out ] WERROR
*Status
,
1320 [ out ] WERROR
*rpc_status
,
1321 [ out ] HNETINTERFACE_RPC
*hNetInterface
1328 clusapi_CloseNetInterface
(
1329 [ in, out ] HNETINTERFACE_RPC
*NetInterface
1335 typedef [v1_enum] enum {
1336 ClusterNetInterfaceFailed
= 0x00000000,
1337 ClusterNetInterfaceUnreachable
= 0x00000001,
1338 ClusterNetInterfaceUnavailable
= 0x00000002,
1339 ClusterNetInterfaceUp
= 0x00000003,
1340 ClusterNetInterfaceStateUnknown
= 0xFFFFFFFF
1341 } clusapi_ClusterNetInterfaceState
;
1344 clusapi_GetNetInterfaceState
(
1345 [ in ] HNETINTERFACE_RPC hNetInterface
,
1346 [ out ] clusapi_ClusterNetInterfaceState
*State
,
1347 [ out ] WERROR
*rpc_status
1354 clusapi_GetNetInterface
(
1355 [ in, string ] [charset
(UTF16
)] uint16
*lpszNodeName
,
1356 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1357 [ out, string ] [charset
(UTF16
)] uint16
**lppszInterfaceName
,
1358 [ out ] WERROR
*rpc_status
1365 clusapi_GetNetInterfaceId
(
1366 [ in ] HNETINTERFACE_RPC hNetInterface
,
1367 [ out, string ] [charset
(UTF16
)] uint16
**pGuid
,
1368 [ out ] WERROR
*rpc_status
1375 clusapi_NodeNetInterfaceControl
(
1376 [ in ] HNETINTERFACE_RPC hNetInterface
,
1377 [ in ] HNODE_RPC hNode
,
1378 [ in ] uint32 dwControlCode
,
1379 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1380 [ in ] uint32 nInBufferSize
,
1381 [ out, size_is(nOutBufferSize
),
1382 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1383 [ in ] uint32 nOutBufferSize
,
1384 [ out ] uint32
*lpBytesReturned
,
1385 [ out ] uint32
*lpcbRequired
,
1386 [ out ] WERROR
*rpc_status
1393 clusapi_NetInterfaceControl
(
1394 [ in ] HNETINTERFACE_RPC hNetInterface
,
1395 [ in ] uint32 dwControlCode
,
1396 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1397 [ in ] uint32 nInBufferSize
,
1398 [ out, size_is(nOutBufferSize
),
1399 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1400 [ in ] uint32 nOutBufferSize
,
1401 [ out ] uint32
*lpBytesReturned
,
1402 [ out ] uint32
*lpcbRequired
,
1403 [ out ] WERROR
*rpc_status
1410 clusapi_AddNotifyNetInterface
(
1411 [ in ] HNOTIFY_RPC hNotify
,
1412 [ in ] HNETINTERFACE_RPC hNetInterface
,
1413 [ in ] uint32 dwFilter
,
1414 [ in ] uint32 dwNotifyKey
,
1415 [ out ] uint32
*dwStateSequence
,
1416 [ out ] WERROR
*rpc_status
1423 clusapi_ReAddNotifyNetInterface
(
1424 [ in ] HNOTIFY_RPC hNotify
,
1425 [ in ] HNETINTERFACE_RPC hNetInterface
,
1426 [ in ] uint32 dwFilter
,
1427 [ in ] uint32 dwNotifyKey
,
1428 [ in ] uint32 StateSequence
,
1429 [ out ] WERROR
*rpc_status
1436 clusapi_CreateNodeEnum
(
1437 [ in ] HNODE_RPC hNode
,
1438 [ in ] uint32 dwType
,
1439 [ out ] ENUM_LIST
**ReturnEnum
,
1440 [ out ] WERROR
*rpc_status
1447 clusapi_GetClusterVersion2
(
1448 [ out ] uint16
*lpwMajorVersion
,
1449 [ out ] uint16
*lpwMinorVersion
,
1450 [ out ] uint16
*lpwBuildNumber
,
1451 [ out, string ] [charset
(UTF16
)] uint16
**lpszVendorId
,
1452 [ out, string ] [charset
(UTF16
)] uint16
**lpszCSDVersion
,
1453 [ out ] CLUSTER_OPERATIONAL_VERSION_INFO
**ppClusterOpVerInfo
,
1454 [ out ] WERROR
*rpc_status
1461 clusapi_CreateResTypeEnum
(
1462 [ in, string ] [charset
(UTF16
)] uint16
*lpszTypeName
,
1463 [ in ] uint32 dwType
,
1464 [ out ] ENUM_LIST
**ReturnEnum
,
1465 [ out ] WERROR
*rpc_status
1472 clusapi_BackupClusterDatabase
(
1473 [ in, string ] [charset
(UTF16
)] uint16
*lpszPathName
,
1474 [ out ] WERROR
*rpc_status
1481 clusapi_NodeClusterControl
(
1482 [ in ] HCLUSTER_RPC hCluster
,
1483 [ in ] HNODE_RPC hHostNode
,
1484 [ in ] uint32 dwControlCode
,
1485 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1486 [ in ] uint32 nInBufferSize
,
1487 [ out, size_is(nOutBufferSize
),
1488 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1489 [ in ] uint32 nOutBufferSize
,
1490 [ out ] uint32
*lpBytesReturned
,
1491 [ out ] uint32
*lpcbRequired
,
1492 [ out ] WERROR
*rpc_status
1499 clusapi_ClusterControl
(
1500 [ in ] HCLUSTER_RPC hCluster
,
1501 [ in ] uint32 dwControlCode
,
1502 [ in, unique, size_is(nInBufferSize
) ] uint8
*lpInBuffer
,
1503 [ in ] uint32 nInBufferSize
,
1504 [ out, size_is(nOutBufferSize
),
1505 length_is (*lpBytesReturned
)] uint8
*lpOutBuffer
,
1506 [ in ] uint32 nOutBufferSize
,
1507 [ out ] uint32
*lpBytesReturned
,
1508 [ out ] uint32
*lpcbRequired
,
1509 [ out ] WERROR
*rpc_status
1516 clusapi_UnblockGetNotifyCall
(
1517 [ in ] HNOTIFY_RPC hNotify
1524 clusapi_SetServiceAccountPassword
(
1525 [ in, string ] [charset
(UTF16
)] uint16
*lpszNewPassword
,
1526 [ in ] IDL_CLUSTER_SET_PASSWORD_FLAGS dwFlags
,
1527 [ out, size_is(ReturnStatusBufferSize
), length_is(*SizeReturned
) ]
1528 IDL_CLUSTER_SET_PASSWORD_STATUS ReturnStatusBufferPtr
[*],
1529 [ in, range(0, (64 * 1024)) ] uint32 ReturnStatusBufferSize
,
1530 [ out ] uint32
*SizeReturned
,
1531 [ out ] uint32
*ExpectedBufferSize
1538 clusapi_SetResourceDependencyExpression
(
1539 [ in ] HRES_RPC hResource
,
1540 [ in, string, unique ] [charset
(UTF16
)] uint16
*lpszDependencyExpression
,
1541 [ out ] WERROR
*rpc_status
1548 clusapi_GetResourceDependencyExpression
(
1549 [ in ] HRES_RPC hResource
,
1550 [ out, string ] [charset
(UTF16
)] uint16
**lpszDependencyExpression
,
1551 [ out ] WERROR
*rpc_status
1558 Opnum111NotUsedOnWire
(void);
1564 clusapi_GetResourceNetworkName
(
1565 [ in ] HRES_RPC hResource
,
1566 [ out, string ] [charset
(UTF16
)] uint16
**lpszName
,
1567 [ out ] WERROR
*rpc_status
1574 clusapi_ExecuteBatch
(
1575 [ in ] HKEY_RPC hKey
,
1576 [ in ] uint32 cbData
,
1577 [ in, size_is(cbData
)] uint8
*lpData
,
1578 [ out ] int *pdwFailedCommand
,
1579 [ out ] WERROR
*rpc_status
1586 clusapi_CreateBatchPort
(
1587 [ in ] HKEY_RPC hKey
,
1588 [ out ] HBATCH_PORT_RPC
*phBatchPort
,
1589 [ out ] WERROR
*rpc_status
1596 clusapi_GetBatchNotification
(
1597 [ in ] HBATCH_PORT_RPC hBatchNotify
,
1598 [ out ] uint32
*cbData
,
1599 [ out, size_is(,*cbData
) ] uint8
** lpData
1606 clusapi_CloseBatchPort
(
1607 [ in, out ] HBATCH_PORT_RPC
*phBatchPort
1613 typedef [bitmap32bit
] bitmap
{
1614 CLUSAPI_READ_ACCESS
= 0x00000001,
1615 CLUSAPI_CHANGE_ACCESS
= 0x00000002,
1616 CLUSAPI_GENERIC_READ
= 0x80000000,
1617 CLUSAPI_GENERIC_WRITE
= 0x40000000,
1618 CLUSAPI_GENERIC_EXECUTE
= 0x20000000,
1619 CLUSAPI_GENERIC_ALL
= 0x10000000,
1620 CLUSAPI_MAXIMUM_ALLOWED
= 0x02000000
1621 } clusapi_DesiredAccessMask
;
1625 clusapi_OpenClusterEx
(
1626 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1627 [ out ] uint32
*lpdwGrantedAccess
,
1628 [ out ] WERROR
*Status
1632 clusapi_OpenClusterEx
(
1633 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1634 [ out ] uint32
*lpdwGrantedAccess
,
1635 [ out ] WERROR
*Status
,
1636 [ out ] HCLUSTER_RPC
*hCluster
1645 [ in, string ] [charset
(UTF16
)] uint16
*lpszNodeName
,
1646 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1647 [ out ] uint32
*lpdwGrantedAccess
,
1648 [ out ] WERROR
*Status
,
1649 [ out ] WERROR
*rpc_status
1654 [ in, string ] [charset
(UTF16
)] uint16
*lpszNodeName
,
1655 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1656 [ out ] uint32
*lpdwGrantedAccess
,
1657 [ out ] WERROR
*Status
,
1658 [ out ] WERROR
*rpc_status
,
1659 [ out ] HNODE_RPC
*hNode
1666 clusapi_OpenGroupEx
(
1667 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
1668 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1669 [ out ] uint32
*lpdwGrantedAccess
,
1670 [ out ] WERROR
*Status
,
1671 [ out ] WERROR
*rpc_status
1675 clusapi_OpenGroupEx
(
1676 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
1677 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1678 [ out ] uint32
*lpdwGrantedAccess
,
1679 [ out ] WERROR
*Status
,
1680 [ out ] WERROR
*rpc_status
,
1681 [ out ] HGROUP_RPC
*hGroup
1688 clusapi_OpenResourceEx
(
1689 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
1690 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1691 [ out ] uint32
*lpdwGrantedAccess
,
1692 [ out ] WERROR
*Status
,
1693 [ out ] WERROR
*rpc_status
1697 clusapi_OpenResourceEx
(
1698 [ in, string ] [charset
(UTF16
)] uint16
*lpszResourceName
,
1699 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1700 [ out ] uint32
*lpdwGrantedAccess
,
1701 [ out ] WERROR
*Status
,
1702 [ out ] WERROR
*rpc_status
,
1703 [ out ] HRES_RPC
*hResource
1710 clusapi_OpenNetworkEx
(
1711 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1712 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1713 [ out ] uint32
*lpdwGrantedAccess
,
1714 [ out ] WERROR
*Status
,
1715 [ out ] WERROR
*rpc_status
1719 clusapi_OpenNetworkEx
(
1720 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetworkName
,
1721 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1722 [ out ] uint32
*lpdwGrantedAccess
,
1723 [ out ] WERROR
*Status
,
1724 [ out ] WERROR
*rpc_status
,
1725 [ out ] HNETWORK_RPC
*hNetwork
1732 clusapi_OpenNetInterfaceEx
(
1733 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetInterfaceName
,
1734 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1735 [ out ] uint32
*lpdwGrantedAccess
,
1736 [ out ] WERROR
*Status
,
1737 [ out ] WERROR
*rpc_status
1741 clusapi_OpenNetInterfaceEx
(
1742 [ in, string ] [charset
(UTF16
)] uint16
*lpszNetInterfaceName
,
1743 [ in ] clusapi_DesiredAccessMask dwDesiredAccess
,
1744 [ out ] uint32
*lpdwGrantedAccess
,
1745 [ out ] WERROR
*Status
,
1746 [ out ] WERROR
*rpc_status
,
1747 [ out ] HNETINTERFACE_RPC
*hNetInterface
1754 clusapi_ChangeCsvState
(
1755 [ in ] HRES_RPC hResource
,
1756 [ in ] uint32 dwState
,
1757 [ out ] WERROR
*rpc_status
1764 clusapi_CreateNodeEnumEx
(
1765 [in] HNODE_RPC hNode
,
1767 [in] uint32 dwOptions
,
1768 [out] ENUM_LIST
**ReturnIdEnum
,
1769 [out] ENUM_LIST
**ReturnNameEnum
,
1770 [out] WERROR
* rpc_status
1777 clusapi_CreateEnumEx
(
1778 [in] HCLUSTER_RPC hCluster
,
1780 [in] uint32 dwOptions
,
1781 [out] ENUM_LIST
**ReturnIdEnum
,
1782 [out] ENUM_LIST
**ReturnNameEnum
,
1783 [out] WERROR
* rpc_status
1790 clusapi_PauseNodeEx
(
1791 [ in ] HNODE_RPC hNode
,
1792 [ in ] boolean8 bDrainNode
,
1793 [ in ] uint32 dwPauseFlags
,
1794 [ out ] WERROR
*rpc_status
1801 clusapi_PauseNodeWithDrainTarget
(
1802 [ in ] HNODE_RPC hNode
,
1803 [ in ] uint32 dwPauseFlags
,
1804 [ in ] HNODE_RPC hNodeDrainTarget
,
1805 [ out ] WERROR
*rpc_status
1812 clusapi_ResumeNodeEx
(
1813 [ in ] HNODE_RPC hNode
,
1814 [ in ] uint32 dwResumeFailbackType
,
1815 [ in ] uint32 dwResumeFlagsReserved
,
1816 [ out ] WERROR
*rpc_status
1823 clusapi_CreateGroupEx
(
1824 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
1825 [ in, unique ] CLUSTER_CREATE_GROUP_INFO_RPC
*pGroupInfo
,
1826 [ out ] WERROR
*Status
,
1827 [ out ] WERROR
*rpc_status
1831 clusapi_CreateGroupEx
(
1832 [ in, string ] [charset
(UTF16
)] uint16
*lpszGroupName
,
1833 [ in, unique ] CLUSTER_CREATE_GROUP_INFO_RPC
*pGroupInfo
,
1834 [ out ] WERROR
*Status
,
1835 [ out ] WERROR
*rpc_status
,
1836 [ out ] HGROUP_RPC
*hGroup
1843 clusapi_OnlineGroupEx
(
1844 [ in ] HGROUP_RPC hGroup
,
1845 [ in ] uint32 dwOnlineFlags
,
1846 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1847 [ in ] uint32 cbInBufferSize
,
1848 [ out ] WERROR
*rpc_status
1855 clusapi_OfflineGroupEx
(
1856 [ in ] HGROUP_RPC hGroup
,
1857 [ in ] uint32 dwOfflineFlags
,
1858 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1859 [ in ] uint32 cbInBufferSize
,
1860 [ out ] WERROR
*rpc_status
1867 clusapi_MoveGroupEx
(
1868 [ in ] HGROUP_RPC hGroup
,
1869 [ in ] uint32 dwMoveFlags
,
1870 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1871 [ in ] uint32 cbInBufferSize
,
1872 [ out ] WERROR
*rpc_status
1879 clusapi_MoveGroupToNodeEx
(
1880 [ in ] HGROUP_RPC hGroup
,
1881 [ in ] HNODE_RPC hNode
,
1882 [ in ] uint32 dwMoveFlags
,
1883 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1884 [ in ] uint32 cbInBufferSize
,
1885 [ out ] WERROR
*rpc_status
1892 clusapi_CancelClusterGroupOperation
(
1893 [ in ] HGROUP_RPC hGroup
,
1894 [ in ] uint32 dwCancelFlags
,
1895 [ out ] WERROR
*rpc_status
1902 clusapi_OnlineResourceEx
(
1903 [ in ] HRES_RPC hResource
,
1904 [ in ] uint32 dwOnlineFlags
,
1905 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1906 [ in ] uint32 cbInBufferSize
,
1907 [ out ] WERROR
*rpc_status
1914 clusapi_OfflineResourceEx
(
1915 [ in ] HRES_RPC hResource
,
1916 [ in ] uint32 dwOfflineFlags
,
1917 [ in, size_is(cbInBufferSize
) ] uint8
* lpInBuffer
,
1918 [ in ] uint32 cbInBufferSize
,
1919 [ out ] WERROR
*rpc_status
1922 #define HGENERIC_RPC policy_handle
1924 typedef [context_handle] void *HGENERIC_RPC
;
1928 uint32 dwObjectType
; // really of type CLUSTER_OBJECT_TYPE_RPC
1930 } NOTIFY_FILTER_AND_TYPE_RPC
;
1933 NOTIFY_FILTER_AND_TYPE_RPC FilterAndType
;
1934 [ size_is(dwBufferSize
) ] uint8
* buffer
;
1935 uint32 dwBufferSize
;
1936 [string] [charset
(UTF16
)] uint16
*ObjectId
;
1937 [string] [charset
(UTF16
)] uint16
*ParentId
;
1938 [string] [charset
(UTF16
)] uint16
*Name
;
1939 [string] [charset
(UTF16
)] uint16
*Type
;
1940 } NOTIFICATION_DATA_RPC
;
1943 uint32
*dwNotifyKey
;
1944 NOTIFICATION_DATA_RPC NotificationData
;
1951 // Notify interface V2 functions
1955 clusapi_CreateNotifyV2
(
1956 [ out ] WERROR
*rpc_error
,
1957 [ out ] WERROR
*rpc_status
1961 clusapi_CreateNotifyV2
(
1962 [ out ] WERROR
*rpc_error
,
1963 [ out ] WERROR
*rpc_status
,
1964 [ out ] HNOTIFY_RPC
*hNotify
1972 clusapi_AddNotifyV2
(
1973 [ in ] HNOTIFY_RPC hNotify
,
1974 [ in ] HGENERIC_RPC hObject
,
1975 [ in ] NOTIFY_FILTER_AND_TYPE_RPC filter
,
1976 [ in ] uint32 dwNotifyKey
,
1977 [ in ] uint32 dwVersion
,
1978 [ in ] boolean8 isTargetedAtObject
,
1979 [ out ] WERROR
*rpc_status
1986 clusapi_GetNotifyV2
(
1987 [ in ] HNOTIFY_RPC hNotify
,
1988 [ out, size_is(,*dwNumNotifications
) ] NOTIFICATION_RPC
**Notifications
,
1989 [ out ] uint32
*dwNumNotifications
1996 clusapi_QueryAllValues
(
1997 [ in ] HKEY_RPC hKey
,
1998 [ out ] uint32
*pcbData
,
1999 [ out, size_is(1, *pcbData
) ] uint8
** ppData
,
2000 [ out ] WERROR
*rpc_status
2005 uint8 DiskIdBlob
[16];
2012 clusapi_StmFindDisk
(
2013 [ in ] HCLUSTER_RPC hCluster
,
2014 [ in ] uint32 dwFlags
,
2015 [ in, out, unique ] CLUSTER_DISKID
*pDiskId
,
2016 [ in, size_is(uniqueIdSize
), unique ] uint8
*pUniqueId
,
2017 [ in ] uint32 uniqueIdSize
,
2018 [ out, ref, string ] [charset
(UTF16
)] uint16
**ppszDeviceName
,
2019 [ out ] WERROR
*rpc_status
2023 [string] [charset
(UTF16
)] uint16
*pszNodeName
;
2026 [unique, size_is(ResultSize
)] uint8
*pResultData
;
2027 } CLUSTER_MRR_NODE_RESPONSE
;
2031 [size_is(NodeCount
)] CLUSTER_MRR_NODE_RESPONSE
*pNodes
;
2032 } CLUSTER_MRR_RESPONSE
;
2039 [ in ] HCLUSTER_RPC hCluster
,
2040 [ in ] boolean8 fExcludeSelf
,
2041 [ in ] hyper nodeSet
,
2042 [ in ] uint32 dwTimeout
,
2043 [ in ] uint32 dwComponent
,
2044 [ in ] uint32 dwControlCode
,
2045 [ in ] uint32 inSize
,
2046 [ in, unique, size_is(inSize
) ] uint8
*pInData
,
2047 [ out, ref, size_is(1, 1) ] CLUSTER_MRR_RESPONSE
**ppInfo
,
2048 [ out ] WERROR
*rpc_status
2055 clusapi_CreateGroupEnum
(
2056 [ in ] HCLUSTER_RPC hCluster
,
2057 [ in, unique, size_is(cbProperties
)] uint8
* pProperties
,
2058 [ in ] uint32 cbProperties
,
2059 [ in, unique, size_is(cbRoProperties
)] uint8
* pRoProperties
,
2060 [ in ] uint32 cbRoProperties
,
2061 [ out ] GROUP_ENUM_LIST
**ppResultList
,
2062 [ out ] WERROR
*rpc_status
2069 clusapi_CreateResourceEnum
(
2070 [ in ] HCLUSTER_RPC hCluster
,
2071 [ in, unique, size_is(cbProperties
)] uint8
* pProperties
,
2072 [ in ] uint32 cbProperties
,
2073 [ in, unique, size_is(cbRoProperties
)] uint8
* pRoProperties
,
2074 [ in ] uint32 cbRoProperties
,
2075 [ out ] RESOURCE_ENUM_LIST
**ppResultList
,
2076 [ out ] WERROR
*rpc_status
2083 clusapi_ExecuteReadBatch
(
2084 [ in ] HKEY_RPC hKey
,
2085 [ in ] uint32 cbInData
,
2086 [ in, size_is(cbInData
)] uint8
*lpInData
,
2087 [ out ] uint32
*cbOutData
,
2088 [ out, size_is(,*cbOutData
) ] uint8
** lpOutData
,
2089 [ out ] WERROR
*rpc_status
2096 clusapi_RestartResource
(
2097 [ in ] HRES_RPC hResource
,
2098 [ in ] uint32 dwFlags
,
2099 [ out ] WERROR
*rpc_status
2105 [string] [charset
(UTF16
)] uint16
*Name
;
2106 } NOTIFICATION_DATA_ASYNC_RPC
;
2112 clusapi_GetNotifyAsync
(
2113 [ in ] HNOTIFY_RPC hNotify
,
2114 [ out, size_is(,*dwNumNotifications
) ] NOTIFICATION_DATA_ASYNC_RPC
**Notifications
,
2115 [ out ] uint32
*dwNumNotifications
2119 DiskIdSignature
= 0x00000001,
2120 DiskIdGuid
= 0x00000002,
2121 DiskIdUnKnown
= 0x00001388
2122 } CLUSDSK_DISKID_ENUM
;
2126 CLUSDSK_DISKID_ENUM DiskIdType
;
2127 [switch_is(DiskIdType
)] union {
2128 [case(DiskIdSignature
)] uint32 DiskSignature
;
2129 [case(DiskIdGuid
)] GUID DiskGuid
;
2134 CLUSPROP_TYPE_ENDMARK
= 0x0000,
2135 CLUSPROP_TYPE_LIST_VALUE
= 0x0001,
2136 CLUSPROP_TYPE_RESCLASS
= 0x0002,
2137 CLUSPROP_TYPE_NAME
= 0x0004,
2138 CLUSPROP_TYPE_SIGNATURE
= 0x0005,
2139 CLUSPROP_TYPE_SCSIADDRESS
= 0x0006,
2140 CLUSPROP_TYPE_DISK_NUMBER
= 0x0007,
2141 CLUSPROP_TYPE_PARTITION_INFO
= 0x0008,
2142 CLUSPROP_TYPE_DISK_SERIALNUMBER
= 0x000a,
2143 CLUSPROP_TYPE_DISK_GUID
= 0x000b,
2144 CLUSPROP_TYPE_DISK_SIZE
= 0x000c,
2145 CLUSPROP_TYPE_PARTITION_INFO_EX
= 0x000d
2146 } CLUSTER_PROPERTY_TYPE
;
2149 CLUSPROP_FORMAT_UNKNOWN
= 0x0000,
2150 CLUSPROP_FORMAT_BINARY
= 0x0001,
2151 CLUSPROP_FORMAT_DWORD
= 0x0002,
2152 CLUSPROP_FORMAT_SZ
= 0x0003,
2153 CLUSPROP_FORMAT_EXPAND_SZ
= 0x0004,
2154 CLUSPROP_FORMAT_MULTI_SZ
= 0x0005,
2155 CLUSPROP_FORMAT_ULARGE_INTEGER
= 0x0006,
2156 CLUSPROP_FORMAT_LONG
= 0x0007,
2157 CLUSPROP_FORMAT_EXPANDED_SZ
= 0x0008,
2158 CLUSPROP_FORMAT_SECURITY_DESCRIPTOR
= 0x0009,
2159 CLUSPROP_FORMAT_LARGE_INTEGER
= 0x000a,
2160 CLUSPROP_FORMAT_WORD
= 0x000b,
2161 CLUSPROP_FORMAT_FILETIME
= 0x000c
2162 } CLUSTER_PROPERTY_FORMAT
;
2165 CLUSPROP_SYNTAX_ENDMARK
= 0x00000000,
2166 CLUSPROP_SYNTAX_NAME
= 0x00040003,
2167 CLUSPROP_SYNTAX_RESCLASS
= 0x00020002,
2168 CLUSPROP_SYNTAX_LIST_VALUE_SZ
= 0x00010003,
2169 CLUSPROP_SYNTAX_LIST_VALUE_EXPAND_SZ
= 0x00010004,
2170 CLUSPROP_SYNTAX_LIST_VALUE_DWORD
= 0x00010002,
2171 CLUSPROP_SYNTAX_LIST_VALUE_BINARY
= 0x00010001,
2172 CLUSPROP_SYNTAX_LIST_VALUE_MULTI_SZ
= 0x00010005,
2173 CLUSPROP_SYNTAX_LIST_VALUE_LONG
= 0x00010007,
2174 CLUSPROP_SYNTAX_LIST_VALUE_EXPANDED_SZ
= 0x00010008,
2175 CLUSPROP_SYNTAX_LIST_VALUE_SECURITY_DESCRIPTOR
= 0x00010009,
2176 CLUSPROP_SYNTAX_LIST_VALUE_LARGE_INTEGER
= 0x0001000a,
2177 CLUSPROP_SYNTAX_LIST_VALUE_ULARGE_INTEGER
= 0x00010006,
2178 CLUSPROP_SYNTAX_LIST_VALUE_WORD
= 0x0001000b,
2179 CLUSPROP_SYNTAX_LIST_VALUE_FILETIME
= 0x0001000c,
2180 CLUSPROP_SYNTAX_DISK_SIGNATURE
= 0x00050002,
2181 CLUSPROP_SYNTAX_SCSI_ADDRESS
= 0x00060002,
2182 CLUSPROP_SYNTAX_DISK_NUMBER
= 0x00070002,
2183 CLUSPROP_SYNTAX_PARTITION_INFO
= 0x00080001,
2184 CLUSPROP_SYNTAX_DISK_SERIALNUMBER
= 0x000a0003,
2185 CLUSPROP_SYNTAX_DISK_GUID
= 0x000b0003,
2186 CLUSPROP_SYNTAX_DISK_SIZE
= 0x000c0006,
2187 CLUSPROP_SYNTAX_PARTITION_INFO_EX
= 0x000d0001
2188 } CLUSTER_PROPERTY_SYNTAX
;
2191 CLUS_CHAR_UNKNOWN
= 0x00000000,
2192 CLUS_CHAR_QUORUM
= 0x00000001,
2193 CLUS_CHAR_DELETE_REQUIRES_ALL_NODES
= 0x00000002,
2194 CLUS_CHAR_LOCAL_QUORUM
= 0x00000004,
2195 CLUS_CHAR_BROADCAST_DELETE
= 0x00000020,
2196 CLUS_CHAR_SINGLE_CLUSTER_INSTANCE
= 0x00000040,
2197 CLUS_CHAR_SINGLE_GROUP_INSTANCE
= 0x00000080,
2198 CLUS_CHAR_COEXIST_IN_SHARED_VOLUME_GROUP
= 0x00000100,
2199 CLUS_CHAR_RESERVED1
= 0x00000200,
2200 CLUS_CHAR_MONITOR_DETACH
= 0x00000400,
2201 CLUS_CHAR_RESERVED2
= 0x00000800,
2202 CLUS_CHAR_RESERVED3
= 0x00001000,
2203 CLUS_CHAR_RESERVED4
= 0x00002000
2204 } CLUS_CHARACTERISTICS
;
2207 CLUS_FLAG_CORE
= 0x00000001
2211 MaintenanceModeTypeDisableIsAliveCheck
= 1,
2212 MaintenanceModeTypeOfflineResource
= 2,
2213 MaintenanceModeTypeUnclusterResource
= 3
2214 } MAINTENANCE_MODE_TYPE
;
2217 CLUSTER_CHANGE_NODE_STATE
= 0x00000001,
2218 CLUSTER_CHANGE_NODE_DELETED
= 0x00000002,
2219 CLUSTER_CHANGE_NODE_ADDED
= 0x00000004,
2220 CLUSTER_CHANGE_NODE_PROPERTY
= 0x00000008,
2221 CLUSTER_CHANGE_REGISTRY_NAME
= 0x00000010,
2222 CLUSTER_CHANGE_REGISTRY_ATTRIBUTES
= 0x00000020,
2223 CLUSTER_CHANGE_REGISTRY_VALUE
= 0x00000040,
2224 CLUSTER_CHANGE_REGISTRY_SUBTREE
= 0x00000080,
2225 CLUSTER_CHANGE_RESOURCE_STATE
= 0x00000100,
2226 CLUSTER_CHANGE_RESOURCE_DELETED
= 0x00000200,
2227 CLUSTER_CHANGE_RESOURCE_ADDED
= 0x00000400,
2228 CLUSTER_CHANGE_RESOURCE_PROPERTY
= 0x00000800,
2229 CLUSTER_CHANGE_GROUP_STATE
= 0x00001000,
2230 CLUSTER_CHANGE_GROUP_DELETED
= 0x00002000,
2231 CLUSTER_CHANGE_GROUP_ADDED
= 0x00004000,
2232 CLUSTER_CHANGE_GROUP_PROPERTY
= 0x00008000,
2233 CLUSTER_CHANGE_RESOURCE_TYPE_DELETED
= 0x00010000,
2234 CLUSTER_CHANGE_RESOURCE_TYPE_ADDED
= 0x00020000,
2235 CLUSTER_CHANGE_RESOURCE_TYPE_PROPERTY
= 0x00040000,
2236 CLUSTER_CHANGE_CLUSTER_RECONNECT
= 0x00080000,
2237 CLUSTER_CHANGE_NETWORK_STATE
= 0x00100000,
2238 CLUSTER_CHANGE_NETWORK_DELETED
= 0x00200000,
2239 CLUSTER_CHANGE_NETWORK_ADDED
= 0x00400000,
2240 CLUSTER_CHANGE_NETWORK_PROPERTY
= 0x00800000,
2241 CLUSTER_CHANGE_NETINTERFACE_STATE
= 0x01000000,
2242 CLUSTER_CHANGE_NETINTERFACE_DELETED
= 0x02000000,
2243 CLUSTER_CHANGE_NETINTERFACE_ADDED
= 0x04000000,
2244 CLUSTER_CHANGE_NETINTERFACE_PROPERTY
= 0x08000000,
2245 CLUSTER_CHANGE_QUORUM_STATE
= 0x10000000,
2246 CLUSTER_CHANGE_CLUSTER_STATE
= 0x20000000,
2247 CLUSTER_CHANGE_CLUSTER_PROPERTY
= 0x40000000,
2248 CLUSTER_CHANGE_HANDLE_CLOSE
= 0x80000000
2252 CLUSREG_SET_VALUE
= 1,
2253 CLUSREG_CREATE_KEY
= 2,
2254 CLUSREG_DELETE_KEY
= 3,
2255 CLUSREG_DELETE_VALUE
= 4,
2256 CLUSREG_VALUE_DELETED
= 6,
2257 CLUSREG_READ_KEY
= 7,
2258 CLUSREG_READ_VALUE
= 8,
2259 CLUSREG_READ_ERROR
= 9
2260 } CLUSTER_REG_BATCH_COMMAND
;
2263 IDL_CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES
= 1
2264 } IDL_CLUSTER_SET_PASSWORD_FLAGS
;
2267 CLUSTER_QUORUM_MAINTAINED
= 0,
2268 CLUSTER_QUORUM_LOST
= 1
2269 } CLUSTER_QUORUM_VALUE
;
2272 CLUSTER_OBJECT_TYPE_CLUSTER
= 0x00000001,
2273 CLUSTER_OBJECT_TYPE_GROUP
= 0x00000002,
2274 CLUSTER_OBJECT_TYPE_RESOURCE
= 0x00000003,
2275 CLUSTER_OBJECT_TYPE_RESOURCE_TYPE
= 0x00000004,
2276 CLUSTER_OBJECT_TYPE_NETWORK_INTERFACE
= 0x00000005,
2277 CLUSTER_OBJECT_TYPE_NETWORK
= 0x00000006,
2278 CLUSTER_OBJECT_TYPE_NODE
= 0x00000007,
2279 CLUSTER_OBJECT_TYPE_REGISTRY
= 0x00000008,
2280 CLUSTER_OBJECT_TYPE_QUORUM
= 0x00000009,
2281 CLUSTER_OBJECT_TYPE_SHARED_VOLUME
= 0x0000000a
2282 } CLUSTER_OBJECT_TYPE
;
2285 CLUSTER_CHANGE_CLUSTER_RECONNECT_V2
= 0x00000001,
2286 CLUSTER_CHANGE_CLUSTER_STATE_V2
= 0x00000002,
2287 CLUSTER_CHANGE_CLUSTER_GROUP_ADDED_V2
= 0x00000004,
2288 CLUSTER_CHANGE_CLUSTER_HANDLE_CLOSE_V2
= 0x00000008,
2289 CLUSTER_CHANGE_CLUSTER_NETWORK_ADDED_V2
= 0x00000010,
2290 CLUSTER_CHANGE_CLUSTER_NODE_ADDED_V2
= 0x00000020,
2291 CLUSTER_CHANGE_CLUSTER_RESOURCE_TYPE_ADDED_V2
= 0x00000040,
2292 CLUSTER_CHANGE_CLUSTER_COMMON_PROPERTY_V2
= 0x00000080,
2293 CLUSTER_CHANGE_CLUSTER_PRIVATE_PROPERTY_V2
= 0x00000100,
2294 CLUSTER_CHANGE_CLUSTER_LOST_NOTIFICATIONS_V2
= 0x00000200,
2295 CLUSTER_CHANGE_CLUSTER_RENAME_V2
= 0x00000400
2296 } CLUSTER_CHANGE_CLUSTER_V2
;
2299 CLUSTER_CHANGE_GROUP_DELETED_V2
= 0x00000001,
2300 CLUSTER_CHANGE_GROUP_COMMON_PROPERTY_V2
= 0x00000002,
2301 CLUSTER_CHANGE_GROUP_PRIVATE_PROPERTY_V2
= 0x00000004,
2302 CLUSTER_CHANGE_GROUP_STATE_V2
= 0x00000008,
2303 CLUSTER_CHANGE_GROUP_OWNER_NODE_V2
= 0x00000010,
2304 CLUSTER_CHANGE_GROUP_PREFERRED_OWNERS_V2
= 0x00000020,
2305 CLUSTER_CHANGE_GROUP_RESOURCE_ADDED_V2
= 0x00000040,
2306 CLUSTER_CHANGE_GROUP_RESOURCE_GAINED_V2
= 0x00000080,
2307 CLUSTER_CHANGE_GROUP_RESOURCE_LOST_V2
= 0x00000100,
2308 CLUSTER_CHANGE_GROUP_HANDLE_CLOSE_V2
= 0x00000200
2309 } CLUSTER_CHANGE_GROUP_V2
;
2312 CLUSTER_CHANGE_RESOURCE_COMMON_PROPERTY_V2
= 0x00000001,
2313 CLUSTER_CHANGE_RESOURCE_PRIVATE_PROPERTY_V2
= 0x00000002,
2314 CLUSTER_CHANGE_RESOURCE_STATE_V2
= 0x00000004,
2315 CLUSTER_CHANGE_RESOURCE_OWNER_GROUP_V2
= 0x00000008,
2316 CLUSTER_CHANGE_RESOURCE_DEPENDENCIES_V2
= 0x00000010,
2317 CLUSTER_CHANGE_RESOURCE_DEPENDENTS_V2
= 0x00000020,
2318 CLUSTER_CHANGE_RESOURCE_POSSIBLE_OWNERS_V2
= 0x00000040,
2319 CLUSTER_CHANGE_RESOURCE_DELETED_V2
= 0x00000080,
2320 CLUSTER_CHANGE_RESOURCE_DLL_UPGRADED_V2
= 0x00000100,
2321 CLUSTER_CHANGE_RESOURCE_HANDLE_CLOSE_V2
= 0x00000200
2322 } CLUSTER_CHANGE_RESOURCE_V2
;
2325 CLUSTER_CHANGE_RESOURCE_TYPE_DELETED_V2
= 0x00000001,
2326 CLUSTER_CHANGE_RESOURCE_TYPE_COMMON_PROPERTY_V2
= 0x00000002,
2327 CLUSTER_CHANGE_RESOURCE_TYPE_PRIVATE_PROPERTY_V2
= 0x00000004,
2328 CLUSTER_CHANGE_RESOURCE_TYPE_POSSIBLE_OWNERS_V2
= 0x00000008,
2329 CLUSTER_CHANGE_RESOURCE_TYPE_DLL_UPGRADED_V2
= 0x00000010
2330 } CHANGE_RESOURCE_TYPE_V2
;
2333 CLUSTER_CHANGE_NETINTERFACE_DELETED_V2
= 0x00000001,
2334 CLUSTER_CHANGE_NETINTERFACE_COMMON_PROPERTY_V2
= 0x00000002,
2335 CLUSTER_CHANGE_NETINTERFACE_PRIVATE_PROPERTY_V2
= 0x00000004,
2336 CLUSTER_CHANGE_NETINTERFACE_STATE_V2
= 0x00000008,
2337 CLUSTER_CHANGE_NETINTERFACE_HANDLE_CLOSE_V2
= 0x00000010
2338 } CLUSTER_CHANGE_NETINTERFACE_V2
;
2341 CLUSTER_CHANGE_NETWORK_DELETED_V2
= 0x00000001,
2342 CLUSTER_CHANGE_NETWORK_COMMON_PROPERTY_V2
= 0x00000002,
2343 CLUSTER_CHANGE_NETWORK_PRIVATE_PROPERTY_V2
= 0x00000004,
2344 CLUSTER_CHANGE_NETWORK_STATE_V2
= 0x00000008,
2345 CLUSTER_CHANGE_NETWORK_HANDLE_CLOSE_V2
= 0x00000010
2346 } CLUSTER_CHANGE_NETWORK_V2
;
2349 CLUSTER_CHANGE_NODE_NETINTERFACE_ADDED_V2
= 0x00000001,
2350 CLUSTER_CHANGE_NODE_DELETED_V2
= 0x00000002,
2351 CLUSTER_CHANGE_NODE_COMMON_PROPERTY_V2
= 0x00000004,
2352 CLUSTER_CHANGE_NODE_PRIVATE_PROPERTY_V2
= 0x00000008,
2353 CLUSTER_CHANGE_NODE_STATE_V2
= 0x00000010,
2354 CLUSTER_CHANGE_NODE_GROUP_GAINED_V2
= 0x00000020,
2355 CLUSTER_CHANGE_NODE_GROUP_LOST_V2
= 0x00000040,
2356 CLUSTER_CHANGE_NODE_HANDLE_CLOSE_V2
= 0x00000080
2357 } CLUSTER_CHANGE_NODE_V2
;
2360 CLUSTER_CHANGE_REGISTRY_ATTRIBUTES_V2
= 0x00000001,
2361 CLUSTER_CHANGE_REGISTRY_NAME_V2
= 0x00000002,
2362 CLUSTER_CHANGE_REGISTRY_SUBTREE_V2
= 0x00000004,
2363 CLUSTER_CHANGE_REGISTRY_VALUE_V2
= 0x00000008,
2364 CLUSTER_CHANGE_REGISTRY_HANDLE_CLOSE_V2
= 0x00000010
2365 } CLUSTER_CHANGE_REGISTRY_V2
;
2368 CLUSTER_CHANGE_QUORUM_STATE_V2
= 0x00000001
2369 } CLUSTER_CHANGE_QUORUM_V2
;
2372 CLUSTER_CHANGE_SHARED_VOLUME_STATE_V2
= 0x00000001
2373 } CLUSTER_CHANGE_SHARED_VOLUME_V2
;
2376 DiskIdSignature
= 0x00000001,
2377 DiskIdGuid
= 0x00000002,
2378 DiskIdUnKnown
= 0x00001388
2379 } CLUSDSK_DISKID_ENUM
;