From dd25974e25e593f110e4fa2017010aeb3fe60963 Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Thu, 7 Sep 2006 05:07:34 +0000 Subject: [PATCH] - More MSVC fixes: Additions or changes to headers: FSRTL_PER_FILEOBJECT_CONTEXT, FsRtlAreNamesEqual uses CONST buffers, KiIpiGenericCall + PKPIP_BROADCAST_WORKER, MmPageEntireDriver returns PVOID, Obf(De)referenceObject return LONG_PTR, KeGetPreviousMode is ExGetPreviousMode. KeGetCurrentPrcb is reimplemented in inline, MAX_PATH exposed to drivers. - Changes: STATIC->static. static __inline ->FORCEINLINE. STDCALL -> NTAPI (Some). WORD/DWORD/BYTE -> NT Types. - Kernel bugs fixed: Some string concatenations were broken, some functions had wrong return values. svn path=/trunk/; revision=23941 --- reactos/include/ddk/ntifs.h | 23 ++-- reactos/include/ddk/winddk.h | 25 +++- reactos/include/ndk/i386/ketypes.h | 15 ++- reactos/include/ndk/rtltypes.h | 133 ++++++++++--------- reactos/include/reactos/rosldr.h | 78 +++++------ reactos/ntoskrnl/cc/view.c | 4 +- reactos/ntoskrnl/cm/regobj.c | 2 +- reactos/ntoskrnl/deprecated/irq.c | 4 +- reactos/ntoskrnl/ex/error.c | 4 +- reactos/ntoskrnl/ex/locale.c | 2 +- reactos/ntoskrnl/fs/context.c | 6 +- reactos/ntoskrnl/fs/filelock.c | 2 +- reactos/ntoskrnl/fs/name.c | 6 +- reactos/ntoskrnl/fs/pool.c | 2 + reactos/ntoskrnl/fs/util.c | 8 +- reactos/ntoskrnl/inbv/inbv.c | 4 +- reactos/ntoskrnl/include/internal/cc.h | 2 +- reactos/ntoskrnl/include/internal/debug.h | 5 + reactos/ntoskrnl/include/internal/ex.h | 16 ++- reactos/ntoskrnl/include/internal/ntoskrnl.h | 2 +- reactos/ntoskrnl/include/internal/test.h | 2 +- reactos/ntoskrnl/include/ntoskrnl.h | 6 +- reactos/ntoskrnl/io/iomgr/arcname.c | 8 +- reactos/ntoskrnl/io/iomgr/device.c | 20 +-- reactos/ntoskrnl/io/iomgr/drvrlist.c | 10 +- reactos/ntoskrnl/io/pnpmgr/plugplay.c | 2 +- reactos/ntoskrnl/io/pnpmgr/pnpmgr.c | 2 +- reactos/ntoskrnl/kd/wrappers/bochs.c | 2 +- reactos/ntoskrnl/kd/wrappers/gdbstub.c | 10 +- reactos/ntoskrnl/ke/clock.c | 1 + reactos/ntoskrnl/ke/i386/ldt.c | 2 +- reactos/ntoskrnl/ke/ipi.c | 7 +- reactos/ntoskrnl/ke/kthread.c | 8 +- reactos/ntoskrnl/ldr/loader.c | 18 +-- reactos/ntoskrnl/lpc/create.c | 2 +- reactos/ntoskrnl/mm/anonmem.c | 4 +- reactos/ntoskrnl/mm/drvlck.c | 19 ++- reactos/ntoskrnl/mm/elf.inc.h | 20 +-- reactos/ntoskrnl/mm/mm.c | 14 +- reactos/ntoskrnl/mm/mminit.c | 2 +- reactos/ntoskrnl/mm/ncache.c | 2 +- reactos/ntoskrnl/mm/npool.c | 16 +-- reactos/ntoskrnl/mm/pagefile.c | 6 +- reactos/ntoskrnl/mm/pool.c | 2 +- reactos/ntoskrnl/mm/ppool.c | 6 +- reactos/ntoskrnl/mm/region.c | 4 +- reactos/ntoskrnl/mm/section.c | 30 ++--- reactos/ntoskrnl/mm/virtual.c | 2 +- reactos/ntoskrnl/ntoskrnl.rbuild | 1 + reactos/ntoskrnl/ob/oblife.c | 2 +- reactos/ntoskrnl/ob/obref.c | 17 ++- reactos/ntoskrnl/ps/process.c | 2 +- reactos/ntoskrnl/rtl/libsupp.c | 4 +- reactos/ntoskrnl/rtl/strtok.c | 2 +- reactos/ntoskrnl/se/lsa.c | 58 ++++---- reactos/ntoskrnl/se/sd.c | 6 +- reactos/ntoskrnl/se/token.c | 4 +- reactos/ntoskrnl/vdm/vdmexec.c | 2 +- reactos/ntoskrnl/vdm/vdmmain.c | 2 +- 59 files changed, 357 insertions(+), 313 deletions(-) diff --git a/reactos/include/ddk/ntifs.h b/reactos/include/ddk/ntifs.h index 4ca545d2c26..5cfec2d5d94 100644 --- a/reactos/include/ddk/ntifs.h +++ b/reactos/include/ddk/ntifs.h @@ -28,6 +28,8 @@ #pragma GCC system_header #endif +#define NTKERNELAPI + #include "ntddk.h" #define _NTIFS_INCLUDED_ @@ -43,14 +45,6 @@ extern "C" { #define NTSYSAPI #endif -#ifndef NTKERNELAPI -#if defined(_NTDRIVER_) || defined(_NTDDK_) || defined (_NTIFS_) || defined(_NTHAL_) -#define NTKERNELAPI DECLSPEC_IMPORT -#else -#define NTKERNELAPI -#endif -#endif - #include "csq.h" typedef struct _SE_EXPORTS *PSE_EXPORTS; @@ -1220,6 +1214,13 @@ typedef struct _FSRTL_PER_STREAM_CONTEXT { PFREE_FUNCTION FreeCallback; } FSRTL_PER_STREAM_CONTEXT, *PFSRTL_PER_STREAM_CONTEXT; +typedef struct _FSRTL_PER_FILEOBJECT_CONTEXT +{ + LIST_ENTRY Links; + PVOID OwnerId; + PVOID InstanceId; +} FSRTL_PER_FILEOBJECT_CONTEXT, *PFSRTL_PER_FILEOBJECT_CONTEXT; + #endif /* (VER_PRODUCTBUILD >= 2600) */ typedef struct _BASE_MCB @@ -2298,10 +2299,10 @@ NTKERNELAPI BOOLEAN NTAPI FsRtlAreNamesEqual ( - IN PUNICODE_STRING Name1, - IN PUNICODE_STRING Name2, + IN PCUNICODE_STRING Name1, + IN PCUNICODE_STRING Name2, IN BOOLEAN IgnoreCase, - IN PWCHAR UpcaseTable OPTIONAL + IN PCWCH UpcaseTable OPTIONAL ); #define FsRtlAreThereCurrentFileLocks(FL) ( \ diff --git a/reactos/include/ddk/winddk.h b/reactos/include/ddk/winddk.h index 4dffeee09a2..3d99f011e4a 100644 --- a/reactos/include/ddk/winddk.h +++ b/reactos/include/ddk/winddk.h @@ -40,11 +40,8 @@ extern "C" { #define DDKCDECLAPI __cdecl /* FIXME: REMOVE THIS UNCOMPATIBLE CRUFT!!! */ -#if defined(_NTDRIVER_) || defined(_NTDDK_) || defined (_NTIFS_) || defined(_NTHAL_) -#define NTKERNELAPI DECLSPEC_IMPORT -#else #define NTKERNELAPI -#endif + #ifndef NTOSAPI #define NTOSAPI NTKERNELAPI #endif @@ -8983,6 +8980,20 @@ KeWaitForSingleObject( IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL); +typedef +ULONG_PTR +(*NTAPI PKIPI_BROADCAST_WORKER)( + IN ULONG_PTR Argument +); + +NTKERNELAPI +ULONG_PTR +NTAPI +KeIpiGenericCall( + IN PKIPI_BROADCAST_WORKER BroadcastFunction, + IN ULONG_PTR Context +); + #if defined(_X86_) NTHALAPI @@ -9378,7 +9389,7 @@ MmMapLockedPages( IN KPROCESSOR_MODE AccessMode); NTOSAPI -VOID +PVOID DDKAPI MmPageEntireDriver( IN PVOID AddressWithinSection); @@ -9536,7 +9547,7 @@ ObDereferenceSecurityDescriptor( ULONG Count); NTOSAPI -VOID +LONG_PTR DDKFASTAPI ObfDereferenceObject( IN PVOID Object); @@ -9568,7 +9579,7 @@ ObInsertObject( OUT PHANDLE Handle); NTOSAPI -VOID +LONG_PTR DDKFASTAPI ObfReferenceObject( IN PVOID Object); diff --git a/reactos/include/ndk/i386/ketypes.h b/reactos/include/ndk/i386/ketypes.h index f48f66a9dd5..0f95e500934 100644 --- a/reactos/include/ndk/i386/ketypes.h +++ b/reactos/include/ndk/i386/ketypes.h @@ -109,9 +109,18 @@ Author: // // Macro to get current KPRCB // -#ifndef _REACTOS_ // fixme -#define KeGetCurrentPrcb() \ - (PKPRCB)__readfsdword(KPCR_PRCB); +#ifndef __GNUC__ // fixme +FORCEINLINE +struct _KPRCB * +KeGetCurrentPrcb(VOID) +{ + return (struct _KPRCB *)(ULONG_PTR)__readfsdword(FIELD_OFFSET(KPCR, Prcb)); +} + +// +// Macro to get current previous mode +// +#define KeGetPreviousMode ExGetPreviousMode #endif // diff --git a/reactos/include/ndk/rtltypes.h b/reactos/include/ndk/rtltypes.h index a0e682e1776..cc9838267c7 100644 --- a/reactos/include/ndk/rtltypes.h +++ b/reactos/include/ndk/rtltypes.h @@ -28,44 +28,44 @@ Author: // // Maximum Atom Length // -#define RTL_MAXIMUM_ATOM_LENGTH 255 +#define RTL_MAXIMUM_ATOM_LENGTH 255 // // Process Parameters Flags // -#define RTL_USER_PROCESS_PARAMETERS_NORMALIZED 0x01 -#define RTL_USER_PROCESS_PARAMETERS_PROFILE_USER 0x02 -#define RTL_USER_PROCESS_PARAMETERS_PROFILE_SERVER 0x04 -#define RTL_USER_PROCESS_PARAMETERS_PROFILE_KERNEL 0x08 -#define RTL_USER_PROCESS_PARAMETERS_UNKNOWN 0x10 -#define RTL_USER_PROCESS_PARAMETERS_RESERVE_1MB 0x20 -#define RTL_USER_PROCESS_PARAMETERS_DISABLE_HEAP_CHECKS 0x100 -#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_1 0x200 -#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_2 0x400 -#define RTL_USER_PROCESS_PARAMETERS_PRIVATE_DLL_PATH 0x1000 -#define RTL_USER_PROCESS_PARAMETERS_LOCAL_DLL_PATH 0x2000 -#define RTL_USER_PROCESS_PARAMETERS_NX 0x20000 +#define RTL_USER_PROCESS_PARAMETERS_NORMALIZED 0x01 +#define RTL_USER_PROCESS_PARAMETERS_PROFILE_USER 0x02 +#define RTL_USER_PROCESS_PARAMETERS_PROFILE_SERVER 0x04 +#define RTL_USER_PROCESS_PARAMETERS_PROFILE_KERNEL 0x08 +#define RTL_USER_PROCESS_PARAMETERS_UNKNOWN 0x10 +#define RTL_USER_PROCESS_PARAMETERS_RESERVE_1MB 0x20 +#define RTL_USER_PROCESS_PARAMETERS_DISABLE_HEAP_CHECKS 0x100 +#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_1 0x200 +#define RTL_USER_PROCESS_PARAMETERS_PROCESS_OR_2 0x400 +#define RTL_USER_PROCESS_PARAMETERS_PRIVATE_DLL_PATH 0x1000 +#define RTL_USER_PROCESS_PARAMETERS_LOCAL_DLL_PATH 0x2000 +#define RTL_USER_PROCESS_PARAMETERS_NX 0x20000 // // Exception Flags // -#define EXCEPTION_CHAIN_END ((PEXCEPTION_REGISTRATION_RECORD)-1) -#define EXCEPTION_UNWINDING 0x02 -#define EXCEPTION_EXIT_UNWIND 0x04 -#define EXCEPTION_STACK_INVALID 0x08 -#define EXCEPTION_UNWIND (EXCEPTION_UNWINDING + EXCEPTION_EXIT_UNWIND) -#define EXCEPTION_NESTED_CALL 0x10 -#define EXCEPTION_TARGET_UNWIND 0x20 -#define EXCEPTION_COLLIDED_UNWIND 0x20 +#define EXCEPTION_CHAIN_END ((PEXCEPTION_REGISTRATION_RECORD)-1) +#define EXCEPTION_UNWINDING 0x02 +#define EXCEPTION_EXIT_UNWIND 0x04 +#define EXCEPTION_STACK_INVALID 0x08 +#define EXCEPTION_UNWIND (EXCEPTION_UNWINDING + EXCEPTION_EXIT_UNWIND) +#define EXCEPTION_NESTED_CALL 0x10 +#define EXCEPTION_TARGET_UNWIND 0x20 +#define EXCEPTION_COLLIDED_UNWIND 0x20 // // Range and Range List Flags // -#define RTL_RANGE_LIST_ADD_IF_CONFLICT 0x00000001 -#define RTL_RANGE_LIST_ADD_SHARED 0x00000002 +#define RTL_RANGE_LIST_ADD_IF_CONFLICT 0x00000001 +#define RTL_RANGE_LIST_ADD_SHARED 0x00000002 -#define RTL_RANGE_SHARED 0x01 -#define RTL_RANGE_CONFLICT 0x02 +#define RTL_RANGE_SHARED 0x01 +#define RTL_RANGE_CONFLICT 0x02 // // Activation Context Frame Flags @@ -145,53 +145,58 @@ C_ASSERT(HEAP_CREATE_VALID_MASK == 0x0007F0FF); // // Registry Keys // -#define RTL_REGISTRY_ABSOLUTE 0 -#define RTL_REGISTRY_SERVICES 1 -#define RTL_REGISTRY_CONTROL 2 -#define RTL_REGISTRY_WINDOWS_NT 3 -#define RTL_REGISTRY_DEVICEMAP 4 -#define RTL_REGISTRY_USER 5 -#define RTL_REGISTRY_MAXIMUM 6 -#define RTL_REGISTRY_HANDLE 0x40000000 -#define RTL_REGISTRY_OPTIONAL 0x80000000 -#define RTL_QUERY_REGISTRY_SUBKEY 0x00000001 -#define RTL_QUERY_REGISTRY_TOPKEY 0x00000002 -#define RTL_QUERY_REGISTRY_REQUIRED 0x00000004 -#define RTL_QUERY_REGISTRY_NOVALUE 0x00000008 -#define RTL_QUERY_REGISTRY_NOEXPAND 0x00000010 -#define RTL_QUERY_REGISTRY_DIRECT 0x00000020 -#define RTL_QUERY_REGISTRY_DELETE 0x00000040 +#define RTL_REGISTRY_ABSOLUTE 0 +#define RTL_REGISTRY_SERVICES 1 +#define RTL_REGISTRY_CONTROL 2 +#define RTL_REGISTRY_WINDOWS_NT 3 +#define RTL_REGISTRY_DEVICEMAP 4 +#define RTL_REGISTRY_USER 5 +#define RTL_REGISTRY_MAXIMUM 6 +#define RTL_REGISTRY_HANDLE 0x40000000 +#define RTL_REGISTRY_OPTIONAL 0x80000000 +#define RTL_QUERY_REGISTRY_SUBKEY 0x00000001 +#define RTL_QUERY_REGISTRY_TOPKEY 0x00000002 +#define RTL_QUERY_REGISTRY_REQUIRED 0x00000004 +#define RTL_QUERY_REGISTRY_NOVALUE 0x00000008 +#define RTL_QUERY_REGISTRY_NOEXPAND 0x00000010 +#define RTL_QUERY_REGISTRY_DIRECT 0x00000020 +#define RTL_QUERY_REGISTRY_DELETE 0x00000040 // // Versioning // -#define VER_MINORVERSION 0x0000001 -#define VER_MAJORVERSION 0x0000002 -#define VER_BUILDNUMBER 0x0000004 -#define VER_PLATFORMID 0x0000008 -#define VER_SERVICEPACKMINOR 0x0000010 -#define VER_SERVICEPACKMAJOR 0x0000020 -#define VER_SUITENAME 0x0000040 -#define VER_PRODUCT_TYPE 0x0000080 -#define VER_PLATFORM_WIN32s 0 -#define VER_PLATFORM_WIN32_WINDOWS 1 -#define VER_PLATFORM_WIN32_NT 2 -#define VER_EQUAL 1 -#define VER_GREATER 2 -#define VER_GREATER_EQUAL 3 -#define VER_LESS 4 -#define VER_LESS_EQUAL 5 -#define VER_AND 6 -#define VER_OR 7 -#define VER_CONDITION_MASK 7 -#define VER_NUM_BITS_PER_CONDITION_MASK 3 +#define VER_MINORVERSION 0x0000001 +#define VER_MAJORVERSION 0x0000002 +#define VER_BUILDNUMBER 0x0000004 +#define VER_PLATFORMID 0x0000008 +#define VER_SERVICEPACKMINOR 0x0000010 +#define VER_SERVICEPACKMAJOR 0x0000020 +#define VER_SUITENAME 0x0000040 +#define VER_PRODUCT_TYPE 0x0000080 +#define VER_PLATFORM_WIN32s 0 +#define VER_PLATFORM_WIN32_WINDOWS 1 +#define VER_PLATFORM_WIN32_NT 2 +#define VER_EQUAL 1 +#define VER_GREATER 2 +#define VER_GREATER_EQUAL 3 +#define VER_LESS 4 +#define VER_LESS_EQUAL 5 +#define VER_AND 6 +#define VER_OR 7 +#define VER_CONDITION_MASK 7 +#define VER_NUM_BITS_PER_CONDITION_MASK 3 // // Timezone IDs // -#define TIME_ZONE_ID_UNKNOWN 0 -#define TIME_ZONE_ID_STANDARD 1 -#define TIME_ZONE_ID_DAYLIGHT 2 +#define TIME_ZONE_ID_UNKNOWN 0 +#define TIME_ZONE_ID_STANDARD 1 +#define TIME_ZONE_ID_DAYLIGHT 2 + +// +// Maximum Path Length +// +#define MAX_PATH 260 // // RTL Lock Type (Critical Section or Resource) diff --git a/reactos/include/reactos/rosldr.h b/reactos/include/reactos/rosldr.h index 86842c838dd..10c12e02966 100644 --- a/reactos/include/reactos/rosldr.h +++ b/reactos/include/reactos/rosldr.h @@ -1,47 +1,47 @@ #ifndef __REACTOS_LDR_H #define __REACTOS_LDR_H -#define MB_FLAGS_MEM_INFO (0x1) -#define MB_FLAGS_BOOT_DEVICE (0x2) -#define MB_FLAGS_COMMAND_LINE (0x4) -#define MB_FLAGS_MODULE_INFO (0x8) -#define MB_FLAGS_AOUT_SYMS (0x10) -#define MB_FLAGS_ELF_SYMS (0x20) -#define MB_FLAGS_MMAP_INFO (0x40) -#define MB_FLAGS_DRIVES_INFO (0x80) -#define MB_FLAGS_CONFIG_TABLE (0x100) -#define MB_FLAGS_BOOT_LOADER_NAME (0x200) -#define MB_FLAGS_APM_TABLE (0x400) -#define MB_FLAGS_GRAPHICS_TABLE (0x800) -#define MB_FLAGS_ACPI_TABLE (0x1000) - -typedef struct _LOADER_MODULE -{ - ULONG ModStart; - ULONG ModEnd; - ULONG String; - ULONG Reserved; +#define MB_FLAGS_MEM_INFO (0x1) +#define MB_FLAGS_BOOT_DEVICE (0x2) +#define MB_FLAGS_COMMAND_LINE (0x4) +#define MB_FLAGS_MODULE_INFO (0x8) +#define MB_FLAGS_AOUT_SYMS (0x10) +#define MB_FLAGS_ELF_SYMS (0x20) +#define MB_FLAGS_MMAP_INFO (0x40) +#define MB_FLAGS_DRIVES_INFO (0x80) +#define MB_FLAGS_CONFIG_TABLE (0x100) +#define MB_FLAGS_BOOT_LOADER_NAME (0x200) +#define MB_FLAGS_APM_TABLE (0x400) +#define MB_FLAGS_GRAPHICS_TABLE (0x800) +#define MB_FLAGS_ACPI_TABLE (0x1000) + +typedef struct _LOADER_MODULE +{ + ULONG ModStart; + ULONG ModEnd; + ULONG String; + ULONG Reserved; } LOADER_MODULE, *PLOADER_MODULE; -typedef struct _ROS_LOADER_PARAMETER_BLOCK -{ - ULONG Flags; - ULONG MemLower; - ULONG MemHigher; - ULONG BootDevice; - ULONG CommandLine; - ULONG ModsCount; - ULONG ModsAddr; - UCHAR Syms[12]; - ULONG MmapLength; - ULONG MmapAddr; - ULONG DrivesCount; - ULONG DrivesAddr; - ULONG ConfigTable; - ULONG BootLoaderName; - ULONG PageDirectoryStart; - ULONG PageDirectoryEnd; - ULONG KernelBase; +typedef struct _ROS_LOADER_PARAMETER_BLOCK +{ + ULONG Flags; + ULONG MemLower; + ULONG MemHigher; + ULONG BootDevice; + ULONG CommandLine; + ULONG ModsCount; + ULONG ModsAddr; + UCHAR Syms[12]; + ULONG MmapLength; + ULONG MmapAddr; + ULONG DrivesCount; + ULONG DrivesAddr; + ULONG ConfigTable; + ULONG BootLoaderName; + ULONG PageDirectoryStart; + ULONG PageDirectoryEnd; + ULONG KernelBase; } ROS_LOADER_PARAMETER_BLOCK, *PROS_LOADER_PARAMETER_BLOCK; #endif diff --git a/reactos/ntoskrnl/cc/view.c b/reactos/ntoskrnl/cc/view.c index fb15002161c..94544146657 100644 --- a/reactos/ntoskrnl/cc/view.c +++ b/reactos/ntoskrnl/cc/view.c @@ -556,7 +556,7 @@ CcRosUnmapCacheSegment(PBCB Bcb, ULONG FileOffset, BOOLEAN NowDirty) return(STATUS_SUCCESS); } -NTSTATUS STATIC +NTSTATUS static CcRosCreateCacheSegment(PBCB Bcb, ULONG FileOffset, PCACHE_SEGMENT* CacheSeg) @@ -863,7 +863,7 @@ CcRosRequestCacheSegment(PBCB Bcb, } #ifdef CACHE_BITMAP #else -STATIC VOID +static VOID CcFreeCachePage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, PFN_TYPE Page, SWAPENTRY SwapEntry, BOOLEAN Dirty) { diff --git a/reactos/ntoskrnl/cm/regobj.c b/reactos/ntoskrnl/cm/regobj.c index 3c961f28661..1868c1e562c 100644 --- a/reactos/ntoskrnl/cm/regobj.c +++ b/reactos/ntoskrnl/cm/regobj.c @@ -803,7 +803,7 @@ NTSTATUS CmiRemoveKeyFromList(PKEY_OBJECT KeyToRemove) { PKEY_OBJECT ParentKey; - DWORD Index; + ULONG Index; ParentKey = KeyToRemove->ParentKey; /* FIXME: If list maintained in alphabetic order, use dichotomic search */ diff --git a/reactos/ntoskrnl/deprecated/irq.c b/reactos/ntoskrnl/deprecated/irq.c index e96fc70eae7..e1147b87c06 100644 --- a/reactos/ntoskrnl/deprecated/irq.c +++ b/reactos/ntoskrnl/deprecated/irq.c @@ -177,7 +177,7 @@ KeInitInterrupts (VOID) } } -STATIC VOID +static VOID KeIRQTrapFrameToTrapFrame(PKIRQ_TRAPFRAME IrqTrapFrame, PKTRAP_FRAME TrapFrame) { @@ -198,7 +198,7 @@ KeIRQTrapFrameToTrapFrame(PKIRQ_TRAPFRAME IrqTrapFrame, TrapFrame->EFlags = IrqTrapFrame->Eflags; } -STATIC VOID +static VOID KeTrapFrameToIRQTrapFrame(PKTRAP_FRAME TrapFrame, PKIRQ_TRAPFRAME IrqTrapFrame) { diff --git a/reactos/ntoskrnl/ex/error.c b/reactos/ntoskrnl/ex/error.c index 67d8c89b75c..0664e2682e5 100644 --- a/reactos/ntoskrnl/ex/error.c +++ b/reactos/ntoskrnl/ex/error.c @@ -142,7 +142,7 @@ ExSystemExceptionFilter(VOID) * Optional string parameter (can be only one per error code) * * @param Parameters - * Array of DWORD parameters for use in error message string + * Array of ULONG parameters for use in error message string * * @param ValidResponseOptions * See HARDERROR_RESPONSE_OPTION for possible values description @@ -193,7 +193,7 @@ ExRaiseHardError(IN NTSTATUS ErrorStatus, * Optional string parameter (can be only one per error code) * * @param Parameters - * Array of DWORD parameters for use in error message string + * Array of ULONG parameters for use in error message string * * @param ValidResponseOptions * See HARDERROR_RESPONSE_OPTION for possible values description diff --git a/reactos/ntoskrnl/ex/locale.c b/reactos/ntoskrnl/ex/locale.c index d969a04a92f..c4ca67db2ba 100644 --- a/reactos/ntoskrnl/ex/locale.c +++ b/reactos/ntoskrnl/ex/locale.c @@ -229,7 +229,7 @@ NtSetDefaultLocale(IN BOOLEAN UserProfile, /* Initialize the system registry location */ RtlInitUnicodeString(&KeyName, L"\\Registry\\Machine\\System\\CurrentControlSet" - "\\Control\\Nls\\Language"); + L"\\Control\\Nls\\Language"); RtlInitUnicodeString(&ValueName, L"Default"); } diff --git a/reactos/ntoskrnl/fs/context.c b/reactos/ntoskrnl/fs/context.c index dc2d5b1d6de..2d4c27f4f8b 100644 --- a/reactos/ntoskrnl/fs/context.c +++ b/reactos/ntoskrnl/fs/context.c @@ -50,8 +50,8 @@ FsRtlRemovePerStreamContext(IN PFSRTL_ADVANCED_FCB_HEADER StreamContext, */ NTSTATUS NTAPI -FsRtlInsertPerFileObjectContext(IN PFSRTL_ADVANCED_FCB_HEADER PerFileObjectContext, - IN PVOID /* PFSRTL_PER_FILE_OBJECT_CONTEXT*/ Ptr) +FsRtlInsertPerFileObjectContext(IN PFILE_OBJECT FileObject, + IN PFSRTL_PER_FILEOBJECT_CONTEXT Ptr) { UNIMPLEMENTED; return STATUS_NOT_IMPLEMENTED; @@ -60,7 +60,7 @@ FsRtlInsertPerFileObjectContext(IN PFSRTL_ADVANCED_FCB_HEADER PerFileObjectConte /* * @unimplemented */ -PVOID /* PFSRTL_PER_FILE_OBJECT_CONTEXT*/ +PFSRTL_PER_FILEOBJECT_CONTEXT NTAPI FsRtlRemovePerFileObjectContext(IN PFSRTL_ADVANCED_FCB_HEADER PerFileObjectContext, IN PVOID OwnerId OPTIONAL, diff --git a/reactos/ntoskrnl/fs/filelock.c b/reactos/ntoskrnl/fs/filelock.c index ad67add87c6..048e8d7b651 100644 --- a/reactos/ntoskrnl/fs/filelock.c +++ b/reactos/ntoskrnl/fs/filelock.c @@ -353,7 +353,7 @@ FsRtlpFastUnlockAllByKey( IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, - IN DWORD Key, + IN ULONG Key, IN BOOLEAN UseKey, IN PVOID Context OPTIONAL ) diff --git a/reactos/ntoskrnl/fs/name.c b/reactos/ntoskrnl/fs/name.c index 39bb5d1946b..49d87c5141d 100644 --- a/reactos/ntoskrnl/fs/name.c +++ b/reactos/ntoskrnl/fs/name.c @@ -179,10 +179,10 @@ PUCHAR FsRtlLegalAnsiCharacterArray = LegalAnsiCharacterArray; *--*/ BOOLEAN NTAPI -FsRtlAreNamesEqual(IN PUNICODE_STRING Name1, - IN PUNICODE_STRING Name2, +FsRtlAreNamesEqual(IN PCUNICODE_STRING Name1, + IN PCUNICODE_STRING Name2, IN BOOLEAN IgnoreCase, - IN PWCHAR UpcaseTable OPTIONAL) + IN PCWCH UpcaseTable OPTIONAL) { UNICODE_STRING UpcaseName1; UNICODE_STRING UpcaseName2; diff --git a/reactos/ntoskrnl/fs/pool.c b/reactos/ntoskrnl/fs/pool.c index c4aaa7461fe..ffaf43ee7ed 100644 --- a/reactos/ntoskrnl/fs/pool.c +++ b/reactos/ntoskrnl/fs/pool.c @@ -107,6 +107,7 @@ FsRtlAllocatePoolWithQuota(IN POOL_TYPE PoolType, * @remarks None * *--*/ +#undef FsRtlAllocatePoolWithQuotaTag PVOID NTAPI FsRtlAllocatePoolWithQuotaTag (IN POOL_TYPE PoolType, @@ -147,6 +148,7 @@ FsRtlAllocatePoolWithQuotaTag (IN POOL_TYPE PoolType, * @remarks None * *--*/ +#undef FsRtlAllocatePoolWithTag PVOID NTAPI FsRtlAllocatePoolWithTag(IN POOL_TYPE PoolType, diff --git a/reactos/ntoskrnl/fs/util.c b/reactos/ntoskrnl/fs/util.c index 8b985547508..8f9704c56bf 100644 --- a/reactos/ntoskrnl/fs/util.c +++ b/reactos/ntoskrnl/fs/util.c @@ -117,7 +117,7 @@ FsRtlIsNtstatusExpected(IN NTSTATUS NtStatus) * @remarks None. * *--*/ -BOOLEAN +LOGICAL NTAPI FsRtlIsPagingFile(IN PFILE_OBJECT FileObject) { @@ -293,9 +293,9 @@ FsRtlPostStackOverflow(IN PVOID Context, *--*/ NTSTATUS NTAPI -FsRtlSyncVolumes(DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2) +FsRtlSyncVolumes(ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2) { return STATUS_SUCCESS; } diff --git a/reactos/ntoskrnl/inbv/inbv.c b/reactos/ntoskrnl/inbv/inbv.c index 7aa18e2c4e1..2a684b743f7 100644 --- a/reactos/ntoskrnl/inbv/inbv.c +++ b/reactos/ntoskrnl/inbv/inbv.c @@ -30,13 +30,13 @@ HalReleaseDisplayOwnership(VOID); /* DATA **********************************************************************/ static HANDLE BootVidDevice = NULL; -static BOOL BootVidDriverInstalled = FALSE; +static BOOLEAN BootVidDriverInstalled = FALSE; static NTBOOTVID_FUNCTION_TABLE BootVidFunctionTable; /* FUNCTIONS *****************************************************************/ NTSTATUS -STATIC +static InbvCheckBootVid(VOID) { IO_STATUS_BLOCK Iosb; diff --git a/reactos/ntoskrnl/include/internal/cc.h b/reactos/ntoskrnl/include/internal/cc.h index 95a43c1a223..16b425637d2 100644 --- a/reactos/ntoskrnl/include/internal/cc.h +++ b/reactos/ntoskrnl/include/internal/cc.h @@ -198,7 +198,7 @@ CcTryToInitializeFileCache(PFILE_OBJECT FileObject); */ #define KEBUGCHECKCC \ KEBUGCHECKEX(CACHE_MANAGER, \ - (*(DWORD*)(__FILE__ + sizeof(__FILE__) - 4) << 16) | \ + (*(ULONG*)(__FILE__ + sizeof(__FILE__) - 4) << 16) | \ (__LINE__ & 0xFFFF), 0, 0, 0) #endif diff --git a/reactos/ntoskrnl/include/internal/debug.h b/reactos/ntoskrnl/include/internal/debug.h index 283b8ba016b..cbf943683b6 100644 --- a/reactos/ntoskrnl/include/internal/debug.h +++ b/reactos/ntoskrnl/include/internal/debug.h @@ -105,8 +105,13 @@ #else /* DBG */ +#ifdef __GNUC__ /* using GNU C/C99 macro ellipsis */ #define CPRINT(args...) #define DPRINT1(args...) +#else +#define CPRINT +#define DPRINT1 +#endif #ifndef __USE_W32API #define assert(x) #define ASSERT(x) diff --git a/reactos/ntoskrnl/include/internal/ex.h b/reactos/ntoskrnl/include/internal/ex.h index 0cbad42bfc1..9642d12b7b3 100644 --- a/reactos/ntoskrnl/include/internal/ex.h +++ b/reactos/ntoskrnl/include/internal/ex.h @@ -29,6 +29,12 @@ extern POBJECT_TYPE ExEventPairObjectType; #define ExReleaseResourceLock(l, i) KeReleaseSpinLock(l, i); #endif +#define ExAcquireRundownProtection _ExAcquireRundownProtection +#define ExReleaseRundownProtection _ExReleaseRundownProtection +#define ExInitializeRundownProtection _ExInitializeRundownProtection +#define ExWaitForRundownProtectionRelease _ExWaitForRundownProtectionRelease +#define ExRundownCompleted _ExRundownCompleted + /* INITIALIZATION FUNCTIONS *************************************************/ VOID @@ -290,7 +296,7 @@ static __inline _SEH_FILTER(_SEH_ExSystemExceptionFilter) *--*/ BOOLEAN FORCEINLINE -ExAcquireRundownProtection(IN PEX_RUNDOWN_REF RunRef) +_ExAcquireRundownProtection(IN PEX_RUNDOWN_REF RunRef) { ULONG_PTR Value, NewValue, OldValue; @@ -331,7 +337,7 @@ ExAcquireRundownProtection(IN PEX_RUNDOWN_REF RunRef) *--*/ VOID FORCEINLINE -ExReleaseRundownProtection(IN PEX_RUNDOWN_REF RunRef) +_ExReleaseRundownProtection(IN PEX_RUNDOWN_REF RunRef) { ULONG_PTR Value, NewValue, OldValue; @@ -374,7 +380,7 @@ ExReleaseRundownProtection(IN PEX_RUNDOWN_REF RunRef) *--*/ VOID FORCEINLINE -ExInitializeRundownProtection(IN PEX_RUNDOWN_REF RunRef) +_ExInitializeRundownProtection(IN PEX_RUNDOWN_REF RunRef) { /* Set the count to zero */ RunRef->Count = 0; @@ -398,7 +404,7 @@ ExInitializeRundownProtection(IN PEX_RUNDOWN_REF RunRef) *--*/ VOID FORCEINLINE -ExWaitForRundownProtectionRelease(IN PEX_RUNDOWN_REF RunRef) +_ExWaitForRundownProtectionRelease(IN PEX_RUNDOWN_REF RunRef) { ULONG_PTR Value; @@ -428,7 +434,7 @@ ExWaitForRundownProtectionRelease(IN PEX_RUNDOWN_REF RunRef) *--*/ VOID FORCEINLINE -ExRundownCompleted(IN PEX_RUNDOWN_REF RunRef) +_ExRundownCompleted(IN PEX_RUNDOWN_REF RunRef) { /* Sanity check */ ASSERT((RunRef->Count & EX_RUNDOWN_ACTIVE) != 0); diff --git a/reactos/ntoskrnl/include/internal/ntoskrnl.h b/reactos/ntoskrnl/include/internal/ntoskrnl.h index 2871087b450..a0bae6e7b62 100644 --- a/reactos/ntoskrnl/include/internal/ntoskrnl.h +++ b/reactos/ntoskrnl/include/internal/ntoskrnl.h @@ -23,7 +23,7 @@ #include "i386/v86m.h" #include "ob.h" #include "mm.h" -#include "ex.h" +#include "ex2.h" #include "ps.h" #include "cc.h" #include "io.h" diff --git a/reactos/ntoskrnl/include/internal/test.h b/reactos/ntoskrnl/include/internal/test.h index 504298f9bb6..5576a1ddd52 100644 --- a/reactos/ntoskrnl/include/internal/test.h +++ b/reactos/ntoskrnl/include/internal/test.h @@ -21,7 +21,7 @@ PMmProbeAndLockPages( LOCK_OPERATION Operation ); -typedef VOID +typedef LONG_PTR FASTCALL PObDereferenceObject(PVOID Object); diff --git a/reactos/ntoskrnl/include/ntoskrnl.h b/reactos/ntoskrnl/include/ntoskrnl.h index 92d3ecb9253..7e961e827b3 100644 --- a/reactos/ntoskrnl/include/ntoskrnl.h +++ b/reactos/ntoskrnl/include/ntoskrnl.h @@ -9,17 +9,13 @@ /* INCLUDES ******************************************************************/ /* We are the Kernel */ -#define NTKERNELAPI #define _NTSYSTEM_ /* DDK/IFS/NDK Headers */ -#ifdef __GNUC__ -#include -#endif #include #include #include -#include +#include #undef TEXT #define TEXT(s) L##s #include diff --git a/reactos/ntoskrnl/io/iomgr/arcname.c b/reactos/ntoskrnl/io/iomgr/arcname.c index 409e1135ec4..59a9e95bf00 100644 --- a/reactos/ntoskrnl/io/iomgr/arcname.c +++ b/reactos/ntoskrnl/io/iomgr/arcname.c @@ -53,7 +53,7 @@ IopCheckCdromDevices(PULONG DeviceNumber); /* FUNCTIONS ****************************************************************/ -STATIC +static NTSTATUS STDCALL INIT_FUNCTION @@ -94,7 +94,7 @@ DiskQueryRoutine(PWSTR ValueName, #define ROOT_NAME L"\\Registry\\Machine\\HARDWARE\\DESCRIPTION\\System\\MultifunctionAdapter" -STATIC VOID INIT_FUNCTION +static VOID INIT_FUNCTION IopEnumerateBiosDisks(PLIST_ENTRY ListHead) { RTL_QUERY_REGISTRY_TABLE QueryTable[2]; @@ -178,7 +178,7 @@ IopEnumerateBiosDisks(PLIST_ENTRY ListHead) } } -STATIC VOID INIT_FUNCTION +static VOID INIT_FUNCTION IopEnumerateDisks(PLIST_ENTRY ListHead) { ULONG i, k; @@ -321,7 +321,7 @@ IopEnumerateDisks(PLIST_ENTRY ListHead) } } -STATIC NTSTATUS INIT_FUNCTION +static NTSTATUS INIT_FUNCTION IopAssignArcNamesToDisk(PDEVICE_OBJECT DeviceObject, ULONG RDisk, ULONG DiskNumber) { WCHAR DeviceNameBuffer[80]; diff --git a/reactos/ntoskrnl/io/iomgr/device.c b/reactos/ntoskrnl/io/iomgr/device.c index 9a7a43ff35e..a0ea1cf262f 100644 --- a/reactos/ntoskrnl/io/iomgr/device.c +++ b/reactos/ntoskrnl/io/iomgr/device.c @@ -1376,15 +1376,15 @@ IoStartNextPacketByKey(IN PDEVICE_OBJECT DeviceObject, if (DeviceExtension->StartIoFlags & DOE_SIO_DEFERRED) { /* Call our internal function to handle the defered case */ - return IopStartNextPacketByKeyEx(DeviceObject, - Key, - DOE_SIO_WITH_KEY | - (Cancelable) ? DOE_SIO_CANCELABLE : 0); + IopStartNextPacketByKeyEx(DeviceObject, + Key, + DOE_SIO_WITH_KEY | + (Cancelable) ? DOE_SIO_CANCELABLE : 0); } else { /* Call the normal routine */ - return IopStartNextPacketByKey(DeviceObject, Cancelable, Key); + IopStartNextPacketByKey(DeviceObject, Cancelable, Key); } } @@ -1405,15 +1405,15 @@ IoStartNextPacket(IN PDEVICE_OBJECT DeviceObject, if (DeviceExtension->StartIoFlags & DOE_SIO_DEFERRED) { /* Call our internal function to handle the defered case */ - return IopStartNextPacketByKeyEx(DeviceObject, - 0, - DOE_SIO_NO_KEY | - (Cancelable) ? DOE_SIO_CANCELABLE : 0); + IopStartNextPacketByKeyEx(DeviceObject, + 0, + DOE_SIO_NO_KEY | + (Cancelable) ? DOE_SIO_CANCELABLE : 0); } else { /* Call the normal routine */ - return IopStartNextPacket(DeviceObject, Cancelable); + IopStartNextPacket(DeviceObject, Cancelable); } } diff --git a/reactos/ntoskrnl/io/iomgr/drvrlist.c b/reactos/ntoskrnl/io/iomgr/drvrlist.c index 4f5466f5d01..74c046ba648 100644 --- a/reactos/ntoskrnl/io/iomgr/drvrlist.c +++ b/reactos/ntoskrnl/io/iomgr/drvrlist.c @@ -67,22 +67,22 @@ IopGetGroupOrderList(PWSTR ValueName, if (ValueType == REG_BINARY && ValueData != NULL && - ValueLength >= sizeof(DWORD) && - ValueLength >= (*(PULONG)ValueData + 1) * sizeof(DWORD)) + ValueLength >= sizeof(ULONG) && + ValueLength >= (*(PULONG)ValueData + 1) * sizeof(ULONG)) { Group = (PSERVICE_GROUP)Context; Group->TagCount = ((PULONG)ValueData)[0]; if (Group->TagCount > 0) { - if (ValueLength >= (Group->TagCount + 1) * sizeof(DWORD)) + if (ValueLength >= (Group->TagCount + 1) * sizeof(ULONG)) { - Group->TagArray = ExAllocatePool(NonPagedPool, Group->TagCount * sizeof(DWORD)); + Group->TagArray = ExAllocatePool(NonPagedPool, Group->TagCount * sizeof(ULONG)); if (Group->TagArray == NULL) { Group->TagCount = 0; return STATUS_INSUFFICIENT_RESOURCES; } - memcpy(Group->TagArray, (PULONG)ValueData + 1, Group->TagCount * sizeof(DWORD)); + memcpy(Group->TagArray, (PULONG)ValueData + 1, Group->TagCount * sizeof(ULONG)); } else { diff --git a/reactos/ntoskrnl/io/pnpmgr/plugplay.c b/reactos/ntoskrnl/io/pnpmgr/plugplay.c index e44e7e0d0c8..5d8a8be3da4 100644 --- a/reactos/ntoskrnl/io/pnpmgr/plugplay.c +++ b/reactos/ntoskrnl/io/pnpmgr/plugplay.c @@ -50,7 +50,7 @@ IopQueueTargetDeviceEvent(const GUID *Guid, PUNICODE_STRING DeviceIds) { PPNP_EVENT_ENTRY EventEntry; - DWORD TotalSize; + ULONG TotalSize; TotalSize = FIELD_OFFSET(PLUGPLAY_EVENT_BLOCK, TargetDevice.DeviceIds) + diff --git a/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c b/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c index 80975a51caf..a0ef467c557 100644 --- a/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c +++ b/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c @@ -2307,7 +2307,7 @@ IopInvalidateDeviceRelations(IN PDEVICE_NODE DeviceNode, IO_STATUS_BLOCK IoStatusBlock; PDEVICE_NODE ChildDeviceNode; IO_STACK_LOCATION Stack; - BOOL BootDrivers; + BOOLEAN BootDrivers; OBJECT_ATTRIBUTES ObjectAttributes; UNICODE_STRING LinkName; HANDLE Handle; diff --git a/reactos/ntoskrnl/kd/wrappers/bochs.c b/reactos/ntoskrnl/kd/wrappers/bochs.c index dd5f0782c59..83912c8211c 100644 --- a/reactos/ntoskrnl/kd/wrappers/bochs.c +++ b/reactos/ntoskrnl/kd/wrappers/bochs.c @@ -49,7 +49,7 @@ STDCALL KdpBochsInit(PKD_DISPATCH_TABLE DispatchTable, ULONG BootPhase) { - BYTE Value; + UCHAR Value; if (!KdpDebugMode.Bochs) return; if (BootPhase == 0) diff --git a/reactos/ntoskrnl/kd/wrappers/gdbstub.c b/reactos/ntoskrnl/kd/wrappers/gdbstub.c index c0dad9686be..f8ac460279e 100644 --- a/reactos/ntoskrnl/kd/wrappers/gdbstub.c +++ b/reactos/ntoskrnl/kd/wrappers/gdbstub.c @@ -120,9 +120,9 @@ enum REGISTER_NAMES typedef struct _CPU_REGISTER { - DWORD Size; - DWORD OffsetInTF; - DWORD OffsetInContext; + ULONG Size; + ULONG OffsetInTF; + ULONG OffsetInContext; BOOLEAN SetInContext; } CPU_REGISTER, *PCPU_REGISTER; @@ -573,7 +573,7 @@ GspGetRegisters(PCHAR Address, { ULONG_PTR Value; PULONG p; - DWORD i; + ULONG i; PETHREAD Thread; ULONG_PTR *KernelStack; @@ -670,7 +670,7 @@ GspSetRegistersInTrapFrame(PCHAR Address, ULONG Value; PCHAR Buffer; PULONG p; - DWORD i; + ULONG i; if (!TrapFrame) { diff --git a/reactos/ntoskrnl/ke/clock.c b/reactos/ntoskrnl/ke/clock.c index 0204c70a23f..1e4e5393afa 100644 --- a/reactos/ntoskrnl/ke/clock.c +++ b/reactos/ntoskrnl/ke/clock.c @@ -147,6 +147,7 @@ KeQueryTimeIncrement(VOID) /* * @implemented */ +#undef KeQueryTickCount VOID STDCALL KeQueryTickCount(PLARGE_INTEGER TickCount) diff --git a/reactos/ntoskrnl/ke/i386/ldt.c b/reactos/ntoskrnl/ke/i386/ldt.c index 41d1a216a75..1e1efc4a9ef 100644 --- a/reactos/ntoskrnl/ke/i386/ldt.c +++ b/reactos/ntoskrnl/ke/i386/ldt.c @@ -81,7 +81,7 @@ KeSetGdtSelector(ULONG Entry, KeReleaseSpinLock(&GdtLock, oldIrql); } -BOOL PspIsDescriptorValid(PLDT_ENTRY ldt_entry) +BOOLEAN PspIsDescriptorValid(PLDT_ENTRY ldt_entry) { ULONG Base, SegLimit; /* diff --git a/reactos/ntoskrnl/ke/ipi.c b/reactos/ntoskrnl/ke/ipi.c index 0f1df39651f..451b724527c 100644 --- a/reactos/ntoskrnl/ke/ipi.c +++ b/reactos/ntoskrnl/ke/ipi.c @@ -117,7 +117,7 @@ KiIpiServiceRoutine(IN PKTRAP_FRAME TrapFrame, VOID STDCALL -KiIpiSendPacket(KAFFINITY TargetSet, VOID (STDCALL*WorkerRoutine)(PVOID), PVOID Argument, ULONG Count, BOOLEAN Synchronize) +KiIpiSendPacket(KAFFINITY TargetSet, PKIPI_BROADCAST_WORKER WorkerRoutine, ULONG_PTR Argument, ULONG Count, BOOLEAN Synchronize) { KAFFINITY Processor; LONG i; @@ -155,9 +155,9 @@ KiIpiSendPacket(KAFFINITY TargetSet, VOID (STDCALL*WorkerRoutine)(PVOID), PVOID } } -VOID +ULONG_PTR NTAPI -KeIpiGenericCall(VOID (STDCALL *Function)(PVOID), PVOID Argument) +KeIpiGenericCall(PKIPI_BROADCAST_WORKER Function, ULONG_PTR Argument) { KIRQL oldIrql; KAFFINITY TargetSet; @@ -177,6 +177,7 @@ KeIpiGenericCall(VOID (STDCALL *Function)(PVOID), PVOID Argument) KeLowerIrql(oldIrql); DPRINT("KeIpiGenericCall on CPU%d done\n", KeGetCurrentProcessorNumber()); + return 0; // FIXME } diff --git a/reactos/ntoskrnl/ke/kthread.c b/reactos/ntoskrnl/ke/kthread.c index 80e97533489..4b621debd7d 100644 --- a/reactos/ntoskrnl/ke/kthread.c +++ b/reactos/ntoskrnl/ke/kthread.c @@ -55,7 +55,7 @@ KeFindNextRightSetAffinity(IN UCHAR Number, return (UCHAR)Result; } -STATIC +static VOID KiRequestReschedule(CCHAR Processor) { @@ -66,7 +66,7 @@ KiRequestReschedule(CCHAR Processor) KiIpiSendRequest(1 << Processor, IPI_DPC); } -STATIC +static VOID KiInsertIntoThreadList(KPRIORITY Priority, PKTHREAD Thread) @@ -84,7 +84,7 @@ KiInsertIntoThreadList(KPRIORITY Priority, PriorityListMask |= (1 << Priority); } -STATIC +static VOID KiRemoveFromThreadList(PKTHREAD Thread) { @@ -96,7 +96,7 @@ KiRemoveFromThreadList(PKTHREAD Thread) } } -STATIC +static PKTHREAD KiScanThreadList(KPRIORITY Priority, KAFFINITY Affinity) diff --git a/reactos/ntoskrnl/ldr/loader.c b/reactos/ntoskrnl/ldr/loader.c index ad57df7a875..b4b943c7af0 100644 --- a/reactos/ntoskrnl/ldr/loader.c +++ b/reactos/ntoskrnl/ldr/loader.c @@ -79,7 +79,7 @@ static PVOID LdrPEGetExportByName ( PVOID BaseAddress, PUCHAR SymbolName, - WORD Hint ); + USHORT Hint ); static PVOID LdrPEFixupForward ( PCHAR ForwardName ); @@ -682,7 +682,7 @@ LdrPEProcessModule( PLDR_DATA_TABLE_ENTRY *ModuleObject ) { unsigned int DriverSize, Idx; - DWORD CurrentSize; + ULONG CurrentSize; PVOID DriverBase; PIMAGE_DOS_HEADER PEDosHeader; PIMAGE_NT_HEADERS PENtHeaders; @@ -1279,11 +1279,11 @@ static PVOID LdrPEGetExportByName ( PVOID BaseAddress, PUCHAR SymbolName, - WORD Hint ) + USHORT Hint ) { PIMAGE_EXPORT_DIRECTORY ExportDir; - PDWORD * ExFunctions; - PDWORD * ExNames; + PULONG * ExFunctions; + PULONG * ExNames; USHORT * ExOrdinals; PVOID ExName; ULONG Ordinal; @@ -1314,9 +1314,9 @@ LdrPEGetExportByName ( /* * Get header pointers */ - ExNames = (PDWORD *)RVA(BaseAddress, ExportDir->AddressOfNames); + ExNames = (PULONG *)RVA(BaseAddress, ExportDir->AddressOfNames); ExOrdinals = (USHORT *)RVA(BaseAddress, ExportDir->AddressOfNameOrdinals); - ExFunctions = (PDWORD *)RVA(BaseAddress, ExportDir->AddressOfFunctions); + ExFunctions = (PULONG *)RVA(BaseAddress, ExportDir->AddressOfFunctions); /* * Check the hint first @@ -1399,7 +1399,7 @@ LdrPEGetExportByOrdinal ( { PIMAGE_EXPORT_DIRECTORY ExportDir; ULONG ExportDirSize; - PDWORD * ExFunctions; + PULONG * ExFunctions; PVOID Function; ExportDir = (PIMAGE_EXPORT_DIRECTORY)RtlImageDirectoryEntryToData ( @@ -1408,7 +1408,7 @@ LdrPEGetExportByOrdinal ( IMAGE_DIRECTORY_ENTRY_EXPORT, &ExportDirSize); - ExFunctions = (PDWORD *)RVA(BaseAddress, + ExFunctions = (PULONG *)RVA(BaseAddress, ExportDir->AddressOfFunctions); DPRINT("LdrPEGetExportByOrdinal(Ordinal %d) = %x\n", Ordinal, diff --git a/reactos/ntoskrnl/lpc/create.c b/reactos/ntoskrnl/lpc/create.c index 190693197b1..1fcefa0d6b0 100644 --- a/reactos/ntoskrnl/lpc/create.c +++ b/reactos/ntoskrnl/lpc/create.c @@ -26,7 +26,7 @@ * * RETURN VALUE */ -STATIC NTSTATUS STDCALL +static NTSTATUS STDCALL LpcpVerifyCreateParameters (IN PHANDLE PortHandle, IN POBJECT_ATTRIBUTES ObjectAttributes, IN ULONG MaxConnectInfoLength, diff --git a/reactos/ntoskrnl/mm/anonmem.c b/reactos/ntoskrnl/mm/anonmem.c index 8846c0c75fa..d307183d004 100644 --- a/reactos/ntoskrnl/mm/anonmem.c +++ b/reactos/ntoskrnl/mm/anonmem.c @@ -434,7 +434,7 @@ MmNotPresentFaultVirtualMemory(PMADDRESS_SPACE AddressSpace, return(STATUS_SUCCESS); } -VOID STATIC +VOID static MmModifyAttributes(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress, ULONG RegionSize, @@ -765,7 +765,7 @@ NtAllocateVirtualMemory(IN HANDLE ProcessHandle, return(STATUS_SUCCESS); } -VOID STATIC +VOID static MmFreeVirtualMemoryPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, diff --git a/reactos/ntoskrnl/mm/drvlck.c b/reactos/ntoskrnl/mm/drvlck.c index 74d202e7b47..a3dbfb712a2 100644 --- a/reactos/ntoskrnl/mm/drvlck.c +++ b/reactos/ntoskrnl/mm/drvlck.c @@ -39,8 +39,7 @@ MmUnlockPagableImageSection(IN PVOID ImageSectionHandle) VOID STDCALL MmLockPagableSectionByHandle(IN PVOID ImageSectionHandle) { - // MmLockMemoryArea((MEMORY_AREA *)ImageSectionHandle); - DPRINT1("MmLockPagableSectionByHandle is unimplemented\n"); + UNIMPLEMENTED; } @@ -75,15 +74,19 @@ MmLockPagableDataSection(IN PVOID AddressWithinSection) */ VOID STDCALL MmUnlockPagableImageSection(IN PVOID ImageSectionHandle) -{} - +{ + UNIMPLEMENTED; +} /* * @unimplemented */ -VOID STDCALL +PVOID STDCALL MmPageEntireDriver(IN PVOID AddressWithinSection) -{} +{ + UNIMPLEMENTED; + return NULL; +} /* @@ -91,6 +94,8 @@ MmPageEntireDriver(IN PVOID AddressWithinSection) */ VOID STDCALL MmResetDriverPaging(IN PVOID AddressWithinSection) -{} +{ + UNIMPLEMENTED; +} /* EOF */ diff --git a/reactos/ntoskrnl/mm/elf.inc.h b/reactos/ntoskrnl/mm/elf.inc.h index 472a6571775..4defb91c840 100644 --- a/reactos/ntoskrnl/mm/elf.inc.h +++ b/reactos/ntoskrnl/mm/elf.inc.h @@ -172,12 +172,12 @@ static __inline ULONG64 ElfFmtpReadULong64 IN ULONG DataType ) { - PBYTE p; + PUCHAR p; if(DataType == ELF_TARG_DATA) return Input; - p = (PBYTE)&Input; + p = (PUCHAR)&Input; switch(DataType) { @@ -195,12 +195,12 @@ static __inline ULONG ElfFmtpReadULong IN ULONG DataType ) { - PBYTE p; + PUCHAR p; if(DataType == ELF_TARG_DATA) return Input; - p = (PBYTE)&Input; + p = (PUCHAR)&Input; switch(DataType) { @@ -218,12 +218,12 @@ static __inline USHORT ElfFmtpReadUShort IN ULONG DataType ) { - PBYTE p; + PUCHAR p; if(DataType == ELF_TARG_DATA) return Input; - p = (PBYTE)&Input; + p = (PUCHAR)&Input; switch(DataType) { @@ -241,12 +241,12 @@ static __inline ULONG64 ElfFmtpSafeReadULong64 IN ULONG DataType ) { - PBYTE p; + PUCHAR p; ULONG64 nSafeInput; RtlRetrieveUlonglong(&nSafeInput, Input); - p = (PBYTE)&nSafeInput; + p = (PUCHAR)&nSafeInput; switch(DataType) { @@ -264,7 +264,7 @@ static __inline ULONG ElfFmtpSafeReadULong IN ULONG DataType ) { - PBYTE p; + PUCHAR p; ULONG nSafeInput; union { @@ -277,7 +277,7 @@ static __inline ULONG ElfFmtpSafeReadULong if(DataType == ELF_TARG_DATA) return nSafeInput; - p = (PBYTE)&nSafeInput; + p = (PUCHAR)&nSafeInput; switch(DataType) { diff --git a/reactos/ntoskrnl/mm/mm.c b/reactos/ntoskrnl/mm/mm.c index 032a9e5a17e..5c7c3889286 100644 --- a/reactos/ntoskrnl/mm/mm.c +++ b/reactos/ntoskrnl/mm/mm.c @@ -331,21 +331,21 @@ MmNotPresentFault(KPROCESSOR_MODE Mode, /* * @unimplemented */ -DWORD STDCALL -MmAdjustWorkingSetSize (DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2) +ULONG STDCALL +MmAdjustWorkingSetSize (ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2) { UNIMPLEMENTED; return (0); } -DWORD +ULONG STDCALL MmDbgTranslatePhysicalAddress ( - DWORD Unknown0, - DWORD Unknown1 + ULONG Unknown0, + ULONG Unknown1 ) { UNIMPLEMENTED; diff --git a/reactos/ntoskrnl/mm/mminit.c b/reactos/ntoskrnl/mm/mminit.c index c4fcb0d16d7..69a4a56b0e4 100644 --- a/reactos/ntoskrnl/mm/mminit.c +++ b/reactos/ntoskrnl/mm/mminit.c @@ -467,7 +467,7 @@ MmInit3(VOID) /* FIXME: Read parameters from memory */ } -VOID STATIC +VOID static MiFreeInitMemoryPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, PFN_TYPE Page, SWAPENTRY SwapEntry, BOOLEAN Dirty) diff --git a/reactos/ntoskrnl/mm/ncache.c b/reactos/ntoskrnl/mm/ncache.c index 02375bdbb91..9d82fa89abd 100644 --- a/reactos/ntoskrnl/mm/ncache.c +++ b/reactos/ntoskrnl/mm/ncache.c @@ -84,7 +84,7 @@ MmAllocateNonCachedMemory(IN ULONG NumberOfBytes) return ((PVOID)Result); } -VOID STATIC +VOID static MmFreeNonCachedPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, PFN_TYPE Page, SWAPENTRY SwapEntry, BOOLEAN Dirty) diff --git a/reactos/ntoskrnl/mm/npool.c b/reactos/ntoskrnl/mm/npool.c index 3e823ef058a..505497cffc8 100644 --- a/reactos/ntoskrnl/mm/npool.c +++ b/reactos/ntoskrnl/mm/npool.c @@ -95,7 +95,7 @@ typedef struct _HDR_FREE #define HDR_FREE_SIZE ROUND_UP(sizeof(HDR_FREE), MM_POOL_ALIGNMENT) -#if defined(NPOOL_REDZONE_CHECK) || #defined(NPOOL_REDZONE_CHECK_FULL) +#if defined(NPOOL_REDZONE_CHECK) || defined(NPOOL_REDZONE_CHECK_FULL) #define HDR_USED_SIZE ROUND_UP(sizeof(HDR_USED) + NPOOL_REDZONE_SIZE, MM_POOL_ALIGNMENT) #else #define HDR_USED_SIZE ROUND_UP(sizeof(HDR_USED), MM_POOL_ALIGNMENT) @@ -760,7 +760,7 @@ MiAddToTagHashTable(HDR_USED* block) #endif /* TAG_STATISTICS_TRACKING */ #if defined(TAG_STATISTICS_TRACKING) -VOID STATIC +VOID static MiDumpTagStats(ULONG CurrentTag, ULONG CurrentNrBlocks, ULONG CurrentSize) { CHAR c1, c2, c3, c4; @@ -1106,7 +1106,7 @@ static void validate_kernel_pool(void) #endif #if 0 -STATIC VOID +static VOID free_pages(HDR_FREE* blk) { ULONG start; @@ -1154,7 +1154,7 @@ add_to_free_list(HDR_FREE* blk) */ { HDR_FREE* current; - BOOL UpdatePrevPtr = FALSE; + BOOLEAN UpdatePrevPtr = FALSE; DPRINT("add_to_free_list (%d)\n", blk->hdr.Size); @@ -1469,10 +1469,10 @@ ExRosQueryNonPagedPoolTag ( PVOID Addr ) #if defined(NPOOL_REDZONE_CHECK) || defined(NPOOL_REDZONE_CHECK_FULL) void check_redzone_header(HDR_USED* hdr) { - PBYTE LoZone = (PBYTE)((ULONG_PTR)hdr + HDR_USED_SIZE - NPOOL_REDZONE_SIZE); - PBYTE HiZone = (PBYTE)((ULONG_PTR)hdr + HDR_USED_SIZE + hdr->UserSize); - BOOL LoOK = TRUE; - BOOL HiOK = TRUE; + PUCHAR LoZone = (PUCHAR)((ULONG_PTR)hdr + HDR_USED_SIZE - NPOOL_REDZONE_SIZE); + PUCHAR HiZone = (PUCHAR)((ULONG_PTR)hdr + HDR_USED_SIZE + hdr->UserSize); + BOOLEAN LoOK = TRUE; + BOOLEAN HiOK = TRUE; ULONG i; CHAR c[5]; diff --git a/reactos/ntoskrnl/mm/pagefile.c b/reactos/ntoskrnl/mm/pagefile.c index 26f72f86202..b6253b2029e 100644 --- a/reactos/ntoskrnl/mm/pagefile.c +++ b/reactos/ntoskrnl/mm/pagefile.c @@ -149,7 +149,7 @@ MmShowOutOfSpaceMessagePagingFile(VOID) } } -LARGE_INTEGER STATIC +LARGE_INTEGER static MmGetOffsetPageFile(PRETRIEVAL_POINTERS_BUFFER RetrievalPointers, LARGE_INTEGER Offset) { /* Simple binary search */ @@ -498,7 +498,7 @@ MmAllocSwapPage(VOID) return(0); } -STATIC PRETRIEVEL_DESCRIPTOR_LIST FASTCALL +static PRETRIEVEL_DESCRIPTOR_LIST FASTCALL MmAllocRetrievelDescriptorList(ULONG Pairs) { ULONG Size; @@ -551,7 +551,7 @@ MmDumpToPagingFile(ULONG BugCode, if (!(TrapFrame->EFlags & (1 << 17))) { memcpy(&Headers->TrapFrame, TrapFrame, - sizeof(KTRAP_FRAME) - (4 * sizeof(DWORD))); + sizeof(KTRAP_FRAME) - (4 * sizeof(ULONG))); } else { diff --git a/reactos/ntoskrnl/mm/pool.c b/reactos/ntoskrnl/mm/pool.c index 5737263c7e3..28afe5b4c7f 100644 --- a/reactos/ntoskrnl/mm/pool.c +++ b/reactos/ntoskrnl/mm/pool.c @@ -22,7 +22,7 @@ extern MM_STATS MmStats; /* FUNCTIONS ***************************************************************/ -STATIC PVOID STDCALL +static PVOID STDCALL EiAllocatePool(POOL_TYPE PoolType, ULONG NumberOfBytes, ULONG Tag, diff --git a/reactos/ntoskrnl/mm/ppool.c b/reactos/ntoskrnl/mm/ppool.c index edca15f3b3e..c458c54a6ab 100644 --- a/reactos/ntoskrnl/mm/ppool.c +++ b/reactos/ntoskrnl/mm/ppool.c @@ -11,13 +11,9 @@ /* INCLUDES *****************************************************************/ -#ifdef PPOOL_UMODE_TEST -#include "ppool_umode.h" -#else//PPOOL_UMODE_TEST #include #define NDEBUG #include -#endif//PPOOL_UMODE_TEST #if defined (ALLOC_PRAGMA) #pragma alloc_text(INIT, MmInitializePagedPool) @@ -138,7 +134,7 @@ int main() char* trash[COUNT]; int AllocSize[] = { 15, 31, 63, 127, 255, 511, 1023, 2047 }; const int ALLOCS = sizeof(AllocSize) / sizeof(0[AllocSize]); - DWORD dwStart; + ULONG dwStart; MmPagedPoolSize = 1*1024*1024; MmPagedPoolBase = malloc ( MmPagedPoolSize ); diff --git a/reactos/ntoskrnl/mm/region.c b/reactos/ntoskrnl/mm/region.c index 5102cf35ca5..1608c226053 100644 --- a/reactos/ntoskrnl/mm/region.c +++ b/reactos/ntoskrnl/mm/region.c @@ -16,7 +16,7 @@ /* FUNCTIONS *****************************************************************/ -VOID STATIC +VOID static InsertAfterEntry(PLIST_ENTRY Previous, PLIST_ENTRY Entry) /* @@ -31,7 +31,7 @@ InsertAfterEntry(PLIST_ENTRY Previous, Previous->Flink = Entry; } -PMM_REGION STATIC +PMM_REGION static MmSplitRegion(PMM_REGION InitialRegion, PVOID InitialBaseAddress, PVOID StartAddress, ULONG Length, ULONG NewType, ULONG NewProtect, PMADDRESS_SPACE AddressSpace, diff --git a/reactos/ntoskrnl/mm/section.c b/reactos/ntoskrnl/mm/section.c index d31ec1e38c6..d6e5dbdd4b2 100644 --- a/reactos/ntoskrnl/mm/section.c +++ b/reactos/ntoskrnl/mm/section.c @@ -461,7 +461,7 @@ MmUnsharePageEntrySectionSegment(PROS_SECTION_OBJECT Section, return(SHARE_COUNT_FROM_SSE(Entry) > 0); } -BOOL MiIsPageFromCache(PMEMORY_AREA MemoryArea, +BOOLEAN MiIsPageFromCache(PMEMORY_AREA MemoryArea, ULONG SegOffset) { if (!(MemoryArea->Data.SectionData.Segment->Characteristics & IMAGE_SCN_MEM_SHARED)) @@ -669,7 +669,7 @@ MmNotPresentFaultSectionView(PMADDRESS_SPACE AddressSpace, ULONG Attributes; PMM_PAGEOP PageOp; PMM_REGION Region; - BOOL HasSwapEntry; + BOOLEAN HasSwapEntry; /* * There is a window between taking the page fault and locking the @@ -1889,7 +1889,7 @@ MmWritePageSectionView(PMADDRESS_SPACE AddressSpace, return(STATUS_SUCCESS); } -VOID STATIC +VOID static MmAlterViewAttributes(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress, ULONG RegionSize, @@ -1900,7 +1900,7 @@ MmAlterViewAttributes(PMADDRESS_SPACE AddressSpace, { PMEMORY_AREA MemoryArea; PMM_SECTION_SEGMENT Segment; - BOOL DoCOW = FALSE; + BOOLEAN DoCOW = FALSE; ULONG i; MemoryArea = MmLocateMemoryAreaByAddress(AddressSpace, BaseAddress); @@ -2011,7 +2011,7 @@ MmQuerySectionView(PMEMORY_AREA MemoryArea, if (Section->AllocationAttributes & SEC_IMAGE) { Segment = MemoryArea->Data.SectionData.Segment; - Info->AllocationBase = (PBYTE)MemoryArea->StartingAddress - Segment->VirtualAddress; + Info->AllocationBase = (PUCHAR)MemoryArea->StartingAddress - Segment->VirtualAddress; Info->Type = MEM_IMAGE; } else @@ -3500,7 +3500,7 @@ NtOpenSection(PHANDLE SectionHandle, return(Status); } -NTSTATUS STATIC +NTSTATUS static MmMapViewOfSegment(PMADDRESS_SPACE AddressSpace, PROS_SECTION_OBJECT Section, PMM_SECTION_SEGMENT Segment, @@ -3748,7 +3748,7 @@ NtMapViewOfSection(IN HANDLE SectionHandle, return(Status); } -VOID STATIC +VOID static MmFreeSectionPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, PFN_TYPE Page, SWAPENTRY SwapEntry, BOOLEAN Dirty) { @@ -3855,7 +3855,7 @@ MmFreeSectionPage(PVOID Context, MEMORY_AREA* MemoryArea, PVOID Address, } } -STATIC NTSTATUS +static NTSTATUS MmUnmapViewOfSegment(PMADDRESS_SPACE AddressSpace, PVOID BaseAddress) { @@ -4623,7 +4623,7 @@ MmCanFileBeTruncated (IN PSECTION_OBJECT_POINTERS SectionObjectPointer, * @unimplemented */ BOOLEAN STDCALL -MmDisableModifiedWriteOfSection (DWORD Unknown0) +MmDisableModifiedWriteOfSection (ULONG Unknown0) { UNIMPLEMENTED; return (FALSE); @@ -4763,12 +4763,12 @@ MmUnmapViewInSessionSpace ( * @unimplemented */ NTSTATUS STDCALL -MmSetBankedSection (DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2, - DWORD Unknown3, - DWORD Unknown4, - DWORD Unknown5) +MmSetBankedSection (ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2, + ULONG Unknown3, + ULONG Unknown4, + ULONG Unknown5) { UNIMPLEMENTED; return (STATUS_NOT_IMPLEMENTED); diff --git a/reactos/ntoskrnl/mm/virtual.c b/reactos/ntoskrnl/mm/virtual.c index f5fd8542d5e..273eca1a3f3 100644 --- a/reactos/ntoskrnl/mm/virtual.c +++ b/reactos/ntoskrnl/mm/virtual.c @@ -104,7 +104,7 @@ NtLockVirtualMemory(HANDLE ProcessHandle, NumberOfBytesLocked, ObReferenceObjectByHandle, MmCreateMdl, - ObfDereferenceObject, + (PVOID)ObfDereferenceObject, MmProbeAndLockPages, ExFreePool); } diff --git a/reactos/ntoskrnl/ntoskrnl.rbuild b/reactos/ntoskrnl/ntoskrnl.rbuild index 443ba8e0cb4..dca4cab0aa1 100644 --- a/reactos/ntoskrnl/ntoskrnl.rbuild +++ b/reactos/ntoskrnl/ntoskrnl.rbuild @@ -7,6 +7,7 @@ + include . include diff --git a/reactos/ntoskrnl/ob/oblife.c b/reactos/ntoskrnl/ob/oblife.c index fac35da0b7e..a6b06e026cb 100644 --- a/reactos/ntoskrnl/ob/oblife.c +++ b/reactos/ntoskrnl/ob/oblife.c @@ -232,7 +232,7 @@ ObpCaptureObjectName(IN OUT PUNICODE_STRING CapturedName, NTSTATUS Status = STATUS_SUCCESS; ULONG StringLength, MaximumLength; PWCHAR StringBuffer = NULL; - UNICODE_STRING LocalName = {}; /* <= GCC 4.0 + Optimizer */ + UNICODE_STRING LocalName = {0}; /* <= GCC 4.0 + Optimizer */ PAGED_CODE(); /* Initialize the Input String */ diff --git a/reactos/ntoskrnl/ob/obref.c b/reactos/ntoskrnl/ob/obref.c index 064305be0b3..07cc74f1c13 100644 --- a/reactos/ntoskrnl/ob/obref.c +++ b/reactos/ntoskrnl/ob/obref.c @@ -267,21 +267,22 @@ ObFastReplaceObject(IN PEX_FAST_REF FastRef, /* PUBLIC FUNCTIONS *********************************************************/ -VOID +LONG_PTR FASTCALL ObfReferenceObject(IN PVOID Object) { ASSERT(Object); /* Get the header and increment the reference count */ - InterlockedIncrement(&OBJECT_TO_OBJECT_HEADER(Object)->PointerCount); + return InterlockedIncrement(&OBJECT_TO_OBJECT_HEADER(Object)->PointerCount); } -VOID +LONG_PTR FASTCALL ObfDereferenceObject(IN PVOID Object) { POBJECT_HEADER Header; + LONG_PTR OldCount; /* Extract the object header */ Header = OBJECT_TO_OBJECT_HEADER(Object); @@ -289,17 +290,18 @@ ObfDereferenceObject(IN PVOID Object) if (Header->PointerCount < Header->HandleCount) { DPRINT("Misbehaving object: %wZ\n", &Header->Type->Name); - return; + return Header->PointerCount; } /* Check whether the object can now be deleted. */ - if (!(InterlockedDecrement(&Header->PointerCount))) + OldCount = InterlockedDecrement(&Header->PointerCount); + if (!OldCount) { /* Sanity check */ if (Header->HandleCount) { DPRINT("Misbehaving object: %wZ\n", &Header->Type->Name); - return; + return Header->PointerCount; } /* Check if we're at PASSIVE */ @@ -314,6 +316,9 @@ ObfDereferenceObject(IN PVOID Object) ObpDeferObjectDeletion(Object); } } + + /* Return the old count */ + return OldCount; } VOID diff --git a/reactos/ntoskrnl/ps/process.c b/reactos/ntoskrnl/ps/process.c index 0ac2e337399..de76e161090 100644 --- a/reactos/ntoskrnl/ps/process.c +++ b/reactos/ntoskrnl/ps/process.c @@ -356,7 +356,7 @@ PspCreateProcess(OUT PHANDLE ProcessHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN HANDLE ParentProcess OPTIONAL, - IN DWORD Flags, + IN ULONG Flags, IN HANDLE SectionHandle OPTIONAL, IN HANDLE DebugPort OPTIONAL, IN HANDLE ExceptionPort OPTIONAL, diff --git a/reactos/ntoskrnl/rtl/libsupp.c b/reactos/ntoskrnl/rtl/libsupp.c index f752f8db917..6caf3670670 100644 --- a/reactos/ntoskrnl/rtl/libsupp.c +++ b/reactos/ntoskrnl/rtl/libsupp.c @@ -42,7 +42,7 @@ RtlpGetMode() PVOID STDCALL -RtlpAllocateMemory(UINT Bytes, +RtlpAllocateMemory(ULONG Bytes, ULONG Tag) { return ExAllocatePoolWithTag(PagedPool, @@ -399,7 +399,7 @@ IMAGE_RESOURCE_DIRECTORY *find_entry_by_name( IMAGE_RESOURCE_DIRECTORY *dir, LPCWSTR name, void *root, int want_dir ); IMAGE_RESOURCE_DIRECTORY *find_entry_by_id( IMAGE_RESOURCE_DIRECTORY *dir, - WORD id, void *root, int want_dir ); + USHORT id, void *root, int want_dir ); IMAGE_RESOURCE_DIRECTORY *find_first_entry( IMAGE_RESOURCE_DIRECTORY *dir, void *root, int want_dir ); diff --git a/reactos/ntoskrnl/rtl/strtok.c b/reactos/ntoskrnl/rtl/strtok.c index 70a31d2126b..ecb20aa7222 100644 --- a/reactos/ntoskrnl/rtl/strtok.c +++ b/reactos/ntoskrnl/rtl/strtok.c @@ -16,7 +16,7 @@ /* FUNCTIONS *****************************************************************/ -char* strtok(char *s, const char *delim) +char* __cdecl strtok(char *s, const char *delim) { const char *spanp; int c, sc; diff --git a/reactos/ntoskrnl/se/lsa.c b/reactos/ntoskrnl/se/lsa.c index a59b90a3b4e..0e9a98321fd 100644 --- a/reactos/ntoskrnl/se/lsa.c +++ b/reactos/ntoskrnl/se/lsa.c @@ -17,13 +17,13 @@ * @unimplemented */ NTSTATUS STDCALL LsaCallAuthenticationPackage ( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2, - DWORD Unknown3, - DWORD Unknown4, - DWORD Unknown5, - DWORD Unknown6 + ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2, + ULONG Unknown3, + ULONG Unknown4, + ULONG Unknown5, + ULONG Unknown6 ) { return STATUS_NOT_IMPLEMENTED; @@ -34,8 +34,8 @@ NTSTATUS STDCALL LsaCallAuthenticationPackage ( * @unimplemented */ NTSTATUS STDCALL LsaDeregisterLogonProcess ( - DWORD Unknown0, - DWORD Unknown1 + ULONG Unknown0, + ULONG Unknown1 ) { return STATUS_NOT_IMPLEMENTED; @@ -62,20 +62,20 @@ NTSTATUS STDCALL LsaFreeReturnBuffer (PVOID Buffer) * @unimplemented */ NTSTATUS STDCALL LsaLogonUser ( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2, - DWORD Unknown3, - DWORD Unknown4, - DWORD Unknown5, - DWORD Unknown6, - DWORD Unknown7, - DWORD Unknown8, - DWORD Unknown9, - DWORD Unknown10, - DWORD Unknown11, - DWORD Unknown12, - DWORD Unknown13 + ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2, + ULONG Unknown3, + ULONG Unknown4, + ULONG Unknown5, + ULONG Unknown6, + ULONG Unknown7, + ULONG Unknown8, + ULONG Unknown9, + ULONG Unknown10, + ULONG Unknown11, + ULONG Unknown12, + ULONG Unknown13 ) { return STATUS_NOT_IMPLEMENTED; @@ -86,9 +86,9 @@ NTSTATUS STDCALL LsaLogonUser ( * @unimplemented */ NTSTATUS STDCALL LsaLookupAuthenticationPackage ( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2 + ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2 ) { return STATUS_NOT_IMPLEMENTED; @@ -99,9 +99,9 @@ NTSTATUS STDCALL LsaLookupAuthenticationPackage ( * @unimplemented */ NTSTATUS STDCALL LsaRegisterLogonProcess ( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2 + ULONG Unknown0, + ULONG Unknown1, + ULONG Unknown2 ) { return STATUS_NOT_IMPLEMENTED; diff --git a/reactos/ntoskrnl/se/sd.c b/reactos/ntoskrnl/se/sd.c index 93f48031a2b..1924c872dd4 100644 --- a/reactos/ntoskrnl/se/sd.c +++ b/reactos/ntoskrnl/se/sd.c @@ -168,7 +168,7 @@ SeSetWorldSecurityDescriptor(SECURITY_INFORMATION SecurityInformation, RtlCopyMemory((PVOID)Current, SeWorldSid, SidSize); - SdRel->Owner = (DWORD)((ULONG_PTR)Current - (ULONG_PTR)SdRel); + SdRel->Owner = (ULONG)((ULONG_PTR)Current - (ULONG_PTR)SdRel); Current += SidSize; } @@ -177,7 +177,7 @@ SeSetWorldSecurityDescriptor(SECURITY_INFORMATION SecurityInformation, RtlCopyMemory((PVOID)Current, SeWorldSid, SidSize); - SdRel->Group = (DWORD)((ULONG_PTR)Current - (ULONG_PTR)SdRel); + SdRel->Group = (ULONG)((ULONG_PTR)Current - (ULONG_PTR)SdRel); Current += SidSize; } @@ -199,7 +199,7 @@ SeSetWorldSecurityDescriptor(SECURITY_INFORMATION SecurityInformation, if (!NT_SUCCESS(Status)) return Status; - SdRel->Dacl = (DWORD)((ULONG_PTR)Current - (ULONG_PTR)SdRel); + SdRel->Dacl = (ULONG)((ULONG_PTR)Current - (ULONG_PTR)SdRel); } if (SecurityInformation & SACL_SECURITY_INFORMATION) diff --git a/reactos/ntoskrnl/se/token.c b/reactos/ntoskrnl/se/token.c index 0f5052cc304..12f3051a5e9 100644 --- a/reactos/ntoskrnl/se/token.c +++ b/reactos/ntoskrnl/se/token.c @@ -2135,9 +2135,9 @@ NtCreateToken(OUT PHANDLE TokenHandle, PVOID EndMem; ULONG uLength; ULONG i; - ULONG nTokenPrivileges = 0; - LARGE_INTEGER LocalExpirationTime = {}; KPROCESSOR_MODE PreviousMode; + ULONG nTokenPrivileges = 0; + LARGE_INTEGER LocalExpirationTime = {{0}}; NTSTATUS Status = STATUS_SUCCESS; PAGED_CODE(); diff --git a/reactos/ntoskrnl/vdm/vdmexec.c b/reactos/ntoskrnl/vdm/vdmexec.c index 18cdc82041c..4371f46fa36 100644 --- a/reactos/ntoskrnl/vdm/vdmexec.c +++ b/reactos/ntoskrnl/vdm/vdmexec.c @@ -22,8 +22,8 @@ NTSTATUS NTAPI VdmpGetVdmTib(OUT PVDM_TIB *VdmTib) { - PAGED_CODE(); PVDM_TIB Tib; + PAGED_CODE(); /* Assume vailure */ *VdmTib = NULL; diff --git a/reactos/ntoskrnl/vdm/vdmmain.c b/reactos/ntoskrnl/vdm/vdmmain.c index 63bfbc20798..8f6a28b6ad5 100644 --- a/reactos/ntoskrnl/vdm/vdmmain.c +++ b/reactos/ntoskrnl/vdm/vdmmain.c @@ -56,7 +56,7 @@ KeI386VdmInitialize(VOID) /* Make sure that there is a WOW key */ RtlInitUnicodeString(&Name, L"\\Registry\\Machine\\System\\CurrentControlSet\\" - "Control\\Wow"); + L"Control\\Wow"); InitializeObjectAttributes(&ObjectAttributes, &Name, OBJ_CASE_INSENSITIVE,