Lines Matching refs:arp
80 struct ether_arp arp; in arpwhohas() member
102 ah = &wbuf.data.arp; in arpwhohas()
253 struct ether_arp *arp = pkt; in arp_reply() local
255 if (arp->arp_hrd != htons(ARPHRD_ETHER) || in arp_reply()
256 arp->arp_pro != htons(ETHERTYPE_IP) || in arp_reply()
257 arp->arp_hln != sizeof (arp->arp_sha) || in arp_reply()
258 arp->arp_pln != sizeof (arp->arp_spa)) { in arp_reply()
266 if (arp->arp_op != htons(ARPOP_REQUEST)) { in arp_reply()
275 if (bcmp(arp->arp_tpa, &d->myip, sizeof (arp->arp_tpa))) in arp_reply()
280 printf("arp_reply: to %s\n", ether_sprintf(arp->arp_sha)); in arp_reply()
284 arp->arp_op = htons(ARPOP_REPLY); in arp_reply()
286 bcopy(arp->arp_sha, arp->arp_tha, sizeof (arp->arp_tha)); in arp_reply()
287 bcopy(arp->arp_spa, arp->arp_tpa, sizeof (arp->arp_tpa)); in arp_reply()
289 bcopy(d->myea, arp->arp_sha, sizeof (arp->arp_sha)); in arp_reply()
290 bcopy(&d->myip, arp->arp_spa, sizeof (arp->arp_spa)); in arp_reply()
296 (void) sendether(d, pkt, sizeof (*arp) + 18, in arp_reply()
297 arp->arp_tha, ETHERTYPE_ARP); in arp_reply()