windows-nt/Source/XPSP1/NT/base/cluster/service/inc/cp.h
2020-09-26 16:20:57 +08:00

140 lines
2.2 KiB
C

/*++
Copyright (c) 1996 Microsoft Corporation
Module Name:
cp.h
Abstract:
Public data structures and procedure prototypes for the
Checkpoint Manager (CP) subcomponent of the NT Cluster Service
Author:
John Vert (jvert) 1/14/1997
Revision History:
--*/
//
// Define public structures and types
//
//
// Define public interfaces
//
DWORD
CpInitialize(
VOID
);
DWORD
CpShutdown(
VOID
);
DWORD
CpCopyCheckpointFiles(
IN LPCWSTR lpszPathName,
IN BOOL IsFileChangeAttribute
);
DWORD
CpCompleteQuorumChange(
IN LPCWSTR lpszOldQuorumPath
);
DWORD
CpSaveDataFile(
IN PFM_RESOURCE Resource,
IN DWORD dwCheckpointId,
IN LPCWSTR lpszFileName,
IN BOOLEAN fCryptoCheckpoint
);
DWORD
CpGetDataFile(
IN PFM_RESOURCE Resource,
IN DWORD dwCheckpointId,
IN LPCWSTR lpszFileName,
IN BOOLEAN fCryptoCheckpoint
);
//
// Interface for adding and removing registry checkpoints
//
DWORD
CpAddRegistryCheckpoint(
IN PFM_RESOURCE Resource,
IN LPCWSTR KeyName
);
DWORD
CpDeleteRegistryCheckpoint(
IN PFM_RESOURCE Resource,
IN LPCWSTR KeyName
);
DWORD
CpGetRegistryCheckpoints(
IN PFM_RESOURCE Resource,
OUT PUCHAR OutBuffer,
IN DWORD OutBufferSize,
OUT LPDWORD BytesReturned,
OUT LPDWORD Required
);
DWORD
CpRemoveResourceCheckpoints(
IN PFM_RESOURCE Resource
);
DWORD
CpckRemoveResourceCheckpoints(
IN PFM_RESOURCE Resource
);
DWORD
CpDeleteCheckpointFile(
IN PFM_RESOURCE Resource,
IN DWORD dwCheckpointId,
IN OPTIONAL LPCWSTR lpszQuorumPath
);
DWORD CpRestoreCheckpointFiles(
IN LPWSTR lpszSourcePathName,
IN LPWSTR lpszSubDirName,
IN LPCWSTR lpszQuoLogPathName
);
//
// Interface for adding and removing crypto checkpoints
//
DWORD
CpckAddCryptoCheckpoint(
IN PFM_RESOURCE Resource,
IN PVOID InBuffer,
IN DWORD InBufferSize
);
DWORD
CpckDeleteCryptoCheckpoint(
IN PFM_RESOURCE Resource,
IN PVOID InBuffer,
IN DWORD InBufferSize
);
DWORD
CpckGetCryptoCheckpoints(
IN PFM_RESOURCE Resource,
OUT PUCHAR OutBuffer,
IN DWORD OutBufferSize,
OUT LPDWORD BytesReturned,
OUT LPDWORD Required
);