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 | 1244 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1484 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1596 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_refcnt : -1, |
hh | 1597 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_uptodate : 0); |
hh | 1624 | net/ipv4/arp.c | struct hh_cache *hh = *hhp; |
hh | 1628 | net/ipv4/arp.c | if (hh) |
hh | 1634 | net/ipv4/arp.c | if (hh) |
hh | 1636 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1637 | net/ipv4/arp.c | if (!hh) |
hh | 1640 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1641 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1642 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1643 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1644 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1645 | net/ipv4/arp.c | *hhp = hh; |
hh | 1646 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, haddr); |
hh | 1661 | net/ipv4/arp.c | for (hh = entry->hh; hh; hh=hh->hh_next) |
hh | 1662 | net/ipv4/arp.c | if (hh->hh_type == htype) |
hh | 1664 | net/ipv4/arp.c | if (hh) |
hh | 1666 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1667 | net/ipv4/arp.c | *hhp = hh; |
hh | 1675 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1676 | net/ipv4/arp.c | if (!hh) |
hh | 1682 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1683 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1684 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1685 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1686 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1690 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, entry->ha); |
hh | 1691 | net/ipv4/arp.c | *hhp = hh; |
hh | 1693 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1694 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1695 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1711 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 1722 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1724 | net/ipv4/arp.c | ATOMIC_INCR(&hh->hh_refcnt); |
hh | 1737 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1752 | net/ipv4/arp.c | *hhp = hh; |
hh | 1761 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 1791 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 1792 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1812 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=next) |
hh | 1814 | net/ipv4/arp.c | next = hh->hh_next; |
hh | 1815 | net/ipv4/arp.c | hh->hh_next = entry1->hh; |
hh | 1816 | net/ipv4/arp.c | entry1->hh = hh; |
hh | 1817 | net/ipv4/arp.c | hh->hh_arp = (void*)entry1; |
hh | 1819 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1954 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 99 | net/ipv4/ip_forward.c | struct hh_cache *hh = NULL; |
hh | 210 | net/ipv4/ip_forward.c | hh = rt->rt_hh; |
hh | 335 | net/ipv4/ip_forward.c | if (hh) |
hh | 337 | net/ipv4/ip_forward.c | memcpy(skb_push(skb, dev2->hard_header_len), hh->hh_data, dev2->hard_header_len); |
hh | 338 | net/ipv4/ip_forward.c | if (!hh->hh_uptodate) |
hh | 587 | net/ipv4/ip_output.c | struct hh_cache * hh=NULL; |
hh | 621 | net/ipv4/ip_output.c | hh = rt->rt_hh; |
hh | 668 | net/ipv4/ip_output.c | if (hh) |
hh | 671 | net/ipv4/ip_output.c | memcpy(skb_push(skb,dev->hard_header_len),hh->hh_data,dev->hard_header_len); |
hh | 672 | net/ipv4/ip_output.c | if (!hh->hh_uptodate) |
hh | 844 | net/ipv4/ip_output.c | if (hh) |
hh | 847 | net/ipv4/ip_output.c | memcpy(skb_push(skb,dev->hard_header_len),hh->hh_data,dev->hard_header_len); |
hh | 848 | net/ipv4/ip_output.c | if (!hh->hh_uptodate) |
hh | 962 | net/ipv4/route.c | struct hh_cache * hh = rt->rt_hh; |
hh | 964 | net/ipv4/route.c | if (hh && !--hh->hh_refcnt) |
hh | 967 | net/ipv4/route.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 997 | net/ipv4/route.c | struct hh_cache * hh = rt->rt_hh; |
hh | 1003 | net/ipv4/route.c | if (hh && !--hh->hh_refcnt) |
hh | 1006 | net/ipv4/route.c | kfree_s(hh, sizeof(struct hh_cache)); |