https://git.reactos.org/?p=reactos.git;a=commitdiff;h=66981e1b07519a5bdce8f…
commit 66981e1b07519a5bdce8f3f29498d18a2e38b716
Author: Eric Kohl <eric.kohl(a)reactos.org>
AuthorDate: Sun Jul 22 15:17:02 2018 +0200
Commit: Eric Kohl <eric.kohl(a)reactos.org>
CommitDate: Mon Jul 23 01:48:49 2018 +0200
[SERVICES] Keep a global service bits variable that combines the service bits of all
running services
---
base/system/services/rpcserver.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/base/system/services/rpcserver.c b/base/system/services/rpcserver.c
index 2e6e8087f1..fcfb1115a3 100644
--- a/base/system/services/rpcserver.c
+++ b/base/system/services/rpcserver.c
@@ -97,6 +97,7 @@ ScmServiceMapping = {SERVICE_READ,
SERVICE_EXECUTE,
SERVICE_ALL_ACCESS};
+DWORD g_dwServiceBits = 0;
/* FUNCTIONS ***************************************************************/
@@ -1884,14 +1885,20 @@ RI_ScSetServiceBitsW(
if (bSetBitsOn)
{
DPRINT("Old service bits: %08lx\n", pService->dwServiceBits);
+ DPRINT("Old global service bits: %08lx\n", g_dwServiceBits);
pService->dwServiceBits |= dwServiceBits;
+ g_dwServiceBits |= dwServiceBits;
DPRINT("New service bits: %08lx\n", pService->dwServiceBits);
+ DPRINT("New global service bits: %08lx\n", g_dwServiceBits);
}
else
{
DPRINT("Old service bits: %08lx\n", pService->dwServiceBits);
+ DPRINT("Old global service bits: %08lx\n", g_dwServiceBits);
pService->dwServiceBits &= ~dwServiceBits;
+ g_dwServiceBits &= ~dwServiceBits;
DPRINT("New service bits: %08lx\n", pService->dwServiceBits);
+ DPRINT("New global service bits: %08lx\n", g_dwServiceBits);
}
return ERROR_SUCCESS;
@@ -2540,7 +2547,6 @@ RCreateServiceW(
goto done;
}
-DPRINT1("\n");
/* Write the security descriptor */
dwError = ScmWriteSecurityDescriptor(hServiceKey,
lpService->pSecurityDescriptor);