aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/core/rtnetlink.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index e9918020dbc9..8d39071f32d7 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -2392,22 +2392,20 @@ int ndo_dflt_fdb_del(struct ndmsg *ndm,
2392 struct net_device *dev, 2392 struct net_device *dev,
2393 const unsigned char *addr) 2393 const unsigned char *addr)
2394{ 2394{
2395 int err = -EOPNOTSUPP; 2395 int err = -EINVAL;
2396 2396
2397 /* If aging addresses are supported device will need to 2397 /* If aging addresses are supported device will need to
2398 * implement its own handler for this. 2398 * implement its own handler for this.
2399 */ 2399 */
2400 if (!(ndm->ndm_state & NUD_PERMANENT)) { 2400 if (!(ndm->ndm_state & NUD_PERMANENT)) {
2401 pr_info("%s: FDB only supports static addresses\n", dev->name); 2401 pr_info("%s: FDB only supports static addresses\n", dev->name);
2402 return -EINVAL; 2402 return err;
2403 } 2403 }
2404 2404
2405 if (is_unicast_ether_addr(addr) || is_link_local_ether_addr(addr)) 2405 if (is_unicast_ether_addr(addr) || is_link_local_ether_addr(addr))
2406 err = dev_uc_del(dev, addr); 2406 err = dev_uc_del(dev, addr);
2407 else if (is_multicast_ether_addr(addr)) 2407 else if (is_multicast_ether_addr(addr))
2408 err = dev_mc_del(dev, addr); 2408 err = dev_mc_del(dev, addr);
2409 else
2410 err = -EINVAL;
2411 2409
2412 return err; 2410 return err;
2413} 2411}