Commit 39d4f9d8 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

ntoskrnl.exe: Implement KeBugCheck and KeBugCheckEx.

parent 6ad6c1ff
...@@ -3182,6 +3182,23 @@ BOOLEAN WINAPI KeAreApcsDisabled(void) ...@@ -3182,6 +3182,23 @@ BOOLEAN WINAPI KeAreApcsDisabled(void)
} }
/*********************************************************************** /***********************************************************************
* KeBugCheck (NTOSKRNL.@)
*/
void WINAPI KeBugCheck(ULONG code)
{
KeBugCheckEx(code, 0, 0, 0, 0);
}
/***********************************************************************
* KeBugCheckEx (NTOSKRNL.@)
*/
void WINAPI KeBugCheckEx(ULONG code, ULONG_PTR param1, ULONG_PTR param2, ULONG_PTR param3, ULONG_PTR param4)
{
ERR( "%x %lx %lx %lx %lx\n", code, param1, param2, param3, param4 );
ExitProcess( code );
}
/***********************************************************************
* ProbeForRead (NTOSKRNL.EXE.@) * ProbeForRead (NTOSKRNL.EXE.@)
*/ */
void WINAPI ProbeForRead(void *address, SIZE_T length, ULONG alignment) void WINAPI ProbeForRead(void *address, SIZE_T length, ULONG alignment)
......
...@@ -525,8 +525,8 @@ ...@@ -525,8 +525,8 @@
@ stub KeAddSystemServiceTable @ stub KeAddSystemServiceTable
@ stdcall KeAreApcsDisabled() @ stdcall KeAreApcsDisabled()
@ stub KeAttachProcess @ stub KeAttachProcess
@ stub KeBugCheck @ stdcall KeBugCheck(long)
@ stub KeBugCheckEx @ stdcall KeBugCheckEx(long long long long long)
@ stdcall KeCancelTimer(ptr) @ stdcall KeCancelTimer(ptr)
@ stub KeCapturePersistentThreadState @ stub KeCapturePersistentThreadState
@ stdcall KeClearEvent(ptr) @ stdcall KeClearEvent(ptr)
......
...@@ -217,6 +217,7 @@ NTSTATUS WINAPI IoQueryDeviceDescription(PINTERFACE_TYPE,PULONG,PCONFIGURATION_ ...@@ -217,6 +217,7 @@ NTSTATUS WINAPI IoQueryDeviceDescription(PINTERFACE_TYPE,PULONG,PCONFIGURATION_
void WINAPI IoRegisterDriverReinitialization(PDRIVER_OBJECT,PDRIVER_REINITIALIZE,PVOID); void WINAPI IoRegisterDriverReinitialization(PDRIVER_OBJECT,PDRIVER_REINITIALIZE,PVOID);
NTSTATUS WINAPI IoRegisterShutdownNotification(PDEVICE_OBJECT); NTSTATUS WINAPI IoRegisterShutdownNotification(PDEVICE_OBJECT);
BOOLEAN WINAPI KeAreApcsDisabled(void); BOOLEAN WINAPI KeAreApcsDisabled(void);
void WINAPI DECLSPEC_NORETURN KeBugCheck(ULONG);
NTSTATUS WINAPI KeExpandKernelStackAndCallout(PEXPAND_STACK_CALLOUT,void*,SIZE_T); NTSTATUS WINAPI KeExpandKernelStackAndCallout(PEXPAND_STACK_CALLOUT,void*,SIZE_T);
void WINAPI KeSetTargetProcessorDpc(PRKDPC,CCHAR); void WINAPI KeSetTargetProcessorDpc(PRKDPC,CCHAR);
BOOLEAN WINAPI MmIsAddressValid(void *); BOOLEAN WINAPI MmIsAddressValid(void *);
......
...@@ -1613,6 +1613,7 @@ void WINAPI KeAcquireSpinLock(KSPIN_LOCK*,KIRQL*); ...@@ -1613,6 +1613,7 @@ void WINAPI KeAcquireSpinLock(KSPIN_LOCK*,KIRQL*);
KIRQL WINAPI KeAcquireSpinLockRaiseToDpc(KSPIN_LOCK*); KIRQL WINAPI KeAcquireSpinLockRaiseToDpc(KSPIN_LOCK*);
#endif #endif
void WINAPI KeAcquireSpinLockAtDpcLevel(KSPIN_LOCK*); void WINAPI KeAcquireSpinLockAtDpcLevel(KSPIN_LOCK*);
void WINAPI DECLSPEC_NORETURN KeBugCheckEx(ULONG,ULONG_PTR,ULONG_PTR,ULONG_PTR,ULONG_PTR);
BOOLEAN WINAPI KeCancelTimer(KTIMER*); BOOLEAN WINAPI KeCancelTimer(KTIMER*);
void WINAPI KeClearEvent(PRKEVENT); void WINAPI KeClearEvent(PRKEVENT);
NTSTATUS WINAPI KeDelayExecutionThread(KPROCESSOR_MODE,BOOLEAN,LARGE_INTEGER*); NTSTATUS WINAPI KeDelayExecutionThread(KPROCESSOR_MODE,BOOLEAN,LARGE_INTEGER*);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment