diff options
Diffstat (limited to 'net/core/rtnetlink.c')
-rw-r--r-- | net/core/rtnetlink.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c index e01274bd5e3e..7819f7804eeb 100644 --- a/net/core/rtnetlink.c +++ b/net/core/rtnetlink.c | |||
@@ -3367,7 +3367,7 @@ static int rtnl_dump_all(struct sk_buff *skb, struct netlink_callback *cb) | |||
3367 | cb->seq = 0; | 3367 | cb->seq = 0; |
3368 | } | 3368 | } |
3369 | ret = dumpit(skb, cb); | 3369 | ret = dumpit(skb, cb); |
3370 | if (ret < 0) | 3370 | if (ret) |
3371 | break; | 3371 | break; |
3372 | } | 3372 | } |
3373 | cb->family = idx; | 3373 | cb->family = idx; |
@@ -3800,6 +3800,9 @@ int ndo_dflt_fdb_dump(struct sk_buff *skb, | |||
3800 | { | 3800 | { |
3801 | int err; | 3801 | int err; |
3802 | 3802 | ||
3803 | if (dev->type != ARPHRD_ETHER) | ||
3804 | return -EINVAL; | ||
3805 | |||
3803 | netif_addr_lock_bh(dev); | 3806 | netif_addr_lock_bh(dev); |
3804 | err = nlmsg_populate_fdb(skb, cb, dev, idx, &dev->uc); | 3807 | err = nlmsg_populate_fdb(skb, cb, dev, idx, &dev->uc); |
3805 | if (err) | 3808 | if (err) |