From 37402f490e258e58cfa3894c67b9f4583a28c23b Mon Sep 17 00:00:00 2001 From: Daniel Verkamp Date: Fri, 19 Aug 2016 10:48:02 -0700 Subject: [PATCH] nvmf: pad discovery TRSVCID and TRADDR with spaces These are specified as "ASCII string", which means they should be left-aligned and padded with spaces, according to the NVMe base specification. Change-Id: I25babe0ca417c2e16137b0bfc41fc7834277114e Signed-off-by: Daniel Verkamp --- lib/nvmf/rdma.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/nvmf/rdma.c b/lib/nvmf/rdma.c index 71fdc91a9..7d6a15f2a 100644 --- a/lib/nvmf/rdma.c +++ b/lib/nvmf/rdma.c @@ -54,6 +54,7 @@ #include "spdk/assert.h" #include "spdk/log.h" #include "spdk/nvmf_spec.h" +#include "spdk/string.h" #include "spdk/trace.h" /* @@ -1469,8 +1470,8 @@ spdk_nvmf_rdma_discover(struct spdk_nvmf_listen_addr *listen_addr, entry->adrfam = SPDK_NVMF_ADRFAM_IPV4; entry->treq.secure_channel = SPDK_NVMF_TREQ_SECURE_CHANNEL_NOT_SPECIFIED; - snprintf(entry->trsvcid, sizeof(entry->trsvcid), "%s", listen_addr->trsvc); - snprintf(entry->traddr, sizeof(entry->traddr), "%s", listen_addr->traddr); + spdk_strcpy_pad(entry->trsvcid, listen_addr->trsvc, sizeof(entry->trsvcid), ' '); + spdk_strcpy_pad(entry->traddr, listen_addr->traddr, sizeof(entry->traddr), ' '); entry->tsas.rdma.rdma_qptype = SPDK_NVMF_RDMA_QPTYPE_RELIABLE_CONNECTED; entry->tsas.rdma.rdma_prtype = SPDK_NVMF_RDMA_PRTYPE_NONE;