/* * ntdll.dll Event Tracing Functions */ #include #include #include #define NDEBUG #include #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 */