Needed for IE11.
Signed-off-by: Mohamad Al-Jaf mohamadaljaf@gmail.com --- v3: - Fix incorrect format specifiers. - Forward api-ms-* to kernelbase. --- dlls/advapi32/advapi32.spec | 2 +- .../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/kernelbase/kernelbase.spec | 2 +- dlls/kernelbase/security.c | 13 +++++++++++++ include/winbase.h | 1 + 7 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec index 80fa0e5fe24..8de90c41b37 100644 --- a/dlls/advapi32/advapi32.spec +++ b/dlls/advapi32/advapi32.spec @@ -10,7 +10,7 @@ @ stdcall -import AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) @ stdcall AccessCheckByTypeAndAuditAlarmA(str ptr str str ptr ptr long long long ptr long ptr long ptr ptr ptr) @ stdcall -import AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) -# @ stub AccessCheckByTypeResultList +@ stdcall -import AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) @ stdcall AccessCheckByTypeResultListAndAuditAlarmA(str ptr str str ptr ptr long long long ptr long ptr long ptr ptr ptr) @ stdcall AccessCheckByTypeResultListAndAuditAlarmByHandleA(str ptr long str str ptr ptr long long long ptr long ptr long ptr ptr ptr) # @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW 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 ec424560eab..c63fb0e6511 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 @@ -2,7 +2,7 @@ @ stdcall AccessCheckAndAuditAlarmW(wstr ptr wstr wstr ptr long ptr long ptr ptr ptr) kernelbase.AccessCheckAndAuditAlarmW @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByType @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) kernelbase.AccessCheckByTypeAndAuditAlarmW -@ stub AccessCheckByTypeResultList +@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByTypeResultList @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW @ stub AccessCheckByTypeResultListAndAuditAlarmW @ stdcall AddAccessAllowedAce(ptr long long ptr) kernelbase.AddAccessAllowedAce 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 491d05d2e53..1f424b7ee18 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 @@ -2,7 +2,7 @@ @ stub AccessCheckandAuditAlarmW @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByType @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) kernelbase.AccessCheckByTypeAndAuditAlarmW -@ stub AccessCheckByTypeResultList +@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByTypeResultList @ stub AccessCheckByTypeResultListandAuditAlarmByHandleW @ stub AccessCheckByTypeResultListandAuditAlarmW @ stdcall AddAccessAllowedAce(ptr long long ptr) kernelbase.AddAccessAllowedAce 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 8a7f6dc1adb..3afcda5c231 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 @@ -2,7 +2,7 @@ @ stdcall AccessCheckAndAuditAlarmW(wstr ptr wstr wstr ptr long ptr long ptr ptr ptr) kernelbase.AccessCheckAndAuditAlarmW @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByType @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) kernelbase.AccessCheckByTypeAndAuditAlarmW -@ stub AccessCheckByTypeResultList +@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) kernelbase.AccessCheckByTypeResultList @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW @ stub AccessCheckByTypeResultListAndAuditAlarmW @ stdcall AddAccessAllowedAce(ptr long long ptr) kernelbase.AddAccessAllowedAce diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec index 85d737b80c0..dfe5530c399 100644 --- a/dlls/kernelbase/kernelbase.spec +++ b/dlls/kernelbase/kernelbase.spec @@ -2,7 +2,7 @@ @ stdcall AccessCheckAndAuditAlarmW(wstr ptr wstr wstr ptr long ptr long ptr ptr ptr) @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) -@ stub AccessCheckByTypeResultList +@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW @ stub AccessCheckByTypeResultListAndAuditAlarmW @ stdcall AcquireSRWLockExclusive(ptr) ntdll.RtlAcquireSRWLockExclusive diff --git a/dlls/kernelbase/security.c b/dlls/kernelbase/security.c index 61e4ef6b851..c48b670e67c 100644 --- a/dlls/kernelbase/security.c +++ b/dlls/kernelbase/security.c @@ -1346,6 +1346,19 @@ BOOL WINAPI AccessCheckByTypeAndAuditAlarmW( LPCWSTR subsystem, LPVOID id, LPCWS return TRUE; }
+/****************************************************************************** + * AccessCheckByTypeResultList (kernelbase.@) + */ +BOOL WINAPI AccessCheckByTypeResultList( PSECURITY_DESCRIPTOR descr, PSID sid, HANDLE token, + DWORD access, POBJECT_TYPE_LIST types, DWORD types_len, + PGENERIC_MAPPING mapping, PPRIVILEGE_SET privs, + LPDWORD priv_len, LPDWORD access_list, LPDWORD status_list ) +{ + FIXME( "stub (%p,%p,%p,%08lx,%p,%08lx,%p,%p,%p,%p,%p)\n", descr, sid, token, access, types, + types_len, mapping, privs, priv_len, access_list, status_list ); + return TRUE; +} + /****************************************************************************** * AddAccessAllowedAce (kernelbase.@) */ diff --git a/include/winbase.h b/include/winbase.h index 4b65aee76c8..707fa43188d 100644 --- a/include/winbase.h +++ b/include/winbase.h @@ -1783,6 +1783,7 @@ WINADVAPI BOOL WINAPI AccessCheckByType(PSECURITY_DESCRIPTOR,PSID,HANDLE WINADVAPI BOOL WINAPI AccessCheckByTypeAndAuditAlarmA(LPCSTR,LPVOID,LPCSTR,LPCSTR,PSECURITY_DESCRIPTOR,PSID,DWORD,AUDIT_EVENT_TYPE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPBOOL,LPBOOL); WINADVAPI BOOL WINAPI AccessCheckByTypeAndAuditAlarmW(LPCWSTR,LPVOID,LPCWSTR,LPCWSTR,PSECURITY_DESCRIPTOR,PSID,DWORD,AUDIT_EVENT_TYPE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPBOOL,LPBOOL); #define AccessCheckByTypeAndAuditAlarm WINELIB_NAME_AW(AccessCheckByTypeAndAuditAlarm) +WINADVAPI BOOL WINAPI AccessCheckByTypeResultList(PSECURITY_DESCRIPTOR,PSID,HANDLE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,PPRIVILEGE_SET,LPDWORD,LPDWORD,LPDWORD); WINADVAPI BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmA(LPCSTR,LPVOID,LPCSTR,LPCSTR,PSECURITY_DESCRIPTOR,PSID,DWORD,AUDIT_EVENT_TYPE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPDWORD,LPBOOL); WINADVAPI BOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmByHandleA(LPCSTR,LPVOID,HANDLE,LPCSTR,LPCSTR,PSECURITY_DESCRIPTOR,PSID,DWORD,AUDIT_EVENT_TYPE,DWORD,POBJECT_TYPE_LIST,DWORD,PGENERIC_MAPPING,BOOL,LPDWORD,LPDWORD,LPBOOL); WINBASEAPI VOID WINAPI AcquireSRWLockExclusive(PSRWLOCK);