- Fix incompatible IO_STACK_LOCATION definition in W32api ddk/winddk.k
[reactos.git] / reactos / w32api / include / ddk / winddk.h
index 3e7d82b..256c87a 100644 (file)
@@ -101,6 +101,8 @@ struct _SECTION_OBJECT;
 struct _IO_STATUS_BLOCK;
 struct _DEVICE_DESCRIPTION;
 struct _SCATTER_GATHER_LIST;
+struct _DRIVE_LAYOUT_INFORMATION;
+struct _DRIVE_LAYOUT_INFORMATION_EX;
 
 DECLARE_INTERNAL_OBJECT(ADAPTER_OBJECT)
 DECLARE_INTERNAL_OBJECT(DMA_ADAPTER)
@@ -2468,6 +2470,15 @@ extern DECL_EXPORT HAL_DISPATCH HalDispatchTable;
 #define HalReferenceHandlerForBus       HALDISPATCH->HalReferenceHandlerForBus
 #define HalReferenceBusHandler          HALDISPATCH->HalReferenceBusHandler
 #define HalDereferenceBusHandler        HALDISPATCH->HalDereferenceBusHandler
+#define HalInitPnpDriver                HALDISPATCH->HalInitPnpDriver
+#define HalInitPowerManagement          HALDISPATCH->HalInitPowerManagement
+#define HalGetDmaAdapter                HALDISPATCH->HalGetDmaAdapter
+#define HalGetInterruptTranslator       HALDISPATCH->HalGetInterruptTranslator
+#define HalStartMirroring               HALDISPATCH->HalStartMirroring
+#define HalEndMirroring                 HALDISPATCH->HalEndMirroring
+#define HalMirrorPhysicalMemory         HALDISPATCH->HalMirrorPhysicalMemory
+#define HalEndOfBoot                    HALDISPATCH->HalEndOfBoot
+#define HalMirrorVerify                 HALDISPATCH->HalMirrorVerify
 
 typedef enum _FILE_INFORMATION_CLASS {
   FileDirectoryInformation = 1,
@@ -3169,22 +3180,6 @@ typedef struct _IO_STACK_LOCATION {
       USHORT  ShareAccess;
       ULONG POINTER_ALIGNMENT  EaLength;
     } Create;
-    /* FIXME: CreatePipe and CreateMailslot aren't defined in official
-     * DDK/IFS headers. */
-    struct {
-      PIO_SECURITY_CONTEXT  SecurityContext;
-      ULONG  Options;
-      USHORT  Reserved;
-      USHORT  ShareAccess;
-      struct _NAMED_PIPE_CREATE_PARAMETERS  *Parameters;
-    } CreatePipe;
-    struct {
-      PIO_SECURITY_CONTEXT  SecurityContext;
-      ULONG  Options;
-      USHORT  Reserved;
-      USHORT  ShareAccess;
-      struct _MAILSLOT_CREATE_PARAMETERS  *Parameters;
-    } CreateMailslot;
     struct {
       ULONG  Length;
       ULONG POINTER_ALIGNMENT  Key;
@@ -4742,8 +4737,8 @@ KfReleaseSpinLock(
  *   IN PCHAR  Field);
  */
 #ifndef CONTAINING_RECORD
-#define CONTAINING_RECORD(Address, Type, Field) \
-  ((Type *) (((ULONG_PTR) Address) - FIELD_OFFSET(Type, Field)))
+#define CONTAINING_RECORD(address, type, field) \
+  ((type *)(((ULONG_PTR)address) - (ULONG_PTR)(&(((type *)0)->field))))
 #endif
 
 /* LONG
@@ -5640,7 +5635,7 @@ NTOSAPI
 BOOLEAN
 DDKAPI
 RtlValidRelativeSecurityDescriptor(
-  IN PSECURITY_DESCRIPTOR_RELATIVE  SecurityDescriptorInput,
+  IN PISECURITY_DESCRIPTOR_RELATIVE  SecurityDescriptorInput,
   IN ULONG  SecurityDescriptorLength,
   IN SECURITY_INFORMATION  RequiredInformation);
 
@@ -9822,7 +9817,7 @@ DbgPrintReturnControlC(
   IN ...);
 
 NTOSAPI
-NTSTATUS
+BOOLEAN
 DDKAPI
 DbgQueryDebugFilterState(
   IN ULONG  ComponentId,
@@ -9836,16 +9831,6 @@ DbgSetDebugFilterState(
   IN ULONG  Level,
   IN BOOLEAN  State);
 
-NTOSAPI
-BOOLEAN
-DDKAPI
-KeRosPrintAddress ( PVOID address );
-
-NTOSAPI
-VOID
-DDKAPI
-KeRosDumpStackFrames ( PULONG Frame, ULONG FrameCount );
-
 #ifdef DBG
 
 #define KdPrint(_x_) DbgPrint _x_