- Move the implementation of NdisMIndicateStatus to MiniStatus and call it from...
authorCameron Gutman <aicommander@gmail.com>
Fri, 3 Oct 2008 18:38:40 +0000 (18:38 +0000)
committerCameron Gutman <aicommander@gmail.com>
Fri, 3 Oct 2008 18:38:40 +0000 (18:38 +0000)
 - Move the implementation of NdisMIndicateStatusComplete to MiniStatusComplete and call it from NdisMIndicateStatusComplete

svn path=/branches/aicom-network-fixes/; revision=36633

drivers/network/ndis/ndis/miniport.c

index 54914be..3923904 100644 (file)
@@ -1052,7 +1052,29 @@ MiniStatus(
     IN PVOID  StatusBuffer,
     IN UINT  StatusBufferSize)
 {
-    UNIMPLEMENTED
+    PLOGICAL_ADAPTER Adapter = MiniportHandle;
+    PLIST_ENTRY CurrentEntry;
+    PADAPTER_BINDING AdapterBinding;
+    KIRQL OldIrql;
+
+    KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
+
+    CurrentEntry = Adapter->ProtocolListHead.Flink;
+
+    while (CurrentEntry != &Adapter->ProtocolListHead)
+    {
+       AdapterBinding = CONTAINING_RECORD(CurrentEntry, ADAPTER_BINDING, AdapterListEntry);
+
+       (*AdapterBinding->ProtocolBinding->Chars.StatusHandler)(
+           AdapterBinding->NdisOpenBlock.ProtocolBindingContext,
+           GeneralStatus,
+           StatusBuffer,
+           StatusBufferSize);
+
+       CurrentEntry = CurrentEntry->Flink;
+    }
+
+    KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
 }
 
 \f
@@ -1061,7 +1083,26 @@ NTAPI
 MiniStatusComplete(
     IN NDIS_HANDLE  MiniportAdapterHandle)
 {
-    UNIMPLEMENTED
+    PLOGICAL_ADAPTER Adapter = MiniportAdapterHandle;
+    PLIST_ENTRY CurrentEntry;
+    PADAPTER_BINDING AdapterBinding;
+    KIRQL OldIrql;
+
+    KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
+
+    CurrentEntry = Adapter->ProtocolListHead.Flink;
+
+    while (CurrentEntry != &Adapter->ProtocolListHead)
+    {
+       AdapterBinding = CONTAINING_RECORD(CurrentEntry, ADAPTER_BINDING, AdapterListEntry);
+
+       (*AdapterBinding->ProtocolBinding->Chars.StatusCompleteHandler)(
+           AdapterBinding->NdisOpenBlock.ProtocolBindingContext);
+
+       CurrentEntry = CurrentEntry->Flink;
+    }
+
+    KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
 }
 
 \f
@@ -1137,29 +1178,7 @@ NdisMIndicateStatus(
     IN  PVOID       StatusBuffer,
     IN  UINT        StatusBufferSize)
 {
-    PLOGICAL_ADAPTER Adapter = MiniportAdapterHandle;
-    PLIST_ENTRY CurrentEntry;
-    PADAPTER_BINDING AdapterBinding;
-    KIRQL OldIrql;
-
-    KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
-
-    CurrentEntry = Adapter->ProtocolListHead.Flink;
-
-    while (CurrentEntry != &Adapter->ProtocolListHead)
-    {
-       AdapterBinding = CONTAINING_RECORD(CurrentEntry, ADAPTER_BINDING, AdapterListEntry);
-
-       (*AdapterBinding->ProtocolBinding->Chars.StatusHandler)(
-           AdapterBinding->NdisOpenBlock.ProtocolBindingContext,
-           GeneralStatus,
-           StatusBuffer,
-           StatusBufferSize);
-
-       CurrentEntry = CurrentEntry->Flink;
-    }
-
-    KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
+    MiniStatus(MiniportAdapterHandle, GeneralStatus, StatusBuffer, StatusBufferSize);
 }
 
 /*
@@ -1171,26 +1190,7 @@ EXPORT
 NdisMIndicateStatusComplete(
     IN  NDIS_HANDLE MiniportAdapterHandle)
 {
-    PLOGICAL_ADAPTER Adapter = MiniportAdapterHandle;
-    PLIST_ENTRY CurrentEntry;
-    PADAPTER_BINDING AdapterBinding;
-    KIRQL OldIrql;
-
-    KeAcquireSpinLock(&Adapter->NdisMiniportBlock.Lock, &OldIrql);
-
-    CurrentEntry = Adapter->ProtocolListHead.Flink;
-
-    while (CurrentEntry != &Adapter->ProtocolListHead)
-    {
-       AdapterBinding = CONTAINING_RECORD(CurrentEntry, ADAPTER_BINDING, AdapterListEntry);
-
-       (*AdapterBinding->ProtocolBinding->Chars.StatusCompleteHandler)(
-           AdapterBinding->NdisOpenBlock.ProtocolBindingContext);
-
-       CurrentEntry = CurrentEntry->Flink;
-    }
-
-    KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
+    MiniStatusComplete(MiniportAdapterHandle);
 }
 
 \f