advapi32: Move event tracing APIs to sechost.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2020-04-25 15:40:24 -05:00 committed by Alexandre Julliard
parent dedd5ccc88
commit aa6e060172
6 changed files with 185 additions and 167 deletions

View File

@ -1,7 +1,7 @@
EXTRADEFS = -D_ADVAPI32_ EXTRADEFS = -D_ADVAPI32_
MODULE = advapi32.dll MODULE = advapi32.dll
IMPORTLIB = advapi32 IMPORTLIB = advapi32
IMPORTS = kernelbase IMPORTS = kernelbase sechost
DELAYIMPORTS = rpcrt4 DELAYIMPORTS = rpcrt4
EXTRALIBS = $(SECURITY_LIBS) EXTRALIBS = $(SECURITY_LIBS)

View File

@ -102,14 +102,14 @@
@ stdcall CloseEventLog (long) @ stdcall CloseEventLog (long)
@ stdcall CloseServiceHandle(long) @ stdcall CloseServiceHandle(long)
# @ stub CloseThreadWaitChainSession # @ stub CloseThreadWaitChainSession
@ stdcall CloseTrace(int64) @ stdcall -import CloseTrace(int64)
@ stdcall CommandLineFromMsiDescriptor(wstr ptr ptr) @ stdcall CommandLineFromMsiDescriptor(wstr ptr ptr)
# @ stub ComputeAccessTokenFromCodeAuthzLevel # @ stub ComputeAccessTokenFromCodeAuthzLevel
@ stdcall ControlService(long long ptr) @ stdcall ControlService(long long ptr)
# @ stub ControlServiceExA # @ stub ControlServiceExA
# @ stub ControlServiceExW # @ stub ControlServiceExW
@ stdcall ControlTraceA(int64 str ptr long) @ stdcall -import ControlTraceA(int64 str ptr long)
@ stdcall ControlTraceW(int64 wstr ptr long) @ stdcall -import ControlTraceW(int64 wstr ptr long)
# @ stub ConvertAccessToSecurityDescriptorA # @ stub ConvertAccessToSecurityDescriptorA
# @ stub ConvertAccessToSecurityDescriptorW # @ stub ConvertAccessToSecurityDescriptorW
# @ stub ConvertSDToStringSDDomainW # @ stub ConvertSDToStringSDDomainW
@ -265,7 +265,7 @@
@ stub ElfReportEventW @ stub ElfReportEventW
@ stdcall EnableTrace(long long long ptr int64) @ stdcall EnableTrace(long long long ptr int64)
@ stdcall EnableTraceEx(ptr ptr int64 long long int64 int64 long ptr) @ stdcall EnableTraceEx(ptr ptr int64 long long int64 int64 long ptr)
@ stdcall EnableTraceEx2(int64 ptr long long int64 int64 long ptr) @ stdcall -import EnableTraceEx2(int64 ptr long long int64 int64 long ptr)
@ stdcall EncryptFileA(str) @ stdcall EncryptFileA(str)
@ stdcall EncryptFileW(wstr) @ stdcall EncryptFileW(wstr)
# @ stub EncryptedFileKeyInfo # @ stub EncryptedFileKeyInfo
@ -550,7 +550,7 @@
@ stdcall -import OpenThreadToken(long long long ptr) @ stdcall -import OpenThreadToken(long long long ptr)
# @ stub OpenThreadWaitChainSession # @ stub OpenThreadWaitChainSession
@ stdcall -ret64 OpenTraceA(ptr) @ stdcall -ret64 OpenTraceA(ptr)
@ stdcall -ret64 OpenTraceW(ptr) @ stdcall -ret64 -import OpenTraceW(ptr)
# @ stub OperationEnd # @ stub OperationEnd
# @ stub OperationStart # @ stub OperationStart
# @ stub PerfAddCounters # @ stub PerfAddCounters
@ -587,9 +587,9 @@
@ stdcall -import PrivilegedServiceAuditAlarmW(wstr wstr long ptr long) @ stdcall -import PrivilegedServiceAuditAlarmW(wstr wstr long ptr long)
# @ stub ProcessIdleTasks # @ stub ProcessIdleTasks
# @ stub ProcessIdleTasksW # @ stub ProcessIdleTasksW
@ stdcall ProcessTrace(ptr long ptr ptr) @ stdcall -import ProcessTrace(ptr long ptr ptr)
@ stdcall QueryAllTracesA(ptr long ptr) @ stdcall -import QueryAllTracesA(ptr long ptr)
@ stdcall QueryAllTracesW(ptr long ptr) @ stdcall -import QueryAllTracesW(ptr long ptr)
# @ stub QueryLocalUserServiceName # @ stub QueryLocalUserServiceName
# @ stub QueryRecoveryAgentsOnEncryptedFile # @ stub QueryRecoveryAgentsOnEncryptedFile
# @ stub QuerySecurityAccessMask # @ stub QuerySecurityAccessMask
@ -772,10 +772,10 @@
@ stdcall StartServiceCtrlDispatcherA(ptr) @ stdcall StartServiceCtrlDispatcherA(ptr)
@ stdcall StartServiceCtrlDispatcherW(ptr) @ stdcall StartServiceCtrlDispatcherW(ptr)
@ stdcall StartServiceW(long long ptr) @ stdcall StartServiceW(long long ptr)
@ stdcall StartTraceA(ptr str ptr) @ stdcall -import StartTraceA(ptr str ptr)
@ stdcall StartTraceW(ptr wstr ptr) @ stdcall -import StartTraceW(ptr wstr ptr)
@ stdcall StopTraceA(int64 str ptr) @ stdcall StopTraceA(int64 str ptr)
@ stdcall StopTraceW(int64 wstr ptr) @ stdcall -import StopTraceW(int64 wstr ptr)
@ stdcall SynchronizeWindows31FilesAndWindowsNTRegistry(long long long long) @ stdcall SynchronizeWindows31FilesAndWindowsNTRegistry(long long long long)
@ stdcall SystemFunction001(ptr ptr ptr) @ stdcall SystemFunction001(ptr ptr ptr)
@ stdcall SystemFunction002(ptr ptr ptr) @ stdcall SystemFunction002(ptr ptr ptr)
@ -820,7 +820,7 @@
@ varargs TraceMessage(int64 long ptr long) ntdll.EtwTraceMessage @ varargs TraceMessage(int64 long ptr long) ntdll.EtwTraceMessage
@ stdcall TraceMessageVa(int64 long ptr long ptr) ntdll.EtwTraceMessageVa @ stdcall TraceMessageVa(int64 long ptr long ptr) ntdll.EtwTraceMessageVa
# @ stub TraceQueryInformation # @ stub TraceQueryInformation
@ stdcall TraceSetInformation(int64 long ptr long) @ stdcall -import TraceSetInformation(int64 long ptr long)
# @ stub TreeResetNamedSecurityInfoA # @ stub TreeResetNamedSecurityInfoA
@ stdcall TreeResetNamedSecurityInfoW(wstr long long ptr ptr ptr ptr long ptr long ptr) @ stdcall TreeResetNamedSecurityInfoW(wstr long long ptr ptr ptr ptr long ptr long ptr)
# @ stub TreeSetNamedSecurityInfoA # @ stub TreeSetNamedSecurityInfoA

