153 lines
2 KiB
C
153 lines
2 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1996 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
initp.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Private header file for the initialization component of the
|
||
|
NT Cluster Service
|
||
|
|
||
|
Author:
|
||
|
|
||
|
John Vert (jvert) 6/5/1996
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
#include "service.h"
|
||
|
#include "stdio.h"
|
||
|
#include "stdlib.h"
|
||
|
#include "wchar.h"
|
||
|
#include "api_rpc.h"
|
||
|
|
||
|
#define LOG_CURRENT_MODULE LOG_MODULE_INIT
|
||
|
|
||
|
#define CS_CONCURRENT_RPC_CALLS 16
|
||
|
|
||
|
DWORD
|
||
|
ClusterInitialize(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ClusterShutdown(
|
||
|
DWORD ExitCode
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ClusterForm(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ClusterJoin(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ClusterLeave(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
RPC_STATUS
|
||
|
ClusterInitializeRpcServer(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ClusterRegisterExtroclusterRpcInterface(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ClusterRegisterJoinVersionRpcInterface(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ClusterDeregisterRpcInterfaces(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ClusterShutdownRpcServer(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
CspSetErrorCode(
|
||
|
IN DWORD ErrorCode,
|
||
|
OUT LPSERVICE_STATUS ServiceStatus
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
GenerateExceptionReport(
|
||
|
IN PEXCEPTION_POINTERS pExceptionInfo
|
||
|
);
|
||
|
|
||
|
//
|
||
|
// Restore database related functions
|
||
|
//
|
||
|
DWORD
|
||
|
RdbStopSvcOnNodes(
|
||
|
IN PNM_NODE_ENUM2 pNodeEnum,
|
||
|
IN LPCWSTR lpszServiceName
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
RdbGetRestoreDbParams(
|
||
|
IN HKEY hClusSvcKey
|
||
|
);
|
||
|
|
||
|
BOOL
|
||
|
RdbFixupQuorumDiskSignature(
|
||
|
IN DWORD dwSignature
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbpOpenDiskDevice(
|
||
|
IN LPCWSTR lpDriveLetter,
|
||
|
OUT PHANDLE pFileHandle
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbpCompareAndWriteSignatureToDisk(
|
||
|
IN HANDLE hFile,
|
||
|
IN DWORD dwSignature
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbStartSvcOnNodes(
|
||
|
IN LPCWSTR lpszServiceName
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbInitialize(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbpUnloadClusterHive(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
RdbpDeleteRestoreDbParams(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
//
|
||
|
// Private Constants
|
||
|
//
|
||
|
#define CS_MAX_DELAYED_WORK_THREADS 5
|
||
|
#define CS_MAX_CRITICAL_WORK_THREADS 1 // The critical queue is serialized
|
||
|
|
||
|
#define MIN_WORKING_SET_SIZE (1*1024*1024)
|
||
|
#define MAX_WORKING_SET_SIZE (2*MIN_WORKING_SET_SIZE)
|
||
|
|
||
|
extern BOOLEAN bFormCluster;
|