summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorStephen Hemminger <stephen@networkplumber.org>2013-06-26 02:02:49 +0200
committerStephen Hemminger <stephen@networkplumber.org>2013-06-26 02:02:49 +0200
commit3f5d6af0948a33a58001182de9cbb6b3e674ea14 (patch)
tree73a4ccde21718f3890f594d8622df73495a43853 /net
parentbonding: add an option to fail when any of arp_ip_target is inaccessible (diff)
parentbridge: check for zero ether address in fdb add (diff)
downloadlinux-3f5d6af0948a33a58001182de9cbb6b3e674ea14.tar.xz
linux-3f5d6af0948a33a58001182de9cbb6b3e674ea14.zip
Merge ../vxlan-x
Diffstat (limited to 'net')
-rw-r--r--net/bridge/br_fdb.c5
-rw-r--r--net/core/rtnetlink.c8
2 files changed, 5 insertions, 8 deletions
diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c
index ebfa4443c69b..60aca9109a50 100644
--- a/net/bridge/br_fdb.c
+++ b/net/bridge/br_fdb.c
@@ -707,6 +707,11 @@ int br_fdb_add(struct ndmsg *ndm, struct nlattr *tb[],
}
}
+ if (is_zero_ether_addr(addr)) {
+ pr_info("bridge: RTM_NEWNEIGH with invalid ether address\n");
+ return -EINVAL;
+ }
+
p = br_port_get_rtnl(dev);
if (p == NULL) {
pr_info("bridge: RTM_NEWNEIGH %s not a bridge port\n",
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index 9007533867f0..3de740834d1f 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -2109,10 +2109,6 @@ static int rtnl_fdb_add(struct sk_buff *skb, struct nlmsghdr *nlh)
}
addr = nla_data(tb[NDA_LLADDR]);
- if (is_zero_ether_addr(addr)) {
- pr_info("PF_BRIDGE: RTM_NEWNEIGH with invalid ether address\n");
- return -EINVAL;
- }
err = -EOPNOTSUPP;
@@ -2210,10 +2206,6 @@ static int rtnl_fdb_del(struct sk_buff *skb, struct nlmsghdr *nlh)
}
addr = nla_data(tb[NDA_LLADDR]);
- if (is_zero_ether_addr(addr)) {
- pr_info("PF_BRIDGE: RTM_DELNEIGH with invalid ether address\n");
- return -EINVAL;
- }
err = -EOPNOTSUPP;