From 57362ddf4262d0440ae1bddc6eaf69e9f94f9c85 Mon Sep 17 00:00:00 2001 From: Pallantla Poornima Date: Mon, 4 Feb 2019 07:18:02 +0000 Subject: [PATCH] event/opdl: replace sprintf with snprintf sprintf function is not secure as it doesn't check the length of string. More secure function snprintf is used. Fixes: 3c7f3dcfb0 ("event/opdl: add PMD main body and helper function") Cc: stable@dpdk.org Signed-off-by: Pallantla Poornima --- drivers/event/opdl/opdl_evdev.c | 7 ++++--- drivers/event/opdl/opdl_evdev_xstats.c | 7 +++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c index a4f0bc8b6c..d2d2be44b5 100644 --- a/drivers/event/opdl/opdl_evdev.c +++ b/drivers/event/opdl/opdl_evdev.c @@ -422,16 +422,17 @@ opdl_dump(struct rte_eventdev *dev, FILE *f) else p_type = "????"; - sprintf(queue_id, "%02u", port->external_qid); + snprintf(queue_id, sizeof(queue_id), "%02u", + port->external_qid); if (port->p_type == OPDL_REGULAR_PORT || port->p_type == OPDL_ASYNC_PORT) - sprintf(total_cyc, + snprintf(total_cyc, sizeof(total_cyc), " %'16"PRIu64"", (cpg != 0 ? port->port_stat[total_cycles] / cpg : 0)); else - sprintf(total_cyc, + snprintf(total_cyc, sizeof(total_cyc), " ----"); fprintf(f, "%4s %10u %8u %9s %'16"PRIu64" %'16"PRIu64" %s " diff --git a/drivers/event/opdl/opdl_evdev_xstats.c b/drivers/event/opdl/opdl_evdev_xstats.c index 0e6c6bd5e3..27b3d88023 100644 --- a/drivers/event/opdl/opdl_evdev_xstats.c +++ b/drivers/event/opdl/opdl_evdev_xstats.c @@ -32,10 +32,9 @@ opdl_xstats_init(struct rte_eventdev *dev) uint32_t index = (i * max_num_port_xstat) + j; /* Name */ - sprintf(device->port_xstat[index].stat.name, - "port_%02u_%s", - i, - port_xstat_str[j]); + snprintf(device->port_xstat[index].stat.name, + sizeof(device->port_xstat[index].stat.name), + "port_%02u_%s", i, port_xstat_str[j]); /* ID */ device->port_xstat[index].id = index;