From 693316c83f3950c396ff02e203a9a59542192acd Mon Sep 17 00:00:00 2001 From: christiaans Date: Wed, 6 Sep 2006 13:01:47 +0000 Subject: [PATCH] Corrected snmp_delete_arpidx_tree() to be called in the expired state, not only maxage. --- src/netif/etharp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/netif/etharp.c b/src/netif/etharp.c index 0788be79..ad5f91f0 100644 --- a/src/netif/etharp.c +++ b/src/netif/etharp.c @@ -151,8 +151,6 @@ etharp_tmr(void) (arp_table[i].ctime >= ARP_MAXAGE)) { LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired stable entry %"U16_F".\n", (u16_t)i)); arp_table[i].state = ETHARP_STATE_EXPIRED; - /* remove from SNMP ARP index tree */ - snmp_delete_arpidx_tree(arp_table[i].netif, &arp_table[i].ipaddr); /* pending entry? */ } else if (arp_table[i].state == ETHARP_STATE_PENDING) { /* entry unresolved/pending for too long? */ @@ -167,6 +165,8 @@ etharp_tmr(void) } /* clean up entries that have just been expired */ if (arp_table[i].state == ETHARP_STATE_EXPIRED) { + /* remove from SNMP ARP index tree */ + snmp_delete_arpidx_tree(arp_table[i].netif, &arp_table[i].ipaddr); #if ARP_QUEUEING /* and empty packet queue */ if (arp_table[i].p != NULL) {