ReactOS 0.4.16-dev-109-gf4cb10f
|
#include "services.h"
#include <winnls.h>
#include <strsafe.h>
#include <pseh/pseh2.h>
#include <debug.h>
Go to the source code of this file.
Classes | |
struct | _SCMGR_HANDLE |
struct | _MANAGER_HANDLE |
struct | _SERVICE_HANDLE |
Macros | |
#define | NDEBUG |
#define | MANAGER_TAG 0x72674D68 /* 'hMgr' */ |
#define | SERVICE_TAG 0x63765368 /* 'hSvc' */ |
#define | INVALID_TAG 0xAABBCCDD |
#define | SC_MANAGER_READ |
#define | SC_MANAGER_WRITE |
#define | SC_MANAGER_EXECUTE |
#define | SERVICE_READ |
#define | SERVICE_WRITE |
#define | SERVICE_EXECUTE |
#define | TAG_ARRAY_SIZE 32 |
Typedefs | |
typedef struct _SCMGR_HANDLE | SCMGR_HANDLE |
typedef struct _MANAGER_HANDLE | MANAGER_HANDLE |
typedef struct _MANAGER_HANDLE * | PMANAGER_HANDLE |
typedef struct _SERVICE_HANDLE | SERVICE_HANDLE |
typedef struct _SERVICE_HANDLE * | PSERVICE_HANDLE |
Variables | |
static GENERIC_MAPPING | ScmManagerMapping |
static GENERIC_MAPPING | ScmServiceMapping |
DWORD | g_dwServiceBits = 0 |
#define INVALID_TAG 0xAABBCCDD |
Definition at line 27 of file rpcserver.c.
#define MANAGER_TAG 0x72674D68 /* 'hMgr' */ |
Definition at line 25 of file rpcserver.c.
#define NDEBUG |
Definition at line 20 of file rpcserver.c.
#define SC_MANAGER_EXECUTE |
Definition at line 60 of file rpcserver.c.
#define SC_MANAGER_READ |
Definition at line 50 of file rpcserver.c.
#define SC_MANAGER_WRITE |
Definition at line 55 of file rpcserver.c.
#define SERVICE_EXECUTE |
Definition at line 79 of file rpcserver.c.
#define SERVICE_READ |
Definition at line 68 of file rpcserver.c.
#define SERVICE_TAG 0x63765368 /* 'hSvc' */ |
Definition at line 26 of file rpcserver.c.
#define SERVICE_WRITE |
Definition at line 75 of file rpcserver.c.
#define TAG_ARRAY_SIZE 32 |
Definition at line 86 of file rpcserver.c.
typedef struct _MANAGER_HANDLE MANAGER_HANDLE |
typedef struct _MANAGER_HANDLE * PMANAGER_HANDLE |
typedef struct _SERVICE_HANDLE * PSERVICE_HANDLE |
typedef struct _SCMGR_HANDLE SCMGR_HANDLE |
typedef struct _SERVICE_HANDLE SERVICE_HANDLE |
|
static |
Definition at line 783 of file rpcserver.c.
Referenced by Int_EnumDependentServicesW(), RCloseServiceHandle(), RControlService(), REnumDependentServicesA(), and REnumDependentServicesW().
void __RPC_FAR *__RPC_USER midl_user_allocate | ( | SIZE_T | len | ) |
Definition at line 6775 of file rpcserver.c.
void __RPC_USER midl_user_free | ( | void __RPC_FAR * | ptr | ) |
Definition at line 6781 of file rpcserver.c.
DWORD WINAPI RChangeServiceConfig2A | ( | SC_RPC_HANDLE | hService, |
SC_RPC_CONFIG_INFOA | Info | ||
) |
Definition at line 5019 of file rpcserver.c.
Referenced by ChangeServiceConfig2A().
DWORD WINAPI RChangeServiceConfig2W | ( | SC_RPC_HANDLE | hService, |
SC_RPC_CONFIG_INFOW | Info | ||
) |
Definition at line 5420 of file rpcserver.c.
Referenced by ChangeServiceConfig2W(), and RChangeServiceConfig2A().
DWORD WINAPI RChangeServiceConfigA | ( | SC_RPC_HANDLE | hService, |
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPSTR | lpBinaryPathName, | ||
LPSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPSTR | lpDisplayName | ||
) |
Definition at line 3461 of file rpcserver.c.
Referenced by ChangeServiceConfigA().
DWORD WINAPI RChangeServiceConfigW | ( | SC_RPC_HANDLE | hService, |
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPWSTR | lpBinaryPathName, | ||
LPWSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPWSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPWSTR | lpDisplayName | ||
) |
Definition at line 1920 of file rpcserver.c.
Referenced by ChangeServiceConfigW(), and RChangeServiceConfigA().
DWORD WINAPI RCloseNotifyHandle | ( | LPSC_NOTIFY_RPC_HANDLE | phNotify, |
PBOOL | pfApcFired | ||
) |
Definition at line 6665 of file rpcserver.c.
DWORD WINAPI RCloseServiceHandle | ( | LPSC_RPC_HANDLE | hSCObject | ) |
Definition at line 936 of file rpcserver.c.
Referenced by CloseServiceHandle(), and SC_RPC_HANDLE_rundown().
DWORD WINAPI RControlService | ( | SC_RPC_HANDLE | hService, |
DWORD | dwControl, | ||
LPSERVICE_STATUS | lpServiceStatus | ||
) |
Definition at line 1069 of file rpcserver.c.
Referenced by ControlService().
DWORD WINAPI RControlServiceExA | ( | SC_RPC_HANDLE | hService, |
DWORD | dwControl, | ||
DWORD | dwInfoLevel | ||
) |
Definition at line 6677 of file rpcserver.c.
DWORD WINAPI RControlServiceExW | ( | SC_RPC_HANDLE | hService, |
DWORD | dwControl, | ||
DWORD | dwInfoLevel | ||
) |
Definition at line 6690 of file rpcserver.c.
DWORD WINAPI RCreateServiceA | ( | SC_RPC_HANDLE | hSCManager, |
LPSTR | lpServiceName, | ||
LPSTR | lpDisplayName, | ||
DWORD | dwDesiredAccess, | ||
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPSTR | lpBinaryPathName, | ||
LPSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 3592 of file rpcserver.c.
Referenced by CreateServiceA().
DWORD WINAPI RCreateServiceW | ( | SC_RPC_HANDLE | hSCManager, |
LPCWSTR | lpServiceName, | ||
LPCWSTR | lpDisplayName, | ||
DWORD | dwDesiredAccess, | ||
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPCWSTR | lpBinaryPathName, | ||
LPCWSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPCWSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 2272 of file rpcserver.c.
Referenced by CreateServiceW(), and RCreateServiceA().
DWORD WINAPI RCreateServiceWOW64A | ( | handle_t | BindingHandle, |
LPSTR | lpServiceName, | ||
LPSTR | lpDisplayName, | ||
DWORD | dwDesiredAccess, | ||
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPSTR | lpBinaryPathName, | ||
LPSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 6541 of file rpcserver.c.
DWORD WINAPI RCreateServiceWOW64W | ( | handle_t | BindingHandle, |
LPWSTR | lpServiceName, | ||
LPWSTR | lpDisplayName, | ||
DWORD | dwDesiredAccess, | ||
DWORD | dwServiceType, | ||
DWORD | dwStartType, | ||
DWORD | dwErrorControl, | ||
LPWSTR | lpBinaryPathName, | ||
LPWSTR | lpLoadOrderGroup, | ||
LPDWORD | lpdwTagId, | ||
LPBYTE | lpDependencies, | ||
DWORD | dwDependSize, | ||
LPWSTR | lpServiceStartName, | ||
LPBYTE | lpPassword, | ||
DWORD | dwPwSize, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 6567 of file rpcserver.c.
DWORD WINAPI RDeleteService | ( | SC_RPC_HANDLE | hService | ) |
Definition at line 1304 of file rpcserver.c.
Referenced by DeleteService().
DWORD WINAPI REnumDependentServicesA | ( | SC_RPC_HANDLE | hService, |
DWORD | dwServiceState, | ||
LPBYTE | lpServices, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned | ||
) |
Definition at line 3745 of file rpcserver.c.
Referenced by EnumDependentServicesA().
DWORD WINAPI REnumDependentServicesW | ( | SC_RPC_HANDLE | hService, |
DWORD | dwServiceState, | ||
LPBYTE | lpServices, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned | ||
) |
Definition at line 2707 of file rpcserver.c.
Referenced by EnumDependentServicesW().
DWORD WINAPI REnumServiceGroupW | ( | SC_RPC_HANDLE | hSCManager, |
DWORD | dwServiceType, | ||
DWORD | dwServiceState, | ||
LPBYTE | lpBuffer, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned, | ||
LPBOUNDED_DWORD_256K | lpResumeIndex, | ||
LPCWSTR | pszGroupName | ||
) |
Definition at line 4753 of file rpcserver.c.
Referenced by EnumServiceGroupW(), and REnumServicesStatusW().
DWORD WINAPI REnumServicesStatusA | ( | SC_RPC_HANDLE | hSCManager, |
DWORD | dwServiceType, | ||
DWORD | dwServiceState, | ||
LPBYTE | lpBuffer, | ||
DWORD | dwBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned, | ||
LPBOUNDED_DWORD_256K | lpResumeHandle | ||
) |
Definition at line 3899 of file rpcserver.c.
Referenced by EnumServicesStatusA().
DWORD WINAPI REnumServicesStatusExA | ( | SC_RPC_HANDLE | hSCManager, |
SC_ENUM_TYPE | InfoLevel, | ||
DWORD | dwServiceType, | ||
DWORD | dwServiceState, | ||
LPBYTE | lpBuffer, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned, | ||
LPBOUNDED_DWORD_256K | lpResumeIndex, | ||
LPCSTR | pszGroupName | ||
) |
Definition at line 6096 of file rpcserver.c.
Referenced by EnumServicesStatusExA().
DWORD WINAPI REnumServicesStatusExW | ( | SC_RPC_HANDLE | hSCManager, |
SC_ENUM_TYPE | InfoLevel, | ||
DWORD | dwServiceType, | ||
DWORD | dwServiceState, | ||
LPBYTE | lpBuffer, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned, | ||
LPBOUNDED_DWORD_256K | lpResumeIndex, | ||
LPCWSTR | pszGroupName | ||
) |
Definition at line 6235 of file rpcserver.c.
Referenced by EnumServicesStatusExW(), and REnumServicesStatusExA().
DWORD WINAPI REnumServicesStatusW | ( | SC_RPC_HANDLE | hSCManager, |
DWORD | dwServiceType, | ||
DWORD | dwServiceState, | ||
LPBYTE | lpBuffer, | ||
DWORD | dwBufSize, | ||
LPBOUNDED_DWORD_256K | pcbBytesNeeded, | ||
LPBOUNDED_DWORD_256K | lpServicesReturned, | ||
LPBOUNDED_DWORD_256K | lpResumeHandle | ||
) |
Definition at line 2842 of file rpcserver.c.
Referenced by EnumServiceGroupW(), EnumServicesStatusW(), and REnumServicesStatusA().
Definition at line 6767 of file rpcserver.c.
DWORD WINAPI RGetNotifyResults | ( | SC_NOTIFY_RPC_HANDLE | hNotify, |
PSC_RPC_NOTIFY_PARAMS_LIST * | ppNotifyParams | ||
) |
Definition at line 6653 of file rpcserver.c.
DWORD WINAPI RGetServiceDisplayNameA | ( | SC_RPC_HANDLE | hSCManager, |
LPCSTR | lpServiceName, | ||
LPSTR | lpDisplayName, | ||
LPBOUNDED_DWORD_4K | lpcchBuffer | ||
) |
Definition at line 4460 of file rpcserver.c.
Referenced by GetServiceDisplayNameA().
DWORD WINAPI RGetServiceDisplayNameW | ( | SC_RPC_HANDLE | hSCManager, |
LPCWSTR | lpServiceName, | ||
LPWSTR | lpDisplayName, | ||
DWORD * | lpcchBuffer | ||
) |
Definition at line 3317 of file rpcserver.c.
Referenced by GetServiceDisplayNameW().
DWORD WINAPI RGetServiceKeyNameA | ( | SC_RPC_HANDLE | hSCManager, |
LPCSTR | lpDisplayName, | ||
LPSTR | lpServiceName, | ||
LPBOUNDED_DWORD_4K | lpcchBuffer | ||
) |
Definition at line 4582 of file rpcserver.c.
Referenced by GetServiceKeyNameA().
DWORD WINAPI RGetServiceKeyNameW | ( | SC_RPC_HANDLE | hSCManager, |
LPCWSTR | lpDisplayName, | ||
LPWSTR | lpServiceName, | ||
DWORD * | lpcchBuffer | ||
) |
Definition at line 3380 of file rpcserver.c.
Referenced by GetServiceKeyNameW().
DWORD WINAPI RI_ScGetCurrentGroupStateW | ( | SC_RPC_HANDLE | hSCManager, |
LPWSTR | lpLoadOrderGroup, | ||
LPDWORD | lpState | ||
) |
Definition at line 4696 of file rpcserver.c.
Referenced by I_ScGetCurrentGroupStateW().
DWORD WINAPI RI_ScQueryServiceTagInfo | ( | SC_RPC_HANDLE | hSCManager, |
TAG_INFO_LEVEL | dwInfoLevel, | ||
PTAG_INFO_NAME_FROM_TAG_IN_PARAMS * | lpInParams, | ||
PTAG_INFO_NAME_FROM_TAG_OUT_PARAMS * | lpOutParams | ||
) |
Definition at line 6593 of file rpcserver.c.
Referenced by I_ScQueryServiceTagInfo().
DWORD WINAPI RI_ScSetServiceBitsA | ( | RPC_SERVICE_STATUS_HANDLE | hServiceStatus, |
DWORD | dwServiceBits, | ||
int | bSetBitsOn, | ||
int | bUpdateImmediately, | ||
char * | lpString | ||
) |
Definition at line 3437 of file rpcserver.c.
Referenced by I_ScSetServiceBitsA().
DWORD WINAPI RI_ScSetServiceBitsW | ( | RPC_SERVICE_STATUS_HANDLE | hServiceStatus, |
DWORD | dwServiceBits, | ||
int | bSetBitsOn, | ||
int | bUpdateImmediately, | ||
wchar_t * | lpString | ||
) |
Definition at line 1866 of file rpcserver.c.
Referenced by I_ScSetServiceBitsW(), and RI_ScSetServiceBitsA().
DWORD WINAPI RI_ScValidatePnPService | ( | _In_ SC_RPC_HANDLE | hSCManager, |
_In_ LPWSTR | pszServiceName, | ||
_Out_ RPC_SERVICE_STATUS_HANDLE * | phServiceStatus | ||
) |
Definition at line 6714 of file rpcserver.c.
Referenced by I_ScValidatePnpService().
DWORD WINAPI RLockServiceDatabase | ( | SC_RPC_HANDLE | hSCManager, |
LPSC_RPC_LOCK | lpLock | ||
) |
Definition at line 1362 of file rpcserver.c.
Referenced by LockServiceDatabase().
DWORD WINAPI RNotifyBootConfigStatus | ( | SVCCTL_HANDLEW | lpMachineName, |
DWORD | BootAcceptable | ||
) |
Definition at line 1849 of file rpcserver.c.
Referenced by NotifyBootConfigStatus().
DWORD WINAPI RNotifyServiceStatusChange | ( | SC_RPC_HANDLE | hService, |
SC_RPC_NOTIFY_PARAMS | NotifyParams, | ||
GUID * | pClientProcessGuid, | ||
GUID * | pSCMProcessGuid, | ||
PBOOL | pfCreateRemoteQueue, | ||
LPSC_NOTIFY_RPC_HANDLE | phNotify | ||
) |
Definition at line 6637 of file rpcserver.c.
DWORD WINAPI ROpenSCManagerA | ( | LPSTR | lpMachineName, |
LPSTR | lpDatabaseName, | ||
DWORD | dwDesiredAccess, | ||
LPSC_RPC_HANDLE | lpScHandle | ||
) |
Definition at line 4006 of file rpcserver.c.
Referenced by OpenSCManagerA().
DWORD WINAPI ROpenSCManagerW | ( | LPWSTR | lpMachineName, |
LPWSTR | lpDatabaseName, | ||
DWORD | dwDesiredAccess, | ||
LPSC_RPC_HANDLE | lpScHandle | ||
) |
Definition at line 2868 of file rpcserver.c.
Referenced by OpenSCManagerW(), and ROpenSCManagerA().
DWORD WINAPI ROpenServiceA | ( | SC_RPC_HANDLE | hSCManager, |
LPSTR | lpServiceName, | ||
DWORD | dwDesiredAccess, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 4044 of file rpcserver.c.
Referenced by OpenServiceA().
Definition at line 6756 of file rpcserver.c.
DWORD WINAPI ROpenServiceW | ( | SC_RPC_HANDLE | hSCManager, |
LPWSTR | lpServiceName, | ||
DWORD | dwDesiredAccess, | ||
LPSC_RPC_HANDLE | lpServiceHandle | ||
) |
Definition at line 2920 of file rpcserver.c.
Referenced by OpenServiceW(), and ROpenServiceA().
DWORD WINAPI RQueryServiceConfig2A | ( | SC_RPC_HANDLE | hService, |
DWORD | dwInfoLevel, | ||
LPBYTE | lpBuffer, | ||
DWORD | cbBufSize, | ||
LPBOUNDED_DWORD_8K | pcbBytesNeeded | ||
) |
Definition at line 5552 of file rpcserver.c.