diff --git a/reactos/include/evntrace.h b/reactos/include/evntrace.h new file mode 100644 index 00000000000..5a782480c90 --- /dev/null +++ b/reactos/include/evntrace.h @@ -0,0 +1,43 @@ +#ifndef ENVTRACE_H +#define ENVTRACE_H + +typedef struct _EVENT_TRACE_HEADER +{ + USHORT Size; + union { + USHORT FieldTypeFlags; + struct { + UCHAR HeaderType; + UCHAR MarkerFlags; + }; + }; + union { + ULONG Version; + struct { + UCHAR Type; + UCHAR Level; + USHORT Version; + } Class; + }; + ULONG ThreadId; + ULONG ProcessId; + LARGE_INTEGER TimeStamp; + union { + GUID Guid; + ULONGLONG GuidPtr; + }; + union { + struct { + ULONG ClientContext; + ULONG Flags; + }; + struct { + ULONG KernelTime; + ULONG UserTime; + }; + ULONG64 ProcessorTime; + }; +} EVENT_TRACE_HEADER, *PEVENT_TRACE_HEADER; + +#endif /* ENVTRACE_H */ + diff --git a/reactos/include/ntos.h b/reactos/include/ntos.h index bb1d28d504b..6e8c90dd0a8 100644 --- a/reactos/include/ntos.h +++ b/reactos/include/ntos.h @@ -10,6 +10,8 @@ #include #include #include +#include +#include #include "ntos/types.h" #include "ntos/cdrom.h" #include "ntos/console.h" @@ -51,6 +53,8 @@ #else /* Assume kernel mode */ #include #include +#include +#include #include "ntos/types.h" #include "ntos/cdrom.h" #include "ntos/console.h" diff --git a/reactos/ntoskrnl/include/ntoskrnl.h b/reactos/ntoskrnl/include/ntoskrnl.h index 71aacbcbf27..e7f89530257 100755 --- a/reactos/ntoskrnl/include/ntoskrnl.h +++ b/reactos/ntoskrnl/include/ntoskrnl.h @@ -74,7 +74,8 @@ #include #include - +#ifndef TAG #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) +#endif #endif /* INCLUDE_NTOSKRNL_H */ diff --git a/reactos/w32api/include/ddk/ntdddisk.h b/reactos/w32api/include/ddk/ntdddisk.h index 13a552dfa77..00fad5ce3b1 100644 --- a/reactos/w32api/include/ddk/ntdddisk.h +++ b/reactos/w32api/include/ddk/ntdddisk.h @@ -379,6 +379,16 @@ typedef struct _DRIVE_LAYOUT_INFORMATION_GPT { ULONG MaxPartitionCount; } DRIVE_LAYOUT_INFORMATION_GPT, *PDRIVE_LAYOUT_INFORMATION_GPT; +typedef struct _DRIVE_LAYOUT_INFORMATION_EX { + ULONG PartitionStyle; + ULONG PartitionCount; + union { + DRIVE_LAYOUT_INFORMATION_MBR Mbr; + DRIVE_LAYOUT_INFORMATION_GPT Gpt; + }; + PARTITION_INFORMATION_EX PartitionEntry[1]; +} DRIVE_LAYOUT_INFORMATION_EX, *PDRIVE_LAYOUT_INFORMATION_EX; + typedef struct _FORMAT_EX_PARAMETERS { MEDIA_TYPE MediaType; ULONG StartCylinderNumber; diff --git a/reactos/w32api/include/ddk/ntnls.h b/reactos/w32api/include/ddk/ntnls.h new file mode 100644 index 00000000000..4a435395105 --- /dev/null +++ b/reactos/w32api/include/ddk/ntnls.h @@ -0,0 +1,52 @@ +/* + * ntddmou.h + * + * Structures and definitions for NLS data types. + * + * This file is part of the w32api package. + * + * Contributors: + * Created by Alex Ionescu + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAIMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + */ + +#ifndef __NTNLS_H +#define __NTNLS_H + +#define MAXIMUM_LEADBYTES 12 + +typedef struct _CPTABLEINFO +{ + USHORT CodePage; + USHORT MaximumCharacterSize; + USHORT DefaultChar; + USHORT UniDefaultChar; + USHORT TransDefaultChar; + USHORT TransUniDefaultChar; + USHORT DBCSCodePage; + UCHAR LeadByte[MAXIMUM_LEADBYTES]; + PUSHORT MultiByteTable; + PVOID WideCharTable; + PUSHORT DBCSRanges; + PUSHORT DBCSOffsets; +} CPTABLEINFO, *PCPTABLEINFO; + +typedef struct _NLSTABLEINFO +{ + CPTABLEINFO OemTableInfo; + CPTABLEINFO AnsiTableInfo; + PUSHORT UpperCaseTable; + PUSHORT LowerCaseTable; +} NLSTABLEINFO, *PNLSTABLEINFO; + +#endif /* __NTNLS_H */ diff --git a/reactos/w32api/include/ddk/winddk.h b/reactos/w32api/include/ddk/winddk.h index 1ab61fdd230..06b186bbc63 100644 --- a/reactos/w32api/include/ddk/winddk.h +++ b/reactos/w32api/include/ddk/winddk.h @@ -179,11 +179,6 @@ typedef struct _HAL_PRIVATE_DISPATCH_TABLE *PHAL_PRIVATE_DISPATCH_TABLE; typedef struct _DEVICE_HANDLER_OBJECT *PDEVICE_HANDLER_OBJECT; typedef struct _BUS_HANDLER *PBUS_HANDLER; typedef struct _ADAPTER_OBJECT *PADAPTER_OBJECT; -typedef struct _DRIVE_LAYOUT_INFORMATION; -typedef struct _DRIVE_LAYOUT_INFORMATION_EX *PDRIVE_LAYOUT_INFORMATION_EX; -typedef struct _NAMED_PIPE_CREATE_PARAMETERS *PNAMED_PIPE_CREATE_PARAMETERS; -typedef struct _MAILSLOT_CREATE_PARAMETERS *PMAILSLOT_CREATE_PARAMETERS; -typedef struct _FILE_GET_QUOTA_INFORMATION *PFILE_GET_QUOTA_INFORMATION; /* Constants */ #define MAXIMUM_PROCESSORS 32 @@ -747,21 +742,21 @@ typedef ULONG PNP_DEVICE_STATE, *PPNP_DEVICE_STATE; #define PNP_DEVICE_RESOURCE_REQUIREMENTS_CHANGED 0x00000010 #define PNP_DEVICE_NOT_DISABLEABLE 0x00000020 -typedef enum _PNP_VETO_TYPE +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_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, *PPNP_VETO_TYPE; typedef struct _TARGET_DEVICE_CUSTOM_NOTIFICATION { @@ -847,45 +842,6 @@ typedef VOID (DDKAPI *PDEVICE_CHANGE_COMPLETE_CALLBACK)( IN PVOID Context); -/* WMI, should go in a WMI header... */ -typedef struct _EVENT_TRACE_HEADER -{ - USHORT Size; - union { - USHORT FieldTypeFlags; - struct { - UCHAR HeaderType; - UCHAR MarkerFlags; - }; - }; - union { - ULONG Version; - struct { - UCHAR Type; - UCHAR Level; - USHORT Version; - } Class; - }; - ULONG ThreadId; - ULONG ProcessId; - LARGE_INTEGER TimeStamp; - union { - GUID Guid; - ULONGLONG GuidPtr; - }; - union { - struct { - ULONG ClientContext; - ULONG Flags; - }; - struct { - ULONG KernelTime; - ULONG UserTime; - }; - ULONG64 ProcessorTime; - }; -} EVENT_TRACE_HEADER, *PEVENT_TRACE_HEADER; - /* ** System structures @@ -900,33 +856,6 @@ typedef struct _EVENT_TRACE_HEADER #define DUPLICATE_SAME_ATTRIBUTES 0x00000004 /* end winnt.h */ -/* Nls Info (ntnls.h) */ -#define MAXIMUM_LEADBYTES 12 - -typedef struct _CPTABLEINFO -{ - USHORT CodePage; - USHORT MaximumCharacterSize; - USHORT DefaultChar; - USHORT UniDefaultChar; - USHORT TransDefaultChar; - USHORT TransUniDefaultChar; - USHORT DBCSCodePage; - UCHAR LeadByte[MAXIMUM_LEADBYTES]; - PUSHORT MultiByteTable; - PVOID WideCharTable; - PUSHORT DBCSRanges; - PUSHORT DBCSOffsets; -} CPTABLEINFO, *PCPTABLEINFO; - -typedef struct _NLSTABLEINFO -{ - CPTABLEINFO OemTableInfo; - CPTABLEINFO AnsiTableInfo; - PUSHORT UpperCaseTable; - PUSHORT LowerCaseTable; -} NLSTABLEINFO, *PNLSTABLEINFO; - typedef struct _OBJECT_NAME_INFORMATION { UNICODE_STRING Name; } OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION; @@ -3156,19 +3085,21 @@ 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; - PNAMED_PIPE_CREATE_PARAMETERS Parameters; + struct _NAMED_PIPE_CREATE_PARAMETERS *Parameters; } CreatePipe; struct { PIO_SECURITY_CONTEXT SecurityContext; ULONG Options; USHORT Reserved; USHORT ShareAccess; - PMAILSLOT_CREATE_PARAMETERS Parameters; + struct _MAILSLOT_CREATE_PARAMETERS *Parameters; } CreateMailslot; struct { ULONG Length; @@ -3263,7 +3194,7 @@ typedef struct _IO_STACK_LOCATION { struct { ULONG Length; PSID StartSid; - PFILE_GET_QUOTA_INFORMATION SidList; + struct _FILE_GET_QUOTA_INFORMATION *SidList; ULONG SidListLength; } QueryQuota; struct {