- Various fixes to headers, such as fixing some LPC prototypes,
adding/correcting some structures, adding some missing definitions,
etc...
Modified: trunk/reactos/include/ndk/dbgktypes.h
Modified: trunk/reactos/include/ndk/extypes.h
Modified: trunk/reactos/include/ndk/lpctypes.h
Modified: trunk/reactos/include/ndk/mmtypes.h
Modified: trunk/reactos/include/ndk/ntndk.h
Modified: trunk/reactos/include/ndk/rtlfuncs.h
Modified: trunk/reactos/include/ndk/rtltypes.h
Modified: trunk/reactos/include/ndk/setypes.h
Modified: trunk/reactos/include/ndk/umfuncs.h
Modified: trunk/reactos/include/ndk/zwfuncs.h
Modified: trunk/reactos/lib/ntdll/ldr/utils.c
Modified: trunk/reactos/ntoskrnl/ex/error.c
Modified: trunk/reactos/ntoskrnl/include/internal/port.h
Modified: trunk/reactos/ntoskrnl/lpc/reply.c
Modified: trunk/reactos/ntoskrnl/lpc/send.c
Modified: trunk/reactos/subsys/smss/smapi.c
_____
Modified: trunk/reactos/include/ndk/dbgktypes.h
--- trunk/reactos/include/ndk/dbgktypes.h 2005-09-04 15:57:17 UTC
(rev 17637)
+++ trunk/reactos/include/ndk/dbgktypes.h 2005-09-04 18:00:59 UTC
(rev 17638)
@@ -35,6 +35,7 @@
} DEBUG_OBJECT_KILL_PROCESS_ON_EXIT_INFORMATION, *
PDEBUG_OBJECT_KILL_PROCESS_ON_EXIT_INFORMATION;
+#ifndef NTOS_MODE_USER
typedef struct _DBGK_DEBUG_OBJECT
{
KEVENT Event;
@@ -45,11 +46,12 @@
ULONG Flags;
struct
{
- UCHAR DebuggerInactive :1;
- UCHAR KillProcessOnExit :1;
+ UCHAR DebuggerInactive:1;
+ UCHAR KillProcessOnExit:1;
};
};
} DBGK_DEBUG_OBJECT, *PDBGK_DEBUG_OBJECT;
+#endif
typedef enum _DBG_STATE
{
@@ -136,4 +138,21 @@
} StateInfo;
} DBGUI_WAIT_STATE_CHANGE, *PDBGUI_WAIT_STATE_CHANGE;
+typedef struct _DBGKM_MSG
+{
+ PORT_MESSAGE h;
+ ULONG Opcode;
+ ULONG Status;
+ union
+ {
+ DBGKM_EXCEPTION Exception;
+ DBGKM_CREATE_THREAD CreateThread;
+ DBGKM_CREATE_PROCESS CreateProcess;
+ DBGKM_EXIT_THREAD ExitThread;
+ DBGKM_EXIT_PROCESS ExitProcess;
+ DBGKM_LOAD_DLL LoadDll;
+ DBGKM_UNLOAD_DLL UnloadDll;
+ };
+} DBGKM_MSG, *PDBGKM_MSG;
+
#endif
_____
Modified: trunk/reactos/include/ndk/extypes.h
--- trunk/reactos/include/ndk/extypes.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/extypes.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -37,6 +37,8 @@
#define SEMAPHORE_QUERY_STATE 0x0001
#endif
+#define MAXIMUM_HARDERROR_PARAMETERS 4
+
/* ENUMERATIONS
**************************************************************/
/* TYPES
*********************************************************************/
_____
Modified: trunk/reactos/include/ndk/lpctypes.h
--- trunk/reactos/include/ndk/lpctypes.h 2005-09-04 15:57:17 UTC
(rev 17637)
+++ trunk/reactos/include/ndk/lpctypes.h 2005-09-04 18:00:59 UTC
(rev 17638)
@@ -171,6 +171,24 @@
} LPCP_CONNECTION_MESSAGE, *PLPCP_CONNECTION_MESSAGE;
#endif
+typedef struct _HARDERROR_MSG
+{
+ PORT_MESSAGE h;
+ NTSTATUS Status;
+ LARGE_INTEGER ErrorTime;
+ ULONG ValidResponseOptions;
+ ULONG Response;
+ ULONG NumberOfParameters;
+ ULONG UnicodeStringParameterMask;
+ ULONG Parameters[MAXIMUM_HARDERROR_PARAMETERS];
+} HARDERROR_MSG, *PHARDERROR_MSG;
+
+typedef struct _CLIENT_DIED_MSG
+{
+ PORT_MESSAGE h;
+ LARGE_INTEGER CreateTime;
+} CLIENT_DIED_MSG, *PCLIENT_DIED_MSG;
+
/* CONSTANTS
*****************************************************************/
#define PORT_MAXIMUM_MESSAGE_LENGTH 256
_____
Modified: trunk/reactos/include/ndk/mmtypes.h
--- trunk/reactos/include/ndk/mmtypes.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/mmtypes.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -15,6 +15,10 @@
/* EXPORTED DATA
*************************************************************/
/* CONSTANTS
*****************************************************************/
+#ifdef NTOS_MODE_USER
+#define SEC_BASED 0x00200000
+#define SEC_NO_CHANGE 0x00400000
+#endif
/* ENUMERATIONS
**************************************************************/
_____
Modified: trunk/reactos/include/ndk/ntndk.h
--- trunk/reactos/include/ndk/ntndk.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/ntndk.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -25,7 +25,6 @@
#include "kdfuncs.h" /* Kernel Debugger Functions */
#include "cctypes.h" /* Cache Manager Types */
#include "potypes.h" /* Power Manager Types */
-#include "dbgktypes.h" /* User-Mode Kernel Debugging Types */
#include "haltypes.h" /* Hardware Abstraction Layer Types */
#include "halfuncs.h" /* Hardware Abstraction Layer Functions */
#include "inbvfuncs.h" /* Initialization Boot Video Functions */
@@ -34,7 +33,6 @@
#include "mmfuncs.h" /* Memory Manager Functions */
#include "obfuncs.h" /* Object Manager Functions */
#include "psfuncs.h" /* Process Manager Functions */
-#include "setypes.h" /* Security Subsystem Types */
#include "sefuncs.h" /* Security Subsystem Functions */
#endif /* !NTOS_MODE_USER */
@@ -50,10 +48,12 @@
#include "obtypes.h" /* Object Manager Types */
#include "pstypes.h" /* Process Manager Types */
#include "lpctypes.h" /* Local Procedure Call Types */
+#include "dbgktypes.h" /* User-Mode Kernel Debugging Types */
#include "zwtypes.h" /* Native Types */
#include "zwfuncs.h" /* Native Functions (System Calls) */
#include "rtltypes.h" /* Runtime Library Types */
#include "rtlfuncs.h" /* Runtime Library Functions */
+#include "setypes.h" /* Security Subsystem Types */
#include "umfuncs.h" /* User-Mode NT Library Functions */
#include "i386/floatsave.h" /* Floating Point Save Area Definitions for
i386 */
#include "i386/segment.h" /* Kernel CPU Segment Definitions for i386
*/
_____
Modified: trunk/reactos/include/ndk/rtlfuncs.h
--- trunk/reactos/include/ndk/rtlfuncs.h 2005-09-04 15:57:17 UTC
(rev 17637)
+++ trunk/reactos/include/ndk/rtlfuncs.h 2005-09-04 18:00:59 UTC
(rev 17638)
@@ -53,6 +53,10 @@
STDCALL
RtlRaiseStatus(NTSTATUS Status);
+LONG
+STDCALL
+RtlUnhandledExceptionFilter(struct _EXCEPTION_POINTERS* ExceptionInfo);
+
VOID
STDCALL
RtlUnwind(
@@ -231,6 +235,15 @@
NTSTATUS
STDCALL
+RtlAdjustPrivilege(
+ IN ULONG Privilege,
+ IN BOOLEAN NewValue,
+ IN BOOLEAN ForThread,
+ OUT PBOOLEAN OldValue
+);
+
+NTSTATUS
+STDCALL
RtlAllocateAndInitializeSid(
IN PSID_IDENTIFIER_AUTHORITY IdentifierAuthority,
IN UCHAR SubAuthorityCount,
_____
Modified: trunk/reactos/include/ndk/rtltypes.h
--- trunk/reactos/include/ndk/rtltypes.h 2005-09-04 15:57:17 UTC
(rev 17637)
+++ trunk/reactos/include/ndk/rtltypes.h 2005-09-04 18:00:59 UTC
(rev 17638)
@@ -210,6 +210,9 @@
sizeof(__SOURCE_STRING__), \
(__SOURCE_STRING__) \
}
+
+#define RtlEqualLuid(L1, L2) (((L1)->HighPart == (L2)->HighPart) && \
+ ((L1)->LowPart == (L2)->LowPart))
#endif
/* FIXME: Rename these */
_____
Modified: trunk/reactos/include/ndk/setypes.h
--- trunk/reactos/include/ndk/setypes.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/setypes.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -14,11 +14,40 @@
/* EXPORTED DATA
*************************************************************/
/* CONSTANTS
*****************************************************************/
+#ifdef NTOS_MODE_USER
+#define SE_MIN_WELL_KNOWN_PRIVILEGE (2L)
+#define SE_CREATE_TOKEN_PRIVILEGE (2L)
+#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE (3L)
+#define SE_LOCK_MEMORY_PRIVILEGE (4L)
+#define SE_INCREASE_QUOTA_PRIVILEGE (5L)
+#define SE_UNSOLICITED_INPUT_PRIVILEGE (6L)
+#define SE_MACHINE_ACCOUNT_PRIVILEGE (6L)
+#define SE_TCB_PRIVILEGE (7L)
+#define SE_SECURITY_PRIVILEGE (8L)
+#define SE_TAKE_OWNERSHIP_PRIVILEGE (9L)
+#define SE_LOAD_DRIVER_PRIVILEGE (10L)
+#define SE_SYSTEM_PROFILE_PRIVILEGE (11L)
+#define SE_SYSTEMTIME_PRIVILEGE (12L)
+#define SE_PROF_SINGLE_PROCESS_PRIVILEGE (13L)
+#define SE_INC_BASE_PRIORITY_PRIVILEGE (14L)
+#define SE_CREATE_PAGEFILE_PRIVILEGE (15L)
+#define SE_CREATE_PERMANENT_PRIVILEGE (16L)
+#define SE_BACKUP_PRIVILEGE (17L)
+#define SE_RESTORE_PRIVILEGE (18L)
+#define SE_SHUTDOWN_PRIVILEGE (19L)
+#define SE_DEBUG_PRIVILEGE (20L)
+#define SE_AUDIT_PRIVILEGE (21L)
+#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE (22L)
+#define SE_CHANGE_NOTIFY_PRIVILEGE (23L)
+#define SE_REMOTE_SHUTDOWN_PRIVILEGE (24L)
+#define SE_MAX_WELL_KNOWN_PRIVILEGE
(SE_REMOTE_SHUTDOWN_PRIVILEGE)
+#endif
/* ENUMERATIONS
**************************************************************/
/* TYPES
*********************************************************************/
+#ifndef NTOS_MODE_USER
typedef struct _SEP_AUDIT_POLICY_CATEGORIES
{
UCHAR System:4;
@@ -96,3 +125,4 @@
} SE_AUDIT_PROCESS_CREATION_INFO, *PSE_AUDIT_PROCESS_CREATION_INFO;
#endif
+#endif
_____
Modified: trunk/reactos/include/ndk/umfuncs.h
--- trunk/reactos/include/ndk/umfuncs.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/umfuncs.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -138,10 +138,10 @@
NTSTATUS
STDCALL
LdrGetDllHandle(
- IN PWCHAR Path OPTIONAL,
- IN ULONG Unknown2,
+ IN PWSTR DllPath OPTIONAL,
+ IN PULONG DllCharacteristics,
IN PUNICODE_STRING DllName,
- OUT PVOID *BaseAddress
+ OUT PVOID *DllHandle
);
NTSTATUS
_____
Modified: trunk/reactos/include/ndk/zwfuncs.h
--- trunk/reactos/include/ndk/zwfuncs.h 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/include/ndk/zwfuncs.h 2005-09-04 18:00:59 UTC (rev
17638)
@@ -21,15 +21,26 @@
STDCALL
NtAcceptConnectPort(
PHANDLE PortHandle,
- HANDLE NamedPortHandle,
- PPORT_MESSAGE ServerReply,
- BOOLEAN AcceptIt,
- PPORT_VIEW WriteMap,
- PREMOTE_PORT_VIEW ReadMap
+ PVOID PortContext OPTIONAL,
+ PPORT_MESSAGE ConnectionRequest,
+ BOOLEAN AcceptConnection,
+ PPORT_VIEW ServerView OPTIONAL,
+ PREMOTE_PORT_VIEW ClientView OPTIONAL
);
NTSTATUS
STDCALL
+ZwAcceptConnectPort(
+ PHANDLE PortHandle,
+ PVOID PortContext OPTIONAL,
+ PPORT_MESSAGE ConnectionRequest,
+ BOOLEAN AcceptConnection,
+ PPORT_VIEW ServerView OPTIONAL,
+ PREMOTE_PORT_VIEW ClientView OPTIONAL
+);
+
+NTSTATUS
+STDCALL
NtAccessCheck(
IN PSECURITY_DESCRIPTOR SecurityDescriptor,
IN HANDLE ClientToken,
@@ -347,11 +358,11 @@
PHANDLE PortHandle,
PUNICODE_STRING PortName,
PSECURITY_QUALITY_OF_SERVICE SecurityQos,
- PPORT_VIEW SectionInfo,
- PREMOTE_PORT_VIEW MapInfo,
- PULONG MaxMessageSize,
- PVOID ConnectInfo,
- PULONG ConnectInfoLength
+ PPORT_VIEW ClientView OPTIONAL,
+ PREMOTE_PORT_VIEW ServerView OPTIONAL,
+ PULONG MaxMessageLength OPTIONAL,
+ PVOID ConnectionInformation OPTIONAL,
+ PULONG ConnectionInformationLength OPTIONAL
);
NTSTATUS
@@ -360,11 +371,11 @@
PHANDLE PortHandle,
PUNICODE_STRING PortName,
PSECURITY_QUALITY_OF_SERVICE SecurityQos,
- PPORT_VIEW SectionInfo,
- PREMOTE_PORT_VIEW MapInfo,
- PULONG MaxMessageSize,
- PVOID ConnectInfo,
- PULONG ConnectInfoLength
+ PPORT_VIEW ClientView OPTIONAL,
+ PREMOTE_PORT_VIEW ServerView OPTIONAL,
+ PULONG MaxMessageLength OPTIONAL,
+ PVOID ConnectionInformation OPTIONAL,
+ PULONG ConnectionInformationLength OPTIONAL
);
NTSTATUS
@@ -612,19 +623,19 @@
NtCreatePort(
PHANDLE PortHandle,
POBJECT_ATTRIBUTES ObjectAttributes,
- ULONG MaxConnectInfoLength,
- ULONG MaxDataLength,
- ULONG NPMessageQueueSize OPTIONAL
+ ULONG MaxConnectionInfoLength,
+ ULONG MaxMessageLength,
+ ULONG MaxPoolUsage
);
NTSTATUS
STDCALL
-NtCreatePort(
+ZwCreatePort(
PHANDLE PortHandle,
POBJECT_ATTRIBUTES ObjectAttributes,
- ULONG MaxConnectInfoLength,
- ULONG MaxDataLength,
- ULONG NPMessageQueueSize OPTIONAL
+ ULONG MaxConnectionInfoLength,
+ ULONG MaxMessageLength,
+ ULONG MaxPoolUsage
);
NTSTATUS
@@ -1313,13 +1324,13 @@
NTSTATUS
STDCALL
NtListenPort(HANDLE PortHandle,
- PPORT_MESSAGE LpcMessage
+ PPORT_MESSAGE ConnectionRequest
);
NTSTATUS
STDCALL
ZwListenPort(HANDLE PortHandle,
- PPORT_MESSAGE LpcMessage
+ PPORT_MESSAGE ConnectionRequest
);
NTSTATUS
@@ -2745,11 +2756,11 @@
NtRaiseHardError(
IN NTSTATUS ErrorStatus,
IN ULONG NumberOfParameters,
- IN PUNICODE_STRING UnicodeStringParameterMask OPTIONAL,
- IN PVOID *Parameters,
- IN HARDERROR_RESPONSE_OPTION ResponseOption,
- OUT PHARDERROR_RESPONSE Response
-);
+ IN ULONG UnicodeStringParameterMask,
+ IN PULONG_PTR Parameters,
+ IN ULONG ValidResponseOptions,
+ OUT PULONG Response
+);
NTSTATUS
STDCALL
@@ -2955,18 +2966,18 @@
STDCALL
NtReplyWaitReceivePort(
HANDLE PortHandle,
- PULONG PortId,
- PPORT_MESSAGE MessageReply,
- PPORT_MESSAGE MessageRequest
+ PVOID *PortContext OPTIONAL,
+ PPORT_MESSAGE ReplyMessage OPTIONAL,
+ PPORT_MESSAGE ReceiveMessage
);
NTSTATUS
STDCALL
ZwReplyWaitReceivePort(
HANDLE PortHandle,
- PULONG PortId,
- PPORT_MESSAGE MessageReply,
- PPORT_MESSAGE MessageRequest
+ PVOID *PortContext OPTIONAL,
+ PPORT_MESSAGE ReplyMessage,
+ PPORT_MESSAGE ReceiveMessage
);
NTSTATUS
_____
Modified: trunk/reactos/lib/ntdll/ldr/utils.c
--- trunk/reactos/lib/ntdll/ldr/utils.c 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/lib/ntdll/ldr/utils.c 2005-09-04 18:00:59 UTC (rev
17638)
@@ -2285,33 +2285,34 @@
* @implemented
*/
NTSTATUS STDCALL
-LdrGetDllHandle(IN PWCHAR Path OPTIONAL,
- IN ULONG Unknown2,
+LdrGetDllHandle(IN PWSTR DllPath OPTIONAL,
+ IN PULONG DllCharacteristics,
IN PUNICODE_STRING DllName,
- OUT PVOID* BaseAddress)
+ OUT PVOID *DllHandle)
{
PLDR_DATA_TABLE_ENTRY Module;
NTSTATUS Status;
- TRACE_LDR("LdrGetDllHandle, searching for %wZ from %S\n", DllName,
Path ? Path : L"");
+ TRACE_LDR("LdrGetDllHandle, searching for %wZ from %S\n",
+ DllName, DllPath ? DllPath : L"");
/* NULL is the current executable */
if (DllName == NULL)
{
- *BaseAddress = ExeModule->DllBase;
- DPRINT("BaseAddress %x\n", *BaseAddress);
+ *DllHandle = ExeModule->DllBase;
+ DPRINT("BaseAddress %x\n", *DllHandle);
return STATUS_SUCCESS;
}
Status = LdrFindEntryForName(DllName, &Module, FALSE);
if (NT_SUCCESS(Status))
{
- *BaseAddress = Module->DllBase;
+ *DllHandle = Module->DllBase;
return STATUS_SUCCESS;
}
DPRINT("Failed to find dll %wZ\n", DllName);
- *BaseAddress = NULL;
+ *DllHandle = NULL;
return STATUS_DLL_NOT_FOUND;
}
_____
Modified: trunk/reactos/ntoskrnl/ex/error.c
--- trunk/reactos/ntoskrnl/ex/error.c 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/ntoskrnl/ex/error.c 2005-09-04 18:00:59 UTC (rev
17638)
@@ -92,10 +92,10 @@
STDCALL
ExRaiseHardError(IN NTSTATUS ErrorStatus,
IN ULONG NumberOfParameters,
- IN PUNICODE_STRING UnicodeStringParameterMask
OPTIONAL,
- IN PVOID *Parameters,
- IN HARDERROR_RESPONSE_OPTION ResponseOption,
- OUT PHARDERROR_RESPONSE Response)
+ IN ULONG UnicodeStringParameterMask,
+ IN PULONG_PTR Parameters,
+ IN ULONG ValidResponseOptions,
+ OUT PULONG Response)
{
UNIMPLEMENTED;
}
@@ -104,10 +104,10 @@
STDCALL
NtRaiseHardError(IN NTSTATUS ErrorStatus,
IN ULONG NumberOfParameters,
- IN PUNICODE_STRING UnicodeStringParameterMask
OPTIONAL,
- IN PVOID *Parameters,
- IN HARDERROR_RESPONSE_OPTION ResponseOption,
- OUT PHARDERROR_RESPONSE Response)
+ IN ULONG UnicodeStringParameterMask,
+ IN PULONG_PTR Parameters,
+ IN ULONG ValidResponseOptions,
+ OUT PULONG Response)
{
DPRINT1("Hard error %x\n", ErrorStatus);
@@ -116,7 +116,7 @@
NumberOfParameters,
UnicodeStringParameterMask,
Parameters,
- ResponseOption,
+ ValidResponseOptions,
Response);
/* Return Success */
_____
Modified: trunk/reactos/ntoskrnl/include/internal/port.h
--- trunk/reactos/ntoskrnl/include/internal/port.h 2005-09-04
15:57:17 UTC (rev 17637)
+++ trunk/reactos/ntoskrnl/include/internal/port.h 2005-09-04
18:00:59 UTC (rev 17638)
@@ -90,61 +90,6 @@
PORT_MESSAGE Message;
} QUEUEDMESSAGE, *PQUEUEDMESSAGE;
-typedef struct _LPC_DBG_MESSAGE
-{
- PORT_MESSAGE Header;
- ULONG Type;
- ULONG Status;
- union
- {
- struct
- {
- EXCEPTION_RECORD ExceptionRecord;
- ULONG FirstChance;
- } Exception;
- struct
- {
- ULONG Reserved;
- PVOID StartAddress;
- } CreateThread;
- struct
- {
- ULONG Reserved;
- HANDLE FileHandle;
- PVOID Base;
- ULONG PointerToSymbolTable;
- ULONG NumberOfSymbols;
- ULONG Reserved2;
- PVOID EntryPoint;
- } CreateProcess;
- struct
- {
- ULONG ExitCode;
- } ExitThread;
- struct
- {
- ULONG ExitCode;
- } ExitProcess;
- struct
- {
- HANDLE FileHandle;
- PVOID Base;
- ULONG PointerToSymbolTable;
- ULONG NumberOfSymbols;
- } LoadDll;
- struct
- {
- PVOID Base;
- } UnloadDll;
- } Data;
-} LPC_DBG_MESSAGE, *PLPC_DBG_MESSAGE;
-
-typedef struct _LPC_TERMINATION_MESSAGE
-{
- PORT_MESSAGE Header;
- LARGE_INTEGER CreationTime;
-} LPC_TERMINATION_MESSAGE, *PLPC_TERMINATION_MESSAGE;
-
/* Code in ntoskrnl/lpc/close.h */
VOID STDCALL
_____
Modified: trunk/reactos/ntoskrnl/lpc/reply.c
--- trunk/reactos/ntoskrnl/lpc/reply.c 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/ntoskrnl/lpc/reply.c 2005-09-04 18:00:59 UTC (rev
17638)
@@ -146,11 +146,11 @@
* REVISIONS
*/
NTSTATUS STDCALL
-NtReplyWaitReceivePortEx(IN HANDLE PortHandle,
- OUT PULONG PortId,
- IN PPORT_MESSAGE LpcReply,
- OUT PPORT_MESSAGE LpcMessage,
- IN PLARGE_INTEGER Timeout)
+NtReplyWaitReceivePortEx(IN HANDLE PortHandle,
+ OUT PVOID *PortContext OPTIONAL,
+ IN PPORT_MESSAGE ReplyMessage OPTIONAL,
+ OUT PPORT_MESSAGE ReceiveMessage,
+ IN PLARGE_INTEGER Timeout OPTIONAL)
{
PEPORT Port;
KIRQL oldIrql;
@@ -169,7 +169,7 @@
{
_SEH_TRY
{
- ProbeForWrite(LpcMessage,
+ ProbeForWrite(ReceiveMessage,
sizeof(PORT_MESSAGE),
1);
}
@@ -211,10 +211,10 @@
/*
* Send the reply, only if port is connected
*/
- if (LpcReply != NULL && !Disconnected)
+ if (ReplyMessage != NULL && !Disconnected)
{
Status = EiReplyOrRequestPort(Port->OtherPort,
- LpcReply,
+ ReplyMessage,
LPC_REPLY,
Port);
KeReleaseSemaphore(&Port->OtherPort->Semaphore, IO_NO_INCREMENT,
1,
@@ -283,14 +283,14 @@
{
_SEH_TRY
{
- ProbeForWrite((PVOID)(LpcMessage + 1),
+ ProbeForWrite((PVOID)(ReceiveMessage + 1),
CRequest->ConnectDataLength,
1);
- RtlCopyMemory(LpcMessage,
+ RtlCopyMemory(ReceiveMessage,
&Header,
sizeof(PORT_MESSAGE));
- RtlCopyMemory((PVOID)(LpcMessage + 1),
+ RtlCopyMemory((PVOID)(ReceiveMessage + 1),
CRequest->ConnectData,
CRequest->ConnectDataLength);
}
@@ -302,10 +302,10 @@
}
else
{
- RtlCopyMemory(LpcMessage,
+ RtlCopyMemory(ReceiveMessage,
&Header,
sizeof(PORT_MESSAGE));
- RtlCopyMemory((PVOID)(LpcMessage + 1),
+ RtlCopyMemory((PVOID)(ReceiveMessage + 1),
CRequest->ConnectData,
CRequest->ConnectDataLength);
}
@@ -316,11 +316,11 @@
{
_SEH_TRY
{
- ProbeForWrite(LpcMessage,
+ ProbeForWrite(ReceiveMessage,
Request->Message.u1.s1.TotalLength,
1);
- RtlCopyMemory(LpcMessage,
+ RtlCopyMemory(ReceiveMessage,
&Request->Message,
Request->Message.u1.s1.TotalLength);
}
@@ -332,7 +332,7 @@
}
else
{
- RtlCopyMemory(LpcMessage,
+ RtlCopyMemory(ReceiveMessage,
&Request->Message,
Request->Message.u1.s1.TotalLength);
}
@@ -387,16 +387,16 @@
* REVISIONS
*/
NTSTATUS STDCALL
-NtReplyWaitReceivePort (IN HANDLE PortHandle,
- OUT PULONG PortId,
- IN PPORT_MESSAGE LpcReply,
- OUT PPORT_MESSAGE LpcMessage)
+NtReplyWaitReceivePort(IN HANDLE PortHandle,
+ OUT PVOID *PortContext OPTIONAL,
+ IN PPORT_MESSAGE ReplyMessage OPTIONAL,
+ OUT PPORT_MESSAGE ReceiveMessage)
{
- return(NtReplyWaitReceivePortEx (PortHandle,
- PortId,
- LpcReply,
- LpcMessage,
- NULL));
+ return NtReplyWaitReceivePortEx(PortHandle,
+ PortContext,
+ ReplyMessage,
+ ReceiveMessage,
+ NULL);
}
/**********************************************************************
_____
Modified: trunk/reactos/ntoskrnl/lpc/send.c
--- trunk/reactos/ntoskrnl/lpc/send.c 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/ntoskrnl/lpc/send.c 2005-09-04 18:00:59 UTC (rev
17638)
@@ -30,16 +30,16 @@
*/
NTSTATUS STDCALL
LpcSendTerminationPort (IN PEPORT Port,
- IN LARGE_INTEGER CreationTime)
+ IN LARGE_INTEGER CreateTime)
{
NTSTATUS Status;
- LPC_TERMINATION_MESSAGE Msg;
+ CLIENT_DIED_MSG Msg;
#ifdef __USE_NT_LPC__
- Msg.Header.u2.s2.Type = LPC_NEW_MESSAGE;
+ Msg.h.u2.s2.Type = LPC_CLIENT_DIED;
#endif
- Msg.CreationTime = CreationTime;
- Status = LpcRequestPort (Port, &Msg.Header);
+ Msg.CreateTime = CreateTime;
+ Status = LpcRequestPort (Port, &Msg.h);
return(Status);
}
@@ -58,15 +58,15 @@
*/
NTSTATUS STDCALL
LpcSendDebugMessagePort (IN PEPORT Port,
- IN PLPC_DBG_MESSAGE Message,
- OUT PLPC_DBG_MESSAGE Reply)
+ IN PDBGKM_MSG Message,
+ OUT PDBGKM_MSG Reply)
{
NTSTATUS Status;
KIRQL oldIrql;
PQUEUEDMESSAGE ReplyMessage;
Status = EiReplyOrRequestPort(Port,
- &Message->Header,
+ &Message->h,
LPC_REQUEST,
Port);
if (!NT_SUCCESS(Status))
_____
Modified: trunk/reactos/subsys/smss/smapi.c
--- trunk/reactos/subsys/smss/smapi.c 2005-09-04 15:57:17 UTC (rev
17637)
+++ trunk/reactos/subsys/smss/smapi.c 2005-09-04 18:00:59 UTC (rev
17638)
@@ -107,7 +107,6 @@
SmpApiConnectedThread(PVOID pConnectedPort)
{
NTSTATUS Status = STATUS_SUCCESS;
- PVOID Unknown = NULL;
PPORT_MESSAGE Reply = NULL;
SM_PORT_MESSAGE Request;
HANDLE ConnectedPort = * (PHANDLE) pConnectedPort;
@@ -120,7 +119,7 @@
DPRINT("SM: %s: waiting for message\n",__FUNCTION__);
Status = NtReplyWaitReceivePort(ConnectedPort,
- (PULONG) & Unknown,
+ NULL,
Reply,
(PPORT_MESSAGE) &
Request);
if (NT_SUCCESS(Status))