mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-30 04:13:33 +00:00
* drivers/bus/acpi/ospm/osl.c (acpi_os_readable, acpi_os_writable): Match prototypes. * include/ascii.h (AbortSystemShutdownA): Correct prototype. * include/debug.h (assert): Wrap in #ifndef assert. * include/funcs.h (AbortSystemShutdown): Remove duplicate prototype. * include/ddk/rtltypes.h: Move ... * include/ntos/rtltypes.h: ... here. * include/ddk/rtl.h: Move ... * include/ntos/rtl.h: ... here. * include/ddk/zwtypes.h: Move ... * include/ntos/zwtypes.h: ... here. * include/ddk/zw.h: Move ... * include/ntos/zw.h: ... here. | include/ddk/cmfuncs.h: Remove file; Move NtCreateKey to ntos/zw.h. * include/ntos.h: #include ntos/rtltypes.h, ntos/rtl.h, ntos/zwtypes.h, and ntos/zw.h. * include/unicode.h: (AbortSystemShutdownW): Correct prototype. * include/ddk/ntddk.h: Include headers at new location; Don't include removed files. * include/defines.h: Wrap definitions in w32api in #ifndef __USE_W32API. * include/ntos/zwtypes.h: Ditto. * include/napi/lpc.h: Ditto. * include/napi/shared_data.h: Ditto. * include/napi/teb.h: Ditto. * include/napi/types.h: Ditto. * include/ntdll/ldr.h: Ditto. * include/ntdll/rtl.h: Ditto. * include/ntos/console.h: Ditto. * include/ntos/disk.h: Ditto. * include/ntos/except.h: Ditto. * include/ntos/file.h: Ditto. * include/ntos/gditypes.h: Ditto. * include/ntos/heap.h: Ditto. * include/ntos/keyboard.h: Ditto. * include/ntos/mm.h: Ditto. * include/ntos/ntdef.h: Ditto. * include/ntos/ps.h: Ditto. * include/ntos/registry.h: Ditto. * include/ntos/security.h: Ditto. * include/ntos/synch.h: Ditto. * include/ntos/time.h: Ditto. * include/ntos/types.h: Ditto. * include/ntos/port.h: Ditto. * lib/advapi32/misc/shutdown.c (AbortSystemShutdownW, AbortSystemShutdownA): Correct prototype. * lib/advapi32/reg/reg.c: #include ntos.h. * lib/advapi32/sec/misc.c: Ditto. * lib/advapi32/sec/sid.c: Ditto. * lib/advapi32/service/sctrl.c: Ditto. * lib/advapi32/token/token.c: Ditto. * lib/kernel32/misc/dllmain.c: Ditto. * ntoskrnl/ex/napi.c: Ditto. * ntoskrnl/rtl/i386/exception.c: Ditto. * lib/advapi32/sec/ac.c: Ditto. (FindFirstFreeAce, GetAce): Change PACE* to PACE_HEADER*. * lib/advapi32/service/scm.c (EnumServicesStatusExA, EnumServicesStatusExW, QueryServiceStatusEx): Correct prototype. * lib/ntdll/rtl/ppb.c (RtlDestroyProcessParameters): Match prototype. * ntoskrnl/dbg/errinfo.c (DbgGetErrorText): Use %08x, not %08lx. * ntoskrnl/io/arcname.c (IoCreateSystemRootLink): Use %u, not %lu. * ntoskrnl/ke/main.c (ExpInitializeExecutive): Ditto. * (_main): Use %d, not %ld. * ntoskrnl/include/internal/i386/ke.h: Add #pragma GCC system_header. * include/ddk/ntdef.h (NTSYSAPI, NTAPI, NTKERNELAPI): Define to STDCALL; Check if already defined. * include/base.h (STDCALL, CDECL, CALLBACK, PASCAL): Move to ntos/types.h. svn path=/trunk/; revision=3755
101 lines
3.1 KiB
C
101 lines
3.1 KiB
C
/*
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
* PROJECT: ReactOS kernel
|
|
* FILE: include/internal/debug.h
|
|
* PURPOSE: Useful debugging macros
|
|
* PROGRAMMER: David Welch ([email protected])
|
|
* UPDATE HISTORY:
|
|
* 28/05/98: Created
|
|
*/
|
|
|
|
/*
|
|
* NOTE: Define NDEBUG before including this header to disable debugging
|
|
* macros
|
|
*/
|
|
|
|
#ifndef __INTERNAL_DEBUG
|
|
#define __INTERNAL_DEBUG
|
|
|
|
#define UNIMPLEMENTED do {DbgPrint("%s at %s:%d is unimplemented, have a nice day\n",__FUNCTION__,__FILE__,__LINE__); for(;;); } while(0);
|
|
|
|
/* FIXME: should probably remove this later */
|
|
#if !defined(CHECKED) && !defined(NDEBUG)
|
|
#define CHECKED
|
|
#endif
|
|
|
|
#ifndef assert
|
|
#ifndef NASSERT
|
|
#define assert(x) if (!(x)) {RtlAssert("#x",__FILE__,__LINE__, ""); }
|
|
#else
|
|
#define assert(x)
|
|
#endif
|
|
#endif
|
|
|
|
#define DPRINT1(args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(args); } while(0);
|
|
#define CHECKPOINT1 do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0);
|
|
|
|
extern unsigned int old_idt[256][2];
|
|
//extern unsigned int idt;
|
|
extern unsigned int old_idt_valid;
|
|
|
|
#ifdef __NTOSKRNL__
|
|
//#define DPRINT_CHECKS ExAllocatePool(NonPagedPool,0); assert(old_idt_valid || (!memcmp(old_idt,KiIdt,256*2)));
|
|
//#define DPRINT_CHECKS ExAllocatePool(NonPagedPool,0);
|
|
#define DPRINT_CHECKS
|
|
#else
|
|
#define DPRINT_CHECKS
|
|
#endif
|
|
|
|
#ifndef NDEBUG
|
|
#define OLD_DPRINT(fmt,args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(fmt,args); } while(0);
|
|
#define DPRINT(args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(args); DPRINT_CHECKS } while(0);
|
|
#define CHECKPOINT do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0);
|
|
#else
|
|
//#define DPRINT(args...) do { DPRINT_CHECKS } while (0);
|
|
#define DPRINT(args...)
|
|
#define OLD_DPRINT(args...)
|
|
#define CHECKPOINT
|
|
#endif /* NDEBUG */
|
|
|
|
/*
|
|
* FUNCTION: Assert a maximum value for the current irql
|
|
* ARGUMENTS:
|
|
* x = Maximum irql
|
|
*/
|
|
#define ASSERT_IRQL(x) assert(KeGetCurrentIrql()<=(x))
|
|
#define assert_irql(x) assert(KeGetCurrentIrql()<=(x))
|
|
|
|
#define HBP_EXECUTE (0)
|
|
#define HBP_WRITE (1)
|
|
#define HBP_READWRITE (3)
|
|
|
|
#define HBP_BYTE (0)
|
|
#define HBP_WORD (1)
|
|
#define HBP_DWORD (3)
|
|
|
|
/*
|
|
* FUNCTION: Sets a hardware breakpoint
|
|
* ARGUMENTS:
|
|
* i = breakpoint to set (0 to 3)
|
|
* addr = linear address to break on
|
|
* type = Type of access to break on
|
|
* len = length of the variable to watch
|
|
* NOTES:
|
|
* The variable to watch must be aligned to its length (i.e. a dword
|
|
* breakpoint must be aligned to a dword boundary)
|
|
*
|
|
* A fatal exception will be generated on the access to the variable.
|
|
* It is (at the moment) only really useful for catching undefined
|
|
* pointers if you know the variable effected but not the buggy
|
|
* routine.
|
|
*
|
|
* FIXME: Extend to call out to kernel debugger on breakpoint
|
|
* Add support for I/O breakpoints
|
|
* REFERENCES: See the i386 programmer manual for more details
|
|
*/
|
|
void set_breakpoint(unsigned int i, unsigned int addr, unsigned int type,
|
|
unsigned int len);
|
|
|
|
|
|
#endif /* __INTERNAL_DEBUG */
|