From 3424def90a6797e6bc4e634e0e54aa93b33c0b82 Mon Sep 17 00:00:00 2001 From: Alexey Marchuk Date: Fri, 31 Jan 2020 13:44:39 +0300 Subject: [PATCH] nvme: Fix potential use of non-initialized variable trstring variable in spdk_nvme_trid_populate_transport is not initialized, that can lead to snprintf() writes some garbage to trid->trstring if the user passes SPDK_NVME_TRANSPORT_CUSTOM trtype Add return statement and assert to CUSTOM/default switch Change-Id: I6c6c37f9aa74d61b346f7be27fb890c7a34e9229 Signed-off-by: Alexey Marchuk Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/483469 Community-CI: SPDK CI Jenkins Tested-by: SPDK CI Jenkins Reviewed-by: Shuhei Matsumoto Reviewed-by: Seth Howell Reviewed-by: Paul Luse Reviewed-by: Ben Walker --- lib/nvme/nvme.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/nvme/nvme.c b/lib/nvme/nvme.c index d13126b59..ce2da9618 100644 --- a/lib/nvme/nvme.c +++ b/lib/nvme/nvme.c @@ -760,7 +760,8 @@ spdk_nvme_trid_populate_transport(struct spdk_nvme_transport_id *trid, case SPDK_NVME_TRANSPORT_CUSTOM: default: SPDK_ERRLOG("don't use this for custom transports\n"); - break; + assert(0); + return; } snprintf(trid->trstring, SPDK_NVMF_TRSTRING_MAX_LEN, "%s", trstring); }