Author: cgutman Date: Tue Jun 14 00:56:49 2011 New Revision: 52223
URL: http://svn.reactos.org/svn/reactos?rev=52223&view=rev Log: [AFD] - FD_CLOSE is only for remote disconnects so don't send it when the app closes its own socket - Validate the user-mode event handle properly
Modified: trunk/reactos/drivers/network/afd/afd/main.c trunk/reactos/drivers/network/afd/afd/select.c
Modified: trunk/reactos/drivers/network/afd/afd/main.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/afd/afd/mai... ============================================================================== --- trunk/reactos/drivers/network/afd/afd/main.c [iso-8859-1] (original) +++ trunk/reactos/drivers/network/afd/afd/main.c [iso-8859-1] Tue Jun 14 00:56:49 2011 @@ -419,9 +419,6 @@ if( !SocketAcquireStateLock( FCB ) ) return STATUS_FILE_CLOSED;
FCB->State = SOCKET_STATE_CLOSED; - FCB->PollState = AFD_EVENT_CLOSE; - FCB->PollStatus[FD_CLOSE_BIT] = STATUS_SUCCESS; //I think we can return success here - PollReeval( FCB->DeviceExt, FCB->FileObject );
InFlightRequest[0] = &FCB->ListenIrp; InFlightRequest[1] = &FCB->ReceiveIrp;
Modified: trunk/reactos/drivers/network/afd/afd/select.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/afd/afd/sel... ============================================================================== --- trunk/reactos/drivers/network/afd/afd/select.c [iso-8859-1] (original) +++ trunk/reactos/drivers/network/afd/afd/select.c [iso-8859-1] Tue Jun 14 00:56:49 2011 @@ -287,8 +287,8 @@ Status = ObReferenceObjectByHandle( (PVOID)EventSelectInfo-> EventObject, FILE_ALL_ACCESS, - NULL, - KernelMode, + ExEventObjectType, + UserMode, (PVOID *)&FCB->EventSelect, NULL );