bus/dpaa: fix build with gcc 9.0
authorFerruh Yigit <ferruh.yigit@intel.com>
Fri, 2 Nov 2018 19:06:05 +0000 (19:06 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Sun, 4 Nov 2018 21:27:10 +0000 (22:27 +0100)
build error:
In function ‘fman_if_init’,
    .../drivers/bus/dpaa/base/fman/fman.c:186:2:
    error: ‘strncpy’ output may be truncated copying 4095 bytes from a
           string of length 4095 [-Werror=stringop-truncation]
    strncpy(__if->node_path, dpa_node->full_name, PATH_MAX - 1);

strncpy may result a not null-terminated string,
replaced it with strlcpy

Fixes: 5b22cf744689 ("bus/dpaa: introducing FMan configurations")
Cc: stable@dpdk.org
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
drivers/bus/dpaa/base/fman/fman.c

index bdb7004..06762e0 100644 (file)
@@ -13,6 +13,7 @@
 #include <fman.h>
 #include <of.h>
 #include <rte_dpaa_logs.h>
+#include <rte_string_fns.h>
 
 #define QMI_PORT_REGS_OFFSET           0x400
 
@@ -183,7 +184,7 @@ fman_if_init(const struct device_node *dpa_node)
        }
        memset(__if, 0, sizeof(*__if));
        INIT_LIST_HEAD(&__if->__if.bpool_list);
-       strncpy(__if->node_path, dpa_node->full_name, PATH_MAX - 1);
+       strlcpy(__if->node_path, dpa_node->full_name, PATH_MAX - 1);
        __if->node_path[PATH_MAX - 1] = '\0';
 
        /* Obtain the MAC node used by this interface except macless */