Many fixes to NDK Modified: trunk/reactos/include/ndk/haltypes.h Modified: trunk/reactos/include/ndk/iotypes.h Modified: trunk/reactos/include/ndk/kdtypes.h Modified: trunk/reactos/include/ndk/ketypes.h Modified: trunk/reactos/include/ndk/ldrtypes.h Modified: trunk/reactos/include/ndk/potypes.h Modified: trunk/reactos/include/ndk/pstypes.h Modified: trunk/reactos/include/ndk/rtlfuncs.h Modified: trunk/reactos/include/ndk/rtltypes.h Modified: trunk/reactos/include/ndk/zwfuncs.h Modified: trunk/reactos/include/ndk/zwtypes.h _____
Modified: trunk/reactos/include/ndk/haltypes.h --- trunk/reactos/include/ndk/haltypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/haltypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -32,6 +32,11 @@
#define MB_FLAGS_GRAPHICS_TABLE (0x800)
/* ENUMERATIONS **************************************************************/ +typedef enum _FIRMWARE_ENTRY +{ + /*FIXME */ + HalFixMe +} FIRMWARE_ENTRY;
/* TYPES *********************************************************************/
@@ -61,12 +66,5 @@ ULONG BootLoaderName; } LOADER_PARAMETER_BLOCK, *PLOADER_PARAMETER_BLOCK;
-typedef struct _DRIVE_LAYOUT_INFORMATION -{ - DWORD PartitionCount; - DWORD Signature; - PARTITION_INFORMATION PartitionEntry[1]; -} DRIVE_LAYOUT_INFORMATION; - #endif
_____
Modified: trunk/reactos/include/ndk/iotypes.h --- trunk/reactos/include/ndk/iotypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/iotypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -18,18 +18,9 @@
extern POBJECT_TYPE NTOSAPI IoDeviceObjectType; extern POBJECT_TYPE NTOSAPI IoDriverObjectType; extern POBJECT_TYPE NTOSAPI IoFileObjectType; -extern ULONG NTOSAPI IoReadOperationCount; -extern ULONGLONG NTOSAPI IoReadTransferCount; -extern ULONG NTOSAPI IoWriteOperationCount; -extern ULONGLONG NTOSAPI IoWriteTransferCount; -extern KSPIN_LOCK NTOSAPI IoStatisticsLock;
/* CONSTANTS *****************************************************************/
-/* I/O Types */ -#define IO_TYPE_DRIVER 4L -#define IO_TYPE_TIMER 9L - /* ENUMERATIONS **************************************************************/
/* TYPES *********************************************************************/ _____
Modified: trunk/reactos/include/ndk/kdtypes.h --- trunk/reactos/include/ndk/kdtypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/kdtypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -17,6 +17,17 @@
/* ENUMERATIONS **************************************************************/
+typedef enum _DEBUG_CONTROL_CODE +{ + DebugGetTraceInformation = 1, + DebugSetInternalBreakpoint, + DebugSetSpecialCall, + DebugClearSpecialCalls, + DebugQuerySpecialCalls, + DebugDbgBreakPoint, + DebugDbgLoadSymbols +} DEBUG_CONTROL_CODE; + /* TYPES *********************************************************************/
typedef struct _KD_PORT_INFORMATION _____
Modified: trunk/reactos/include/ndk/ketypes.h --- trunk/reactos/include/ndk/ketypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/ketypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -12,6 +12,10 @@
/* DEPENDENCIES **************************************************************/ #include "haltypes.h"
+/* CONSTANTS *****************************************************************/ +#define SSDT_MAX_ENTRIES 4 +#define PROCESSOR_FEATURE_MAX 64 + /* EXPORTED DATA *************************************************************/ extern CHAR NTOSAPI KeNumberProcessors; extern LOADER_PARAMETER_BLOCK NTOSAPI KeLoaderBlock; @@ -24,10 +28,6 @@ extern SSDT_ENTRY NTOSAPI KeServiceDescriptorTable[SSDT_MAX_ENTRIES]; extern SSDT_ENTRY NTOSAPI KeServiceDescriptorTableShadow[SSDT_MAX_ENTRIES];
-/* CONSTANTS *****************************************************************/ -#define SSDT_MAX_ENTRIES 4 -#define PROCESSOR_FEATURE_MAX 64 - /* ENUMERATIONS **************************************************************/
/* TYPES *********************************************************************/ @@ -95,6 +95,31 @@ USHORT Reserved9; } KTRAP_FRAME, *PKTRAP_FRAME;
+typedef struct _LDT_ENTRY { + WORD LimitLow; + WORD BaseLow; + union { + struct { + BYTE BaseMid; + BYTE Flags1; + BYTE Flags2; + BYTE BaseHi; + } Bytes; + struct { + DWORD BaseMid : 8; + DWORD Type : 5; + DWORD Dpl : 2; + DWORD Pres : 1; + DWORD LimitHi : 4; + DWORD Sys : 1; + DWORD Reserved_0 : 1; + DWORD Default_Big : 1; + DWORD Granularity : 1; + DWORD BaseHi : 8; + } Bits; + } HighWord; +} LDT_ENTRY, *PLDT_ENTRY, *LPLDT_ENTRY; + /* i386 Doesn't have Exception Frames */ typedef struct _KEXCEPTION_FRAME {
@@ -124,6 +149,14 @@ ULONG DispatchCode[106]; } KINTERRUPT, *PKINTERRUPT;
+typedef struct _KEVENT_PAIR +{ + CSHORT Type; + CSHORT Size; + KEVENT LowEvent; + KEVENT HighEvent; +} KEVENT_PAIR, *PKEVENT_PAIR; + /* FIXME: Add KOBJECTS Here */
#endif _____
Modified: trunk/reactos/include/ndk/ldrtypes.h --- trunk/reactos/include/ndk/ldrtypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/ldrtypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -14,19 +14,6 @@
/* EXPORTED DATA *************************************************************/
/* CONSTANTS *****************************************************************/ -#define IMAGE_SCN_TYPE_REG 0x00000000 -#define IMAGE_SCN_TYPE_DSECT 0x00000001 -#define IMAGE_SCN_TYPE_NOLOAD 0x00000002 -#define IMAGE_SCN_TYPE_GROUP 0x00000004 -#define IMAGE_SCN_TYPE_COPY 0x00000010 - -#define IMAGE_FILE_MACHINE_ARM 0x000001C0 -#define IMAGE_FILE_MACHINE_IA64 0x00000200 -#define IMAGE_FILE_MACHINE_ALPHA64 0x00000284 -#define IMAGE_FILE_MACHINE_AMD64 0x00008664 -#define IMAGE_FILE_MACHINE_M32R 0x00009041 -#define IMAGE_FILE_MACHINE_AXP64 IMAGE_FILE_MACHINE_ALPHA64 - #define RESOURCE_TYPE_LEVEL 0 #define RESOURCE_NAME_LEVEL 1 #define RESOURCE_LANGUAGE_LEVEL 2 _____
Modified: trunk/reactos/include/ndk/potypes.h --- trunk/reactos/include/ndk/potypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/potypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -10,6 +10,7 @@
#define _POTYPES_H
/* DEPENDENCIES **************************************************************/ +#include <ddk/ntpoapi.h>
/* EXPORTED DATA *************************************************************/
@@ -19,28 +20,6 @@
/* TYPES *********************************************************************/
-typedef struct _PROCESSOR_IDLE_TIMES -{ - ULONGLONG StartTime; - ULONGLONG EndTime; - ULONG IdleHandlerReserved[4]; -} PROCESSOR_IDLE_TIMES, *PPROCESSOR_IDLE_TIMES; - -typedef struct _PROCESSOR_PERF_STATE -{ - UCHAR PercentFrequency; - UCHAR MinCapacity; - USHORT Power; - UCHAR IncreaseLevel; - UCHAR DecreaseLevel; - USHORT Flags; - ULONG IncreaseTime; - ULONG DecreaseTime; - ULONG IncreaseCount; - ULONG DecreaseCount; - ULONGLONG PerformanceTime; -} PROCESSOR_PERF_STATE, *PPROCESSOR_PERF_STATE; - typedef struct _PROCESSOR_POWER_STATE { PVOID IdleFunction; _____
Modified: trunk/reactos/include/ndk/pstypes.h --- trunk/reactos/include/ndk/pstypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/pstypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -40,6 +40,9 @@
/* ENUMERATIONS **************************************************************/
+/* FUNCTION TYPES **********************************************/ +typedef DWORD (*STDCALL PTHREAD_START_ROUTINE) (LPVOID); + /* TYPES *********************************************************************/
struct _ETHREAD; @@ -119,6 +122,15 @@ ULONG Buffer[0x136]; } GDI_TEB_BATCH, *PGDI_TEB_BATCH;
+typedef struct _INITIAL_TEB +{ + PVOID StackBase; + PVOID StackLimit; + PVOID StackCommit; + PVOID StackCommitMax; + PVOID StackReserved; +} INITIAL_TEB, *PINITIAL_TEB; + typedef struct _TEB { NT_TIB Tib; /* 00h */ @@ -126,7 +138,7 @@ CLIENT_ID Cid; /* 20h */ PVOID ActiveRpcInfo; /* 28h */ PVOID ThreadLocalStoragePointer; /* 2Ch */ - PPEB Peb; /* 30h */ + struct _PEB *Peb; /* 30h */ ULONG LastErrorValue; /* 34h */ ULONG CountOfOwnedCriticalSections; /* 38h */ PVOID CsrClientThread; /* 3Ch */ @@ -171,14 +183,14 @@ PVOID Instrumentation[0x10]; /* F2Ch */ PVOID WinSockData; /* F6Ch */ ULONG GdiBatchCount; /* F70h */ - USHORT Spare2; /* F74h */ + USHORT _Spare2; /* F74h */ BOOLEAN IsFiber; /* F76h */ UCHAR Spare3; /* F77h */ - ULONG Spare4; /* F78h */ - ULONG Spare5; /* F7Ch */ + ULONG _Spare4; /* F78h */ + ULONG _Spare5; /* F7Ch */ PVOID ReservedForOle; /* F80h */ ULONG WaitingOnLoaderLock; /* F84h */ - ULONG Unknown[11]; /* F88h */ + ULONG _Unknown[11]; /* F88h */ PVOID FlsSlots; /* FB4h */ PVOID WineDebugInfo; /* Needed for WINE DLL's */ } TEB, *PTEB; _____
Modified: trunk/reactos/include/ndk/rtlfuncs.h --- trunk/reactos/include/ndk/rtlfuncs.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/rtlfuncs.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -1,22 +1,3 @@
-/* $Id: rtlfuncs.h,v 1.1.2.2 2004/10/25 02:57:20 ion Exp $ - * - * ReactOS Headers - * Copyright (C) 1998-2004 ReactOS Team - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ /* * PROJECT: ReactOS Native Headers * FILE: include/ndk/rtlfuncs.h @@ -29,20 +10,11 @@ #define _RTLFUNCS_H
#include <ndk/rtltypes.h> +#include <ndk/pstypes.h>
/*FIXME: REORGANIZE THIS */ /* FIXME: SOME FUNCTIONS MUST BE PROTECTED AGAINST DDK/IFS. */
-typedef NTSTATUS -(*PHEAP_ENUMERATION_ROUTINE)(IN PVOID HeapHandle, - IN PVOID UserParam); - -typedef EXCEPTION_DISPOSITION -(*PEXCEPTION_HANDLER)(struct _EXCEPTION_RECORD*, - PVOID, - struct _CONTEXT*, - PVOID); -
#define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
@@ -122,7 +94,7 @@ }
ULONG -STDCALL +CDECL DbgPrint( IN PCH Format, IN ...); @@ -222,8 +194,8 @@ BOOLEAN STDCALL RtlEqualUnicodeString ( - PUNICODE_STRING String1, - PUNICODE_STRING String2, + PCUNICODE_STRING String1, + PCUNICODE_STRING String2, BOOLEAN CaseInsensitive );
_____
Modified: trunk/reactos/include/ndk/rtltypes.h --- trunk/reactos/include/ndk/rtltypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/rtltypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -44,6 +44,17 @@
ExceptionCollidedUnwind } EXCEPTION_DISPOSITION;
+/* FUNCTION TYPES ************************************************************/ +typedef NTSTATUS +(*PHEAP_ENUMERATION_ROUTINE)(IN PVOID HeapHandle, + IN PVOID UserParam); + +typedef EXCEPTION_DISPOSITION +(*PEXCEPTION_HANDLER)(struct _EXCEPTION_RECORD*, + PVOID, + struct _CONTEXT*, + PVOID); + /* TYPES *********************************************************************/
typedef unsigned short RTL_ATOM; @@ -151,21 +162,7 @@ CLIENT_ID ClientId; SECTION_IMAGE_INFORMATION ImageInfo; } RTL_PROCESS_INFO, *PRTL_PROCESS_INFO; - -typedef struct _RTL_BITMAP -{ - ULONG SizeOfBitMap; - PULONG Buffer; -} RTL_BITMAP; -typedef RTL_BITMAP *PRTL_BITMAP;
-typedef struct _RTL_BITMAP_RUN -{ - ULONG StartingIndex; - ULONG NumberOfBits; -} RTL_BITMAP_RUN; -typedef RTL_BITMAP_RUN *PRTL_BITMAP_RUN; - /* FIXME: This is a Windows Type which which we are not implementing properly The type below however is our own implementation. We will eventually use Windows' */ typedef struct _RTL_ATOM_TABLE @@ -203,6 +200,4 @@ } TIME_ZONE_INFORMATION, *PTIME_ZONE_INFORMATION, *LPTIME_ZONE_INFORMATION; #endif
-typedef LPTIME_ZONE_INFORMATION PTIME_ZONE_INFORMATION; - #endif _____
Modified: trunk/reactos/include/ndk/zwfuncs.h --- trunk/reactos/include/ndk/zwfuncs.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/zwfuncs.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -12,6 +12,7 @@
/* DEPENDENCIES **************************************************************/ #include "lpctypes.h" #include "zwtypes.h" +#include "kdtypes.h"
/* FUNCTION TYPES ************************************************************/
@@ -1036,7 +1037,8 @@ PLPC_MESSAGE LpcMessage );
-STDCALL +NTSTATUS +STDCALL NtLoadDriver( IN PUNICODE_STRING DriverServiceName ); @@ -2786,7 +2788,7 @@ NtSetQuotaInformationFile( HANDLE FileHandle, PIO_STATUS_BLOCK IoStatusBlock, - PFILE_USER_QUOTA_INFORMATION Buffer, + PFILE_QUOTA_INFORMATION Buffer, ULONG BufferLength );
@@ -2795,7 +2797,7 @@ ZwSetQuotaInformationFile( HANDLE FileHandle, PIO_STATUS_BLOCK IoStatusBlock, - PFILE_USER_QUOTA_INFORMATION Buffer, + PFILE_QUOTA_INFORMATION Buffer, ULONG BufferLength );
@@ -2931,13 +2933,13 @@ NTSTATUS STDCALL NtShutdownSystem( - IN SHUTDOWN_ACTION Action + IN ULONG Action );
NTSTATUS STDCALL ZwShutdownSystem( - IN SHUTDOWN_ACTION Action + IN ULONG Action );
NTSTATUS @@ -3686,10 +3688,10 @@ IN HANDLE TargetProcessHandle, OUT PHANDLE TargetHandle, IN ACCESS_MASK DesiredAccess, - IN BOOLEAN InheritHandle, + IN ULONG HandleAttributes, IN ULONG Options ); - + NTSTATUS STDCALL ZwDuplicateObject( @@ -3698,7 +3700,7 @@ IN HANDLE TargetProcessHandle, OUT PHANDLE TargetHandle, IN ACCESS_MASK DesiredAccess, - IN BOOLEAN InheritHandle, + IN ULONG HandleAttributes, IN ULONG Options );
_____
Modified: trunk/reactos/include/ndk/zwtypes.h --- trunk/reactos/include/ndk/zwtypes.h 2005-06-19 01:10:08 UTC (rev 16070) +++ trunk/reactos/include/ndk/zwtypes.h 2005-06-19 03:25:33 UTC (rev 16071) @@ -15,6 +15,7 @@
/* EXPORTED DATA *************************************************************/
/* CONSTANTS *****************************************************************/ +#define MAX_BUS_NAME 24
/* ENUMERATIONS **************************************************************/
@@ -31,6 +32,13 @@ MaxPlugPlayVirtualBusType } PLUGPLAY_VIRTUAL_BUS_TYPE, *PPLUGPLAY_VIRTUAL_BUS_TYPE;
+typedef enum _SYSTEM_DOCK_STATE +{ + SystemDockStateUnknown, + SystemUndocked, + SystemDocked +} SYSTEM_DOCK_STATE, *PSYSTEM_DOCK_STATE; + /**** Information Classes ****/ /* * System @@ -79,7 +87,7 @@ SystemPrioritySeperation, SystemPlugPlayBusInformation, SystemDockInformation, - SystemPowerInformation, + _SystemPowerInformation, /* FIXME */ SystemProcessorSpeedInformation, SystemCurrentTimeZoneInformation, SystemLookasideInformation, @@ -307,7 +315,7 @@
/* * Event - * + */ /* Class 0 */ typedef struct _EVENT_BASIC_INFORMATION { @@ -316,6 +324,26 @@ } EVENT_BASIC_INFORMATION, *PEVENT_BASIC_INFORMATION;
/* + * Process + */ +/* Class 23 */ +typedef struct _PROCESS_DEVICEMAP_INFORMATION +{ + union + { + struct + { + HANDLE DirectoryHandle; + } Set; + struct + { + ULONG DriveMap; + UCHAR DriveType[32]; + } Query; + }; +} PROCESS_DEVICEMAP_INFORMATION, *PPROCESS_DEVICEMAP_INFORMATION; + +/* * System */
@@ -523,7 +551,7 @@ LARGE_INTEGER DpcTime; LARGE_INTEGER InterruptTime; ULONG InterruptCount; -} SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION, +} SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION, *PSYSTEM_PROCESSOR_PERFORMANCE_INFORMATION;
/* Class 9 */ typedef struct _SYSTEM_FLAGS_INFORMATION @@ -585,7 +613,7 @@ typedef struct _SYSTEM_BACKTRACE_INFORMATION { /* FIXME */ - ULONG Unknown[4] + ULONG Unknown[4]; ULONG Count; SYSTEM_BACKTRACE_INFORMATION_ENTRY Trace[1]; } SYSTEM_BACKTRACE_INFORMATION, *PSYSTEM_BACKTRACE_INFORMATION; @@ -715,7 +743,8 @@ typedef struct _SYSTEM_VDM_BOP_INFO { /* FIXME */ -} + PVOID Dummy; +} SYSTEM_VDM_BOP_INFO, *PSYSTEM_VDM_BOP_INFO;
/* Class 21 */ typedef struct _SYSTEM_CACHE_INFORMATION @@ -908,7 +937,8 @@ } SYSTEM_DOCK_INFORMATION, *PSYSTEM_DOCK_INFORMATION;
/* Class 42 */ -typedef struct _SYSTEM_POWER_INFORMATION +/* FIXME: Conflict with WINNT.H */ +typedef struct __SYSTEM_POWER_INFORMATION { BOOLEAN SystemSuspendSupported; BOOLEAN SystemHibernateSupported; @@ -920,18 +950,18 @@ BOOLEAN SystemAcOrDc; BOOLEAN PowerDownDisabled; LARGE_INTEGER SpindownDrives; -} SYSTEM_POWER_INFORMATION, *PSYSTEM_POWER_INFORMATION; +} _SYSTEM_POWER_INFORMATION, *P_SYSTEM_POWER_INFORMATION;
/* Class 43 */ typedef struct _SYSTEM_LEGACY_DRIVER_INFORMATION { PNP_VETO_TYPE VetoType; - UNCODE_STRING VetoDriver; + UNICODE_STRING VetoDriver; /* Buffer Follows */ -} SYSTEM_PROCESSOR_SPEED_INFORMATION, *PSYSTEM_PROCESSOR_SPEED_INFORMATION; +} SYSTEM_LEGACY_DRIVER_INFORMATION, *PSYSTEM_LEGACY_DRIVER_INFORMATION;
/* Class 44 */ -typedef TIME_ZONE_INFORMATION RTL_TIME_ZONE_INFORMATION; +typedef struct _TIME_ZONE_INFORMATION RTL_TIME_ZONE_INFORMATION;
/* Class 45 */ typedef struct _SYSTEM_LOOKASIDE_INFORMATION @@ -948,13 +978,13 @@ } SYSTEM_LOOKASIDE_INFORMATION, *PSYSTEM_LOOKASIDE_INFORMATION;
/* Class 46 */ -/* Not a structure. Only a HANDLE for the SlipEvent; +/* Not a structure. Only a HANDLE for the SlipEvent; */
/* Class 47 */ -/* Not a structure. Only a ULONG for the SessionId; +/* Not a structure. Only a ULONG for the SessionId; */
/* Class 48 */ -/* Not a structure. Only a ULONG for the SessionId; +/* Not a structure. Only a ULONG for the SessionId; */
/* Class 49 */ /* FIXME */