ntdll: Add NtTraceControl/ZwTraceControl stubs.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alistair Leslie-Hughes 2021-08-25 18:04:58 +10:00 committed by Alexandre Julliard
parent 9521640aa7
commit 16a7976de9
6 changed files with 38 additions and 1 deletions

View File

@ -414,6 +414,7 @@
@ stdcall -syscall NtTerminateProcess(long long)
@ stdcall -syscall NtTerminateThread(long long)
@ stdcall -syscall NtTestAlert()
@ stdcall -syscall NtTraceControl(long ptr long ptr long long)
# @ stub NtTraceEvent
# @ stub NtTranslateFilePath
@ stdcall -syscall NtUnloadDriver(ptr)
@ -1435,6 +1436,7 @@
@ stdcall -private -syscall ZwTerminateProcess(long long) NtTerminateProcess
@ stdcall -private -syscall ZwTerminateThread(long long) NtTerminateThread
@ stdcall -private -syscall ZwTestAlert() NtTestAlert
@ stdcall -private -syscall ZwTraceControl(long ptr long ptr long long) NtTraceControl
# @ stub ZwTraceEvent
# @ stub ZwTranslateFilePath
@ stdcall -private -syscall ZwUnloadDriver(ptr) NtUnloadDriver

View File

@ -34,6 +34,8 @@
# include <unistd.h>
#endif
#include "ntstatus.h"
#define WIN32_NO_STATUS
#include "windef.h"
#include "winnt.h"
#include "winternl.h"
@ -42,6 +44,7 @@
WINE_DECLARE_DEBUG_CHANNEL(pid);
WINE_DECLARE_DEBUG_CHANNEL(timestamp);
WINE_DEFAULT_DEBUG_CHANNEL(ntdll);
struct debug_info
{
@ -328,3 +331,15 @@ void dbg_init(void)
options[nb_debug_options] = default_option;
init_done = TRUE;
}
/***********************************************************************
* NtTraceControl (NTDLL.@)
*/
NTSTATUS WINAPI NtTraceControl( ULONG code, void *inbuf, ULONG inbuf_len,
void *outbuf, ULONG outbuf_len, ULONG *size )
{
FIXME( "code %u, inbuf %p, inbuf_len %u, outbuf %p, outbuf_len %u, size %p\n", code, inbuf, inbuf_len,
outbuf, outbuf_len, size );
return STATUS_SUCCESS;
}

View File

@ -818,6 +818,7 @@
@ stdcall NtSetSecurityObject(long long ptr)
@ stdcall NtSetVolumeInformationFile(long ptr ptr long long)
@ stdcall NtShutdownSystem(long)
@ stdcall NtTraceControl(long ptr long ptr long long)
@ stub NtTraceEvent
@ stdcall NtUnlockFile(long ptr ptr ptr ptr)
@ stub NtVdmControl
@ -1514,6 +1515,7 @@
@ stdcall -private ZwSetVolumeInformationFile(long ptr ptr long long) NtSetVolumeInformationFile
@ stdcall -private ZwTerminateJobObject(long long) NtTerminateJobObject
@ stdcall -private ZwTerminateProcess(long long) NtTerminateProcess
@ stdcall -private ZwTraceControl(long ptr long ptr long long) NtTraceControl
@ stub ZwTranslateFilePath
@ stdcall ZwUnloadDriver(ptr)
@ stdcall -private ZwUnloadKey(ptr) NtUnloadKey

View File

@ -1481,6 +1481,22 @@ NTSTATUS WINAPI wow64_NtTestAlert( UINT *args )
}
/**********************************************************************
* wow64_NtTraceControl
*/
NTSTATUS WINAPI wow64_NtTraceControl( UINT *args )
{
ULONG code = get_ulong( &args );
void *inbuf = get_ptr( &args );
ULONG inbuf_len = get_ulong( &args );
void *outbuf = get_ptr( &args );
ULONG outbuf_len = get_ulong( &args );
ULONG *size = get_ptr( &args );
return NtTraceControl( code, inbuf, inbuf_len, outbuf, outbuf_len, size );
}
/**********************************************************************
* wow64_NtWaitForDebugEvent
*/

View File

@ -228,6 +228,7 @@
SYSCALL_ENTRY( NtTerminateProcess ) \
SYSCALL_ENTRY( NtTerminateThread ) \
SYSCALL_ENTRY( NtTestAlert ) \
SYSCALL_ENTRY( NtTraceControl ) \
SYSCALL_ENTRY( NtUnloadDriver ) \
SYSCALL_ENTRY( NtUnloadKey ) \
SYSCALL_ENTRY( NtUnlockFile ) \

View File

@ -4009,7 +4009,7 @@ NTSYSAPI NTSTATUS WINAPI NtSetEvent(HANDLE,LONG*);
NTSYSAPI NTSTATUS WINAPI NtSetHighEventPair(HANDLE);
NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowEventPair(HANDLE);
NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowThread(VOID);
NTSYSAPI NTSTATUS WINAPI NtSetInformationDebugObject(HANDLE,DEBUGOBJECTINFOCLASS,PVOID,ULONG,ULONG*);
NTSYSAPI NTSTATUS WINAPI NtSetInformationDebugObject(HANDLE,DEBUGOBJECTINFOCLASS,PVOID,ULONG,ULONG*);
NTSYSAPI NTSTATUS WINAPI NtSetInformationFile(HANDLE,PIO_STATUS_BLOCK,PVOID,ULONG,FILE_INFORMATION_CLASS);
NTSYSAPI NTSTATUS WINAPI NtSetInformationJobObject(HANDLE,JOBOBJECTINFOCLASS,PVOID,ULONG);
NTSYSAPI NTSTATUS WINAPI NtSetInformationKey(HANDLE,const int,PVOID,ULONG);
@ -4045,6 +4045,7 @@ NTSYSAPI NTSTATUS WINAPI NtTerminateJobObject(HANDLE,NTSTATUS);
NTSYSAPI NTSTATUS WINAPI NtTerminateProcess(HANDLE,LONG);
NTSYSAPI NTSTATUS WINAPI NtTerminateThread(HANDLE,LONG);
NTSYSAPI NTSTATUS WINAPI NtTestAlert(VOID);
NTSYSAPI NTSTATUS WINAPI NtTraceControl(ULONG,void*,ULONG,void*,ULONG,ULONG*);
NTSYSAPI NTSTATUS WINAPI NtUnloadDriver(const UNICODE_STRING *);
NTSYSAPI NTSTATUS WINAPI NtUnloadKey(POBJECT_ATTRIBUTES);
NTSYSAPI NTSTATUS WINAPI NtUnloadKeyEx(POBJECT_ATTRIBUTES,HANDLE);