CI found in the logic of 'nfp_sync_pci_inner_handle_alloc()', use
'strcpy()' may cause string overflow, fix it by use 'rte_strlcpy()'.
Coverity issue: 414937
Fixes: 6b4273a03779 ("net/nfp: add synchronization module")
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Chaoyong He <[email protected]>
Reviewed-by: Long Wu <[email protected]>
Reviewed-by: Peng Zhang <[email protected]>
---
drivers/net/nfp/nfpcore/nfp_sync.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/nfp/nfpcore/nfp_sync.c
b/drivers/net/nfp/nfpcore/nfp_sync.c
index 8bc38d6585..686cdf8eb1 100644
--- a/drivers/net/nfp/nfpcore/nfp_sync.c
+++ b/drivers/net/nfp/nfpcore/nfp_sync.c
@@ -9,6 +9,7 @@
#include <rte_malloc.h>
#include <rte_memzone.h>
#include <rte_spinlock.h>
+#include <rte_string_fns.h>
#include "nfp_logs.h"
@@ -266,7 +267,7 @@ nfp_sync_pci_inner_handle_alloc(struct nfp_sync *sync,
for (i = 0; i < NFP_SYNC_PCI_MAX; i++) {
if (strlen(sync->pci[i].pci_name) == 0) {
pci_avail_id = i;
- strcpy(sync->pci[pci_avail_id].pci_name, pci_name);
+ rte_strlcpy(sync->pci[pci_avail_id].pci_name, pci_name,
PCI_PRI_STR_SIZE);
goto common_alloc;
}
}
--
2.39.1