]> git.ipfire.org Git - thirdparty/libvirt.git/commit
util: Introduce virISCSINodeNew
authorJohn Ferlan <jferlan@redhat.com>
Sat, 16 Jul 2016 12:10:30 +0000 (08:10 -0400)
committerJohn Ferlan <jferlan@redhat.com>
Thu, 28 Jul 2016 12:27:13 +0000 (08:27 -0400)
commitae65c908b7a8a951e0049ff7cd57f03644e1d5b8
treefe8a294d079733bd113418df68faac826530f181
parentd02ef33451a0d84692f32fe0877d621bfe243f50
util: Introduce virISCSINodeNew

https://bugzilla.redhat.com/show_bug.cgi?id=1356436

According to RFC 3721 (https://www.ietf.org/rfc/rfc3721.txt), there are
two ways to "discover" targets in/for the iSCSI environment. Discovery
is the process which allows the initiator to find the targets to which
it has access and at least one address at which each target may be
accessed.

The method currently implemented in libvirt using the virISCSIScanTargets
API is known as "SendTargets" discovery. This method is more useful when
the target IP Address and TCP port information are available, e.g. in
libvirt terms the "portal". It returns a list of targets for the portal.
From that list, the target can be found. This operation can also fill an
iSCSI node table into which iSCSI logins may occur. Commit id '56057900'
altered that filling by adding the "--op nonpersistent" since it was
not necessarily desired to perform that for non libvirt related targets.

The second method is "Static Configuration". This method not only needs
the IP Address and TCP port (e.g. portal), but also the iSCSI target name.
In libvirt terms this would be the device path field from the iSCSI pool
<source> XML. This patch implements the second methodology using that
required device path as the targetname.
src/libvirt_private.syms
src/util/viriscsi.c
src/util/viriscsi.h