Implemented PrivilegeCheck().

svn path=/trunk/; revision=5187
This commit is contained in:
Eric Kohl 2003-07-20 15:16:51 +00:00
parent 67897f32c0
commit b6f5c8a9af
2 changed files with 41 additions and 16 deletions

View file

@ -1,4 +1,4 @@
; $Id: advapi32.edf,v 1.21 2003/07/20 00:04:06 ekohl Exp $
; $Id: advapi32.edf,v 1.22 2003/07/20 15:16:51 ekohl Exp $
;
; advapi32.edf
;
@ -288,7 +288,7 @@ OpenSCManagerW=OpenSCManagerW@12
OpenServiceA=OpenServiceA@12
OpenServiceW=OpenServiceW@12
OpenThreadToken=OpenThreadToken@16
;PrivilegeCheck=PrivilegeCheck@12
PrivilegeCheck=PrivilegeCheck@12
;PrivilegedServiceAuditAlarmA=PrivilegedServiceAuditAlarmA@20
;PrivilegedServiceAuditAlarmW=PrivilegedServiceAuditAlarmW@20
;ProvAccessRightsToNTAccessMask=ProvAccessRightsToNTAccessMask@8

View file

@ -1,4 +1,4 @@
/* $Id: privilege.c,v 1.4 2003/07/10 15:05:55 chorns Exp $
/* $Id: privilege.c,v 1.5 2003/07/20 15:16:32 ekohl Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS system libraries
@ -19,9 +19,9 @@
* @implemented
*/
BOOL STDCALL LookupPrivilegeValueA (
LPCSTR lpSystemName,
LPCSTR lpName,
PLUID lpLuid
LPCSTR lpSystemName,
LPCSTR lpName,
PLUID lpLuid
)
{
BOOL rv = FALSE;
@ -71,9 +71,9 @@ BOOL STDCALL LookupPrivilegeValueA (
* of this API.
*/
if (FALSE == (rv = LookupPrivilegeValueW (
(lpSystemName ? SystemNameW.Buffer : NULL),
NameW.Buffer,
lpLuid
(lpSystemName ? SystemNameW.Buffer : NULL),
NameW.Buffer,
lpLuid
)
)
)
@ -105,7 +105,7 @@ BOOL STDCALL LookupPrivilegeValueA (
}
return (rv);
}
BOOL STDCALL LookupPrivilegeValueW (
LPCWSTR lpSystemName,
@ -135,7 +135,7 @@ BOOL STDCALL LookupPrivilegeDisplayNameA (
SetLastError (ERROR_CALL_NOT_IMPLEMENTED);
return (FALSE);
}
/*
* @unimplemented
@ -164,15 +164,13 @@ BOOL STDCALL LookupPrivilegeNameA (
PLUID lpLuid,
LPSTR lpName,
LPDWORD cbName
)
)
{
SetLastError (ERROR_CALL_NOT_IMPLEMENTED);
return (FALSE);
}
/*
*
* @unimplemented
*/
BOOL STDCALL LookupPrivilegeNameW (
@ -180,11 +178,38 @@ BOOL STDCALL LookupPrivilegeNameW (
PLUID lpLuid,
LPWSTR lpName,
LPDWORD cbName
)
)
{
SetLastError (ERROR_CALL_NOT_IMPLEMENTED);
return (FALSE);
}
/**********************************************************************
* PrivilegeCheck EXPORTED
*
* @implemented
*/
BOOL STDCALL
PrivilegeCheck (HANDLE ClientToken,
PPRIVILEGE_SET RequiredPrivileges,
LPBOOL pfResult)
{
BOOLEAN Result;
NTSTATUS Status;
Status = NtPrivilegeCheck (ClientToken,
RequiredPrivileges,
&Result);
if (!NT_SUCCESS (Status))
{
SetLastError (RtlNtStatusToDosError (Status));
return FALSE;
}
*pfResult = (BOOL) Result;
return TRUE;
}
/* EOF */