Rob Shearman : ntdll: The impersonation level in NtDuplicateToken should be taken from the SecurityQualityOfService member of ObjectAttributes if present .
Module: wine Branch: master Commit: 1cd222b451627e2a3dab50c91eac52994a103428 URL: http://source.winehq.org/git/wine.git/?a=commit;h=1cd222b451627e2a3dab50c91e... Author: Rob Shearman <rob(a)codeweavers.com> Date: Thu Jul 12 15:32:00 2007 +0100 ntdll: The impersonation level in NtDuplicateToken should be taken from the SecurityQualityOfService member of ObjectAttributes if present. --- dlls/ntdll/nt.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c index a303dcf..27a18ef 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -61,6 +61,16 @@ NTSTATUS WINAPI NtDuplicateToken( ImpersonationLevel, TokenType, NewToken); dump_ObjectAttributes(ObjectAttributes); + if (ObjectAttributes && ObjectAttributes->SecurityQualityOfService) + { + SECURITY_QUALITY_OF_SERVICE *SecurityQOS = ObjectAttributes->SecurityQualityOfService; + TRACE("ObjectAttributes->SecurityQualityOfService = {%d, %d, %d, %s}\n", + SecurityQOS->Length, SecurityQOS->ImpersonationLevel, + SecurityQOS->ContextTrackingMode, + SecurityQOS->EffectiveOnly ? "TRUE" : "FALSE"); + ImpersonationLevel = SecurityQOS->ImpersonationLevel; + } + SERVER_START_REQ( duplicate_token ) { req->handle = ExistingToken;
participants (1)
-
Alexandre Julliard