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/ma…
==============================================================================
--- 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/se…
==============================================================================
--- 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 );