View File

@ -164,30 +164,6 @@ BOOL WINAPI CloseEventLog( HANDLE hEventLog )
return TRUE; return TRUE;
} }
/******************************************************************************
* ControlTraceW [ADVAPI32.@]
*
* Control a givel event trace session
*
*/
ULONG WINAPI ControlTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties, ULONG control )
{
FIXME("(%s, %s, %p, %d) stub\n", wine_dbgstr_longlong(hSession), debugstr_w(SessionName), Properties, control);
return ERROR_SUCCESS;
}
/******************************************************************************
* ControlTraceA [ADVAPI32.@]
*
* See ControlTraceW.
*
*/
ULONG WINAPI ControlTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties, ULONG control )
{
FIXME("(%s, %s, %p, %d) stub\n", wine_dbgstr_longlong(hSession), debugstr_a(SessionName), Properties, control);
return ERROR_SUCCESS;
}
/****************************************************************************** /******************************************************************************
* FlushTraceA [ADVAPI32.@] * FlushTraceA [ADVAPI32.@]
*/ */
@ -238,20 +214,6 @@ ULONG WINAPI EnableTraceEx( LPCGUID provider, LPCGUID source, TRACEHANDLE hSessi
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
/******************************************************************************
* EnableTraceEx2 [ADVAPI32.@]
*/
ULONG WINAPI EnableTraceEx2( TRACEHANDLE handle, LPCGUID provider, ULONG control, UCHAR level,
ULONGLONG match_any, ULONGLONG match_all, ULONG timeout,
PENABLE_TRACE_PARAMETERS params )
{
FIXME("(%s, %s, %u, %u, %s, %s, %u, %p): stub\n", wine_dbgstr_longlong(handle),
debugstr_guid(provider), control, level, wine_dbgstr_longlong(match_any),
wine_dbgstr_longlong(match_all), timeout, params);
return ERROR_SUCCESS;
}
/****************************************************************************** /******************************************************************************
* EnableTrace [ADVAPI32.@] * EnableTrace [ADVAPI32.@]
*/ */
@ -523,33 +485,6 @@ HANDLE WINAPI OpenEventLogW( LPCWSTR uncname, LPCWSTR source )
return (HANDLE)0xcafe4242; return (HANDLE)0xcafe4242;
} }
/******************************************************************************
* QueryAllTracesW [ADVAPI32.@]
*
* Query information for started event trace sessions
*
*/
ULONG WINAPI QueryAllTracesW( PEVENT_TRACE_PROPERTIES * parray, ULONG arraycount, PULONG psessioncount )
{
FIXME("(%p, %d, %p) stub\n", parray, arraycount, psessioncount);
if (psessioncount) *psessioncount = 0;
return ERROR_SUCCESS;
}
/******************************************************************************
* QueryAllTracesA [ADVAPI32.@]
*
* See QueryAllTracesW.
*/
ULONG WINAPI QueryAllTracesA( PEVENT_TRACE_PROPERTIES * parray, ULONG arraycount, PULONG psessioncount )
{
FIXME("(%p, %d, %p) stub\n", parray, arraycount, psessioncount);
if (psessioncount) *psessioncount = 0;
return ERROR_SUCCESS;
}
/****************************************************************************** /******************************************************************************
* ReadEventLogA [ADVAPI32.@] * ReadEventLogA [ADVAPI32.@]
* *
@ -727,44 +662,6 @@ BOOL WINAPI ReportEventW( HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dw
return TRUE; return TRUE;
} }
/******************************************************************************
* StartTraceW [ADVAPI32.@]
*
* Register and start an event trace session
*
*/
ULONG WINAPI StartTraceW( PTRACEHANDLE pSessionHandle, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
{
FIXME("(%p, %s, %p) stub\n", pSessionHandle, debugstr_w(SessionName), Properties);
if (pSessionHandle) *pSessionHandle = 0xcafe4242;
return ERROR_SUCCESS;
}
/******************************************************************************
* StartTraceA [ADVAPI32.@]
*
* See StartTraceW.
*
*/
ULONG WINAPI StartTraceA( PTRACEHANDLE pSessionHandle, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
{
FIXME("(%p, %s, %p) stub\n", pSessionHandle, debugstr_a(SessionName), Properties);
if (pSessionHandle) *pSessionHandle = 0xcafe4242;
return ERROR_SUCCESS;
}
/******************************************************************************
* StopTraceW [ADVAPI32.@]
*
* Stop an event trace session
*
*/
ULONG WINAPI StopTraceW( TRACEHANDLE session, LPCWSTR session_name, PEVENT_TRACE_PROPERTIES properties )
{
FIXME("(%s, %s, %p) stub\n", wine_dbgstr_longlong(session), debugstr_w(session_name), properties);
return ERROR_SUCCESS;
}
/****************************************************************************** /******************************************************************************
* StopTraceA [ADVAPI32.@] * StopTraceA [ADVAPI32.@]
* *
@ -798,36 +695,6 @@ TRACEHANDLE WINAPI OpenTraceA( PEVENT_TRACE_LOGFILEA logfile )
return INVALID_PROCESSTRACE_HANDLE; return INVALID_PROCESSTRACE_HANDLE;
} }
/******************************************************************************
* OpenTraceW [ADVAPI32.@]
*/
TRACEHANDLE WINAPI OpenTraceW( PEVENT_TRACE_LOGFILEW logfile )
{
static int once;
if (!once++) FIXME("%p: stub\n", logfile);
SetLastError(ERROR_ACCESS_DENIED);
return INVALID_PROCESSTRACE_HANDLE;
}
/******************************************************************************
* ProcessTrace [ADVAPI32.@]
*/
ULONG WINAPI ProcessTrace( PTRACEHANDLE HandleArray, ULONG HandleCount, LPFILETIME StartTime, LPFILETIME EndTime)
{
FIXME("%p %u %p %p: stub\n", HandleArray, HandleCount, StartTime, EndTime);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* CloseTrace [ADVAPI32.@]
*/
ULONG WINAPI CloseTrace( TRACEHANDLE handle )
{
FIXME("%s: stub\n", wine_dbgstr_longlong(handle));
return ERROR_INVALID_HANDLE;
}
/****************************************************************************** /******************************************************************************
* EnumerateTraceGuids [ADVAPI32.@] * EnumerateTraceGuids [ADVAPI32.@]
*/ */
@ -837,12 +704,3 @@ ULONG WINAPI EnumerateTraceGuids(PTRACE_GUID_PROPERTIES *propertiesarray,
FIXME("%p %d %p: stub\n", propertiesarray, arraycount, guidcount); FIXME("%p %d %p: stub\n", propertiesarray, arraycount, guidcount);
return ERROR_INVALID_PARAMETER; return ERROR_INVALID_PARAMETER;
} }
/******************************************************************************
* TraceSetInformation [ADVAPI32.@]
*/
ULONG WINAPI TraceSetInformation(TRACEHANDLE handle, TRACE_INFO_CLASS infoclass, VOID* info, ULONG len)
{
FIXME("%s %d %p %d: stub\n", wine_dbgstr_longlong(handle), infoclass, info, len);
return ERROR_CALL_NOT_IMPLEMENTED;
}

View File

@ -1,3 +1,8 @@
MODULE = sechost.dll MODULE = sechost.dll
IMPORTLIB = sechost
IMPORTS = kernelbase
EXTRADLLFLAGS = -mno-cygwin EXTRADLLFLAGS = -mno-cygwin
C_SRCS = \
trace.c

View File

@ -24,12 +24,12 @@
@ stdcall ChangeServiceConfigA(long long long long wstr str ptr str str str str) advapi32.ChangeServiceConfigA @ stdcall ChangeServiceConfigA(long long long long wstr str ptr str str str str) advapi32.ChangeServiceConfigA
@ stdcall ChangeServiceConfigW(long long long long wstr wstr ptr wstr wstr wstr wstr) advapi32.ChangeServiceConfigW @ stdcall ChangeServiceConfigW(long long long long wstr wstr ptr wstr wstr wstr wstr) advapi32.ChangeServiceConfigW
@ stdcall CloseServiceHandle(long) advapi32.CloseServiceHandle @ stdcall CloseServiceHandle(long) advapi32.CloseServiceHandle
@ stdcall CloseTrace(int64) advapi32.CloseTrace @ stdcall CloseTrace(int64)
@ stdcall ControlService(long long ptr) advapi32.ControlService @ stdcall ControlService(long long ptr) advapi32.ControlService
@ stub ControlServiceExA @ stub ControlServiceExA
@ stub ControlServiceExW @ stub ControlServiceExW
@ stdcall ControlTraceA(int64 str ptr long) advapi32.ControlTraceA @ stdcall ControlTraceA(int64 str ptr long)
@ stdcall ControlTraceW(int64 wstr ptr long) advapi32.ControlTraceW @ stdcall ControlTraceW(int64 wstr ptr long)
@ stub ConvertSDToStringSDRootDomainW @ stub ConvertSDToStringSDRootDomainW
@ stdcall ConvertSecurityDescriptorToStringSecurityDescriptorW(ptr long long ptr ptr) advapi32.ConvertSecurityDescriptorToStringSecurityDescriptorW @ stdcall ConvertSecurityDescriptorToStringSecurityDescriptorW(ptr long long ptr ptr) advapi32.ConvertSecurityDescriptorToStringSecurityDescriptorW
@ stdcall ConvertSidToStringSidW(ptr ptr) advapi32.ConvertSidToStringSidW @ stdcall ConvertSidToStringSidW(ptr ptr) advapi32.ConvertSidToStringSidW
@ -85,7 +85,7 @@
@ stub CredpEncodeCredential @ stub CredpEncodeCredential
@ stub CredpEncodeSecret @ stub CredpEncodeSecret
@ stdcall DeleteService(long) advapi32.DeleteService @ stdcall DeleteService(long) advapi32.DeleteService
@ stdcall EnableTraceEx2(int64 ptr long long int64 int64 long ptr) advapi32.EnableTraceEx2 @ stdcall EnableTraceEx2(int64 ptr long long int64 int64 long ptr)
@ stdcall EnumDependentServicesW(long long ptr long ptr ptr) advapi32.EnumDependentServicesW @ stdcall EnumDependentServicesW(long long ptr long ptr ptr) advapi32.EnumDependentServicesW
@ stdcall EnumServicesStatusExW(long long long long ptr long ptr ptr ptr wstr) advapi32.EnumServicesStatusExW @ stdcall EnumServicesStatusExW(long long long long ptr long ptr ptr ptr wstr) advapi32.EnumServicesStatusExW
@ stub EnumerateIdentityProviders @ stub EnumerateIdentityProviders
@ -164,10 +164,10 @@
@ stdcall OpenSCManagerW(wstr wstr long) advapi32.OpenSCManagerW @ stdcall OpenSCManagerW(wstr wstr long) advapi32.OpenSCManagerW
@ stdcall OpenServiceA(long str long) advapi32.OpenServiceA @ stdcall OpenServiceA(long str long) advapi32.OpenServiceA
@ stdcall OpenServiceW(long wstr long) advapi32.OpenServiceW @ stdcall OpenServiceW(long wstr long) advapi32.OpenServiceW
@ stdcall -ret64 OpenTraceW(ptr) advapi32.OpenTraceW @ stdcall -ret64 OpenTraceW(ptr)
@ stdcall ProcessTrace(ptr long ptr ptr) advapi32.ProcessTrace @ stdcall ProcessTrace(ptr long ptr ptr)
@ stdcall QueryAllTracesA(ptr long ptr) advapi32.QueryAllTracesA @ stdcall QueryAllTracesA(ptr long ptr)
@ stdcall QueryAllTracesW(ptr long ptr) advapi32.QueryAllTracesW @ stdcall QueryAllTracesW(ptr long ptr)
@ stub QueryLocalUserServiceName @ stub QueryLocalUserServiceName
@ stdcall QueryServiceConfig2A(long long ptr long ptr) advapi32.QueryServiceConfig2A @ stdcall QueryServiceConfig2A(long long ptr long ptr) advapi32.QueryServiceConfig2A
@ stdcall QueryServiceConfig2W(long long ptr long ptr) advapi32.QueryServiceConfig2W @ stdcall QueryServiceConfig2W(long long ptr long ptr) advapi32.QueryServiceConfig2W
@ -198,11 +198,11 @@
@ stdcall StartServiceCtrlDispatcherA(ptr) advapi32.StartServiceCtrlDispatcherA @ stdcall StartServiceCtrlDispatcherA(ptr) advapi32.StartServiceCtrlDispatcherA
@ stdcall StartServiceCtrlDispatcherW(ptr) advapi32.StartServiceCtrlDispatcherW @ stdcall StartServiceCtrlDispatcherW(ptr) advapi32.StartServiceCtrlDispatcherW
@ stdcall StartServiceW(long long ptr) advapi32.StartServiceW @ stdcall StartServiceW(long long ptr) advapi32.StartServiceW
@ stdcall StartTraceA(ptr str ptr) advapi32.StartTraceA @ stdcall StartTraceA(ptr str ptr)
@ stdcall StartTraceW(ptr wstr ptr) advapi32.StartTraceW @ stdcall StartTraceW(ptr wstr ptr)
@ stdcall StopTraceW(int64 wstr ptr) advapi32.StopTraceW @ stdcall StopTraceW(int64 wstr ptr)
@ stub SubscribeServiceChangeNotifications @ stub SubscribeServiceChangeNotifications
@ stub TraceQueryInformation @ stub TraceQueryInformation
@ stdcall TraceSetInformation(int64 long ptr long) advapi32.TraceSetInformation @ stdcall TraceSetInformation(int64 long ptr long)
@ stub UnsubscribeServiceChangeNotifications @ stub UnsubscribeServiceChangeNotifications
@ stub WaitServiceState @ stub WaitServiceState

155
dlls/sechost/trace.c Normal file
View File

@ -0,0 +1,155 @@
/*
* Event tracing API
*
* Copyright 1995 Sven Verdoolaege
* Copyright 1998 Juergen Schmied
* Copyright 2003 Mike Hearn
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "wmistr.h"
#include "evntrace.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(eventlog);
/******************************************************************************
* ControlTraceA (sechost.@)
*/
ULONG WINAPI ControlTraceA( TRACEHANDLE handle, const char *session,
EVENT_TRACE_PROPERTIES *properties, ULONG control )
{
FIXME("(%s, %s, %p, %d) stub\n", wine_dbgstr_longlong(handle), debugstr_a(session), properties, control);
return ERROR_SUCCESS;
}
/******************************************************************************
* ControlTraceW (sechost.@)
*/
ULONG WINAPI ControlTraceW( TRACEHANDLE handle, const WCHAR *session,
EVENT_TRACE_PROPERTIES *properties, ULONG control )
{
FIXME("(%s, %s, %p, %d) stub\n", wine_dbgstr_longlong(handle), debugstr_w(session), properties, control);
return ERROR_SUCCESS;
}
/******************************************************************************
* EnableTraceEx2 (sechost.@)
*/
ULONG WINAPI EnableTraceEx2( TRACEHANDLE handle, const GUID *provider, ULONG control, UCHAR level,
ULONGLONG match_any, ULONGLONG match_all, ULONG timeout,
ENABLE_TRACE_PARAMETERS *params )
{
FIXME("(%s, %s, %u, %u, %s, %s, %u, %p): stub\n", wine_dbgstr_longlong(handle),
debugstr_guid(provider), control, level, wine_dbgstr_longlong(match_any),
wine_dbgstr_longlong(match_all), timeout, params);
return ERROR_SUCCESS;
}
/******************************************************************************
* QueryAllTracesA (sechost.@)
*/
ULONG WINAPI QueryAllTracesA( EVENT_TRACE_PROPERTIES **properties, ULONG count, ULONG *ret_count )
{
FIXME("(%p, %d, %p) stub\n", properties, count, ret_count);
if (ret_count) *ret_count = 0;
return ERROR_SUCCESS;
}
/******************************************************************************
* QueryAllTracesW (sechost.@)
*/
ULONG WINAPI QueryAllTracesW( EVENT_TRACE_PROPERTIES **properties, ULONG count, ULONG *ret_count )
{
FIXME("(%p, %d, %p) stub\n", properties, count, ret_count);
if (ret_count) *ret_count = 0;
return ERROR_SUCCESS;
}
/******************************************************************************
* StartTraceA (sechost.@)
*/
ULONG WINAPI StartTraceA( TRACEHANDLE *handle, const char *session, EVENT_TRACE_PROPERTIES *properties )
{
FIXME("(%p, %s, %p) stub\n", handle, debugstr_a(session), properties);
if (handle) *handle = 0xcafe4242;
return ERROR_SUCCESS;
}
/******************************************************************************
* StartTraceW (sechost.@)
*/
ULONG WINAPI StartTraceW( TRACEHANDLE *handle, const WCHAR *session, EVENT_TRACE_PROPERTIES *properties )
{
FIXME("(%p, %s, %p) stub\n", handle, debugstr_w(session), properties);
if (handle) *handle = 0xcafe4242;
return ERROR_SUCCESS;
}
/******************************************************************************
* StopTraceW (sechost.@)
*/
ULONG WINAPI StopTraceW( TRACEHANDLE handle, const WCHAR *session, EVENT_TRACE_PROPERTIES *properties )
{
FIXME("(%s, %s, %p) stub\n", wine_dbgstr_longlong(handle), debugstr_w(session), properties);
return ERROR_SUCCESS;
}
/******************************************************************************
* OpenTraceW (sechost.@)
*/
TRACEHANDLE WINAPI OpenTraceW( EVENT_TRACE_LOGFILEW *logfile )
{
static int once;
if (!once++) FIXME("%p: stub\n", logfile);
SetLastError(ERROR_ACCESS_DENIED);
return INVALID_PROCESSTRACE_HANDLE;
}
/******************************************************************************
* ProcessTrace (sechost.@)
*/
ULONG WINAPI ProcessTrace( TRACEHANDLE *handles, ULONG count, FILETIME *start_time, FILETIME *end_time )
{
FIXME("%p %u %p %p: stub\n", handles, count, start_time, end_time);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* CloseTrace (sechost.@)
*/
ULONG WINAPI CloseTrace( TRACEHANDLE handle )
{
FIXME("%s: stub\n", wine_dbgstr_longlong(handle));
return ERROR_INVALID_HANDLE;
}
/******************************************************************************
* TraceSetInformation (sechost.@)
*/
ULONG WINAPI TraceSetInformation( TRACEHANDLE handle, TRACE_INFO_CLASS class, void *info, ULONG len )
{
FIXME("%s %d %p %d: stub\n", wine_dbgstr_longlong(handle), class, info, len);
return ERROR_CALL_NOT_IMPLEMENTED;
}