mirror of
https://github.com/reactos/reactos.git
synced 2024-11-07 07:00:19 +00:00
277 lines
7 KiB
C
277 lines
7 KiB
C
/*
|
|
* ntdll.dll Event Tracing Functions
|
|
*/
|
|
|
|
#include <ntdll.h>
|
|
|
|
#include <wmistr.h>
|
|
#include <evntrace.h>
|
|
|
|
#define NDEBUG
|
|
#include <debug.h>
|
|
|
|
#define FIXME DPRINT1
|
|
|
|
/*
|
|
* @unimplemented
|
|
*/
|
|
ULONG CDECL
|
|
EtwTraceMessage(
|
|
TRACEHANDLE SessionHandle,
|
|
ULONG MessageFlags,
|
|
LPCGUID MessageGuid,
|
|
USHORT MessageNumber,
|
|
...)
|
|
{
|
|
FIXME("TraceMessage()\n");
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
TRACEHANDLE
|
|
NTAPI
|
|
EtwGetTraceLoggerHandle(
|
|
PVOID Buffer
|
|
)
|
|
{
|
|
FIXME("EtwGetTraceLoggerHandle stub()\n");
|
|
return (TRACEHANDLE)-1;
|
|
}
|
|
|
|
|
|
ULONG
|
|
NTAPI
|
|
EtwTraceEvent(
|
|
TRACEHANDLE SessionHandle,
|
|
PEVENT_TRACE_HEADER EventTrace
|
|
)
|
|
{
|
|
FIXME("EtwTraceEvent stub()\n");
|
|
|
|
if (!SessionHandle || !EventTrace)
|
|
{
|
|
/* invalid parameters */
|
|
return ERROR_INVALID_PARAMETER;
|
|
}
|
|
|
|
if (EventTrace->Size != sizeof(EVENT_TRACE_HEADER))
|
|
{
|
|
/* invalid parameter */
|
|
return ERROR_INVALID_PARAMETER;
|
|
}
|
|
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
ULONG
|
|
NTAPI
|
|
EtwGetTraceEnableFlags(
|
|
TRACEHANDLE TraceHandle
|
|
)
|
|
{
|
|
FIXME("EtwGetTraceEnableFlags stub()\n");
|
|
return 0xFF;
|
|
}
|
|
|
|
UCHAR
|
|
NTAPI
|
|
EtwGetTraceEnableLevel(
|
|
TRACEHANDLE TraceHandle
|
|
)
|
|
{
|
|
FIXME("EtwGetTraceEnableLevel stub()\n");
|
|
return 0xFF;
|
|
}
|
|
|
|
ULONG
|
|
NTAPI
|
|
EtwUnregisterTraceGuids(
|
|
TRACEHANDLE RegistrationHandle
|
|
)
|
|
{
|
|
FIXME("EtwUnregisterTraceGuids stub()\n");
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
ULONG
|
|
NTAPI
|
|
EtwRegisterTraceGuidsA(
|
|
WMIDPREQUEST RequestAddress,
|
|
PVOID RequestContext,
|
|
LPCGUID ControlGuid,
|
|
ULONG GuidCount,
|
|
PTRACE_GUID_REGISTRATION TraceGuidReg,
|
|
LPCSTR MofImagePath,
|
|
LPCSTR MofResourceName,
|
|
PTRACEHANDLE RegistrationHandle
|
|
)
|
|
{
|
|
FIXME("EtwRegisterTraceGuidsA stub()\n");
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
ULONG
|
|
NTAPI
|
|
EtwRegisterTraceGuidsW(
|
|
WMIDPREQUEST RequestAddress,
|
|
PVOID RequestContext,
|
|
LPCGUID ControlGuid,
|
|
ULONG GuidCount,
|
|
PTRACE_GUID_REGISTRATION TraceGuidReg,
|
|
LPCWSTR MofImagePath,
|
|
LPCWSTR MofResourceName,
|
|
PTRACEHANDLE RegistrationHandle
|
|
)
|
|
{
|
|
FIXME("EtwRegisterTraceGuidsW stub()\n");
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
ULONG WINAPI EtwStartTraceW( PTRACEHANDLE pSessionHandle, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
FIXME("(%p, %s, %p) stub\n", pSessionHandle, SessionName, Properties);
|
|
if (pSessionHandle) *pSessionHandle = 0xcafe4242;
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
ULONG WINAPI EtwStartTraceA( PTRACEHANDLE pSessionHandle, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
FIXME("(%p, %s, %p) stub\n", pSessionHandle, SessionName, Properties);
|
|
if (pSessionHandle) *pSessionHandle = 0xcafe4242;
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwControlTraceW [NTDLL.@]
|
|
*
|
|
* Control a givel event trace session
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwControlTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties, ULONG control )
|
|
{
|
|
FIXME("(%I64x, %s, %p, %d) stub\n", hSession, SessionName, Properties, control);
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwControlTraceA [NTDLL.@]
|
|
*
|
|
* See ControlTraceW.
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwControlTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties, ULONG control )
|
|
{
|
|
FIXME("(%I64x, %s, %p, %d) stub\n", hSession, SessionName, Properties, control);
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwEnableTrace [NTDLL.@]
|
|
*/
|
|
ULONG WINAPI EtwEnableTrace( ULONG enable, ULONG flag, ULONG level, LPCGUID guid, TRACEHANDLE hSession )
|
|
{
|
|
FIXME("(%d, 0x%x, %d, %p, %I64x): stub\n", enable, flag, level,
|
|
guid, hSession);
|
|
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwQueryAllTracesW [NTDLL.@]
|
|
*
|
|
* Query information for started event trace sessions
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwQueryAllTracesW( 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 [NTDLL.@]
|
|
*
|
|
* See EtwQueryAllTracesA.
|
|
*/
|
|
ULONG WINAPI EtwQueryAllTracesA( PEVENT_TRACE_PROPERTIES * parray, ULONG arraycount, PULONG psessioncount )
|
|
{
|
|
FIXME("(%p, %d, %p) stub\n", parray, arraycount, psessioncount);
|
|
|
|
if (psessioncount) *psessioncount = 0;
|
|
return ERROR_SUCCESS;
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwFlushTraceA [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwFlushTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceA( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_FLUSH );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwFlushTraceW [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwFlushTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceW( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_FLUSH );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwQueryTraceA [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwQueryTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceA( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_QUERY );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwQueryTraceW [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwQueryTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceW( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_QUERY );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwStopTraceA [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwStopTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceA( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_STOP );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwStopTraceW [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwStopTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceW( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_STOP );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwUpdateTraceA [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwUpdateTraceA( TRACEHANDLE hSession, LPCSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceA( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_UPDATE );
|
|
}
|
|
|
|
/******************************************************************************
|
|
* EtwUpdateTraceW [NTDLL.@]
|
|
*
|
|
*/
|
|
ULONG WINAPI EtwUpdateTraceW( TRACEHANDLE hSession, LPCWSTR SessionName, PEVENT_TRACE_PROPERTIES Properties )
|
|
{
|
|
return EtwControlTraceW( hSession, SessionName, Properties, EVENT_TRACE_CONTROL_UPDATE );
|
|
}
|
|
|
|
/* EOF */
|