mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
Fix boot
svn path=/trunk/; revision=17431
This commit is contained in:
parent
9eeadb66ec
commit
20d4ebeffc
3 changed files with 100 additions and 87 deletions
|
@ -492,6 +492,8 @@ typedef struct _CSR_API_MESSAGE
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
PORT_MESSAGE Header;
|
PORT_MESSAGE Header;
|
||||||
|
union
|
||||||
|
{
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
BYTE HeaderReserved[sizeof(PORT_MESSAGE)];
|
BYTE HeaderReserved[sizeof(PORT_MESSAGE)];
|
||||||
|
@ -554,6 +556,8 @@ typedef struct _CSR_API_MESSAGE
|
||||||
CSRSS_GET_PROCESS_LIST GetProcessListRequest;
|
CSRSS_GET_PROCESS_LIST GetProcessListRequest;
|
||||||
} Data;
|
} Data;
|
||||||
};
|
};
|
||||||
|
UCHAR PadBuffer[PORT_MAXIMUM_MESSAGE_LENGTH];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
} CSR_API_MESSAGE, *PCSR_API_MESSAGE;
|
} CSR_API_MESSAGE, *PCSR_API_MESSAGE;
|
||||||
|
|
||||||
|
|
|
@ -111,27 +111,36 @@ typedef union _SM_PORT_MESSAGE
|
||||||
{
|
{
|
||||||
/*** LPC common header ***/
|
/*** LPC common header ***/
|
||||||
PORT_MESSAGE Header;
|
PORT_MESSAGE Header;
|
||||||
struct {
|
union
|
||||||
|
{
|
||||||
|
struct
|
||||||
|
{
|
||||||
UCHAR LpcHeader[sizeof(PORT_MESSAGE)];
|
UCHAR LpcHeader[sizeof(PORT_MESSAGE)];
|
||||||
/*** SM common header ***/
|
/*** SM common header ***/
|
||||||
struct {
|
struct
|
||||||
|
{
|
||||||
DWORD ApiIndex;
|
DWORD ApiIndex;
|
||||||
NTSTATUS Status;
|
NTSTATUS Status;
|
||||||
} SmHeader;
|
} SmHeader;
|
||||||
/*** SM per API arguments ***/
|
/*** SM per API arguments ***/
|
||||||
union {
|
union
|
||||||
union {
|
{
|
||||||
|
union
|
||||||
|
{
|
||||||
SM_PORT_MESSAGE_COMPSES CompSes;
|
SM_PORT_MESSAGE_COMPSES CompSes;
|
||||||
SM_PORT_MESSAGE_EXECPGM ExecPgm;
|
SM_PORT_MESSAGE_EXECPGM ExecPgm;
|
||||||
SM_PORT_MESSAGE_QRYINFO QryInfo;
|
SM_PORT_MESSAGE_QRYINFO QryInfo;
|
||||||
} Request;
|
} Request;
|
||||||
union {
|
union
|
||||||
|
{
|
||||||
SM_PORT_MESSAGE_COMPSES CompSes;
|
SM_PORT_MESSAGE_COMPSES CompSes;
|
||||||
SM_PORT_MESSAGE_EXECPGM ExecPgm;
|
SM_PORT_MESSAGE_EXECPGM ExecPgm;
|
||||||
SM_PORT_MESSAGE_QRYINFO QryInfo;
|
SM_PORT_MESSAGE_QRYINFO QryInfo;
|
||||||
} Reply;
|
} Reply;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
UCHAR PadBuffer[PORT_MAXIMUM_MESSAGE_LENGTH];
|
||||||
|
};
|
||||||
} SM_PORT_MESSAGE, * PSM_PORT_MESSAGE;
|
} SM_PORT_MESSAGE, * PSM_PORT_MESSAGE;
|
||||||
|
|
||||||
#include <poppack.h>
|
#include <poppack.h>
|
||||||
|
|
|
@ -357,7 +357,7 @@ NtRequestWaitReplyPort (IN HANDLE PortHandle,
|
||||||
ObDereferenceObject(Port);
|
ObDereferenceObject(Port);
|
||||||
return(STATUS_PORT_MESSAGE_TOO_LONG);
|
return(STATUS_PORT_MESSAGE_TOO_LONG);
|
||||||
}
|
}
|
||||||
if (LpcRequestDataSize != (LpcRequestMessageSize - sizeof(PORT_MESSAGE)))
|
if (LpcRequestDataSize > LPC_MAX_DATA_LENGTH)
|
||||||
{
|
{
|
||||||
ExFreePool(LpcRequest);
|
ExFreePool(LpcRequest);
|
||||||
if (NULL != AttachedProcess)
|
if (NULL != AttachedProcess)
|
||||||
|
|
Loading…
Reference in a new issue