tag | line | file | source code |
hh | 39 | include/linux/etherdevice.h | extern void eth_header_cache_update(struct hh_cache *hh, struct device *dev, unsigned char * haddr); |
hh | 189 | include/linux/netdevice.h | void (*header_cache_update)(struct hh_cache *hh, struct device *dev, unsigned char * haddr); |
hh | 16 | include/net/arp.h | extern int arp_update_cache(struct hh_cache * hh); |
hh | 230 | net/ethernet/eth.c | struct hh_cache *hh; |
hh | 239 | net/ethernet/eth.c | if ((hh=*hhp) != NULL) |
hh | 241 | net/ethernet/eth.c | memcpy(hh->hh_data+6, dev->dev_addr, ETH_ALEN); |
hh | 242 | net/ethernet/eth.c | hh->hh_data[12] = htype>>8; |
hh | 243 | net/ethernet/eth.c | hh->hh_data[13] = htype&0xFF; |
hh | 251 | net/ethernet/eth.c | void eth_header_cache_update(struct hh_cache *hh, struct device *dev, unsigned char * haddr) |
hh | 253 | net/ethernet/eth.c | if (hh->hh_type != ETH_P_IP) |
hh | 255 | net/ethernet/eth.c | printk("eth_header_cache_update: %04x cache is not implemented\n", hh->hh_type); |
hh | 258 | net/ethernet/eth.c | memcpy(hh->hh_data, haddr, ETH_ALEN); |
hh | 259 | net/ethernet/eth.c | hh->hh_uptodate = 1; |
hh | 139 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 336 | net/ipv4/arp.c | struct hh_cache *hh, *next; |
hh | 344 | net/ipv4/arp.c | for (hh = entry->hh; hh; hh = next) |
hh | 346 | net/ipv4/arp.c | next = hh->hh_next; |
hh | 347 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 348 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 349 | net/ipv4/arp.c | if (!--hh->hh_refcnt) |
hh | 350 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct(struct hh_cache))); |
hh | 365 | net/ipv4/arp.c | struct hh_cache *hh, **hhp; |
hh | 368 | net/ipv4/arp.c | hhp = &entry->hh; |
hh | 369 | net/ipv4/arp.c | while ((hh=*hhp) != NULL) |
hh | 371 | net/ipv4/arp.c | if (hh->hh_refcnt == 1) |
hh | 373 | net/ipv4/arp.c | *hhp = hh->hh_next; |
hh | 374 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 377 | net/ipv4/arp.c | count += hh->hh_refcnt-1; |
hh | 378 | net/ipv4/arp.c | hhp = &hh->hh_next; |
hh | 540 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 563 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 565 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 566 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 575 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 577 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 578 | net/ipv4/arp.c | entry->dev->header_cache_update(hh, entry->dev, entry->ha); |
hh | 1246 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1486 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1598 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_refcnt : -1, |
hh | 1599 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_uptodate : 0); |
hh | 1626 | net/ipv4/arp.c | struct hh_cache *hh = *hhp; |
hh | 1630 | net/ipv4/arp.c | if (hh) |
hh | 1636 | net/ipv4/arp.c | if (hh) |
hh | 1638 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1639 | net/ipv4/arp.c | if (!hh) |
hh | 1642 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1643 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1644 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1645 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1646 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1647 | net/ipv4/arp.c | *hhp = hh; |
hh | 1648 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, haddr); |
hh | 1663 | net/ipv4/arp.c | for (hh = entry->hh; hh; hh=hh->hh_next) |
hh | 1664 | net/ipv4/arp.c | if (hh->hh_type == htype) |
hh | 1666 | net/ipv4/arp.c | if (hh) |
hh | 1668 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1669 | net/ipv4/arp.c | *hhp = hh; |
hh | 1677 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1678 | net/ipv4/arp.c | if (!hh) |
hh | 1684 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1685 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1686 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1687 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1688 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1692 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, entry->ha); |
hh | 1693 | net/ipv4/arp.c | *hhp = hh; |
hh | 1695 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1696 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1697 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1713 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 1724 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1726 | net/ipv4/arp.c | ATOMIC_INCR(&hh->hh_refcnt); |
hh | 1739 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1754 | net/ipv4/arp.c | *hhp = hh; |
hh | 1763 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 1793 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 1794 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1814 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=next) |
hh | 1816 | net/ipv4/arp.c | next = hh->hh_next; |
hh | 1817 | net/ipv4/arp.c | hh->hh_next = entry1->hh; |
hh | 1818 | net/ipv4/arp.c | entry1->hh = hh; |
hh | 1819 | net/ipv4/arp.c | hh->hh_arp = (void*)entry1; |
hh | 1821 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1956 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 96 | net/ipv4/ip_forward.c | struct hh_cache *hh = NULL; |
hh | 204 | net/ipv4/ip_forward.c | hh = rt->rt_hh; |
hh | 327 | net/ipv4/ip_forward.c | if (hh) |
hh | 329 | net/ipv4/ip_forward.c | memcpy(skb_push(skb, dev2->hard_header_len), hh->hh_data, dev2->hard_header_len); |
hh | 330 | net/ipv4/ip_forward.c | if (!hh->hh_uptodate) |
hh | 584 | net/ipv4/ip_output.c | struct hh_cache * hh=NULL; |
hh | 618 | net/ipv4/ip_output.c | hh = rt->rt_hh; |
hh | 664 | net/ipv4/ip_output.c | if (hh) |
hh | 667 | net/ipv4/ip_output.c | memcpy(skb_push(skb,dev->hard_header_len),hh->hh_data,dev->hard_header_len); |
hh | 668 | net/ipv4/ip_output.c | if (!hh->hh_uptodate) |
hh | 840 | net/ipv4/ip_output.c | if (hh) |
hh | 843 | net/ipv4/ip_output.c | memcpy(skb_push(skb,dev->hard_header_len),hh->hh_data,dev->hard_header_len); |
hh | 844 | net/ipv4/ip_output.c | if (!hh->hh_uptodate) |
hh | 961 | net/ipv4/route.c | struct hh_cache * hh = rt->rt_hh; |
hh | 963 | net/ipv4/route.c | if (hh && !--hh->hh_refcnt) |
hh | 966 | net/ipv4/route.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 996 | net/ipv4/route.c | struct hh_cache * hh = rt->rt_hh; |
hh | 1002 | net/ipv4/route.c | if (hh && !--hh->hh_refcnt) |
hh | 1005 | net/ipv4/route.c | kfree_s(hh, sizeof(struct hh_cache)); |