aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sun
diff options
context:
space:
mode:
authorJiri Pirko <jiri@resnulli.us>2013-01-05 19:44:26 -0500
committerDavid S. Miller <davem@davemloft.net>2013-01-07 00:06:31 -0500
commit7826d43f2db45c9305a6e0ba165650e1a203f517 (patch)
treea8659c995a37f58db809da9537aafac178431f31 /drivers/net/ethernet/sun
parent2afb9b533423a9b97f84181e773cf9361d98fed6 (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.c4
-rw-r--r--drivers/net/ethernet/sun/sunqe.c7
-rw-r--r--drivers/net/ethernet/sun/sunvnet.c4
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... */
1043static void bigmac_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *info) 1043static 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
1049static u32 bigmac_get_link(struct net_device *dev) 1049static 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)
882static void vnet_get_drvinfo(struct net_device *dev, 882static 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
889static u32 vnet_get_msglevel(struct net_device *dev) 889static u32 vnet_get_msglevel(struct net_device *dev)