Rebase against 31af1aeb7895bddf59a73886b89759f76881bc9e.

This commit is contained in:
Zebediah Figura 2021-03-04 17:50:31 -06:00
parent 64efb6f0d3
commit 3a33c70a9a
4 changed files with 21 additions and 752 deletions

View File

@ -1,4 +1,4 @@
From d8919e4d3790e738ec0cb09907609f4fde8f29e7 Mon Sep 17 00:00:00 2001
From 94c6132d79ee02079fc952e33cccf0d1f456a1ec Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Mon, 31 Aug 2020 23:00:16 -0500
Subject: [PATCH] ntdll: Implement NtAlertThreadByThreadId() and
@ -12,11 +12,10 @@ Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
dlls/ntdll/unix/unix_private.h | 3 +++
dlls/ntdll/unix/virtual.c | 5 ++--
include/winternl.h | 2 ++
server/thread.c | 2 +-
7 files changed, 58 insertions(+), 3 deletions(-)
6 files changed, 57 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 0a2c2493334..c4a21991562 100644
index ac7365a84b6..91959e19149 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -137,6 +137,7 @@
@ -36,10 +35,10 @@ index 0a2c2493334..c4a21991562 100644
@ stdcall -syscall NtWaitForMultipleObjects(long ptr long long ptr)
@ stub NtWaitForProcessMutant
diff --git a/dlls/ntdll/unix/sync.c b/dlls/ntdll/unix/sync.c
index 32ee7a52b99..587f0858600 100644
index 16635ee42fa..7e19fab1e97 100644
--- a/dlls/ntdll/unix/sync.c
+++ b/dlls/ntdll/unix/sync.c
@@ -82,6 +82,12 @@ static const LARGE_INTEGER zero_timeout;
@@ -81,6 +81,12 @@ static const LARGE_INTEGER zero_timeout;
static pthread_mutex_t addr_mutex = PTHREAD_MUTEX_INITIALIZER;
@ -52,7 +51,7 @@ index 32ee7a52b99..587f0858600 100644
/* return a monotonic time counter, in Win32 ticks */
static inline ULONGLONG monotonic_counter(void)
{
@@ -2336,6 +2342,45 @@ NTSTATUS WINAPI NtQueryInformationAtom( RTL_ATOM atom, ATOM_INFORMATION_CLASS cl
@@ -2277,6 +2283,45 @@ NTSTATUS WINAPI NtQueryInformationAtom( RTL_ATOM atom, ATOM_INFORMATION_CLASS cl
}
@ -99,7 +98,7 @@ index 32ee7a52b99..587f0858600 100644
NTSTATUS CDECL fast_RtlpWaitForCriticalSection( RTL_CRITICAL_SECTION *crit, int timeout )
diff --git a/dlls/ntdll/unix/thread.c b/dlls/ntdll/unix/thread.c
index 9808fc610e3..bb55b3d29ed 100644
index 00d29ae706b..87f5a97131e 100644
--- a/dlls/ntdll/unix/thread.c
+++ b/dlls/ntdll/unix/thread.c
@@ -252,6 +252,8 @@ NTSTATUS WINAPI NtCreateThreadEx( HANDLE *handle, ACCESS_MASK access, OBJECT_ATT
@ -112,10 +111,10 @@ index 9808fc610e3..bb55b3d29ed 100644
pthread_attr_setstack( &pthread_attr, teb->DeallocationStack,
(char *)teb->Tib.StackBase + extra_stack - (char *)teb->DeallocationStack );
diff --git a/dlls/ntdll/unix/unix_private.h b/dlls/ntdll/unix/unix_private.h
index 68a24d97cfd..1880ce51b6e 100644
index b8b6619c0a9..ae178fadd8b 100644
--- a/dlls/ntdll/unix/unix_private.h
+++ b/dlls/ntdll/unix/unix_private.h
@@ -59,6 +59,7 @@ struct ntdll_thread_data
@@ -58,6 +58,7 @@ struct ntdll_thread_data
struct list entry; /* entry in TEB list */
PRTL_THREAD_START_ROUTINE start; /* thread entry point */
void *param; /* thread entry point parameter */
@ -123,9 +122,9 @@ index 68a24d97cfd..1880ce51b6e 100644
};
C_ASSERT( sizeof(struct ntdll_thread_data) <= sizeof(((TEB *)0)->GdiTebBatch) );
@@ -115,6 +116,8 @@ extern NTSTATUS CDECL unwind_builtin_dll( ULONG type, struct _DISPATCHER_CONTEXT
extern void CDECL set_show_dot_files( BOOL enable ) DECLSPEC_HIDDEN;
@@ -105,6 +106,8 @@ extern void CDECL virtual_release_address_space(void) DECLSPEC_HIDDEN;
extern NTSTATUS CDECL unwind_builtin_dll( ULONG type, struct _DISPATCHER_CONTEXT *dispatch,
CONTEXT *context ) DECLSPEC_HIDDEN;
+extern struct list teb_list DECLSPEC_HIDDEN;
+extern pthread_rwlock_t teb_list_lock DECLSPEC_HIDDEN;
@ -133,10 +132,10 @@ index 68a24d97cfd..1880ce51b6e 100644
extern const char *data_dir DECLSPEC_HIDDEN;
extern const char *build_dir DECLSPEC_HIDDEN;
diff --git a/dlls/ntdll/unix/virtual.c b/dlls/ntdll/unix/virtual.c
index 34eadfd3d37..a136390c994 100644
index d1d00b91345..3e3c9b5f00e 100644
--- a/dlls/ntdll/unix/virtual.c
+++ b/dlls/ntdll/unix/virtual.c
@@ -164,8 +164,9 @@ struct _KUSER_SHARED_DATA *user_shared_data = (void *)0x7ffe0000;
@@ -162,8 +162,9 @@ struct _KUSER_SHARED_DATA *user_shared_data = (void *)0x7ffe0000;
static void *teb_block;
static void **next_free_teb;
static int teb_block_pos;
@ -149,10 +148,10 @@ index 34eadfd3d37..a136390c994 100644
#define ROUND_ADDR(addr,mask) ((void *)((UINT_PTR)(addr) & ~(UINT_PTR)(mask)))
#define ROUND_SIZE(addr,size) (((SIZE_T)(size) + ((UINT_PTR)(addr) & page_mask) + page_mask) & ~page_mask)
diff --git a/include/winternl.h b/include/winternl.h
index 4d8b5841d17..a388e9e7741 100644
index f0ab223ef2e..9a5a1b541b7 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -3213,6 +3213,7 @@ NTSYSAPI NTSTATUS WINAPI NtAdjustGroupsToken(HANDLE,BOOLEAN,PTOKEN_GROUPS,ULONG
@@ -3229,6 +3229,7 @@ NTSYSAPI NTSTATUS WINAPI NtAdjustGroupsToken(HANDLE,BOOLEAN,PTOKEN_GROUPS,ULONG
NTSYSAPI NTSTATUS WINAPI NtAdjustPrivilegesToken(HANDLE,BOOLEAN,PTOKEN_PRIVILEGES,DWORD,PTOKEN_PRIVILEGES,PDWORD);
NTSYSAPI NTSTATUS WINAPI NtAlertResumeThread(HANDLE,PULONG);
NTSYSAPI NTSTATUS WINAPI NtAlertThread(HANDLE ThreadHandle);
@ -160,7 +159,7 @@ index 4d8b5841d17..a388e9e7741 100644
NTSYSAPI NTSTATUS WINAPI NtAllocateLocallyUniqueId(PLUID lpLuid);
NTSYSAPI NTSTATUS WINAPI NtAllocateUuids(PULARGE_INTEGER,PULONG,PULONG,PUCHAR);
NTSYSAPI NTSTATUS WINAPI NtAllocateVirtualMemory(HANDLE,PVOID*,ULONG_PTR,SIZE_T*,ULONG,ULONG);
@@ -3451,6 +3452,7 @@ NTSYSAPI NTSTATUS WINAPI NtUnlockVirtualMemory(HANDLE,PVOID*,SIZE_T*,ULONG);
@@ -3467,6 +3468,7 @@ NTSYSAPI NTSTATUS WINAPI NtUnlockVirtualMemory(HANDLE,PVOID*,SIZE_T*,ULONG);
NTSYSAPI NTSTATUS WINAPI NtUnmapViewOfSection(HANDLE,PVOID);
NTSYSAPI NTSTATUS WINAPI NtVdmControl(ULONG,PVOID);
NTSYSAPI NTSTATUS WINAPI NtWaitForDebugEvent(HANDLE,BOOLEAN,LARGE_INTEGER*,DBGUI_WAIT_STATE_CHANGE*);
@ -169,5 +168,5 @@ index 4d8b5841d17..a388e9e7741 100644
NTSYSAPI NTSTATUS WINAPI NtWaitForSingleObject(HANDLE,BOOLEAN,const LARGE_INTEGER*);
NTSYSAPI NTSTATUS WINAPI NtWaitForMultipleObjects(ULONG,const HANDLE*,BOOLEAN,BOOLEAN,const LARGE_INTEGER*);
--
2.29.2
2.20.1

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "6d5659103f49db9e045087dd0093acc3b9a4b919"
echo "31af1aeb7895bddf59a73886b89759f76881bc9e"
}
# Show version information
@ -3616,11 +3616,9 @@ fi
# | * ntdll-FileDispositionInformation, kernel32-CopyFileEx, shell32-SHFileOperation_Move, shell32-Progress_Dialog
# |
# | Modified files:
# | * dlls/aclui/Makefile.in, dlls/aclui/aclui.rc, dlls/aclui/aclui_main.c, dlls/aclui/resource.h, dlls/aclui/user_icons.bmp,
# | dlls/shell32/Makefile.in, dlls/shell32/shell32.rc, dlls/shell32/shlview_cmenu.c, dlls/shell32/shresdef.h
# | * dlls/shell32/Makefile.in, dlls/shell32/shell32.rc, dlls/shell32/shlview_cmenu.c, dlls/shell32/shresdef.h
# |
if test "$enable_shell32_ACE_Viewer" -eq 1; then
patch_apply shell32-ACE_Viewer/0001-aclui-Add-basic-ACE-viewer.patch
patch_apply shell32-ACE_Viewer/0002-shell32-Add-security-property-tab.patch
fi

View File

@ -1 +1 @@
6d5659103f49db9e045087dd0093acc3b9a4b919
31af1aeb7895bddf59a73886b89759f76881bc9e