From: Pablo de Lara Date: Mon, 29 Jan 2018 09:22:02 +0000 (+0000) Subject: crypto/scheduler: fix strncpy X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=6af3b03547d7499e8875f7e32effba172140bbfe;p=dpdk.git crypto/scheduler: fix strncpy The coverity issue was not completely fixed, since strncpy should not be called with max length. Instead, snprintf is used as a safer option. Coverity issue: 143431 Fixes: d040aca67170 ("crypto/scheduler: fix strings not null terminated") Cc: stable@dpdk.org Signed-off-by: Pablo de Lara Acked-by: Fan Zhang --- diff --git a/drivers/crypto/scheduler/rte_cryptodev_scheduler.c b/drivers/crypto/scheduler/rte_cryptodev_scheduler.c index ccf68a0ee4..140c8b418e 100644 --- a/drivers/crypto/scheduler/rte_cryptodev_scheduler.c +++ b/drivers/crypto/scheduler/rte_cryptodev_scheduler.c @@ -439,8 +439,8 @@ rte_cryptodev_scheduler_load_user_scheduler(uint8_t scheduler_id, RTE_CRYPTODEV_NAME_MAX_LEN); return -EINVAL; } - strncpy(sched_ctx->name, scheduler->name, - RTE_CRYPTODEV_SCHEDULER_NAME_MAX_LEN); + snprintf(sched_ctx->name, sizeof(sched_ctx->name), "%s", + scheduler->name); if (strlen(scheduler->description) > RTE_CRYPTODEV_SCHEDULER_DESC_MAX_LEN - 1) { @@ -449,8 +449,8 @@ rte_cryptodev_scheduler_load_user_scheduler(uint8_t scheduler_id, RTE_CRYPTODEV_SCHEDULER_DESC_MAX_LEN - 1); return -EINVAL; } - strncpy(sched_ctx->description, scheduler->description, - RTE_CRYPTODEV_SCHEDULER_DESC_MAX_LEN); + snprintf(sched_ctx->description, sizeof(sched_ctx->description), "%s", + scheduler->description); /* load scheduler instance operations functions */ sched_ctx->ops.config_queue_pair = scheduler->ops->config_queue_pair;