net/af_packet: prefer snprintf against strncpy
authorFerruh Yigit <ferruh.yigit@intel.com>
Thu, 4 May 2017 11:16:59 +0000 (12:16 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 5 May 2017 15:52:55 +0000 (17:52 +0200)
strncpy may left destination buffer not NULL terminated, switched using
snprintf to be sure destination buffer is NULL terminated.

Coverity issue: 1407495
Coverity issue: 1407498
Fixes: cc68ac4847bc ("net/af_packet: support MTU change")
Fixes: 218259590ea4 ("net/af_packet: support promiscuous")

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
drivers/net/af_packet/rte_eth_af_packet.c

index 6f6ba0c..68de45c 100644 (file)
@@ -452,7 +452,7 @@ eth_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
        if (s < 0)
                return -EINVAL;
 
-       strncpy(ifr.ifr_name, internals->if_name, IFNAMSIZ);
+       snprintf(ifr.ifr_name, IFNAMSIZ, "%s", internals->if_name);
        ret = ioctl(s, SIOCSIFMTU, &ifr);
        close(s);
 
@@ -472,7 +472,7 @@ eth_dev_change_flags(char *if_name, uint32_t flags, uint32_t mask)
        if (s < 0)
                return;
 
-       strncpy(ifr.ifr_name, if_name, IFNAMSIZ);
+       snprintf(ifr.ifr_name, IFNAMSIZ, "%s", if_name);
        if (ioctl(s, SIOCGIFFLAGS, &ifr) < 0)
                goto out;
        ifr.ifr_flags &= mask;