[ros-dev] [ros-diffs] [akhaldi] 64994: [ADVAPI32] * Update ImpersonateNamedPipeClient(). CORE-8540
Aleksey Bragin
aleksey at reactos.org
Mon Oct 27 16:19:03 UTC 2014
To be fair, it doesn't:
static __inline BOOL set_ntstatus( NTSTATUS status )
{
if (!NT_SUCCESS(status)) SetLastError( RtlNtStatusToDosError( status ));
return NT_SUCCESS(status);
}
So essentially it's just refactoring.
Regards,
Aleksey
On 26.10.2014 0:25, Pierre Schweitzer wrote:
> And it changes behavior of the functions.
>
> I'd rather trust a !NT_SUCESS(Status)) than a status. This means these
> functions with Wine code would fail on an informational status (whereas
> they didn't before). Is it intentional? Do we have tests to assess such
> behavior?
>
> It's a bit a shame to replace well written ReactOS to Wine code with
> broken style :-(.
>
> On 25/10/2014 22:10, Ged Murphy wrote:
>> Eeww, these are a bit ugly :(
>>
>>
>> On 25/10/2014 19:30, "akhaldi at svn.reactos.org" <akhaldi at svn.reactos.org>
>> wrote:
>>
>>> Author: akhaldi
>>> Date: Sat Oct 25 18:30:05 2014
>>> New Revision: 64994
>>>
>>> URL: http://svn.reactos.org/svn/reactos?rev=64994&view=rev
>>> Log:
>>> [ADVAPI32]
>>> * Update ImpersonateNamedPipeClient().
>>> CORE-8540
>>>
>>> Modified:
>>> trunk/reactos/dll/win32/advapi32/wine/security.c
>>>
>>> Modified: trunk/reactos/dll/win32/advapi32/wine/security.c
>>> URL:
>>> http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advapi32/wine/s
>>> ecurity.c?rev=64994&r1=64993&r2=64994&view=diff
>>> ==========================================================================
>>> ====
>>> --- trunk/reactos/dll/win32/advapi32/wine/security.c [iso-8859-1]
>>> (original)
>>> +++ trunk/reactos/dll/win32/advapi32/wine/security.c [iso-8859-1] Sat Oct
>>> 25 18:30:05 2014
>>> @@ -954,37 +954,14 @@
>>> return TRUE;
>>> }
>>>
>>> -/**********************************************************************
>>> - * ImpersonateNamedPipeClient EXPORTED
>>> - *
>>> - * @implemented
>>> - */
>>> -BOOL
>>> -WINAPI
>>> -ImpersonateNamedPipeClient(HANDLE hNamedPipe)
>>> -{
>>> - IO_STATUS_BLOCK StatusBlock;
>>> - NTSTATUS Status;
>>> -
>>> - TRACE("ImpersonateNamedPipeClient() called\n");
>>> -
>>> - Status = NtFsControlFile(hNamedPipe,
>>> - NULL,
>>> - NULL,
>>> - NULL,
>>> - &StatusBlock,
>>> - FSCTL_PIPE_IMPERSONATE,
>>> - NULL,
>>> - 0,
>>> - NULL,
>>> - 0);
>>> - if (!NT_SUCCESS(Status))
>>> - {
>>> - SetLastError(RtlNtStatusToDosError(Status));
>>> - return FALSE;
>>> - }
>>> -
>>> - return TRUE;
>>> +BOOL WINAPI ImpersonateNamedPipeClient( HANDLE hNamedPipe )
>>> +{
>>> + IO_STATUS_BLOCK io_block;
>>> +
>>> + TRACE("(%p)\n", hNamedPipe);
>>> +
>>> + return set_ntstatus( NtFsControlFile(hNamedPipe, NULL, NULL, NULL,
>>> + &io_block, FSCTL_PIPE_IMPERSONATE, NULL, 0,
>>> NULL, 0) );
>>> }
>>>
>>> /*
>>>
>>>
>>
More information about the Ros-dev
mailing list