From ec5a905ec8305cbd56413b906a64b361b2a3c132 Mon Sep 17 00:00:00 2001 From: Muhammad Bilal Date: Tue, 7 Apr 2020 12:56:13 +0500 Subject: [PATCH] mbuf: prevent setting mempool ops name empty Bugzilla ID: 353 Signed-off-by: Muhammad Bilal Acked-by: Hemant Agrawal --- lib/librte_mbuf/rte_mbuf_pool_ops.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/librte_mbuf/rte_mbuf_pool_ops.c b/lib/librte_mbuf/rte_mbuf_pool_ops.c index 5722976fef..f0e87a1412 100644 --- a/lib/librte_mbuf/rte_mbuf_pool_ops.c +++ b/lib/librte_mbuf/rte_mbuf_pool_ops.c @@ -14,7 +14,10 @@ rte_mbuf_set_platform_mempool_ops(const char *ops_name) { const struct rte_memzone *mz; - if (strlen(ops_name) >= RTE_MEMPOOL_OPS_NAMESIZE) + size_t len = strnlen(ops_name, RTE_MEMPOOL_OPS_NAMESIZE); + if (len == 0) + return -EINVAL; + if (len == RTE_MEMPOOL_OPS_NAMESIZE) return -ENAMETOOLONG; mz = rte_memzone_lookup("mbuf_platform_pool_ops"); @@ -51,7 +54,10 @@ rte_mbuf_set_user_mempool_ops(const char *ops_name) { const struct rte_memzone *mz; - if (strlen(ops_name) >= RTE_MEMPOOL_OPS_NAMESIZE) + size_t len = strnlen(ops_name, RTE_MEMPOOL_OPS_NAMESIZE); + if (len == 0) + return -EINVAL; + if (len == RTE_MEMPOOL_OPS_NAMESIZE) return -ENAMETOOLONG; mz = rte_memzone_lookup("mbuf_user_pool_ops"); -- 2.20.1