summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/netatalk/aarp.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/netatalk/aarp.c b/sys/netatalk/aarp.c
index f85adfe..c13d610 100644
--- a/sys/netatalk/aarp.c
+++ b/sys/netatalk/aarp.c
@@ -354,6 +354,13 @@ at_aarpinput(struct ifnet *ifp, struct mbuf *m)
return;
}
+ /* Don't accept requests from broadcast address. */
+ if (!bcmp(ea->aarp_sha, ifp->if_broadcastaddr, ifp->if_addrlen)) {
+ log(LOG_ERR, "aarp: source link address is broadcast\n");
+ m_freem(m);
+ return;
+ }
+
op = ntohs(ea->aarp_op);
bcopy(ea->aarp_tpnet, &net, sizeof(net));
OpenPOWER on IntegriCloud