Staging: octeon: Avoid several usecases of strcpy
authorSandro Volery <sandro@volery.com>
Wed, 11 Sep 2019 06:23:59 +0000 (08:23 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Sep 2019 09:38:45 +0000 (10:38 +0100)
strcpy was used multiple times in strcpy to write into dev->name.
I replaced them with strscpy.

Signed-off-by: Sandro Volery <sandro@volery.com>
Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/20190911062359.GA14886@volery
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/octeon/ethernet.c

index 8847a11c212fe450950e1ea398558a27bcfe9e4b..33762f2e9a4487ade0f6e8667b64acea8e5e0c5b 100644 (file)
@@ -794,7 +794,7 @@ static int cvm_oct_probe(struct platform_device *pdev)
                        priv->imode = CVMX_HELPER_INTERFACE_MODE_DISABLED;
                        priv->port = CVMX_PIP_NUM_INPUT_PORTS;
                        priv->queue = -1;
-                       strcpy(dev->name, "pow%d");
+                       strscpy(dev->name, "pow%d", sizeof(dev->name));
                        for (qos = 0; qos < 16; qos++)
                                skb_queue_head_init(&priv->tx_free_list[qos]);
                        dev->min_mtu = VLAN_ETH_ZLEN - mtu_overhead;
@@ -866,39 +866,39 @@ static int cvm_oct_probe(struct platform_device *pdev)
 
                        case CVMX_HELPER_INTERFACE_MODE_NPI:
                                dev->netdev_ops = &cvm_oct_npi_netdev_ops;
-                               strcpy(dev->name, "npi%d");
+                               strscpy(dev->name, "npi%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_XAUI:
                                dev->netdev_ops = &cvm_oct_xaui_netdev_ops;
-                               strcpy(dev->name, "xaui%d");
+                               strscpy(dev->name, "xaui%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_LOOP:
                                dev->netdev_ops = &cvm_oct_npi_netdev_ops;
-                               strcpy(dev->name, "loop%d");
+                               strscpy(dev->name, "loop%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_SGMII:
                                priv->phy_mode = PHY_INTERFACE_MODE_SGMII;
                                dev->netdev_ops = &cvm_oct_sgmii_netdev_ops;
-                               strcpy(dev->name, "eth%d");
+                               strscpy(dev->name, "eth%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_SPI:
                                dev->netdev_ops = &cvm_oct_spi_netdev_ops;
-                               strcpy(dev->name, "spi%d");
+                               strscpy(dev->name, "spi%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_GMII:
                                priv->phy_mode = PHY_INTERFACE_MODE_GMII;
                                dev->netdev_ops = &cvm_oct_rgmii_netdev_ops;
-                               strcpy(dev->name, "eth%d");
+                               strscpy(dev->name, "eth%d", sizeof(dev->name));
                                break;
 
                        case CVMX_HELPER_INTERFACE_MODE_RGMII:
                                dev->netdev_ops = &cvm_oct_rgmii_netdev_ops;
-                               strcpy(dev->name, "eth%d");
+                               strscpy(dev->name, "eth%d", sizeof(dev->name));
                                cvm_set_rgmii_delay(priv, interface,
                                                    port_index);
                                break;