[PATCH v2 5/8] kernelbase: Add AccessCheckByTypeResultList stub.

Mohamad Al-Jaf mohamadaljaf at gmail.com
Sun Feb 13 23:13:04 CST 2022


Needed for IE11.

Signed-off-by: Mohamad Al-Jaf <mohamadaljaf at gmail.com>
---
v2: Fix whitespace error.
---
 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 ff9f7f012a8..8e92867b311 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) advapi32.AccessCheckAndAuditAlarmW
 @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByType
 @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) advapi32.AccessCheckByTypeAndAuditAlarmW
-@ stub AccessCheckByTypeResultList
+@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByTypeResultList
 @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW
 @ stub AccessCheckByTypeResultListAndAuditAlarmW
 @ stdcall AddAccessAllowedAce(ptr long long ptr) advapi32.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 45f4113020e..d105210cbb1 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) advapi32.AccessCheckByType
 @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) advapi32.AccessCheckByTypeAndAuditAlarmW
-@ stub AccessCheckByTypeResultList
+@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByTypeResultList
 @ stub AccessCheckByTypeResultListandAuditAlarmByHandleW
 @ stub AccessCheckByTypeResultListandAuditAlarmW
 @ stdcall AddAccessAllowedAce(ptr long long ptr) advapi32.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 93639ae9bba..2d3a56d936b 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) advapi32.AccessCheckAndAuditAlarmW
 @ stdcall AccessCheckByType(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByType
 @ stdcall AccessCheckByTypeAndAuditAlarmW(wstr ptr wstr wstr ptr ptr long long long ptr long ptr long ptr ptr ptr) advapi32.AccessCheckByTypeAndAuditAlarmW
-@ stub AccessCheckByTypeResultList
+@ stdcall AccessCheckByTypeResultList(ptr ptr long long ptr long ptr ptr ptr ptr ptr) advapi32.AccessCheckByTypeResultList
 @ stub AccessCheckByTypeResultListAndAuditAlarmByHandleW
 @ stub AccessCheckByTypeResultListAndAuditAlarmW
 @ stdcall AddAccessAllowedAce(ptr long long ptr) advapi32.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 04f823da080..ce9933a8f17 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,%08x,%p,%08x,%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 28b1a4d032b..912820fb3ec 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);
-- 
2.35.1




More information about the wine-devel mailing list