From 77d6d4815b5bcc9aaaf99fc65d5934cd8335926a Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sun, 13 Nov 2011 12:13:16 +0000 Subject: [PATCH] [SERVICES] REnumServicesStatusExW: Fix dwServiceType and dwServiceState checks. svn path=/trunk/; revision=54373 --- reactos/base/system/services/rpcserver.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/reactos/base/system/services/rpcserver.c b/reactos/base/system/services/rpcserver.c index 948e6817fb6..f42a7b9b98b 100644 --- a/reactos/base/system/services/rpcserver.c +++ b/reactos/base/system/services/rpcserver.c @@ -5304,13 +5304,16 @@ DWORD REnumServicesStatusExW( *pcbBytesNeeded = 0; *lpServicesReturned = 0; - if ((dwServiceType!=SERVICE_DRIVER) && (dwServiceType!=SERVICE_WIN32)) + if ((dwServiceType == 0) || + ((dwServiceType & ~(SERVICE_DRIVER | SERVICE_WIN32)) != 0)) { DPRINT("Not a valid Service Type!\n"); return ERROR_INVALID_PARAMETER; } - if ((dwServiceStateSERVICE_STATE_ALL)) + if ((dwServiceState != SERVICE_ACTIVE) && + (dwServiceState != SERVICE_INACTIVE) && + (dwServiceState != SERVICE_STATE_ALL)) { DPRINT("Not a valid Service State!\n"); return ERROR_INVALID_PARAMETER;