summaryrefslogtreecommitdiff
path: root/net/core/dev.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@nuts.davemloft.net>2004-02-28 00:06:18 -0800
committerDavid S. Miller <davem@nuts.davemloft.net>2004-02-28 00:06:18 -0800
commit6d31eea64ce46f06345499b25490bba48aeaee7f (patch)
tree9f123658392bb4811f20d95e721674f6e09bd950 /net/core/dev.c
parent1a075fb1eb70cb6db2de4a2c19ba1de85aadd832 (diff)
[NET]: Propagate dev_mc_{add,delete}() error to SIOC{ADD,DEL}MULTI.
Noticed by Randy Dunlap.
Diffstat (limited to 'net/core/dev.c')
-rw-r--r--net/core/dev.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 263ef7f22bd0..99d7b23c3f0a 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -2447,9 +2447,8 @@ static int dev_ifsioc(struct ifreq *ifr, unsigned int cmd)
return -EINVAL;
if (!netif_device_present(dev))
return -ENODEV;
- dev_mc_add(dev, ifr->ifr_hwaddr.sa_data,
- dev->addr_len, 1);
- return 0;
+ return dev_mc_add(dev, ifr->ifr_hwaddr.sa_data,
+ dev->addr_len, 1);
case SIOCDELMULTI:
if (!dev->set_multicast_list ||
@@ -2457,9 +2456,8 @@ static int dev_ifsioc(struct ifreq *ifr, unsigned int cmd)
return -EINVAL;
if (!netif_device_present(dev))
return -ENODEV;
- dev_mc_delete(dev, ifr->ifr_hwaddr.sa_data,
- dev->addr_len, 1);
- return 0;
+ return dev_mc_delete(dev, ifr->ifr_hwaddr.sa_data,
+ dev->addr_len, 1);
case SIOCGIFINDEX:
ifr->ifr_ifindex = dev->ifindex;