Module: wine Branch: stable Commit: 9b31c7361a201364c61a1ec30d878f8280e8ef85 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9b31c7361a201364c61a1ec30d...
Author: Louis Lenders xerox.xerox2000x@gmail.com Date: Thu Feb 25 09:10:32 2016 +0100
ntdll: Add stub for RtlAddAuditAccessObjectAce and forward to AddAuditAccessObjectAce in advapi32.
Signed-off-by: Louis Lenders xerox.xerox2000x@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org (cherry picked from commit d37b3f59e9e1df6523ac77bf628b7220b97713ee) Signed-off-by: Michael Stefaniuc mstefani@winehq.org
---
dlls/advapi32/advapi32.spec | 2 +- dlls/advapi32/security.c | 18 ++++++++++++++++++ .../api-ms-win-downlevel-advapi32-l1-1-0.spec | 2 +- .../api-ms-win-security-base-l1-1-0.spec | 2 +- .../api-ms-win-security-base-l1-2-0.spec | 2 +- dlls/ntdll/ntdll.spec | 2 +- dlls/ntdll/sec.c | 21 ++++++++++++++++++++- include/winternl.h | 1 + 8 files changed, 44 insertions(+), 6 deletions(-)
diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index 0343e13..ddde272 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -23,7 +23,7 @@ @ stdcall AddAce(ptr long long ptr long) @ stdcall AddAuditAccessAce(ptr long long ptr long long) @ stdcall AddAuditAccessAceEx(ptr long long long ptr long long) -# @ stub AddAuditAccessObjectAce +@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) # @ stub AddConditionalAce @ stdcall AddMandatoryAce(ptr long long long ptr) # @ stub AddUsersToEncryptedFileEx diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c index 08f88c0..5746218 100644 --- a/dlls/advapi32/security.c +++ b/dlls/advapi32/security.c @@ -2672,6 +2672,24 @@ BOOL WINAPI AddAuditAccessAceEx( }
/****************************************************************************** + * AddAuditAccessObjectAce [ADVAPI32.@] + */ +BOOL WINAPI AddAuditAccessObjectAce( + IN OUT PACL pAcl, + IN DWORD dwAceRevision, + IN DWORD dwAceFlags, + IN DWORD dwAccessMask, + IN GUID* pObjectTypeGuid, + IN GUID* pInheritedObjectTypeGuid, + IN PSID pSid, + IN BOOL bAuditSuccess, + IN BOOL bAuditFailure) +{ + return set_ntstatus( RtlAddAuditAccessObjectAce(pAcl, dwAceRevision, dwAceFlags, dwAccessMask, + pObjectTypeGuid, pInheritedObjectTypeGuid, pSid, bAuditSuccess, bAuditFailure) ); +} + +/****************************************************************************** * LookupAccountNameA [ADVAPI32.@] */ BOOL WINAPI diff --git a/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec b/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec index 4105e59..bd6b1f9 100644 --- a/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec +++ b/dlls/api-ms-win-downlevel-advapi32-l1-1-0/api-ms-win-downlevel-advapi32-l1-1-0.spec @@ -14,7 +14,7 @@ @ stdcall AddAce(ptr long long ptr long) advapi32.AddAce @ stdcall AddAuditAccessAce(ptr long long ptr long long) advapi32.AddAuditAccessAce @ stdcall AddAuditAccessAceEx(ptr long long long ptr long long) advapi32.AddAuditAccessAceEx -@ stub AddAuditAccessObjectAce +@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) advapi32.AddAuditAccessObjectAce @ stdcall AddMandatoryAce(ptr long long long ptr) advapi32.AddMandatoryAce @ stdcall AdjustTokenGroups(long long ptr long ptr ptr) advapi32.AdjustTokenGroups @ stdcall AdjustTokenPrivileges(long long ptr long ptr ptr) advapi32.AdjustTokenPrivileges diff --git a/dlls/api-ms-win-security-base-l1-1-0/api-ms-win-security-base-l1-1-0.spec b/dlls/api-ms-win-security-base-l1-1-0/api-ms-win-security-base-l1-1-0.spec index a44f5b8..d1fdff4 100644 --- a/dlls/api-ms-win-security-base-l1-1-0/api-ms-win-security-base-l1-1-0.spec +++ b/dlls/api-ms-win-security-base-l1-1-0/api-ms-win-security-base-l1-1-0.spec @@ -14,7 +14,7 @@ @ stdcall AddAce(ptr long long ptr long) advapi32.AddAce @ stdcall AddAuditAccessAce(ptr long long ptr long long) advapi32.AddAuditAccessAce @ stdcall AddAuditAccessAceEx(ptr long long long ptr long long) advapi32.AddAuditAccessAceEx -@ stub AddAuditAccessObjectAce +@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) advapi32.AddAuditAccessObjectAce @ stdcall AddMandatoryAce(ptr long long long ptr) advapi32.AddMandatoryAce @ stdcall AdjustTokenGroups(long long ptr long ptr ptr) advapi32.AdjustTokenGroups @ stdcall AdjustTokenPrivileges(long long ptr long ptr ptr) advapi32.AdjustTokenPrivileges diff --git a/dlls/api-ms-win-security-base-l1-2-0/api-ms-win-security-base-l1-2-0.spec b/dlls/api-ms-win-security-base-l1-2-0/api-ms-win-security-base-l1-2-0.spec index 02e3b9a..01c7c01 100644 --- a/dlls/api-ms-win-security-base-l1-2-0/api-ms-win-security-base-l1-2-0.spec +++ b/dlls/api-ms-win-security-base-l1-2-0/api-ms-win-security-base-l1-2-0.spec @@ -14,7 +14,7 @@ @ stdcall AddAce(ptr long long ptr long) advapi32.AddAce @ stdcall AddAuditAccessAce(ptr long long ptr long long) advapi32.AddAuditAccessAce @ stdcall AddAuditAccessAceEx(ptr long long long ptr long long) advapi32.AddAuditAccessAceEx -@ stub AddAuditAccessObjectAce +@ stdcall AddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) advapi32.AddAuditAccessObjectAce @ stdcall AddMandatoryAce(ptr long long long ptr) advapi32.AddMandatoryAce @ stub AddResourceAttributeAce @ stub AddScopedPolicyIDAce diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec index 04e9548..631c568 100644 --- a/dlls/ntdll/ntdll.spec +++ b/dlls/ntdll/ntdll.spec @@ -417,7 +417,7 @@ @ stub RtlAddAttributeActionToRXact @ stdcall RtlAddAuditAccessAce(ptr long long ptr long long) @ stdcall RtlAddAuditAccessAceEx(ptr long long long ptr long long) -# @ stub RtlAddAuditAccessObjectAce +@ stdcall RtlAddAuditAccessObjectAce(ptr long long long ptr ptr ptr long long) # @ stub RtlAddCompoundAce # @ stub RtlAddRange @ cdecl -arch=arm,x86_64 RtlAddFunctionTable(ptr long long) diff --git a/dlls/ntdll/sec.c b/dlls/ntdll/sec.c index 125c86e..34de33b 100644 --- a/dlls/ntdll/sec.c +++ b/dlls/ntdll/sec.c @@ -1325,7 +1325,26 @@ NTSTATUS WINAPI RtlAddAuditAccessAce( { return RtlAddAuditAccessAceEx(pAcl, dwAceRevision, 0, dwAccessMask, pSid, bAuditSuccess, bAuditFailure); } - + +/****************************************************************************** + * RtlAddAuditAccessObjectAce [NTDLL.@] + */ +NTSTATUS WINAPI RtlAddAuditAccessObjectAce( + IN OUT PACL pAcl, + IN DWORD dwAceRevision, + IN DWORD dwAceFlags, + IN DWORD dwAccessMask, + IN GUID* pObjectTypeGuid, + IN GUID* pInheritedObjectTypeGuid, + IN PSID pSid, + IN BOOL bAuditSuccess, + IN BOOL bAuditFailure) +{ + FIXME("%p %x %x %x %p %p %p %d %d - stub\n", pAcl, dwAceRevision, dwAceFlags, dwAccessMask, + pObjectTypeGuid, pInheritedObjectTypeGuid, pSid, bAuditSuccess, bAuditFailure); + return STATUS_NOT_IMPLEMENTED; +} + /****************************************************************************** * RtlValidAcl [NTDLL.@] */ diff --git a/include/winternl.h b/include/winternl.h index 42ecb5b..d5c8259 100644 --- a/include/winternl.h +++ b/include/winternl.h @@ -2348,6 +2348,7 @@ NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedAceEx(PACL,DWORD,DWORD,DWORD,PSID); NTSYSAPI NTSTATUS WINAPI RtlAddAtomToAtomTable(RTL_ATOM_TABLE,const WCHAR*,RTL_ATOM*); NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAce(PACL,DWORD,DWORD,PSID,BOOL,BOOL); NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAceEx(PACL,DWORD,DWORD,DWORD,PSID,BOOL,BOOL); +NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessObjectAce(PACL,DWORD,DWORD,DWORD,GUID*,GUID*,PSID,BOOL,BOOL); NTSYSAPI void WINAPI RtlAddRefActivationContext(HANDLE); NTSYSAPI PVOID WINAPI RtlAddVectoredExceptionHandler(ULONG,PVECTORED_EXCEPTION_HANDLER); NTSYSAPI NTSTATUS WINAPI RtlAdjustPrivilege(ULONG,BOOLEAN,BOOLEAN,PBOOLEAN);