From 3ed64fa9c29e29389e5190cde38532e96eb10765 Mon Sep 17 00:00:00 2001 From: Seth Howell Date: Mon, 16 Sep 2019 14:26:29 -0700 Subject: [PATCH] nvmf: fix name comparisons for nvmf_tgt objs The previous version of this function precluded one target name from being a leading substring of another. i.e. if "nvmf_tgt_1" was already used as a name "nvmf_tgt_11" could not be used subsequently. Just an odd quirk that shouldn't be the case. Change-Id: Iea59b6757512f01070e48074e35a11d942e399bb Signed-off-by: Seth Howell Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468522 Tested-by: SPDK CI Jenkins Reviewed-by: Ben Walker Reviewed-by: Shuhei Matsumoto Reviewed-by: Jim Harris Reviewed-by: Alexey Marchuk Reviewed-by: Paul Luse --- lib/nvmf/nvmf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/nvmf/nvmf.c b/lib/nvmf/nvmf.c index cc810aac75..7f3a9730bb 100644 --- a/lib/nvmf/nvmf.c +++ b/lib/nvmf/nvmf.c @@ -229,7 +229,7 @@ spdk_nvmf_tgt_create(struct spdk_nvmf_target_opts *opts) } TAILQ_FOREACH(tmp_tgt, &g_nvmf_tgts, link) { - if (!strncmp(opts->name, tmp_tgt->name, strlen(tmp_tgt->name))) { + if (!strncmp(opts->name, tmp_tgt->name, NVMF_TGT_NAME_MAX_LENGTH)) { SPDK_ERRLOG("Provided target name must be unique.\n"); return NULL; } @@ -328,7 +328,7 @@ spdk_nvmf_get_tgt(const char *name) TAILQ_FOREACH(tgt, &g_nvmf_tgts, link) { if (name) { - if (!strncmp(tgt->name, name, strlen(tgt->name))) { + if (!strncmp(tgt->name, name, NVMF_TGT_NAME_MAX_LENGTH)) { return tgt; } }