https://git.reactos.org/?p=reactos.git;a=commitdiff;h=986bf4c407954cb95fa42…
commit 986bf4c407954cb95fa4260347e347cf9c4ad19b
Author: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
AuthorDate: Mon Jun 25 15:32:06 2018 +0200
Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
CommitDate: Wed Jun 27 23:40:14 2018 +0200
[NTOS:SE] In SepCreateClientSecurity(), fix the impersonation level value passed to the SeCopyClientToken() call.
Caught while debugging, in the case the ImpersonationLevel value was
uninitialized, due to the fact it was left untouched on purpose by
PsReferenceEffectiveToken().
---
ntoskrnl/se/access.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ntoskrnl/se/access.c b/ntoskrnl/se/access.c
index 4d24839592..a4f5cb0ee6 100644
--- a/ntoskrnl/se/access.c
+++ b/ntoskrnl/se/access.c
@@ -225,8 +225,8 @@ SepCreateClientSecurity(IN PACCESS_TOKEN Token,
/* Do not use direct access and make a copy */
ClientContext->DirectlyAccessClientToken = FALSE;
Status = SeCopyClientToken(Token,
- ImpersonationLevel,
- 0,
+ ClientSecurityQos->ImpersonationLevel,
+ KernelMode,
&NewToken);
if (!NT_SUCCESS(Status))
return Status;