diff options
author | Jiri Pirko <jiri@resnulli.us> | 2013-01-05 19:44:26 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-01-07 00:06:31 -0500 |
commit | 7826d43f2db45c9305a6e0ba165650e1a203f517 (patch) | |
tree | a8659c995a37f58db809da9537aafac178431f31 /drivers/net/ethernet/sun | |
parent | 2afb9b533423a9b97f84181e773cf9361d98fed6 (diff) |
ethtool: fix drvinfo strings set in drivers
Use strlcpy where possible to ensure the string is \0 terminated.
Use always sizeof(string) instead of 32, ETHTOOL_BUSINFO_LEN
and custom defines.
Use snprintf instead of sprint.
Remove unnecessary inits of ->fw_version
Remove unnecessary inits of drvinfo struct.
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sun')
-rw-r--r-- | drivers/net/ethernet/sun/sunbmac.c | 4 | ||||
-rw-r--r-- | drivers/net/ethernet/sun/sunqe.c | 7 | ||||
-rw-r--r-- | drivers/net/ethernet/sun/sunvnet.c | 4 |
3 files changed, 8 insertions, 7 deletions
diff --git a/drivers/net/ethernet/sun/sunbmac.c b/drivers/net/ethernet/sun/sunbmac.c index be82f6d13c51..5fafca065305 100644 --- a/drivers/net/ethernet/sun/sunbmac.c +++ b/drivers/net/ethernet/sun/sunbmac.c | |||
@@ -1042,8 +1042,8 @@ static void bigmac_set_multicast(struct net_device *dev) | |||
1042 | /* Ethtool support... */ | 1042 | /* Ethtool support... */ |
1043 | static void bigmac_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) | 1043 | static void bigmac_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) |
1044 | { | 1044 | { |
1045 | strcpy(info->driver, "sunbmac"); | 1045 | strlcpy(info->driver, "sunbmac", sizeof(info->driver)); |
1046 | strcpy(info->version, "2.0"); | 1046 | strlcpy(info->version, "2.0", sizeof(info->version)); |
1047 | } | 1047 | } |
1048 | 1048 | ||
1049 | static u32 bigmac_get_link(struct net_device *dev) | 1049 | static u32 bigmac_get_link(struct net_device *dev) |
diff --git a/drivers/net/ethernet/sun/sunqe.c b/drivers/net/ethernet/sun/sunqe.c index 1dcee6915843..49bf3e2eb652 100644 --- a/drivers/net/ethernet/sun/sunqe.c +++ b/drivers/net/ethernet/sun/sunqe.c | |||
@@ -685,13 +685,14 @@ static void qe_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) | |||
685 | struct sunqe *qep = netdev_priv(dev); | 685 | struct sunqe *qep = netdev_priv(dev); |
686 | struct platform_device *op; | 686 | struct platform_device *op; |
687 | 687 | ||
688 | strcpy(info->driver, "sunqe"); | 688 | strlcpy(info->driver, "sunqe", sizeof(info->driver)); |
689 | strcpy(info->version, "3.0"); | 689 | strlcpy(info->version, "3.0", sizeof(info->version)); |
690 | 690 | ||
691 | op = qep->op; | 691 | op = qep->op; |
692 | regs = of_get_property(op->dev.of_node, "reg", NULL); | 692 | regs = of_get_property(op->dev.of_node, "reg", NULL); |
693 | if (regs) | 693 | if (regs) |
694 | sprintf(info->bus_info, "SBUS:%d", regs->which_io); | 694 | snprintf(info->bus_info, sizeof(info->bus_info), "SBUS:%d", |
695 | regs->which_io); | ||
695 | 696 | ||
696 | } | 697 | } |
697 | 698 | ||
diff --git a/drivers/net/ethernet/sun/sunvnet.c b/drivers/net/ethernet/sun/sunvnet.c index e1b895530827..1cf767eb3ed5 100644 --- a/drivers/net/ethernet/sun/sunvnet.c +++ b/drivers/net/ethernet/sun/sunvnet.c | |||
@@ -882,8 +882,8 @@ static int vnet_set_mac_addr(struct net_device *dev, void *p) | |||
882 | static void vnet_get_drvinfo(struct net_device *dev, | 882 | static void vnet_get_drvinfo(struct net_device *dev, |
883 | struct ethtool_drvinfo *info) | 883 | struct ethtool_drvinfo *info) |
884 | { | 884 | { |
885 | strcpy(info->driver, DRV_MODULE_NAME); | 885 | strlcpy(info->driver, DRV_MODULE_NAME, sizeof(info->driver)); |
886 | strcpy(info->version, DRV_MODULE_VERSION); | 886 | strlcpy(info->version, DRV_MODULE_VERSION, sizeof(info->version)); |
887 | } | 887 | } |
888 | 888 | ||
889 | static u32 vnet_get_msglevel(struct net_device *dev) | 889 | static u32 vnet_get_msglevel(struct net_device *dev) |