Alexandre Julliard : wow64: Add thunks for the job object syscalls.
Alexandre Julliard
julliard at winehq.org
Fri Jul 23 18:08:01 CDT 2021
Module: wine
Branch: master
Commit: 0e374683cf0342bcf769d58f7c4cfa07a58e0eda
URL: https://source.winehq.org/git/wine.git/?a=commit;h=0e374683cf0342bcf769d58f7c4cfa07a58e0eda
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Jul 23 17:30:11 2021 +0200
wow64: Add thunks for the job object syscalls.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/wow64/sync.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
dlls/wow64/syscall.h | 3 +++
2 files changed, 55 insertions(+)
diff --git a/dlls/wow64/sync.c b/dlls/wow64/sync.c
index 0a3e2cd099a..7d8ad3edac3 100644
--- a/dlls/wow64/sync.c
+++ b/dlls/wow64/sync.c
@@ -139,6 +139,26 @@ NTSTATUS WINAPI wow64_NtCreateIoCompletion( UINT *args )
}
+/**********************************************************************
+ * wow64_NtCreateJobObject
+ */
+NTSTATUS WINAPI wow64_NtCreateJobObject( UINT *args )
+{
+ ULONG *handle_ptr = get_ptr( &args );
+ ACCESS_MASK access = get_ulong( &args );
+ OBJECT_ATTRIBUTES32 *attr32 = get_ptr( &args );
+
+ struct object_attr64 attr;
+ HANDLE handle = 0;
+ NTSTATUS status;
+
+ *handle_ptr = 0;
+ status = NtCreateJobObject( &handle, access, objattr_32to64( &attr, attr32 ));
+ put_handle( handle_ptr, handle );
+ return status;
+}
+
+
/**********************************************************************
* wow64_NtCreateKeyedEvent
*/
@@ -299,6 +319,26 @@ NTSTATUS WINAPI wow64_NtOpenIoCompletion( UINT *args )
}
+/**********************************************************************
+ * wow64_NtOpenJobObject
+ */
+NTSTATUS WINAPI wow64_NtOpenJobObject( UINT *args )
+{
+ ULONG *handle_ptr = get_ptr( &args );
+ ACCESS_MASK access = get_ulong( &args );
+ OBJECT_ATTRIBUTES32 *attr32 = get_ptr( &args );
+
+ struct object_attr64 attr;
+ HANDLE handle = 0;
+ NTSTATUS status;
+
+ *handle_ptr = 0;
+ status = NtOpenJobObject( &handle, access, objattr_32to64( &attr, attr32 ));
+ put_handle( handle_ptr, handle );
+ return status;
+}
+
+
/**********************************************************************
* wow64_NtOpenKeyedEvent
*/
@@ -614,6 +654,18 @@ NTSTATUS WINAPI wow64_NtSetTimer( UINT *args )
}
+/**********************************************************************
+ * wow64_NtTerminateJobObject
+ */
+NTSTATUS WINAPI wow64_NtTerminateJobObject( UINT *args )
+{
+ HANDLE handle = get_handle( &args );
+ NTSTATUS status = get_ulong( &args );
+
+ return NtTerminateJobObject( handle, status );
+}
+
+
/**********************************************************************
* wow64_NtWaitForDebugEvent
*/
diff --git a/dlls/wow64/syscall.h b/dlls/wow64/syscall.h
index c32f4b5fece..677e92f1a37 100644
--- a/dlls/wow64/syscall.h
+++ b/dlls/wow64/syscall.h
@@ -32,6 +32,7 @@
SYSCALL_ENTRY( NtCreateDirectoryObject ) \
SYSCALL_ENTRY( NtCreateEvent ) \
SYSCALL_ENTRY( NtCreateIoCompletion ) \
+ SYSCALL_ENTRY( NtCreateJobObject ) \
SYSCALL_ENTRY( NtCreateKeyedEvent ) \
SYSCALL_ENTRY( NtCreateMutant ) \
SYSCALL_ENTRY( NtCreateSemaphore ) \
@@ -43,6 +44,7 @@
SYSCALL_ENTRY( NtOpenDirectoryObject ) \
SYSCALL_ENTRY( NtOpenEvent ) \
SYSCALL_ENTRY( NtOpenIoCompletion ) \
+ SYSCALL_ENTRY( NtOpenJobObject ) \
SYSCALL_ENTRY( NtOpenKeyedEvent ) \
SYSCALL_ENTRY( NtOpenMutant ) \
SYSCALL_ENTRY( NtOpenSemaphore ) \
@@ -68,6 +70,7 @@
SYSCALL_ENTRY( NtSetInformationDebugObject ) \
SYSCALL_ENTRY( NtSetIoCompletion ) \
SYSCALL_ENTRY( NtSetTimer ) \
+ SYSCALL_ENTRY( NtTerminateJobObject ) \
SYSCALL_ENTRY( NtWaitForDebugEvent ) \
SYSCALL_ENTRY( NtWaitForKeyedEvent )
More information about the wine-cvs
mailing list