updated ALPC definitions

git-svn-id: svn://svn.code.sf.net/p/processhacker/code@3831 21ef857c-d57f-4fe0-8362-d861dc6d29cd
This commit is contained in:
wj32
2010-11-07 01:27:46 +00:00
parent 0c82292ffa
commit 775cd422df
4 changed files with 20 additions and 16 deletions
+3 -9
View File
@@ -572,14 +572,6 @@ typedef struct _WORKER_FACTORY_BASIC_INFORMATION
NTSTATUS CreateThreadStatus;
} WORKER_FACTORY_BASIC_INFORMATION, *PWORKER_FACTORY_BASIC_INFORMATION;
typedef struct _IO_COMPLETION_MINIPACKET
{
PVOID KeyContext;
PVOID ApcContext;
NTSTATUS IoStatus;
ULONG_PTR IoStatusInformation;
} IO_COMPLETION_MINIPACKET, *PIO_COMPLETION_MINIPACKET;
#if (PHNT_VERSION >= PHNT_VISTA)
NTSYSCALLAPI
@@ -641,12 +633,14 @@ NtWorkerFactoryWorkerReady(
__in HANDLE WorkerFactoryHandle
);
struct _IO_COMPLETION_MINIPACKET;
NTSYSCALLAPI
NTSTATUS
NTAPI
NtWaitForWorkViaWorkerFactory(
__in HANDLE WorkerFactoryHandle,
__out PIO_COMPLETION_MINIPACKET MiniPacket
__out struct _IO_COMPLETION_MINIPACKET *MiniPacket
);
#endif
+9
View File
@@ -155,6 +155,15 @@ typedef VOID (NTAPI *PIO_APC_ROUTINE)(
__in ULONG Reserved
);
// rev
// Used for worker factory objects
typedef struct _IO_COMPLETION_MINIPACKET
{
PVOID KeyContext;
PVOID ApcContext;
IO_STATUS_BLOCK Iosb;
} IO_COMPLETION_MINIPACKET, *PIO_COMPLETION_MINIPACKET;
typedef enum _FILE_INFORMATION_CLASS
{
FileDirectoryInformation = 1,
+5 -2
View File
@@ -62,7 +62,9 @@ typedef struct _PORT_DATA_INFORMATION
#define LPC_ERROR_EVENT 9
#define LPC_CONNECTION_REQUEST 10
#define LPC_KERNELMODE_MESSAGE (CSHORT)0x8000
#define LPC_KERNELMODE_MESSAGE (CSHORT)0x8000
#define LPC_NO_IMPERSONATE (CSHORT)0x4000
#define PORT_VALID_OBJECT_ATTRIBUTES OBJ_CASE_INSENSITIVE
#ifdef _M_IX86
@@ -295,6 +297,7 @@ NtQueryInformationPort(
// it seems traditional to use a typedef in these cases.
typedef PVOID ALPC_HANDLE, *PALPC_HANDLE;
#define ALPC_PORFLG_ALLOW_LPC_REQUESTS 0x20000
#define ALPC_PORFLG_WAITABLE_PORT 0x40000 // dbg
#define ALPC_PORFLG_SYSTEM_PROCESS 0x100000 // dbg
@@ -679,7 +682,7 @@ NtAlpcAcceptConnectPort(
__in POBJECT_ATTRIBUTES ObjectAttributes,
__in PALPC_PORT_ATTRIBUTES PortAttributes,
__in_opt PVOID PortContext,
__in PPORT_MESSAGE RequestMessage,
__in PPORT_MESSAGE ConnectMessage,
__inout_opt PALPC_MESSAGE_ATTRIBUTES ReplyMessageAttributes,
__in BOOLEAN AcceptConnection
);
+3 -5
View File
@@ -5,19 +5,17 @@
typedef struct _TP_ALPC TP_ALPC, *PTP_ALPC;
// unsure
typedef VOID (NTAPI *PTP_ALPC_CALLBACK)(
__inout PTP_CALLBACK_INSTANCE Instance,
__inout_opt PVOID Context,
__in PTP_ALPC Alpc // ?
__in PTP_ALPC Alpc
);
// unsure
typedef VOID (NTAPI *PTP_ALPC_CALLBACK_EX)(
__inout PTP_CALLBACK_INSTANCE Instance,
__inout_opt PVOID Context,
__in PTP_ALPC Alpc, // ?
__in PTP_WAIT Wait // ?
__in PTP_ALPC Alpc,
__in PVOID ApcContext
);
// end_rev