diff options
| author | Robert Watson <rwatson@FreeBSD.org> | 2003-06-25 16:56:05 +0000 |
|---|---|---|
| committer | Robert Watson <rwatson@FreeBSD.org> | 2003-06-25 16:56:05 +0000 |
| commit | 4826e117a69d7e6d381b9ecadd8e2f8e067d0305 (patch) | |
| tree | 45ec55082ae710412adeb4b4a7fae0a2c9d9da1b /sys/netinet | |
| parent | 98055f6d6eacbee4900c6a69196d4f41ace163d2 (diff) | |
Notes
Diffstat (limited to 'sys/netinet')
| -rw-r--r-- | sys/netinet/if_ether.c | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c index f4757b3c214d..64817c13b3dc 100644 --- a/sys/netinet/if_ether.c +++ b/sys/netinet/if_ether.c @@ -556,10 +556,15 @@ arpintr() * but formerly didn't normally send requests. */ static int log_arp_wrong_iface = 1; +static int log_arp_movements = 1; SYSCTL_INT(_net_link_ether_inet, OID_AUTO, log_arp_wrong_iface, CTLFLAG_RW, &log_arp_wrong_iface, 0, "log arp packets arriving on the wrong interface"); +SYSCTL_INT(_net_link_ether_inet, OID_AUTO, log_arp_movements, CTLFLAG_RW, + &log_arp_movements, 0, + "log arp replies from MACs different than the one in the cache"); + static void in_arpinput(m) @@ -664,13 +669,14 @@ match: } if (sdl->sdl_alen && bcmp(ar_sha(ah), LLADDR(sdl), sdl->sdl_alen)) { - if (rt->rt_expire) - log(LOG_INFO, "arp: %s moved from %*D to %*D on %s%d\n", - inet_ntoa(isaddr), - ifp->if_addrlen, (u_char *)LLADDR(sdl), ":", - ifp->if_addrlen, (u_char *)ar_sha(ah), ":", - ifp->if_name, ifp->if_unit); - else { + if (rt->rt_expire) { + if (log_arp_movements) + log(LOG_INFO, "arp: %s moved from %*D to %*D on %s%d\n", + inet_ntoa(isaddr), + ifp->if_addrlen, (u_char *)LLADDR(sdl), ":", + ifp->if_addrlen, (u_char *)ar_sha(ah), ":", + ifp->if_name, ifp->if_unit); + } else { log(LOG_ERR, "arp: %*D attempts to modify permanent entry for %s on %s%d\n", ifp->if_addrlen, (u_char *)ar_sha(ah), ":", |
