diff options
author | Ronnie Sahlberg <ronniesahlberg@gmail.com> | 2012-08-06 18:24:55 +1000 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2012-08-09 15:04:09 +0200 |
commit | 31459f463a32dc6c1818fa1aaa3d1f56c367b718 (patch) | |
tree | 5e15c34fe2fa6145956c185ae80432d4a865e017 /block/iscsi.c | |
parent | f2ef4a6dd9f008d4cb30bccfc0491c01b69f1ead (diff) | |
download | qemu-31459f463a32dc6c1818fa1aaa3d1f56c367b718.zip qemu-31459f463a32dc6c1818fa1aaa3d1f56c367b718.tar.gz qemu-31459f463a32dc6c1818fa1aaa3d1f56c367b718.tar.bz2 |
iscsi: Pick default initiator-name based on the name of the VM
This patch updates the iscsi layer to automatically pick a 'unique'
initiator-name based on the name of the vm in case the user has not set
an explicit iqn-name to use.
Create a new function qemu_get_vm_name() that returns the name of the VM,
if specified.
This way we can thus create default names to use as the initiator name
based on the guest session.
If the VM is not named via the '-name' command line argument, the iscsi
initiator-name used wiull simply be
iqn.2008-11.org.linux-kvm
If a name for the VM was specified with the '-name' option, iscsi will
use a default initiatorname of
iqn.2008-11.org.linux-kvm:<name>
These names are just the default iscsi initiator name that qemu will
generate/use only when the user has not set an explicit initiator name
via the commandlines or config files.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Diffstat (limited to 'block/iscsi.c')
-rw-r--r-- | block/iscsi.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/block/iscsi.c b/block/iscsi.c index fd954d4..219f927 100644 --- a/block/iscsi.c +++ b/block/iscsi.c @@ -896,6 +896,7 @@ static char *parse_initiator_name(const char *target) QemuOptsList *list; QemuOpts *opts; const char *name = NULL; + const char *iscsi_name = qemu_get_vm_name(); list = qemu_find_opts("iscsi"); if (list) { @@ -911,7 +912,9 @@ static char *parse_initiator_name(const char *target) if (name) { return g_strdup(name); } else { - return g_strdup("iqn.2008-11.org.linux-kvm"); + return g_strdup_printf("iqn.2008-11.org.linux-kvm%s%s", + iscsi_name ? ":" : "", + iscsi_name ? iscsi_name : ""); } } |