mirror of
https://github.com/reactos/reactos.git
synced 2025-01-02 12:32:47 +00:00
[LSASRV]
- LsapCheckLogonProcess: Open client process using the PROCESS_DUP_HANDLE access right because we need to duplicate the logon token back into the clients handle table. svn path=/trunk/; revision=59013
This commit is contained in:
parent
5bd23c2e51
commit
ebe3a779b1
1 changed files with 7 additions and 6 deletions
|
@ -59,7 +59,7 @@ LsapCheckLogonProcess(PLSA_API_MSG RequestMsg,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
Status = NtOpenProcess(&ProcessHandle,
|
Status = NtOpenProcess(&ProcessHandle,
|
||||||
PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_VM_OPERATION,
|
PROCESS_VM_READ | PROCESS_VM_WRITE | PROCESS_VM_OPERATION | PROCESS_DUP_HANDLE,
|
||||||
&ObjectAttributes,
|
&ObjectAttributes,
|
||||||
&RequestMsg->h.ClientId);
|
&RequestMsg->h.ClientId);
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
|
@ -163,10 +163,11 @@ AuthPortThreadRoutine(PVOID Param)
|
||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
|
TRACE("Reply: %p\n", ReplyMsg);
|
||||||
Status = NtReplyWaitReceivePort(AuthPortHandle,
|
Status = NtReplyWaitReceivePort(AuthPortHandle,
|
||||||
(PVOID*)&LogonContext,
|
(PVOID*)&LogonContext,
|
||||||
&ReplyMsg->h,
|
(PPORT_MESSAGE)ReplyMsg,
|
||||||
&RequestMsg.h);
|
(PPORT_MESSAGE)&RequestMsg);
|
||||||
if (!NT_SUCCESS(Status))
|
if (!NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
TRACE("NtReplyWaitReceivePort() failed (Status %lx)\n", Status);
|
TRACE("NtReplyWaitReceivePort() failed (Status %lx)\n", Status);
|
||||||
|
@ -208,8 +209,8 @@ AuthPortThreadRoutine(PVOID Param)
|
||||||
|
|
||||||
ReplyMsg = &RequestMsg;
|
ReplyMsg = &RequestMsg;
|
||||||
RequestMsg.Status = STATUS_SUCCESS;
|
RequestMsg.Status = STATUS_SUCCESS;
|
||||||
Status = NtReplyPort(AuthPortHandle,
|
NtReplyPort(AuthPortHandle,
|
||||||
&ReplyMsg->h);
|
&ReplyMsg->h);
|
||||||
|
|
||||||
LsapDeregisterLogonProcess(&RequestMsg,
|
LsapDeregisterLogonProcess(&RequestMsg,
|
||||||
LogonContext);
|
LogonContext);
|
||||||
|
@ -230,7 +231,7 @@ AuthPortThreadRoutine(PVOID Param)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
RequestMsg.Status = STATUS_SUCCESS; /* FIXME */
|
RequestMsg.Status = STATUS_INVALID_SYSTEM_SERVICE;
|
||||||
ReplyMsg = &RequestMsg;
|
ReplyMsg = &RequestMsg;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue