/[lwip]/lwip/src/netif/etharp.c
ViewVC logotype

Diff of /lwip/src/netif/etharp.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.47 by kieranm, Tue Jun 10 10:45:29 2003 UTC revision 1.47.2.1 by jani, Mon Jun 23 22:24:11 2003 UTC
# Line 156  etharp_tmr(void) Line 156  etharp_tmr(void)
156      if ((arp_table[i].state == ETHARP_STATE_STABLE) &&      if ((arp_table[i].state == ETHARP_STATE_STABLE) &&
157          (arp_table[i].ctime >= ARP_MAXAGE)) {          (arp_table[i].ctime >= ARP_MAXAGE)) {
158        LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired stable entry %u.\n", i));        LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired stable entry %u.\n", i));
159        arp_table[i].state = ETHARP_STATE_EMPTY;        goto empty;
 #if ARP_QUEUEING  
       if (arp_table[i].p != NULL) {  
         /* remove any queued packet */  
         LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: freeing packet queue %p.\n", i, (void *)(arp_table[i].p)));  
         pbuf_free(arp_table[i].p);  
         arp_table[i].p = NULL;  
       }  
 #endif  
160      } else if ((arp_table[i].state == ETHARP_STATE_PENDING) &&      } else if ((arp_table[i].state == ETHARP_STATE_PENDING) &&
161          (arp_table[i].ctime >= ARP_MAXPENDING)) {          (arp_table[i].ctime >= ARP_MAXPENDING)) {
       arp_table[i].state = ETHARP_STATE_EMPTY;  
162        LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired pending entry %u.\n", i));        LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: expired pending entry %u.\n", i));
163      empty:      
164          arp_table[i].state = ETHARP_STATE_EMPTY;
165  #if ARP_QUEUEING  #if ARP_QUEUEING
166        if (arp_table[i].p != NULL) {        if (arp_table[i].p != NULL) {
167          /* remove any queued packet */          /* remove any queued packet */
168          LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: freeing packet queue %p.\n", i, (void *)(arp_table[i].p)));          LWIP_DEBUGF(ETHARP_DEBUG, ("etharp_timer: freeing entry %u, packet queue %p.\n", i, (void *)(arp_table[i].p)));
169          pbuf_free(arp_table[i].p);          pbuf_free(arp_table[i].p);
170          arp_table[i].p = NULL;          arp_table[i].p = NULL;
171        }        }

Legend:
Removed from v.1.47  
changed lines
  Added in v.1.47.2.1

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26