diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-02-01 09:32:25 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-02-01 14:47:17 -0500 |
commit | 786f528119722f564a22ad953411374e06116333 (patch) | |
tree | 122ca6128b967fc4e91ff9a974181536a55f64ed /net | |
parent | efcdbf24fd5daa88060869e51ed49f68b7ac8708 (diff) | |
download | linux-786f528119722f564a22ad953411374e06116333.tar.gz linux-786f528119722f564a22ad953411374e06116333.tar.bz2 linux-786f528119722f564a22ad953411374e06116333.zip |
ethtool: Null-terminate filename passed to ethtool_ops::flash_device
The parameters for ETHTOOL_FLASHDEV include a filename, which ought to
be null-terminated. Currently the only driver that implements
ethtool_ops::flash_device attempts to add a null terminator if
necessary, but does it wrongly. Do it in the ethtool core instead.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/ethtool.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 369b41894527..3f79db1b612a 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c @@ -1190,6 +1190,8 @@ static noinline_for_stack int ethtool_flash_device(struct net_device *dev, if (!dev->ethtool_ops->flash_device) return -EOPNOTSUPP; + efl.data[ETHTOOL_FLASH_MAX_FILENAME - 1] = 0; + return dev->ethtool_ops->flash_device(dev, &efl); } |