mirror of
https://github.com/reactos/reactos.git
synced 2024-10-05 00:43:21 +00:00
- Revert r42358 due to what seems to be issues handling cleanup IRPs
svn path=/trunk/; revision=42360
This commit is contained in:
parent
268d0a868c
commit
5e1ea71af7
|
@ -33,6 +33,11 @@ NTSTATUS WarmSocketForBind( PAFD_FCB FCB ) {
|
|||
&FCB->AddressFile.Handle,
|
||||
&FCB->AddressFile.Object );
|
||||
|
||||
if (NT_SUCCESS(Status))
|
||||
{
|
||||
ObReferenceObject(FCB->AddressFile.Object);
|
||||
}
|
||||
|
||||
AFD_DbgPrint(MID_TRACE,("Returning %x\n", Status));
|
||||
|
||||
return Status;
|
||||
|
|
|
@ -29,6 +29,11 @@ NTSTATUS WarmSocketForConnection( PAFD_FCB FCB ) {
|
|||
FCB->Connection.Object );
|
||||
}
|
||||
|
||||
if (NT_SUCCESS(Status))
|
||||
{
|
||||
ObReferenceObject(FCB->Connection.Object);
|
||||
}
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
|
|
@ -96,8 +96,6 @@ AfdCreateSocket(PDEVICE_OBJECT DeviceObject, PIRP Irp,
|
|||
FCB->DeviceExt = DeviceExt;
|
||||
FCB->Recv.Size = DEFAULT_RECEIVE_WINDOW_SIZE;
|
||||
FCB->Send.Size = DEFAULT_SEND_WINDOW_SIZE;
|
||||
FCB->AddressFile.Handle = INVALID_HANDLE_VALUE;
|
||||
FCB->Connection.Handle = INVALID_HANDLE_VALUE;
|
||||
|
||||
KeInitializeSpinLock( &FCB->SpinLock );
|
||||
ExInitializeFastMutex( &FCB->Mutex );
|
||||
|
@ -224,21 +222,15 @@ VOID CleanupSocket( PAFD_FCB FCB ) {
|
|||
FCB->RemoteAddress = NULL;
|
||||
}
|
||||
if( FCB->Connection.Object ) {
|
||||
ZwClose(FCB->Connection.Handle);
|
||||
ObDereferenceObject(FCB->Connection.Object);
|
||||
FCB->Connection.Object = NULL;
|
||||
}
|
||||
if( FCB->AddressFile.Object ) {
|
||||
ZwClose(FCB->AddressFile.Handle);
|
||||
ObDereferenceObject(FCB->AddressFile.Object);
|
||||
FCB->AddressFile.Object = NULL;
|
||||
}
|
||||
if( FCB->AddressFile.Handle != INVALID_HANDLE_VALUE ) {
|
||||
ZwClose(FCB->AddressFile.Handle);
|
||||
FCB->AddressFile.Handle = INVALID_HANDLE_VALUE;
|
||||
}
|
||||
if( FCB->Connection.Handle != INVALID_HANDLE_VALUE ) {
|
||||
ZwClose(FCB->Connection.Handle);
|
||||
FCB->Connection.Handle = INVALID_HANDLE_VALUE;
|
||||
}
|
||||
|
||||
SocketStateUnlock( FCB );
|
||||
}
|
||||
|
|
|
@ -146,13 +146,14 @@ static NTSTATUS TdiOpenDevice(
|
|||
}
|
||||
|
||||
if (!NT_SUCCESS(Status)) {
|
||||
*Handle = INVALID_HANDLE_VALUE;
|
||||
*Handle = NULL;
|
||||
*Object = NULL;
|
||||
}
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
NTSTATUS TdiOpenAddressFile(
|
||||
PUNICODE_STRING DeviceName,
|
||||
PTRANSPORT_ADDRESS Name,
|
||||
|
|
Loading…
Reference in a new issue