Re: [RFC] Validate ethtool autoneg before relaying
From: Matt Carlson <hidden>
Date: 2008-11-26 23:44:20
From: Matt Carlson <hidden>
Date: 2008-11-26 23:44:20
On Wed, Nov 26, 2008 at 03:28:12PM -0800, Michael Chan wrote:
On Wed, 2008-11-26 at 14:17 -0800, Matt Carlson wrote:quoted
diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 14ada53..6362f56 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c@@ -164,6 +164,9 @@ static int ethtool_set_settings(struct net_device *dev, void __user *useraddr) if (copy_from_user(&cmd, useraddr, sizeof(cmd))) return -EFAULT; + if (cmd.autoneg != AUTONEG_ENABLE && cmd.autoneg != AUTONEG_DISABLE) + return -EFAULT; +Matt, you should return -EINVAL here instead.
Yes. You are right. I'll fix this in a revised patch if everyone decides this is an effort worth pursuing.
quoted
return dev->ethtool_ops->set_settings(dev, &cmd); }