diff --git a/reactos/include/ndk/rtltypes.h b/reactos/include/ndk/rtltypes.h index a04bddc470b..ae42d88b59b 100644 --- a/reactos/include/ndk/rtltypes.h +++ b/reactos/include/ndk/rtltypes.h @@ -834,6 +834,27 @@ typedef struct _UNICODE_PREFIX_TABLE PUNICODE_PREFIX_TABLE_ENTRY LastNextEntry; } UNICODE_PREFIX_TABLE, *PUNICODE_PREFIX_TABLE; +#ifdef NTOS_MODE_USER +// +// Pfx* routines' table structures +// +typedef struct _PREFIX_TABLE_ENTRY +{ + CSHORT NodeTypeCode; + CSHORT NameLength; + struct _PREFIX_TABLE_ENTRY *NextPrefixTree; + RTL_SPLAY_LINKS Links; + PSTRING Prefix; +} PREFIX_TABLE_ENTRY, *PPREFIX_TABLE_ENTRY; + +typedef struct _PREFIX_TABLE +{ + CSHORT NodeTypeCode; + CSHORT NameLength; + PPREFIX_TABLE_ENTRY NextPrefixTree; +} PREFIX_TABLE, *PPREFIX_TABLE; +#endif + // // Time Structure for RTL Time calls // @@ -1607,6 +1628,12 @@ typedef struct _STACK_TRACE_DATABASE RTL_CRITICAL_SECTION CriticalSection; } STACK_TRACE_DATABASE, *PSTACK_TRACE_DATABASE; +// +// Trace Database +// + +typedef ULONG (NTAPI *RTL_TRACE_HASH_FUNCTION) (ULONG Count, PVOID *Trace); + typedef struct _RTL_TRACE_BLOCK { ULONG Magic; @@ -1619,6 +1646,50 @@ typedef struct _RTL_TRACE_BLOCK PVOID *Trace; } RTL_TRACE_BLOCK, *PRTL_TRACE_BLOCK; +typedef struct _RTL_TRACE_DATABASE +{ + ULONG Magic; + ULONG Flags; + ULONG Tag; + struct _RTL_TRACE_SEGMENT *SegmentList; + SIZE_T MaximumSize; + SIZE_T CurrentSize; + PVOID Owner; +#ifdef NTOS_MODE_USER + RTL_CRITICAL_SECTION Lock; +#else + union + { + KSPIN_LOCK SpinLock; + FAST_MUTEX FastMutex; + } u; +#endif + ULONG NoOfBuckets; + struct _RTL_TRACE_BLOCK **Buckets; + RTL_TRACE_HASH_FUNCTION HashFunction; + SIZE_T NoOfTraces; + SIZE_T NoOfHits; + ULONG HashCounter[16]; +} RTL_TRACE_DATABASE, *PRTL_TRACE_DATABASE; + +typedef struct _RTL_TRACE_SEGMENT +{ + ULONG Magic; + struct _RTL_TRACE_DATABASE *Database; + struct _RTL_TRACE_SEGMENT *NextSegment; + SIZE_T TotalSize; + PCHAR SegmentStart; + PCHAR SegmentEnd; + PCHAR SegmentFree; +} RTL_TRACE_SEGMENT, *PRTL_TRACE_SEGMENT; + +typedef struct _RTL_TRACE_ENUMERATE +{ + struct _RTL_TRACE_DATABASE *Database; + ULONG Index; + struct _RTL_TRACE_BLOCK *Block; +} RTL_TRACE_ENUMERATE, * PRTL_TRACE_ENUMERATE; + // // Auto-Managed Rtl* String Buffer // diff --git a/reactos/lib/rtl/CMakeLists.txt b/reactos/lib/rtl/CMakeLists.txt index 20967820135..5c4cbe7eb8f 100644 --- a/reactos/lib/rtl/CMakeLists.txt +++ b/reactos/lib/rtl/CMakeLists.txt @@ -42,6 +42,7 @@ list(APPEND SOURCE nls.c path.c ppb.c + prefix.c priv.c process.c propvar.c @@ -61,6 +62,7 @@ list(APPEND SOURCE time.c timezone.c timerqueue.c + trace.c unicode.c unicodeprefix.c vectoreh.c diff --git a/reactos/lib/rtl/prefix.c b/reactos/lib/rtl/prefix.c new file mode 100644 index 00000000000..eabbe8988db --- /dev/null +++ b/reactos/lib/rtl/prefix.c @@ -0,0 +1,47 @@ +/* + * PROJECT: ReactOS Run-Time Library + * LICENSE: BSD - See COPYING.ARM in the top level directory + * PURPOSE: Rtl Prefix Routines + */ + +/* INCLUDES *******************************************************************/ + +#include +#define NDEBUG +#include + +/* FUNCTIONS ******************************************************************/ + +VOID +NTAPI +PfxInitialize(IN PPREFIX_TABLE PrefixTable) +{ + UNIMPLEMENTED; +} + +BOOLEAN +NTAPI +PfxInsertPrefix(IN PPREFIX_TABLE PrefixTable, + IN PSTRING Prefix, + IN PPREFIX_TABLE_ENTRY PrefixTableEntry) +{ + UNIMPLEMENTED; + return FALSE; +} + +VOID +NTAPI +PfxRemovePrefix(IN PPREFIX_TABLE PrefixTable, + IN PPREFIX_TABLE_ENTRY PrefixTableEntry) +{ + UNIMPLEMENTED; +} + +PPREFIX_TABLE_ENTRY +NTAPI +PfxFindPrefix(IN PPREFIX_TABLE PrefixTable, + IN PSTRING FullName) +{ + UNIMPLEMENTED; + return FALSE; +} diff --git a/reactos/lib/rtl/trace.c b/reactos/lib/rtl/trace.c new file mode 100644 index 00000000000..3979a502855 --- /dev/null +++ b/reactos/lib/rtl/trace.c @@ -0,0 +1,90 @@ +/* + * PROJECT: ReactOS Run-Time Library + * LICENSE: BSD - See COPYING.ARM in the top level directory + * PURPOSE: Rtl Trace Routines + */ + +/* INCLUDES *******************************************************************/ + +#include +#define NDEBUG +#include + +/* FUNCTIONS ******************************************************************/ + +BOOLEAN +NTAPI +RtlTraceDatabaseAdd(IN PRTL_TRACE_DATABASE Database, + IN ULONG Count, + IN PVOID *Trace, + OUT OPTIONAL PRTL_TRACE_BLOCK *TraceBlock) +{ + UNIMPLEMENTED; + return FALSE; +} + +PRTL_TRACE_DATABASE +NTAPI +RtlTraceDatabaseCreate(IN ULONG Buckets, + IN OPTIONAL SIZE_T MaximumSize, + IN ULONG Flags, + IN ULONG Tag, + IN OPTIONAL RTL_TRACE_HASH_FUNCTION HashFunction) +{ + UNIMPLEMENTED; + return NULL; +} + +BOOLEAN +NTAPI +RtlTraceDatabaseDestroy(IN PRTL_TRACE_DATABASE Database) +{ + UNIMPLEMENTED; + return FALSE; +} + +BOOLEAN +NTAPI +RtlTraceDatabaseEnumerate(IN PRTL_TRACE_DATABASE Database, + IN PRTL_TRACE_ENUMERATE TraceEnumerate, + IN OUT PRTL_TRACE_BLOCK *TraceBlock) +{ + UNIMPLEMENTED; + return FALSE; +} + + +BOOLEAN +NTAPI +RtlTraceDatabaseFind(IN PRTL_TRACE_DATABASE Database, + IN ULONG Count, + IN PVOID *Trace, + OUT OPTIONAL PRTL_TRACE_BLOCK *TraceBlock) +{ + UNIMPLEMENTED; + return FALSE; +} + +BOOLEAN +NTAPI +RtlTraceDatabaseLock(IN PRTL_TRACE_DATABASE Database) +{ + UNIMPLEMENTED; + return FALSE; +} + +BOOLEAN +NTAPI +RtlTraceDatabaseUnlock(IN PRTL_TRACE_DATABASE Database) +{ + UNIMPLEMENTED; + return FALSE; +} + +BOOLEAN +NTAPI +RtlTraceDatabaseValidate(IN PRTL_TRACE_DATABASE Database) +{ + UNIMPLEMENTED; + return FALSE; +} diff --git a/reactos/ntoskrnl/ex/xipdisp.c b/reactos/ntoskrnl/ex/xipdisp.c index c3249f43383..1fe77250974 100644 --- a/reactos/ntoskrnl/ex/xipdisp.c +++ b/reactos/ntoskrnl/ex/xipdisp.c @@ -15,6 +15,16 @@ /* FUNCTIONS *****************************************************************/ +NTSTATUS +NTAPI +XIPDispatch(IN ULONG DispatchCode, + OUT PVOID Buffer, + IN ULONG BufferSize) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + PMEMORY_ALLOCATION_DESCRIPTOR NTAPI INIT_FUNCTION diff --git a/reactos/ntoskrnl/ke/i386/abios.c b/reactos/ntoskrnl/ke/i386/abios.c index 0f05043c597..10cbf438cc9 100644 --- a/reactos/ntoskrnl/ke/i386/abios.c +++ b/reactos/ntoskrnl/ke/i386/abios.c @@ -24,7 +24,7 @@ KeI386FlatToGdtSelector(IN ULONG Base, IN USHORT Selector) { UNIMPLEMENTED; - return 0; + return STATUS_NOT_IMPLEMENTED; } /* @@ -36,7 +36,7 @@ KeI386ReleaseGdtSelectors(OUT PULONG SelArray, IN ULONG NumOfSelectors) { UNIMPLEMENTED; - return 0; + return STATUS_NOT_IMPLEMENTED; } /* @@ -46,9 +46,68 @@ NTSTATUS NTAPI KeI386AllocateGdtSelectors(OUT PULONG SelArray, IN ULONG NumOfSelectors) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +KeI386SetGdtSelector(IN ULONG Selector, + IN PKGDTENTRY GdtValue) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +KeI386AbiosCall(IN USHORT CallId, + IN PDRIVER_OBJECT DriverObject, + IN PULONG RequestBlock, + IN USHORT EntryPoint) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +KeI386GetLid(IN USHORT DeviceId, + IN USHORT RelativeLid, + IN BOOLEAN SharedLid, + IN PDRIVER_OBJECT DriverObject, + OUT PUSHORT LogicalId) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +KeI386ReleaseLid(IN USHORT LogicalId, + IN PDRIVER_OBJECT DriverObject) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +USHORT +NTAPI +KeI386Call16BitCStyleFunction(IN ULONG EntryOffset, + IN ULONG EntrySelector, + IN PULONG Parameters, + IN ULONG Size) { UNIMPLEMENTED; return 0; } +VOID +NTAPI +KeI386Call16BitFunction(IN OUT PCONTEXT Context) +{ + UNIMPLEMENTED; +} + /* EOF */ diff --git a/reactos/ntoskrnl/ke/i386/traphdlr.c b/reactos/ntoskrnl/ke/i386/traphdlr.c index d3b041e2f1c..b1f7cf3b0de 100644 --- a/reactos/ntoskrnl/ke/i386/traphdlr.c +++ b/reactos/ntoskrnl/ke/i386/traphdlr.c @@ -1740,6 +1740,13 @@ ExitCall: KiServiceExit(TrapFrame, Result); } +VOID +FASTCALL +KiCheckForSListAddress(IN PKTRAP_FRAME TrapFrame) +{ + UNIMPLEMENTED; +} + /* * @implemented */ diff --git a/reactos/ntoskrnl/ke/wait.c b/reactos/ntoskrnl/ke/wait.c index c7bfa3eb458..a11e6ed7d3f 100644 --- a/reactos/ntoskrnl/ke/wait.c +++ b/reactos/ntoskrnl/ke/wait.c @@ -267,6 +267,14 @@ Quickie: /* PUBLIC FUNCTIONS **********************************************************/ +BOOLEAN +NTAPI +KeIsWaitListEmpty(IN PVOID Object) +{ + UNIMPLEMENTED; + return FALSE; +} + /* * @implemented */ diff --git a/reactos/ntoskrnl/mm/ARM3/iosup.c b/reactos/ntoskrnl/mm/ARM3/iosup.c index 9d5d60dc99a..08a8ba261d0 100644 --- a/reactos/ntoskrnl/mm/ARM3/iosup.c +++ b/reactos/ntoskrnl/mm/ARM3/iosup.c @@ -265,4 +265,13 @@ MmUnmapVideoDisplay(IN PVOID BaseAddress, MmUnmapIoSpace(BaseAddress, NumberOfBytes); } +LOGICAL +NTAPI +MmIsIoSpaceActive(IN PHYSICAL_ADDRESS StartAddress, + IN SIZE_T NumberOfBytes) +{ + UNIMPLEMENTED; + return FALSE; +} + /* EOF */ diff --git a/reactos/ntoskrnl/mm/ARM3/mmsup.c b/reactos/ntoskrnl/mm/ARM3/mmsup.c index 4238bf508d3..59e13bd4ef4 100644 --- a/reactos/ntoskrnl/mm/ARM3/mmsup.c +++ b/reactos/ntoskrnl/mm/ARM3/mmsup.c @@ -260,4 +260,12 @@ MmQuerySystemSize(VOID) return MmSystemSize; } +NTSTATUS +NTAPI +MmCreateMirror(VOID) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + /* EOF */ diff --git a/reactos/ntoskrnl/ntoskrnl.spec b/reactos/ntoskrnl/ntoskrnl.spec index d2087d8f234..50c69883c8b 100644 --- a/reactos/ntoskrnl/ntoskrnl.spec +++ b/reactos/ntoskrnl/ntoskrnl.spec @@ -590,16 +590,16 @@ @ stdcall KeGetCurrentThread() @ stdcall KeGetPreviousMode() @ stdcall KeGetRecommendedSharedDataAlignment() -; -arch=i386 KeI386AbiosCall +@ stdcall -arch=i386 KeI386AbiosCall(long ptr ptr long) @ stdcall -arch=i386 KeI386AllocateGdtSelectors(ptr long) -; -arch=i386 KeI386Call16BitCStyleFunction -; -arch=i386 KeI386Call16BitFunction +@ stdcall -arch=i386 KeI386Call16BitCStyleFunction(long long ptr long) +@ stdcall -arch=i386 KeI386Call16BitFunction(ptr) @ stdcall -arch=i386 KeI386FlatToGdtSelector(long long long) -; -arch=i386 KeI386GetLid +@ stdcall -arch=i386 KeI386GetLid(long long long ptr ptr) @ extern -arch=i386 KeI386MachineType @ stdcall -arch=i386 KeI386ReleaseGdtSelectors(ptr long) -; -arch=i386 KeI386ReleaseLid -; -arch=i386 KeI386SetGdtSelector +@ stdcall -arch=i386 KeI386ReleaseLid(long ptr) +@ stdcall -arch=i386 KeI386SetGdtSelector(long ptr) @ stdcall KeInitializeApc(ptr ptr long ptr ptr ptr long ptr) @ stdcall KeInitializeCrashDumpHeader(long long ptr long ptr) @ stdcall KeInitializeDeviceQueue(ptr) @@ -625,7 +625,7 @@ @ stdcall KeIpiGenericCall(ptr ptr) @ stdcall KeIsAttachedProcess() @ stdcall -arch=i386,arm KeIsExecutingDpc() -;KeIsWaitListEmpty +@ stdcall KeIsWaitListEmpty(ptr) ;@ cdecl -arch=x86_64 KeLastBranchMSR() @ stdcall KeLeaveCriticalRegion() _KeLeaveCriticalRegion @ stdcall KeLeaveGuardedRegion() _KeLeaveGuardedRegion @@ -725,7 +725,7 @@ @ fastcall -arch=i386,arm KiAcquireSpinLock(ptr) @ extern KiBugCheckData @ stdcall KiCheckForKernelApcDelivery() -;-arch=i386,arm KiCheckForSListAddress +@ fastcall -arch=i386,arm KiCheckForSListAddress(ptr) @ stdcall -arch=i386 KiCoprocessorError() ;@ cdecl -arch=x86_64 KiCpuId() @ stdcall -arch=i386,arm KiDeliverApc(long ptr ptr) @@ -763,7 +763,7 @@ @ stdcall MmCanFileBeTruncated(ptr ptr) @ stdcall MmCommitSessionMappedView(ptr ptr) @ stdcall MmCreateMdl(ptr ptr long) -;MmCreateMirror +@ stdcall MmCreateMirror() @ stdcall MmCreateSection(ptr long ptr ptr long long ptr ptr) @ stdcall MmDisableModifiedWriteOfSection(long) @ stdcall MmFlushImageSection(ptr long) @@ -781,7 +781,7 @@ @ extern MmHighestUserAddress @ stdcall MmIsAddressValid(ptr) @ stdcall MmIsDriverVerifying(ptr) -;MmIsIoSpaceActive +@ stdcall MmIsIoSpaceActive(long long ptr) @ stdcall MmIsNonPagedSystemAddressValid(ptr) @ stdcall MmIsRecursiveIoFault() @ stdcall MmIsThisAnNtAsSystem() @@ -926,10 +926,10 @@ @ stdcall ObSetSecurityObjectByPointer(ptr long ptr) @ fastcall ObfDereferenceObject(ptr) @ fastcall ObfReferenceObject(ptr) -;PfxFindPrefix -;PfxInitialize -;PfxInsertPrefix -;PfxRemovePrefix +@ stdcall PfxFindPrefix(ptr ptr) +@ stdcall PfxInitialize(ptr) +@ stdcall PfxInsertPrefix(ptr ptr ptr) +@ stdcall PfxRemovePrefix(ptr ptr) @ stdcall PoCallDriver(ptr ptr) @ stdcall PoCancelDeviceNotify(ptr) @ stdcall PoQueueShutdownWorkItem(ptr) @@ -1040,7 +1040,7 @@ @ stdcall PsSetThreadWin32Thread(ptr ptr ptr) @ stdcall PsTerminateSystemThread(long) @ extern PsThreadType -;PsWrapApcWow64Thread +@ stdcall PsWrapApcWow64Thread(ptr ptr) @ stdcall -arch=i386,arm READ_REGISTER_BUFFER_UCHAR(ptr ptr long) @ stdcall -arch=i386,arm READ_REGISTER_BUFFER_ULONG(ptr ptr long) @ stdcall -arch=i386,arm READ_REGISTER_BUFFER_USHORT(ptr ptr long) @@ -1290,14 +1290,14 @@ @ stdcall RtlTimeToSecondsSince1970(ptr ptr) @ stdcall RtlTimeToSecondsSince1980(ptr ptr) @ stdcall RtlTimeToTimeFields(ptr ptr) -;RtlTraceDatabaseAdd -;RtlTraceDatabaseCreate -;RtlTraceDatabaseDestroy -;RtlTraceDatabaseEnumerate -;RtlTraceDatabaseFind -;RtlTraceDatabaseLock -;RtlTraceDatabaseUnlock -;RtlTraceDatabaseValidate +@ stdcall RtlTraceDatabaseAdd(ptr long ptr ptr) +@ stdcall RtlTraceDatabaseCreate(long ptr long long ptr) +@ stdcall RtlTraceDatabaseDestroy(ptr) +@ stdcall RtlTraceDatabaseEnumerate(ptr ptr ptr) +@ stdcall RtlTraceDatabaseFind(ptr long ptr ptr) +@ stdcall RtlTraceDatabaseLock(ptr) +@ stdcall RtlTraceDatabaseUnlock(ptr) +@ stdcall RtlTraceDatabaseValidate(ptr) @ fastcall -arch=i386,arm RtlUlongByteSwap(long) @ fastcall -arch=i386,arm RtlUlonglongByteSwap(long long) @ stdcall RtlUnicodeStringToAnsiSize(ptr) RtlxUnicodeStringToAnsiSize @@ -1394,7 +1394,7 @@ @ stdcall SeValidSecurityDescriptor(long ptr) @ stdcall VerSetConditionMask(long long long long) @ cdecl VfFailDeviceNode(ptr long long long ptr ptr ptr) -;VfFailDriver +@ cdecl VfFailDriver(long long long ptr ptr ptr) @ cdecl VfFailSystemBIOS(long long long ptr ptr ptr) @ stdcall VfIsVerificationEnabled(long ptr) @ stdcall -arch=i386,arm WRITE_REGISTER_BUFFER_UCHAR(ptr ptr long) @@ -1403,17 +1403,17 @@ @ stdcall -arch=i386,arm WRITE_REGISTER_UCHAR(ptr long) @ stdcall -arch=i386,arm WRITE_REGISTER_ULONG(ptr long) @ stdcall -arch=i386,arm WRITE_REGISTER_USHORT(ptr long) -;WmiFlushTrace -;WmiGetClock -;WmiQueryTrace +@ stdcall WmiFlushTrace(ptr) +@ stdcall WmiGetClock(long ptr) +@ stdcall WmiQueryTrace(ptr) @ stdcall WmiQueryTraceInformation(long ptr long ptr ptr) -;WmiStartTrace -;WmiStopTrace -;WmiTraceFastEvent +@ stdcall WmiStartTrace(ptr) +@ stdcall WmiStopTrace(ptr) +@ stdcall WmiTraceFastEvent(ptr) @ cdecl WmiTraceMessage() @ stdcall WmiTraceMessageVa(double long ptr long long) -;WmiUpdateTrace -;XIPDispatch +@ stdcall WmiUpdateTrace(ptr) +@ stdcall XIPDispatch(long ptr long) @ stdcall ZwAccessCheckAndAuditAlarm(ptr ptr ptr ptr ptr long ptr long ptr ptr ptr) @ stdcall ZwAddBootEntry(ptr long) @ stdcall ZwAddDriverEntry(ptr long) @@ -1542,9 +1542,9 @@ @ cdecl -arch=arm __jump_unwind() @ cdecl -arch=x86_64 __chkstk() ;@ cdecl -arch=x86_64 __misaligned_access() -;@ cdecl -arch=i386 _CIcos -;@ cdecl -arch=i386 _CIsin -;@ cdecl -arch=i386 _CIsqrt +@ cdecl -arch=i386 _CIcos() +@ cdecl -arch=i386 _CIsin() +@ cdecl -arch=i386 _CIsqrt() @ cdecl -arch=i386,arm _abnormal_termination() @ cdecl -arch=i386 _alldiv() @ cdecl -arch=i386 _alldvrm() diff --git a/reactos/ntoskrnl/ps/thread.c b/reactos/ntoskrnl/ps/thread.c index 07fb0d0af87..571c2e0458e 100644 --- a/reactos/ntoskrnl/ps/thread.c +++ b/reactos/ntoskrnl/ps/thread.c @@ -927,6 +927,15 @@ PsSetThreadWin32Thread( } } +NTSTATUS +NTAPI +PsWrapApcWow64Thread(IN OUT PVOID *ApcContext, + IN OUT PVOID *ApcRoutine) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + NTSTATUS NTAPI NtCreateThread(OUT PHANDLE ThreadHandle, diff --git a/reactos/ntoskrnl/vf/driver.c b/reactos/ntoskrnl/vf/driver.c index 37ba2ecbf99..cd30d00ad95 100644 --- a/reactos/ntoskrnl/vf/driver.c +++ b/reactos/ntoskrnl/vf/driver.c @@ -30,6 +30,7 @@ VfIsVerificationEnabled(IN VF_OBJECT_TYPE VfObjectType, * @unimplemented */ VOID +__cdecl VfFailDeviceNode(IN PDEVICE_OBJECT PhysicalDeviceObject, IN ULONG BugCheckMajorCode, IN ULONG BugCheckMinorCode, @@ -46,6 +47,7 @@ VfFailDeviceNode(IN PDEVICE_OBJECT PhysicalDeviceObject, * @unimplemented */ VOID +__cdecl VfFailSystemBIOS(IN ULONG BugCheckMajorCode, IN ULONG BugCheckMinorCode, IN VF_FAILURE_CLASS FailureClass, @@ -57,4 +59,17 @@ VfFailSystemBIOS(IN ULONG BugCheckMajorCode, UNIMPLEMENTED; } +VOID +__cdecl +VfFailDriver(IN ULONG BugCheckMajorCode, + IN ULONG BugCheckMinorCode, + IN VF_FAILURE_CLASS FailureClass, + IN OUT PULONG AssertionControl, + IN PSTR DebuggerMessageText, + IN PSTR ParameterFormatString, + ...) +{ + UNIMPLEMENTED; +} + /* EOF */ diff --git a/reactos/ntoskrnl/wmi/wmi.c b/reactos/ntoskrnl/wmi/wmi.c index 2662278f42c..25b424eb459 100644 --- a/reactos/ntoskrnl/wmi/wmi.c +++ b/reactos/ntoskrnl/wmi/wmi.c @@ -19,6 +19,18 @@ #define NDEBUG #include +typedef PVOID PWMI_LOGGER_INFORMATION; // FIXME + +typedef enum _WMI_CLOCK_TYPE +{ + WMICT_DEFAULT, + WMICT_SYSTEMTIME, + WMICT_PERFCOUNTER, + WMICT_PROCESS, + WMICT_THREAD, + WMICT_CPUCYCLE +} WMI_CLOCK_TYPE; + /* FUNCTIONS *****************************************************************/ BOOLEAN @@ -349,6 +361,63 @@ WmiTraceMessageVa(IN TRACEHANDLE LoggerHandle, return STATUS_NOT_IMPLEMENTED; } +NTSTATUS +NTAPI +WmiFlushTrace(IN OUT PWMI_LOGGER_INFORMATION LoggerInfo) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +LONG64 +FASTCALL +WmiGetClock(IN WMI_CLOCK_TYPE ClockType, + IN PVOID Context) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +WmiQueryTrace(IN OUT PWMI_LOGGER_INFORMATION LoggerInfo) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +WmiStartTrace(IN OUT PWMI_LOGGER_INFORMATION LoggerInfo) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +WmiStopTrace(IN PWMI_LOGGER_INFORMATION LoggerInfo) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +FASTCALL +WmiTraceFastEvent(IN PWNODE_HEADER Wnode) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + +NTSTATUS +NTAPI +WmiUpdateTrace(IN OUT PWMI_LOGGER_INFORMATION LoggerInfo) +{ + UNIMPLEMENTED; + return STATUS_NOT_IMPLEMENTED; +} + /* * @unimplemented */