Lines Matching defs:arp_hdr
134 struct arphdr *arp_hdr = (struct arphdr *)toybuf;
135 unsigned char *p = (unsigned char *)(arp_hdr + 1);
137 if (arp_hdr->ar_op != htons(ARPOP_REQUEST) &&
138 arp_hdr->ar_op != htons(ARPOP_REPLY)) return;
143 if (arp_hdr->ar_pro != htons(ETH_P_IP) || (arp_hdr->ar_pln != 4)
144 || (arp_hdr->ar_hln != src_pk.sll_halen)
145 || (*recv_len < (int)(sizeof(*arp_hdr) + 2 * (4 + arp_hdr->ar_hln))))
148 memcpy(&s_ip.s_addr, p + arp_hdr->ar_hln, 4);
149 memcpy(&d_ip.s_addr, p + arp_hdr->ar_hln + 4 + arp_hdr->ar_hln, 4);
160 arp_hdr->ar_op == htons(ARPOP_REPLY) ? "ply" : "quest",
173 if (arp_hdr->ar_op == htons(ARPOP_REQUEST)) TT.rcvd_req++;