Use more secure snprintf function instead of strncpy
to prevent memory access violation.

Fixes: 40d1324423a4 ("net/i40e: get ddp profile protocol info")

Signed-off-by: Kirill Rybalchenko <kirill.rybalche...@intel.com>
---
 drivers/net/i40e/rte_pmd_i40e.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/i40e/rte_pmd_i40e.c b/drivers/net/i40e/rte_pmd_i40e.c
index 4881ea0..3df4dcc 100644
--- a/drivers/net/i40e/rte_pmd_i40e.c
+++ b/drivers/net/i40e/rte_pmd_i40e.c
@@ -1927,8 +1927,8 @@ int rte_pmd_i40e_get_ddp_info(uint8_t *pkg_buff, uint32_t 
pkg_size,
                tlv = (struct i40e_profile_tlv_section_record *)&proto[1];
                for (i = j = 0; i < nb_rec; j++) {
                        pinfo[j].proto_id = tlv->data[0];
-                       strncpy(pinfo[j].name, (const char *)&tlv->data[1],
-                               I40E_DDP_NAME_SIZE);
+                       snprintf(pinfo[j].name, I40E_DDP_NAME_SIZE, "%s",
+                                (const char *)&tlv->data[1]);
                        i += tlv->len;
                        tlv = &tlv[tlv->len];
                }
-- 
2.5.5

Reply via email to