diff options
author | Stephen Hemminger <stephen@networkplumber.org> | 2013-06-25 12:34:36 -0400 |
---|---|---|
committer | Stephen Hemminger <stephen@networkplumber.org> | 2013-06-25 19:59:27 -0400 |
commit | 537f7f8494be4219eb0ef47121ea16a6f9f0f49e (patch) | |
tree | 7da675320abf8088deba467c48d5e4755efc9435 /net/bridge/br_fdb.c | |
parent | 58e4c767046a35f11a55af6ce946054ddf4a8580 (diff) |
bridge: check for zero ether address in fdb add
The check for all-zero ether address was removed from rtnetlink core,
since Vxlan uses all-zero ether address to signify default address.
Need to add check back in for bridge.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Diffstat (limited to 'net/bridge/br_fdb.c')
-rw-r--r-- | net/bridge/br_fdb.c | 5 |
1 files changed, 5 insertions, 0 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[], | |||
707 | } | 707 | } |
708 | } | 708 | } |
709 | 709 | ||
710 | if (is_zero_ether_addr(addr)) { | ||
711 | pr_info("bridge: RTM_NEWNEIGH with invalid ether address\n"); | ||
712 | return -EINVAL; | ||
713 | } | ||
714 | |||
710 | p = br_port_get_rtnl(dev); | 715 | p = br_port_get_rtnl(dev); |
711 | if (p == NULL) { | 716 | if (p == NULL) { |
712 | pr_info("bridge: RTM_NEWNEIGH %s not a bridge port\n", | 717 | pr_info("bridge: RTM_NEWNEIGH %s not a bridge port\n", |