提交 f0988460 编写于 作者: C Christoph Hellwig 提交者: David S. Miller

ipv6: stub out even more of addrconf_set_dstaddr if SIT is disabled

There is no point in copying the structure from userspace or looking up
a device if SIT support is not disabled and we'll eventually return
-ENODEV anyway.
Signed-off-by: NChristoph Hellwig <hch@lst.de>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 f60fe2df
...@@ -2794,6 +2794,9 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg) ...@@ -2794,6 +2794,9 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
struct net_device *dev; struct net_device *dev;
int err = -EINVAL; int err = -EINVAL;
if (!IS_ENABLED(CONFIG_IPV6_SIT))
return -ENODEV;
rtnl_lock(); rtnl_lock();
err = -EFAULT; err = -EFAULT;
...@@ -2806,7 +2809,6 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg) ...@@ -2806,7 +2809,6 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
if (!dev) if (!dev)
goto err_exit; goto err_exit;
#if IS_ENABLED(CONFIG_IPV6_SIT)
if (dev->type == ARPHRD_SIT) { if (dev->type == ARPHRD_SIT) {
const struct net_device_ops *ops = dev->netdev_ops; const struct net_device_ops *ops = dev->netdev_ops;
struct ifreq ifr; struct ifreq ifr;
...@@ -2842,7 +2844,6 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg) ...@@ -2842,7 +2844,6 @@ int addrconf_set_dstaddr(struct net *net, void __user *arg)
err = dev_open(dev, NULL); err = dev_open(dev, NULL);
} }
} }
#endif
err_exit: err_exit:
rtnl_unlock(); rtnl_unlock();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册