}
INIT_TAG(NTE, TAG('N','T','E',' '));
+ INIT_TAG(Address, TAG('A','D','R','S'));
NTE->Free = FreeNTE;
/* Remove NTE from the interface list */
RemoveEntryList(&NTE->IFListEntry);
/* Remove NTE from the net table list */
+
+/* TODO: DEBUG: removed by RobD to prevent failure when testing under bochs 6 sept 2002.
+
RemoveEntryList(&NTE->NTListEntry);
+
+ */
+
/* Dereference the objects that are referenced */
DereferenceObject(NTE->Address);
DereferenceObject(NTE->Interface);
/* Search the list and return the NTE if found */
CurrentEntry = IF->ADEListHead.Flink;
+
+ if (CurrentEntry == &IF->ADEListHead) {
+ TI_DbgPrint(DEBUG_IP, ("NTE list is empty!!!\n"));
+ }
+
while (CurrentEntry != &IF->ADEListHead) {
Current = CONTAINING_RECORD(CurrentEntry, ADDRESS_ENTRY, ListEntry);
if (AddrIsEqual(Address, Current->Address)) {
KeReleaseSpinLock(&IF->Lock, OldIrql);
return Current->NTE;
}
+ else {
+ TI_DbgPrint(DEBUG_IP, ("CurrentEntry = 0x%X != &IF->ADEListHead = 0x%X.\n", CurrentEntry, &IF->ADEListHead));
+ }
CurrentEntry = CurrentEntry->Flink;
}