Index: arp.c =================================================================== RCS file: /cvs/src/usr.sbin/arp/arp.c,v retrieving revision 1.80 diff -u -p -r1.80 arp.c --- arp.c 23 Dec 2017 20:53:07 -0000 1.80 +++ arp.c 1 Mar 2018 22:40:12 -0000 @@ -490,6 +490,17 @@ search(in_addr_t addr, void (*action)(st continue; sin = (struct sockaddr_inarp *)(next + rtm->rtm_hdrlen); sdl = (struct sockaddr_dl *)(sin + 1); + if (sdl->sdl_family != AF_LINK) + continue; + switch (sdl->sdl_type) { + case IFT_ETHER: + case IFT_CARP: + case IFT_XETHER: + break; + default: + continue; + } + if (addr) { if (addr != sin->sin_addr.s_addr) continue;