From 73dcca106575af60df101b41f08464794c44d6f5 Mon Sep 17 00:00:00 2001 From: Mikolaj Zalewski Date: Mon, 24 Sep 2007 17:20:36 -0700 Subject: [PATCH] ntdll: add RtlAuditAccessAceEx --- dlls/ntdll/ntdll.spec | 4 ++-- dlls/ntdll/sec.c | 21 +++++++++++++++++---- include/winternl.h | 1 + 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec index 07abf1c..1c4a39d 100644 --- a/dlls/ntdll/ntdll.spec +++ b/dlls/ntdll/ntdll.spec @@ -402,8 +402,8 @@ # @ stub RtlAddAccessDeniedObjectAce @ stub RtlAddActionToRXact @ stdcall RtlAddAtomToAtomTable(ptr wstr ptr) @ stub RtlAddAttributeActionToRXact -@ stdcall RtlAddAuditAccessAce(ptr long long ptr long long) -# @ stub RtlAddAuditAccessAceEx +@ stdcall RtlAddAuditAccessAce(ptr long long ptr long long) +@ stdcall RtlAddAuditAccessAceEx(ptr long long long ptr long long) # @ stub RtlAddAuditAccessObjectAce # @ stub RtlAddCompoundAce # @ stub RtlAddRange diff --git a/dlls/ntdll/sec.c b/dlls/ntdll/sec.c index af89b72..df5306b 100644 --- a/dlls/ntdll/sec.c +++ b/dlls/ntdll/sec.c @@ -1213,17 +1213,16 @@ NTSTATUS WINAPI RtlAddAccessDeniedAceEx( /************************************************************************** * RtlAddAuditAccessAce [NTDLL.@] */ -NTSTATUS WINAPI RtlAddAuditAccessAce( +NTSTATUS WINAPI RtlAddAuditAccessAceEx( IN OUT PACL pAcl, IN DWORD dwAceRevision, + IN DWORD dwAceFlags, IN DWORD dwAccessMask, IN PSID pSid, IN BOOL bAuditSuccess, IN BOOL bAuditFailure) { - DWORD dwAceFlags = 0; - - TRACE("(%p,%d,%d,%p,%u,%u)\n",pAcl,dwAceRevision,dwAccessMask, + TRACE("(%p,%d,0x%08x,0x%08x,%p,%u,%u)\n",pAcl,dwAceRevision,dwAceFlags,dwAccessMask, pSid,bAuditSuccess,bAuditFailure); if (bAuditSuccess) @@ -1235,6 +1234,20 @@ NTSTATUS WINAPI RtlAddAuditAccessAce( return add_access_ace(pAcl, dwAceRevision, dwAceFlags, dwAccessMask, pSid, SYSTEM_AUDIT_ACE_TYPE); } + +/************************************************************************** + * RtlAddAuditAccessAce [NTDLL.@] + */ +NTSTATUS WINAPI RtlAddAuditAccessAce( + IN OUT PACL pAcl, + IN DWORD dwAceRevision, + IN DWORD dwAccessMask, + IN PSID pSid, + IN BOOL bAuditSuccess, + IN BOOL bAuditFailure) +{ + return RtlAddAuditAccessAceEx(pAcl, dwAceRevision, 0, dwAccessMask, pSid, bAuditSuccess, bAuditFailure); +} /****************************************************************************** * RtlValidAcl [NTDLL.@] diff --git a/include/winternl.h b/include/winternl.h index 541eb58..88c36b1 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -1987,6 +1987,7 @@ NTSTATUS WINAPI RtlAddAccessDeniedAce(P NTSTATUS WINAPI RtlAddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID); NTSTATUS WINAPI RtlAddAtomToAtomTable(RTL_ATOM_TABLE,const WCHAR*,RTL_ATOM*); NTSTATUS WINAPI RtlAddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); +NTSTATUS WINAPI RtlAddAuditAccessAceEx(PACL,DWORD,DWORD,DWORD,PSID,BOOL,BOOL); void WINAPI RtlAddRefActivationContext(HANDLE); PVOID WINAPI RtlAddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER); NTSTATUS WINAPI RtlAdjustPrivilege(ULONG,BOOLEAN,BOOLEAN,PBOOLEAN); -- 1.4.1