summaryrefslogtreecommitdiffstats
path: root/fabrics.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-02-19 10:45:37 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-02-19 10:45:45 +0000
commit476d0b41d27c48140ec2284a5a5f505e8423fe65 (patch)
tree369a4a0f5ba4b1e66dc22bcb107b1825fa15c247 /fabrics.c
parentReleasing debian version 2.7.1-1. (diff)
downloadnvme-cli-476d0b41d27c48140ec2284a5a5f505e8423fe65.tar.xz
nvme-cli-476d0b41d27c48140ec2284a5a5f505e8423fe65.zip
Merging upstream version 2.8.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'fabrics.c')
-rw-r--r--fabrics.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/fabrics.c b/fabrics.c
index 2a0ad70..1a53b23 100644
--- a/fabrics.c
+++ b/fabrics.c
@@ -84,6 +84,7 @@ static const char *nvmf_disable_sqflow = "disable controller sq flow control (de
static const char *nvmf_hdr_digest = "enable transport protocol header digest (TCP transport)";
static const char *nvmf_data_digest = "enable transport protocol data digest (TCP transport)";
static const char *nvmf_tls = "enable TLS";
+static const char *nvmf_concat = "enable secure concatenation";
static const char *nvmf_config_file = "Use specified JSON configuration file or 'none' to disable";
static const char *nvmf_context = "execution context identification string";
@@ -113,6 +114,7 @@ static const char *nvmf_context = "execution context identification string";
OPT_FLAG("hdr-digest", 'g', &c.hdr_digest, nvmf_hdr_digest), \
OPT_FLAG("data-digest", 'G', &c.data_digest, nvmf_data_digest), \
OPT_FLAG("tls", 0, &c.tls, nvmf_tls), \
+ OPT_FLAG("concat", 0, &c.concat, nvmf_concat), \
__VA_ARGS__, \
OPT_END() \
}
@@ -632,7 +634,7 @@ char *nvmf_hostid_from_hostnqn(const char *hostnqn)
return strdup(uuid + strlen("uuid:"));
}
-void nvmf_check_hostid_and_hostnqn(const char *hostid, const char *hostnqn)
+void nvmf_check_hostid_and_hostnqn(const char *hostid, const char *hostnqn, unsigned int verbose)
{
char *hostid_from_file, *hostid_from_hostnqn;
@@ -641,7 +643,9 @@ void nvmf_check_hostid_and_hostnqn(const char *hostid, const char *hostnqn)
hostid_from_file = nvmf_hostid_from_file();
if (hostid_from_file && strcmp(hostid_from_file, hostid)) {
- fprintf(stderr, "warning: use generated hostid instead of hostid file\n");
+ if (verbose)
+ fprintf(stderr,
+ "warning: use generated hostid instead of hostid file\n");
free(hostid_from_file);
}
@@ -650,7 +654,9 @@ void nvmf_check_hostid_and_hostnqn(const char *hostid, const char *hostnqn)
hostid_from_hostnqn = nvmf_hostid_from_hostnqn(hostnqn);
if (hostid_from_hostnqn && strcmp(hostid_from_hostnqn, hostid)) {
- fprintf(stderr, "warning: use hostid which does not match uuid in hostnqn\n");
+ if (verbose)
+ fprintf(stderr,
+ "warning: use hostid which does not match uuid in hostnqn\n");
free(hostid_from_hostnqn);
}
}
@@ -741,7 +747,7 @@ int nvmf_discover(const char *desc, int argc, char **argv, bool connect)
hostid = hid = nvmf_hostid_from_file();
if (!hostid && hostnqn)
hostid = hid = nvmf_hostid_from_hostnqn(hostnqn);
- nvmf_check_hostid_and_hostnqn(hostid, hostnqn);
+ nvmf_check_hostid_and_hostnqn(hostid, hostnqn, verbose);
h = nvme_lookup_host(r, hostnqn, hostid);
if (!h) {
ret = ENOMEM;
@@ -964,7 +970,7 @@ int nvmf_connect(const char *desc, int argc, char **argv)
hostid = hid = nvmf_hostid_from_file();
if (!hostid && hostnqn)
hostid = hid = nvmf_hostid_from_hostnqn(hostnqn);
- nvmf_check_hostid_and_hostnqn(hostid, hostnqn);
+ nvmf_check_hostid_and_hostnqn(hostid, hostnqn, verbose);
h = nvme_lookup_host(r, hostnqn, hostid);
if (!h) {
errno = ENOMEM;