[PATCH 3/3] util: storage: Improve error message when requesting image above 'start'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When a user would specify a backing chain index that is above the start
point libvirt would report a rather unhelpful error:

invalid argument: could not find backing store 1 in chain for 'sub/link2'

This patch adds an explicit check that the index is below start point in
the backing store and reports the following error if not:

invalid argument: requested backing store index 1 is above 'sub/../qcow2' in chain for 'sub/link2'

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1177062
---
 src/util/virstoragefile.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
index c9d3977..2a2f238 100644
--- a/src/util/virstoragefile.c
+++ b/src/util/virstoragefile.c
@@ -1341,6 +1341,15 @@ virStorageFileChainLookup(virStorageSourcePtr chain,
         *parent = startFrom;
     }

+    if (idx && idx < i) {
+        virReportError(VIR_ERR_INVALID_ARG,
+                       _("requested backing store index %u is above '%s' "
+                         "in chain for '%s'"),
+                       idx, NULLSTR(startFrom->path), NULLSTR(start));
+        *parent = NULL;
+        return NULL;
+    }
+
     while (chain) {
         if (!name && !idx) {
             if (!chain->backingStore)
-- 
2.3.5

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]