aboutsummaryrefslogtreecommitdiff
path: root/sys/cam/ctl
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2024-06-06 17:19:19 +0000
committerAlan Somers <asomers@FreeBSD.org>2024-06-28 19:26:44 +0000
commit259f94f8ab4fefbf5531c42d06e5079285ae3b7c (patch)
treeafa8b9d1b9d0775e54765503ac5648b081960f0c /sys/cam/ctl
parent1dc90424b26f80e4a9475a722f46e754fe7aba76 (diff)
ctladm: better documentation for adding and removing cfiscsi ports
Sponsored by: Axcient Reviewed by: mav Pull Request: https://github.com/freebsd/freebsd-src/pull/1279 (cherry picked from commit afecc74cd7158da8e89c26c5267bc715c2417fe7)
Diffstat (limited to 'sys/cam/ctl')
-rw-r--r--sys/cam/ctl/ctl_frontend_iscsi.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/sys/cam/ctl/ctl_frontend_iscsi.c b/sys/cam/ctl/ctl_frontend_iscsi.c
index 253ffbe7dbdc..03d5c91f7bf5 100644
--- a/sys/cam/ctl/ctl_frontend_iscsi.c
+++ b/sys/cam/ctl/ctl_frontend_iscsi.c
@@ -2150,17 +2150,24 @@ cfiscsi_ioctl_port_create(struct ctl_req *req)
uint16_t tag;
target = dnvlist_get_string(req->args_nvl, "cfiscsi_target", NULL);
- alias = dnvlist_get_string(req->args_nvl, "cfiscsi_target_alias", NULL);
+ if (target == NULL) {
+ req->status = CTL_LUN_ERROR;
+ snprintf(req->error_str, sizeof(req->error_str),
+ "Missing required argument: cfiscsi_target");
+ return;
+ }
+
val = dnvlist_get_string(req->args_nvl, "cfiscsi_portal_group_tag",
NULL);
-
- if (target == NULL || val == NULL) {
+ if (val == NULL) {
req->status = CTL_LUN_ERROR;
snprintf(req->error_str, sizeof(req->error_str),
- "Missing required argument");
+ "Missing required argument: cfiscsi_portal_group_tag");
return;
}
+ alias = dnvlist_get_string(req->args_nvl, "cfiscsi_target_alias", NULL);
+
tag = strtoul(val, NULL, 0);
ct = cfiscsi_target_find_or_create(&cfiscsi_softc, target, alias, tag);
if (ct == NULL) {
@@ -2251,13 +2258,19 @@ cfiscsi_ioctl_port_remove(struct ctl_req *req)
uint16_t tag;
target = dnvlist_get_string(req->args_nvl, "cfiscsi_target", NULL);
+ if (target == NULL) {
+ req->status = CTL_LUN_ERROR;
+ snprintf(req->error_str, sizeof(req->error_str),
+ "Missing required argument: cfiscsi_target");
+ return;
+ }
+
val = dnvlist_get_string(req->args_nvl, "cfiscsi_portal_group_tag",
NULL);
-
- if (target == NULL || val == NULL) {
+ if (val == NULL) {
req->status = CTL_LUN_ERROR;
snprintf(req->error_str, sizeof(req->error_str),
- "Missing required argument");
+ "Missing required argument: cfiscsi_portal_group_tag");
return;
}