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 | 135 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 324 | net/ipv4/arp.c | struct hh_cache *hh, *next; |
hh | 332 | net/ipv4/arp.c | for (hh = entry->hh; hh; hh = next) |
hh | 334 | net/ipv4/arp.c | next = hh->hh_next; |
hh | 335 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 336 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 337 | net/ipv4/arp.c | if (!--hh->hh_refcnt) |
hh | 338 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct(struct hh_cache))); |
hh | 352 | net/ipv4/arp.c | struct hh_cache *hh, **hhp; |
hh | 355 | net/ipv4/arp.c | hhp = &entry->hh; |
hh | 356 | net/ipv4/arp.c | while ((hh=*hhp) != NULL) |
hh | 358 | net/ipv4/arp.c | if (hh->hh_refcnt == 1) |
hh | 360 | net/ipv4/arp.c | *hhp = hh->hh_next; |
hh | 361 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 364 | net/ipv4/arp.c | count += hh->hh_refcnt-1; |
hh | 365 | net/ipv4/arp.c | hhp = &hh->hh_next; |
hh | 377 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 379 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 380 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 389 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 391 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 392 | net/ipv4/arp.c | entry->dev->header_cache_update(hh, entry->dev, entry->ha); |
hh | 1057 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1290 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1401 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_refcnt : -1, |
hh | 1402 | net/ipv4/arp.c | entry->hh ? entry->hh->hh_uptodate : 0); |
hh | 1429 | net/ipv4/arp.c | struct hh_cache *hh = *hhp; |
hh | 1433 | net/ipv4/arp.c | if (hh) |
hh | 1439 | net/ipv4/arp.c | if (hh) |
hh | 1441 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1442 | net/ipv4/arp.c | if (!hh) |
hh | 1445 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1446 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1447 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1448 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1449 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1450 | net/ipv4/arp.c | *hhp = hh; |
hh | 1451 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, haddr); |
hh | 1464 | net/ipv4/arp.c | for (hh = entry->hh; hh; hh=hh->hh_next) |
hh | 1465 | net/ipv4/arp.c | if (hh->hh_type == htype) |
hh | 1467 | net/ipv4/arp.c | if (hh) |
hh | 1469 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1470 | net/ipv4/arp.c | *hhp = hh; |
hh | 1478 | net/ipv4/arp.c | hh = kmalloc(sizeof(struct hh_cache), GFP_ATOMIC); |
hh | 1479 | net/ipv4/arp.c | if (!hh) |
hh | 1485 | net/ipv4/arp.c | hh->hh_uptodate = 0; |
hh | 1486 | net/ipv4/arp.c | hh->hh_refcnt = 1; |
hh | 1487 | net/ipv4/arp.c | hh->hh_arp = NULL; |
hh | 1488 | net/ipv4/arp.c | hh->hh_next = NULL; |
hh | 1489 | net/ipv4/arp.c | hh->hh_type = htype; |
hh | 1493 | net/ipv4/arp.c | dev->header_cache_update(hh, dev, entry->ha); |
hh | 1494 | net/ipv4/arp.c | *hhp = hh; |
hh | 1496 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1497 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1498 | net/ipv4/arp.c | hh->hh_refcnt++; |
hh | 1514 | net/ipv4/arp.c | kfree_s(hh, sizeof(struct hh_cache)); |
hh | 1525 | net/ipv4/arp.c | entry->hh = hh; |
hh | 1526 | net/ipv4/arp.c | ATOMIC_INCR(&hh->hh_refcnt); |
hh | 1539 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1554 | net/ipv4/arp.c | *hhp = hh; |
hh | 1563 | net/ipv4/arp.c | struct hh_cache *hh; |
hh | 1593 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=hh->hh_next) |
hh | 1594 | net/ipv4/arp.c | hh->hh_arp = (void*)entry; |
hh | 1614 | net/ipv4/arp.c | for (hh=entry->hh; hh; hh=next) |
hh | 1616 | net/ipv4/arp.c | next = hh->hh_next; |
hh | 1617 | net/ipv4/arp.c | hh->hh_next = entry1->hh; |
hh | 1618 | net/ipv4/arp.c | entry1->hh = hh; |
hh | 1619 | net/ipv4/arp.c | hh->hh_arp = (void*)entry1; |
hh | 1621 | net/ipv4/arp.c | entry->hh = NULL; |
hh | 1755 | 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 | 326 | net/ipv4/ip_forward.c | if (hh) |
hh | 328 | net/ipv4/ip_forward.c | memcpy(skb_push(skb, dev2->hard_header_len), hh->hh_data, dev2->hard_header_len); |
hh | 329 | 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)); |