Fix some NDK things and missing w32api defines.
Modified: trunk/reactos/include/ndk/haltypes.h
Modified: trunk/reactos/include/ndk/iotypes.h
Modified: trunk/reactos/include/ndk/kefuncs.h
Modified: trunk/reactos/include/ndk/lpctypes.h
Modified: trunk/reactos/include/ndk/mmtypes.h
Modified: trunk/reactos/include/ndk/obtypes.h
Modified: trunk/reactos/include/ndk/rtltypes.h
Modified: trunk/reactos/include/ndk/umtypes.h
Modified: trunk/reactos/include/ndk/zwfuncs.h
Modified: trunk/reactos/include/ndk/zwtypes.h
Modified: trunk/reactos/include/ntos/ntpnp.h
Modified: trunk/reactos/include/reactos/helper.h
Modified: trunk/reactos/w32api/include/ddk/ntifs.h
Modified: trunk/reactos/w32api/include/ddk/winddk.h
_____
Modified: trunk/reactos/include/ndk/haltypes.h
--- trunk/reactos/include/ndk/haltypes.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/include/ndk/haltypes.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -10,7 +10,6 @@
#define _HALTYPES_H
/* DEPENDENCIES
**************************************************************/
-//#include <ddk/ntdddisk.h>
/* EXPORTED DATA
*************************************************************/
extern ULONG NTOSAPI KdComPortInUse;
@@ -30,6 +29,7 @@
#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)
/* ENUMERATIONS
**************************************************************/
typedef enum _FIRMWARE_ENTRY
@@ -44,6 +44,19 @@
/* TYPES
*********************************************************************/
+typedef struct _HAL_PRIVATE_DISPATCH
+{
+ ULONG Version;
+} HAL_PRIVATE_DISPATCH, *PHAL_PRIVATE_DISPATCH;
+
+#ifdef __NTOSKRNL__
+extern NTOSAPI HAL_PRIVATE_DISPATCH HalPrivateDispatchTable;
+#else
+extern NTOSAPI PHAL_PRIVATE_DISPATCH HalPrivateDispatchTable;
+#endif
+
+#define HAL_PRIVATE_DISPATCH_VERSION 1
+
typedef struct _LOADER_MODULE
{
ULONG ModStart;
_____
Modified: trunk/reactos/include/ndk/iotypes.h
--- trunk/reactos/include/ndk/iotypes.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/iotypes.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -20,6 +20,11 @@
extern POBJECT_TYPE NTOSAPI IoFileObjectType;
/* CONSTANTS
*****************************************************************/
+#define DOE_UNLOAD_PENDING 0x1
+#define DOE_DELETE_PENDING 0x2
+#define DOE_REMOVE_PENDING 0x4
+#define DOE_REMOVE_PROCESSED 0x8
+#define DOE_START_PENDING 0x10
/* ENUMERATIONS
**************************************************************/
_____
Modified: trunk/reactos/include/ndk/kefuncs.h
--- trunk/reactos/include/ndk/kefuncs.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/kefuncs.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -277,5 +277,9 @@
KeRaiseUserException(
IN NTSTATUS ExceptionCode
);
+
+VOID
+STDCALL
+KeFlushWriteBuffer(VOID);
#endif
_____
Modified: trunk/reactos/include/ndk/lpctypes.h
--- trunk/reactos/include/ndk/lpctypes.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/include/ndk/lpctypes.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -16,6 +16,8 @@
/* CONSTANTS
*****************************************************************/
#define LPC_MESSAGE_BASE_SIZE 24
#define MAX_MESSAGE_DATA (0x130)
+#define PORT_MAX_DATA_LENGTH 0x104
+#define PORT_MAX_MESSAGE_LENGTH 0x148
/* ENUMERATIONS
**************************************************************/
_____
Modified: trunk/reactos/include/ndk/mmtypes.h
--- trunk/reactos/include/ndk/mmtypes.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/mmtypes.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -16,6 +16,17 @@
/* CONSTANTS
*****************************************************************/
/* ENUMERATIONS
**************************************************************/
+typedef enum _PP_NPAGED_LOOKASIDE_NUMBER
+{
+ LookasideSmallIrpList = 0,
+ LookasideLargeIrpList = 1,
+ LookasideMdlList = 2,
+ LookasideCreateInfoList = 3,
+ LookasideNameBufferList = 4,
+ LookasideTwilightList = 5,
+ LookasideCompletionList = 6,
+ LookasideMaximumList = 7
+} PP_NPAGED_LOOKASIDE_NUMBER;
/* TYPES
*********************************************************************/
_____
Modified: trunk/reactos/include/ndk/obtypes.h
--- trunk/reactos/include/ndk/obtypes.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/obtypes.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -13,7 +13,7 @@
/* EXPORTED DATA
*************************************************************/
extern NTOSAPI POBJECT_TYPE ObDirectoryType;
-extern NTOSAPI struct DEVICE_MAP* ObSystemDeviceMap;
+extern NTOSAPI PDEVICE_MAP ObSystemDeviceMap;
/* CONSTANTS
*****************************************************************/
_____
Modified: trunk/reactos/include/ndk/rtltypes.h
--- trunk/reactos/include/ndk/rtltypes.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/include/ndk/rtltypes.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -387,6 +387,11 @@
AclRevisionInformation = 1,
AclSizeInformation
} ACL_INFORMATION_CLASS;
+
+ #define TIME_ZONE_ID_UNKNOWN 0
+ #define TIME_ZONE_ID_STANDARD 1
+ #define TIME_ZONE_ID_DAYLIGHT 2
+ #define TIME_ZONE_ID_INVALID 0xFFFFFFFF
#endif
#endif
_____
Modified: trunk/reactos/include/ndk/umtypes.h
--- trunk/reactos/include/ndk/umtypes.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/umtypes.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -292,79 +292,7 @@
#define IsLastEntry(ListHead, Entry) \
((ListHead)->Blink == Entry)
-
-#define InsertAscendingListFIFO(ListHead, Type, ListEntryField,
NewEntry, SortField)\
-{\
- PLIST_ENTRY current;\
-\
- current = (ListHead)->Flink;\
- while (current != (ListHead))\
- {\
- if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField >\
- (NewEntry)->SortField)\
- {\
- break;\
- }\
- current = current->Flink;\
- }\
-\
- InsertTailList(current, &((NewEntry)->ListEntryField));\
-}
-#define InsertDescendingListFIFO(ListHead, Type, ListEntryField,
NewEntry, SortField)\
-{\
- PLIST_ENTRY current;\
-\
- current = (ListHead)->Flink;\
- while (current != (ListHead))\
- {\
- if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField <\
- (NewEntry)->SortField)\
- {\
- break;\
- }\
- current = current->Flink;\
- }\
-\
- InsertTailList(current, &((NewEntry)->ListEntryField));\
-}
-
-#define InsertAscendingList(ListHead, Type, ListEntryField, NewEntry,
SortField)\
-{\
- PLIST_ENTRY current;\
-\
- current = (ListHead)->Flink;\
- while (current != (ListHead))\
- {\
- if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField >=\
- (NewEntry)->SortField)\
- {\
- break;\
- }\
- current = current->Flink;\
- }\
-\
- InsertTailList(current, &((NewEntry)->ListEntryField));\
-}
-
-#define InsertDescendingList(ListHead, Type, ListEntryField, NewEntry,
SortField)\
-{\
- PLIST_ENTRY current;\
-\
- current = (ListHead)->Flink;\
- while (current != (ListHead))\
- {\
- if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField <=\
- (NewEntry)->SortField)\
- {\
- break;\
- }\
- current = current->Flink;\
- }\
-\
- InsertTailList(current, &((NewEntry)->ListEntryField));\
-}
-
/*
* Constant String Macro
*/
_____
Modified: trunk/reactos/include/ndk/zwfuncs.h
--- trunk/reactos/include/ndk/zwfuncs.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/zwfuncs.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -954,6 +954,15 @@
NTSTATUS
STDCALL
+NtGetPlugPlayEvent(
+ ULONG Reserved1,
+ ULONG Reserved2,
+ struct _PLUGPLAY_EVENT_BLOCK *Buffer,
+ ULONG BufferSize
+);
+
+NTSTATUS
+STDCALL
NtImpersonateClientOfPort(
HANDLE PortHandle,
PLPC_MESSAGE ClientMessage
@@ -1498,6 +1507,14 @@
);
NTSTATUS
+STDCALL
+NtPlugPlayControl(
+ ULONG ControlCode,
+ PVOID Buffer,
+ ULONG BufferSize
+);
+
+NTSTATUS
STDCALL
NtPowerInformation(
POWER_INFORMATION_LEVEL PowerInformationLevel,
@@ -2049,7 +2066,7 @@
STDCALL
NtQuerySystemEnvironmentValue(
IN PUNICODE_STRING Name,
- OUT PVOID Value,
+ OUT PWSTR Value,
ULONG Length,
PULONG ReturnLength
);
@@ -3307,23 +3324,6 @@
VOID
);
-NTSTATUS
-STDCALL
-NtPlugPlayControl(
- DWORD Unknown1,
- DWORD Unknown2,
- DWORD Unknown3
-);
-
-NTSTATUS
-STDCALL
-NtGetPlugPlayEvent(
- ULONG Reserved1,
- ULONG Reserved2,
- PVOID Buffer,
- ULONG BufferLength
-);
-
NTSTATUS
STDCALL
NtSetSystemPowerState(
@@ -3608,7 +3608,7 @@
STDCALL
NtQuerySection(
IN HANDLE SectionHandle,
- IN CINT SectionInformationClass,
+ IN SECTION_INFORMATION_CLASS SectionInformationClass,
OUT PVOID SectionInformation,
IN ULONG Length,
OUT PULONG ResultLength
_____
Modified: trunk/reactos/include/ndk/zwtypes.h
--- trunk/reactos/include/ndk/zwtypes.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ndk/zwtypes.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -25,6 +25,9 @@
#define EVENT_PAIR_ALL_ACCESS (0x1F0000L)
+#define OBJECT_TYPE_CREATE 0x0001
+#define OBJECT_TYPE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | 0x1)
+
/* For ProcessDeviceMap */
#define DOSDEVICE_DRIVE_UNKNOWN 0
#define DOSDEVICE_DRIVE_CALCULATE 1
@@ -36,7 +39,6 @@
/* ENUMERATIONS
**************************************************************/
-
typedef enum _HARDERROR_RESPONSE_OPTION
{
OptionAbortRetryIgnore,
@@ -250,6 +252,7 @@
typedef unsigned short LANGID;
typedef LANGID *PLANGID;
+struct _PLUGPLAY_EVENT_BLOCK; /* FIXME: Ask Filip if it's OK to define
it */
/**** Information Structures ****/
/*
_____
Modified: trunk/reactos/include/ntos/ntpnp.h
--- trunk/reactos/include/ntos/ntpnp.h 2005-06-23 01:36:58 UTC (rev
16233)
+++ trunk/reactos/include/ntos/ntpnp.h 2005-06-23 03:18:20 UTC (rev
16234)
@@ -71,24 +71,6 @@
MaxPlugEventCategory
} PLUGPLAY_EVENT_CATEGORY;
-#ifndef __USE_W32API
-typedef enum _PNP_VETO_TYPE {
- PNP_VetoTypeUnknown,
- PNP_VetoLegacyDevice,
- PNP_VetoPendingClose,
- PNP_VetoWindowsApp,
- PNP_VetoWindowsService,
- PNP_VetoOutstandingOpen,
- PNP_VetoDevice,
- PNP_VetoDriver,
- PNP_VetoIllegalDeviceRequest,
- PNP_VetoInsufficientPower,
- PNP_VetoNonDisableable,
- PNP_VetoLegacyDriver,
- PNP_VetoInsufficientRights,
-} PNP_VETO_TYPE;
-#endif
-
/*
* Plug and Play event structure used by NtGetPlugPlayEvent.
*
@@ -184,14 +166,13 @@
*
* Remarks
* This function isn't multi-thread safe!
- */
-
NTSTATUS STDCALL
NtGetPlugPlayEvent(
ULONG Reserved1,
ULONG Reserved2,
PPLUGPLAY_EVENT_BLOCK Buffer,
ULONG BufferSize);
+ */
/*
* NtPlugPlayControl
@@ -294,13 +275,6 @@
ULONG Flags; /* DN_ see cfg.h */
} PLUGPLAY_DEVICE_STATUS_DATA, *PPLUGPLAY_DEVICE_STATUS_DATA;
-
-NTSTATUS STDCALL
-NtPlugPlayControl(
- ULONG ControlCode,
- PVOID Buffer,
- ULONG BufferSize);
-
#endif /* __GUIDS_ONLY__ */
#endif /* __NTPNP_H */
_____
Modified: trunk/reactos/include/reactos/helper.h
--- trunk/reactos/include/reactos/helper.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/include/reactos/helper.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -41,4 +41,77 @@
#define SECONDS_TO_100NS(seconds) (((LONGLONG)(seconds)) *
MILLIS_TO_100NS(1000))
#define MINUTES_TO_100NS(minutes) (((LONGLONG)(minutes)) *
SECONDS_TO_100NS(60))
#define HOURS_TO_100NS(hours) (((LONGLONG)(hours)) *
MINUTES_TO_100NS(60))
+#define TYPE_ALIGNMENT(t) FIELD_OFFSET(struct { char x; t test; },
test)
+#define InsertAscendingListFIFO(ListHead, Type, ListEntryField,
NewEntry, SortField)\
+{\
+ PLIST_ENTRY current;\
+\
+ current = (ListHead)->Flink;\
+ while (current != (ListHead))\
+ {\
+ if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField >\
+ (NewEntry)->SortField)\
+ {\
+ break;\
+ }\
+ current = current->Flink;\
+ }\
+\
+ InsertTailList(current, &((NewEntry)->ListEntryField));\
+}
+
+#define InsertDescendingListFIFO(ListHead, Type, ListEntryField,
NewEntry, SortField)\
+{\
+ PLIST_ENTRY current;\
+\
+ current = (ListHead)->Flink;\
+ while (current != (ListHead))\
+ {\
+ if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField <\
+ (NewEntry)->SortField)\
+ {\
+ break;\
+ }\
+ current = current->Flink;\
+ }\
+\
+ InsertTailList(current, &((NewEntry)->ListEntryField));\
+}
+
+#define InsertAscendingList(ListHead, Type, ListEntryField, NewEntry,
SortField)\
+{\
+ PLIST_ENTRY current;\
+\
+ current = (ListHead)->Flink;\
+ while (current != (ListHead))\
+ {\
+ if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField >=\
+ (NewEntry)->SortField)\
+ {\
+ break;\
+ }\
+ current = current->Flink;\
+ }\
+\
+ InsertTailList(current, &((NewEntry)->ListEntryField));\
+}
+
+#define InsertDescendingList(ListHead, Type, ListEntryField, NewEntry,
SortField)\
+{\
+ PLIST_ENTRY current;\
+\
+ current = (ListHead)->Flink;\
+ while (current != (ListHead))\
+ {\
+ if (CONTAINING_RECORD(current, Type, ListEntryField)->SortField <=\
+ (NewEntry)->SortField)\
+ {\
+ break;\
+ }\
+ current = current->Flink;\
+ }\
+\
+ InsertTailList(current, &((NewEntry)->ListEntryField));\
+}
+
#endif
_____
Modified: trunk/reactos/w32api/include/ddk/ntifs.h
--- trunk/reactos/w32api/include/ddk/ntifs.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/w32api/include/ddk/ntifs.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -29,7 +29,7 @@
#endif
#include "ntddk.h"
-#include "ntapi.h"
+//#include "ntapi.h"
#ifdef __cplusplus
extern "C" {
@@ -329,9 +329,6 @@
#define PIN_NO_READ (4)
#define PIN_IF_BCB (8)
-#define PORT_CONNECT 0x0001
-#define PORT_ALL_ACCESS (STANDARD_RIGHTS_ALL |\
- PORT_CONNECT)
/* also in winnt.h */
#define SEC_BASED 0x00200000
#define SEC_NO_CHANGE 0x00400000
@@ -539,6 +536,12 @@
typedef struct _VACB *PVACB;
typedef struct _VAD_HEADER *PVAD_HEADER;
+typedef ULONG LBN;
+typedef LBN *PLBN;
+
+typedef ULONG VBN;
+typedef VBN *PVBN;
+
typedef struct _NOTIFY_SYNC
{
ULONG Unknown0;
@@ -1239,6 +1242,28 @@
#endif /* (VER_PRODUCTBUILD >= 2600) */
+typedef struct _BASE_MCB
+{
+ ULONG MaximumPairCount;
+ ULONG PairCount;
+ POOL_TYPE PoolType;
+ PVOID Mapping;
+} BASE_MCB;
+typedef BASE_MCB *PBASE_MCB;
+
+typedef struct _LARGE_MCB
+{
+ PFAST_MUTEX FastMutex;
+ BASE_MCB BaseMcb;
+} LARGE_MCB;
+typedef LARGE_MCB *PLARGE_MCB;
+
+typedef struct _MCB
+{
+ LARGE_MCB DummyFieldThatSizesThisStructureCorrectly;
+} MCB;
+typedef MCB *PMCB;
+
typedef struct _GENERATE_NAME_CONTEXT {
USHORT Checksum;
BOOLEAN CheckSumInserted;
@@ -2556,6 +2581,15 @@
IN NTSTATUS Ntstatus
);
+#define NLS_MB_CODE_PAGE_TAG NlsMbCodePageTag
+#define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
+#define NLS_MB_CODE_PAGE_TAG NlsMbOemCodePageTag
+#define NLS_OEM_LEAD_BYTE_INFO NlsOemLeadByteInfo
+
+extern BOOLEAN NlsMbCodePageTag;
+extern BOOLEAN NlsMbOemCodePageTag;
+extern PUSHORT NlsOemLeadByteInfo;
+
#define FsRtlIsLeadDbcsCharacter(DBCS_CHAR) (
\
(BOOLEAN)((UCHAR)(DBCS_CHAR) < 0x80 ? FALSE :
\
(NLS_MB_CODE_PAGE_TAG &&
\
_____
Modified: trunk/reactos/w32api/include/ddk/winddk.h
--- trunk/reactos/w32api/include/ddk/winddk.h 2005-06-23 01:36:58 UTC
(rev 16233)
+++ trunk/reactos/w32api/include/ddk/winddk.h 2005-06-23 03:18:20 UTC
(rev 16234)
@@ -5368,13 +5368,30 @@
IN PVOID Context,
IN PVOID Environment OPTIONAL);
-NTOSAPI
-VOID
-DDKAPI
-RtlRetrieveUlong(
- IN OUT PULONG DestinationAddress,
- IN PULONG SourceAddress);
+
+#define LONG_SIZE (sizeof(LONG))
+#define LONG_MASK (LONG_SIZE - 1)
+/*
+ * VOID
+ * RtlRetrieveUlong (
+ * PULONG DestinationAddress,
+ * PULONG SourceAddress
+ * );
+ */
+#define RtlRetrieveUlong(DestAddress,SrcAddress) \
+ if ((ULONG_PTR)(SrcAddress) & LONG_MASK) \
+ { \
+ ((PUCHAR)(DestAddress))[0]=((PUCHAR)(SrcAddress))[0]; \
+ ((PUCHAR)(DestAddress))[1]=((PUCHAR)(SrcAddress))[1]; \
+ ((PUCHAR)(DestAddress))[2]=((PUCHAR)(SrcAddress))[2]; \
+ ((PUCHAR)(DestAddress))[3]=((PUCHAR)(SrcAddress))[3]; \
+ } \
+ else \
+ { \
+ *((PULONG)(DestAddress))=*((PULONG)(SrcAddress)); \
+ }
+
NTOSAPI
VOID
DDKAPI