FCB->Connection = Qelt->Object;
- if( FCB->RemoteAddress ) ExFreePool( FCB->RemoteAddress );
+ if (FCB->RemoteAddress)
+ {
+ ExFreePoolWithTag(FCB->RemoteAddress, TAG_AFD_TRANSPORT_ADDRESS);
+ }
+
FCB->RemoteAddress =
TaCopyTransportAddress( Qelt->ConnInfo->RemoteAddress );
/* Free ConnectionReturnInfo and ConnectionCallInfo */
if (FCB->ListenIrp.ConnectionReturnInfo)
{
- ExFreePool(FCB->ListenIrp.ConnectionReturnInfo);
+ ExFreePoolWithTag(FCB->ListenIrp.ConnectionReturnInfo,
+ TAG_AFD_TDI_CONNECTION_INFORMATION);
+
FCB->ListenIrp.ConnectionReturnInfo = NULL;
}
if (FCB->ListenIrp.ConnectionCallInfo)
{
- ExFreePool(FCB->ListenIrp.ConnectionCallInfo);
+ ExFreePoolWithTag(FCB->ListenIrp.ConnectionCallInfo,
+ TAG_AFD_TDI_CONNECTION_INFORMATION);
+
FCB->ListenIrp.ConnectionCallInfo = NULL;
}
return Irp->IoStatus.Status;
}
- Qelt = ExAllocatePool( NonPagedPool, sizeof(*Qelt) );
+ Qelt = ExAllocatePoolWithTag(NonPagedPool,
+ sizeof(*Qelt),
+ TAG_AFD_ACCEPT_QUEUE);
+
if( !Qelt ) {
Status = STATUS_NO_MEMORY;
} else {
if (!NT_SUCCESS(Status))
{
- ExFreePool(FCB->ListenIrp.ConnectionCallInfo);
+ ExFreePoolWithTag(FCB->ListenIrp.ConnectionCallInfo,
+ TAG_AFD_TDI_CONNECTION_INFORMATION);
+
FCB->ListenIrp.ConnectionCallInfo = NULL;
return UnlockAndMaybeComplete(FCB, Status, Irp, 0);
}
AFD_DbgPrint(MID_TRACE,("Completed a wait for accept\n"));
- ExFreePool( PendingConnObj );
+ ExFreePoolWithTag(PendingConnObj, TAG_AFD_ACCEPT_QUEUE);
if( !IsListEmpty( &FCB->PendingConnections ) )
{