summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2010-11-12 13:27:51 +0000
committerDaniel P. Berrange <berrange@redhat.com>2010-11-23 15:00:35 +0000
commit9a7caeffdf59d1bad61181e97e62d5f54a9e41a6 (patch)
tree5be4f830f6577a380220eae5fd5e1192cff24476
parentSwitch the virsh XML generation to use virBuffer instead of virAsprintf (diff)
downloadlibvirt-9a7caeffdf59d1bad61181e97e62d5f54a9e41a6.tar.gz
libvirt-9a7caeffdf59d1bad61181e97e62d5f54a9e41a6.tar.bz2
libvirt-9a7caeffdf59d1bad61181e97e62d5f54a9e41a6.zip
Allow iSCSI IQN to be set with find-storage-pool-sources-as command
Allow an iSCSI initiator IQN to be set with the XML for the find-storage-pool-sources-as virsh command * tools/virsh.c: Add iSCSI IQN support
-rw-r--r--tools/virsh.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/virsh.c b/tools/virsh.c
index 2e7cfd8b9..1d0b6e473 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -5802,6 +5802,7 @@ static const vshCmdOptDef opts_find_storage_pool_sources_as[] = {
N_("type of storage pool sources to find")},
{"host", VSH_OT_DATA, VSH_OFLAG_NONE, N_("optional host to query")},
{"port", VSH_OT_DATA, VSH_OFLAG_NONE, N_("optional port to query")},
+ {"initiator", VSH_OT_DATA, VSH_OFLAG_NONE, N_("optional initiator IQN to use for query")},
{NULL, 0, 0, NULL}
};
@@ -5811,6 +5812,7 @@ cmdPoolDiscoverSourcesAs(vshControl * ctl, const vshCmd * cmd ATTRIBUTE_UNUSED)
char *type, *host;
char *srcSpec = NULL;
char *srcList;
+ char *initiator;
int found;
type = vshCommandOptString(cmd, "type", &found);
@@ -5819,6 +5821,9 @@ cmdPoolDiscoverSourcesAs(vshControl * ctl, const vshCmd * cmd ATTRIBUTE_UNUSED)
host = vshCommandOptString(cmd, "host", &found);
if (!found)
host = NULL;
+ initiator = vshCommandOptString(cmd, "initiator", &found);
+ if (!found)
+ initiator = NULL;
if (!vshConnectionUsability(ctl, ctl->conn))
return FALSE;
@@ -5841,6 +5846,11 @@ cmdPoolDiscoverSourcesAs(vshControl * ctl, const vshCmd * cmd ATTRIBUTE_UNUSED)
if (port)
virBufferVSprintf(&buf, " port='%s'", port);
virBufferAddLit(&buf, "/>\n");
+ if (initiator) {
+ virBufferAddLit(&buf, " <initiator>\n");
+ virBufferVSprintf(&buf, " <iqn name='%s'/>\n", initiator);
+ virBufferAddLit(&buf, " </initiator>\n");
+ }
virBufferAddLit(&buf, "</source>\n");
if (virBufferError(&buf)) {
vshError(ctl, "%s", _("Out of memory"));