[AFD] Introduce and use pool tags. Thanks go to Arty for assisting me with this....
[reactos.git] / drivers / network / afd / afd / bind.c
index 5bc13bf..1962d22 100644 (file)
@@ -43,7 +43,10 @@ NTSTATUS WarmSocketForBind( PAFD_FCB FCB, ULONG ShareType ) {
 
         if (NT_SUCCESS(Status) && !FCB->Recv.Window)
         {
-            FCB->Recv.Window = ExAllocatePool(PagedPool, FCB->Recv.Size);
+            FCB->Recv.Window = ExAllocatePoolWithTag(PagedPool,
+                                                     FCB->Recv.Size,
+                                                     TAG_AFD_DATA_BUFFER);
+
             if (!FCB->Recv.Window)
                 Status = STATUS_NO_MEMORY;
         }
@@ -56,7 +59,6 @@ NTSTATUS WarmSocketForBind( PAFD_FCB FCB, ULONG ShareType ) {
                                         FCB->Recv.Window,
                                         FCB->Recv.Size,
                                         FCB->AddressFrom,
-                                        &FCB->ReceiveIrp.Iosb,
                                         PacketSocketRecvComplete,
                                         FCB);
 
@@ -88,7 +90,11 @@ AfdBindSocket(PDEVICE_OBJECT DeviceObject, PIRP Irp,
         return UnlockAndMaybeComplete( FCB, STATUS_NO_MEMORY,
                                        Irp, 0 );
 
-    if( FCB->LocalAddress ) ExFreePool( FCB->LocalAddress );
+    if (FCB->LocalAddress)
+    {
+        ExFreePoolWithTag(FCB->LocalAddress, TAG_AFD_TRANSPORT_ADDRESS);
+    }
+
     FCB->LocalAddress = TaCopyTransportAddress( &BindReq->Address );
 
     if( FCB->LocalAddress )
@@ -105,7 +111,7 @@ AfdBindSocket(PDEVICE_OBJECT DeviceObject, PIRP Irp,
                                        0,
                                        NULL,
                                        MAXIMUM_ALLOWED,
-                                       IoFileObjectType,
+                                       *IoFileObjectType,
                                        Irp->RequestorMode,
                                        &UserHandle);
         if (NT_SUCCESS(Status))