PKINTERRUPT InterruptObject
);
-struct _KPROCESS*
+PKPROCESS
+STDCALL
KeGetCurrentProcess(
VOID
);
#ifndef __INCLUDE_DISK_H
#define __INCLUDE_DISK_H
-#ifndef __NTDDDISK_H
+#ifndef __USE_W32API
#define IOCTL_DISK_BASE FILE_DEVICE_DISK
PARTITION_INFORMATION PartitionEntry[1];
} DRIVE_LAYOUT_INFORMATION;
-#ifndef __USE_W32API
typedef DRIVE_LAYOUT_INFORMATION *PDRIVE_LAYOUT_INFORMATION;
#endif
-#endif
-
#endif /* __INCLUDE_DISK_H */
/* EOF */
LARGE_MCB LargeMcb;
} MCB, *PMCB;
-
-typedef struct _FILE_LOCK_GRANTED {
- LIST_ENTRY ListEntry;
- FILE_LOCK_INFO Lock;
- PVOID UnlockContext;
-} FILE_LOCK_GRANTED, *PFILE_LOCK_GRANTED;
-
-
-typedef struct _FILE_LOCK_TOC {
- KSPIN_LOCK SpinLock;
- LIST_ENTRY GrantedListHead;
- LIST_ENTRY PendingListHead;
-} FILE_LOCK_TOC, *PFILE_LOCK_TOC;
-
#endif /* __INCLUDE_DDK_FSTYPES_H */
IN BOOLEAN Unknown,
IN BOOLEAN CurrentCpuOnly);
+struct _KPROCESS*
+STDCALL
+KeGetCurrentProcess(
+ VOID
+);
+
VOID STDCALL
KeFlushWriteBuffer(
VOID);
#define DOE_REMOVE_PROCESSED 0x8\r
#define DOE_START_PENDING 0x10\r
\r
+extern POBJECT_TYPE EXPORTED ExMutantObjectType;\r
+extern POBJECT_TYPE EXPORTED ExTimerType;\r
+\r
+typedef struct _SECTION_BASIC_INFORMATION\r
+{\r
+ PVOID BaseAddress;\r
+ ULONG Attributes;\r
+ LARGE_INTEGER Size;\r
+} SECTION_BASIC_INFORMATION, *PSECTION_BASIC_INFORMATION;\r
+\r
+typedef struct _SECTION_IMAGE_INFORMATION \r
+{\r
+ ULONG EntryPoint;\r
+ ULONG Unknown1;\r
+ ULONG_PTR StackReserve;\r
+ ULONG_PTR StackCommit;\r
+ ULONG Subsystem;\r
+ USHORT MinorSubsystemVersion;\r
+ USHORT MajorSubsystemVersion;\r
+ ULONG Unknown2;\r
+ ULONG Characteristics;\r
+ USHORT ImageNumber;\r
+ BOOLEAN Executable;\r
+ UCHAR Unknown3;\r
+ ULONG Unknown4[3];\r
+} SECTION_IMAGE_INFORMATION, *PSECTION_IMAGE_INFORMATION;\r
+\r
+typedef struct _MAILSLOT_CREATE_PARAMETERS \r
+{\r
+ ULONG MailslotQuota;\r
+ ULONG MaximumMessageSize;\r
+ LARGE_INTEGER ReadTimeout;\r
+ BOOLEAN TimeoutSpecified;\r
+} MAILSLOT_CREATE_PARAMETERS, *PMAILSLOT_CREATE_PARAMETERS;\r
+\r
+typedef struct _NAMED_PIPE_CREATE_PARAMETERS \r
+{\r
+ ULONG NamedPipeType;\r
+ ULONG ReadMode;\r
+ ULONG CompletionMode;\r
+ ULONG MaximumInstances;\r
+ ULONG InboundQuota;\r
+ ULONG OutboundQuota;\r
+ LARGE_INTEGER DefaultTimeout;\r
+ BOOLEAN TimeoutSpecified;\r
+} NAMED_PIPE_CREATE_PARAMETERS, *PNAMED_PIPE_CREATE_PARAMETERS;\r
+\r
/*\r
* PURPOSE: Special timer associated with each device\r
*/\r
EX_QUEUE_WORKER_INFO Info; \r
} EX_WORK_QUEUE, *PEX_WORK_QUEUE;\r
\r
+typedef struct _KDPC_DATA \r
+{\r
+ LIST_ENTRY DpcListHead;\r
+ ULONG DpcLock;\r
+ ULONG DpcQueueDepth;\r
+ ULONG DpcCount;\r
+} KDPC_DATA, *PKDPC_DATA;\r
+\r
+typedef struct _KTRAP_FRAME \r
+{\r
+ PVOID DebugEbp;\r
+ PVOID DebugEip;\r
+ PVOID DebugArgMark;\r
+ PVOID DebugPointer;\r
+ PVOID TempCs;\r
+ PVOID TempEip;\r
+ ULONG Dr0;\r
+ ULONG Dr1;\r
+ ULONG Dr2;\r
+ ULONG Dr3;\r
+ ULONG Dr6;\r
+ ULONG Dr7;\r
+ USHORT Gs;\r
+ USHORT Reserved1;\r
+ USHORT Es;\r
+ USHORT Reserved2;\r
+ USHORT Ds;\r
+ USHORT Reserved3;\r
+ ULONG Edx;\r
+ ULONG Ecx;\r
+ ULONG Eax;\r
+ ULONG PreviousMode;\r
+ PVOID ExceptionList;\r
+ USHORT Fs;\r
+ USHORT Reserved4;\r
+ ULONG Edi;\r
+ ULONG Esi;\r
+ ULONG Ebx;\r
+ ULONG Ebp;\r
+ ULONG ErrorCode;\r
+ ULONG Eip;\r
+ ULONG Cs;\r
+ ULONG Eflags;\r
+ ULONG Esp;\r
+ USHORT Ss;\r
+ USHORT Reserved5;\r
+ USHORT V86_Es;\r
+ USHORT Reserved6;\r
+ USHORT V86_Ds;\r
+ USHORT Reserved7;\r
+ USHORT V86_Fs;\r
+ USHORT Reserved8;\r
+ USHORT V86_Gs;\r
+ USHORT Reserved9;\r
+} KTRAP_FRAME, *PKTRAP_FRAME;\r
+\r
+typedef struct _PP_LOOKASIDE_LIST \r
+{\r
+ struct _GENERAL_LOOKASIDE *P;\r
+ struct _GENERAL_LOOKASIDE *L;\r
+} PP_LOOKASIDE_LIST, *PPP_LOOKASIDE_LIST;\r
+\r
typedef enum _PP_NPAGED_LOOKASIDE_NUMBER\r
{\r
LookasideSmallIrpList = 0,\r
MaxPlugEventCategory\r
} PLUGPLAY_EVENT_CATEGORY;\r
\r
+#ifndef __USE_W32API\r
typedef enum _PNP_VETO_TYPE {\r
PNP_VetoTypeUnknown,\r
PNP_VetoLegacyDevice,\r
PNP_VetoLegacyDriver,\r
PNP_VetoInsufficientRights,\r
} PNP_VETO_TYPE;\r
+#endif\r
\r
/*\r
* Plug and Play event structure used by NtGetPlugPlayEvent.\r
PVOID StackReserved;
} INITIAL_TEB, *PINITIAL_TEB;
-#else /* __USE_W32API */
-
-#include <ddk/ntifs.h>
-
-#endif /* __USE_W32API */
-
-typedef struct _RTL_HEAP_DEFINITION
-{
- ULONG Length;
- ULONG Unknown[11];
-} RTL_HEAP_DEFINITION, *PRTL_HEAP_DEFINITION;
-
-typedef struct _RTL_ATOM_TABLE
-{
- ULONG TableSize;
- ULONG NumberOfAtoms;
- PVOID Lock; /* fast mutex (kernel mode)/ critical section (user mode) */
- PVOID HandleTable;
- LIST_ENTRY Slot[0];
-} RTL_ATOM_TABLE, *PRTL_ATOM_TABLE;
-
-
#define MAXIMUM_LEADBYTES 12
typedef struct _CPTABLEINFO
} NLSTABLEINFO, *PNLSTABLEINFO;
+#else /* __USE_W32API */
+
+#include <ddk/ntifs.h>
+
+#endif /* __USE_W32API */
+
+typedef struct _RTL_HEAP_DEFINITION
+{
+ ULONG Length;
+ ULONG Unknown[11];
+} RTL_HEAP_DEFINITION, *PRTL_HEAP_DEFINITION;
+
+typedef struct _RTL_ATOM_TABLE
+{
+ ULONG TableSize;
+ ULONG NumberOfAtoms;
+ PVOID Lock; /* fast mutex (kernel mode)/ critical section (user mode) */
+ PVOID HandleTable;
+ LIST_ENTRY Slot[0];
+} RTL_ATOM_TABLE, *PRTL_ATOM_TABLE;
+
+
+
+
#include <pshpack1.h>
typedef struct _NLS_FILE_HEADER
} EVENT_BASIC_INFORMATION, *PEVENT_BASIC_INFORMATION;
// wmi trace event data
-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;
-
-
typedef struct _FILE_USER_QUOTA_INFORMATION {
ULONG NextEntryOffset;
ULONG SidLength;
#endif /* __USE_W32API */
+typedef enum _IO_COMPLETION_INFORMATION_CLASS
+{
+ IoCompletionBasicInformation
+} IO_COMPLETION_INFORMATION_CLASS;
+
/* BEGIN REACTOS ONLY */
typedef enum _TRAVERSE_METHOD {
extern ULONG ExpTimeZoneId;
extern POBJECT_TYPE ExEventPairObjectType;
-extern POBJECT_TYPE EXPORTED ExMutantObjectType;
-extern POBJECT_TYPE EXPORTED ExSemaphoreObjectType;
-extern POBJECT_TYPE EXPORTED ExTimerType;
/* INITIALIZATION FUNCTIONS *************************************************/
#ifndef __ASM__
-typedef struct _KTRAP_FRAME
-{
- PVOID DebugEbp;
- PVOID DebugEip;
- PVOID DebugArgMark;
- PVOID DebugPointer;
- PVOID TempSegSs;
- PVOID TempEsp;
- ULONG Dr0;
- ULONG Dr1;
- ULONG Dr2;
- ULONG Dr3;
- ULONG Dr6;
- ULONG Dr7;
- USHORT Gs;
- USHORT Reserved1;
- USHORT Es;
- USHORT Reserved2;
- USHORT Ds;
- USHORT Reserved3;
- ULONG Edx;
- ULONG Ecx;
- ULONG Eax;
- ULONG PreviousMode;
- PVOID ExceptionList;
- USHORT Fs;
- USHORT Reserved4;
- ULONG Edi;
- ULONG Esi;
- ULONG Ebx;
- ULONG Ebp;
- ULONG ErrorCode;
- ULONG Eip;
- ULONG Cs;
- ULONG Eflags;
- ULONG Esp;
- USHORT Ss;
- USHORT Reserved5;
- USHORT V86_Es;
- USHORT Reserved6;
- USHORT V86_Ds;
- USHORT Reserved7;
- USHORT V86_Fs;
- USHORT Reserved8;
- USHORT V86_Gs;
- USHORT Reserved9;
-} KTRAP_FRAME, *PKTRAP_FRAME;
-
typedef struct _KIRQ_TRAPFRAME
{
ULONG Magic;
#ifdef __USE_W32API
#ifndef __ASM__
-#include <ddk/ntpoapi.h>
+#include <ndk/potypes.h> /* FIXME: TEMP HACK */
#endif
#endif
/* Look for "FSrt" in mem view */
#define IFS_POOL_TAG 0x74725346
+typedef struct _FILE_LOCK_GRANTED {
+ LIST_ENTRY ListEntry;
+ FILE_LOCK_INFO Lock;
+ PVOID UnlockContext;
+} FILE_LOCK_GRANTED, *PFILE_LOCK_GRANTED;
+
+
+typedef struct _FILE_LOCK_TOC {
+ KSPIN_LOCK SpinLock;
+ LIST_ENTRY GrantedListHead;
+ LIST_ENTRY PendingListHead;
+} FILE_LOCK_TOC, *PFILE_LOCK_TOC;
+
VOID
STDCALL INIT_FUNCTION
FsRtlpInitNotifyImplementation(VOID);
/* INTERNAL KERNEL FUNCTIONS ************************************************/
-#ifdef __USE_W32API
-struct _KPROCESS* STDCALL KeGetCurrentProcess(VOID);
-VOID KeSetGdtSelector(ULONG Entry, ULONG Value1, ULONG Value2);
-#endif
-
struct _KIRQ_TRAPFRAME;
struct _KPCR;
struct _KPRCB;
VOID RtlpCreateInitialNlsTables(VOID);
VOID RtlpCreateNlsSection(VOID);
-WCHAR RtlDowncaseUnicodeChar (IN WCHAR Source);
-
#endif /* __NTOSKRNL_INCLUDE_INTERNAL_NLS_H */
/* EOF */
struct _EPROCESS *ThreadsProcess; /* 218 */
PKSTART_ROUTINE StartAddress; /* 21C */
union {
- LPTHREAD_START_ROUTINE Win32StartAddress; /* 220 */
+ PTHREAD_START_ROUTINE Win32StartAddress; /* 220 */
ULONG LpcReceivedMessageId; /* 220 */
};
LIST_ENTRY ThreadListEntry; /* 224 */
ACCESS_MASK GrantedAccess; /* 194 */
ULONG DefaultHardErrorProcessing; /* 198 */
NTSTATUS LastThreadExitStatus; /* 19C */
- PPEB Peb; /* 1A0 */
+ struct _PEB* Peb; /* 1A0 */
EX_FAST_REF PrefetchTrace; /* 1A4 */
LARGE_INTEGER ReadOperationCount; /* 1A8 */
LARGE_INTEGER WriteOperationCount; /* 1B0 */
#ifndef __INCLUDE_INTERNAL_XHAL_H
#define __INCLUDE_INTERNAL_XHAL_H
+#include <ddk/ntdddisk.h>
+
NTSTATUS
xHalQueryDriveLayout(IN PUNICODE_STRING DeviceName,
OUT PDRIVE_LAYOUT_INFORMATION *LayoutInfo);