[libvirt] [PATCH v2 4/6] util: storage: fill in default ports when parsing backing chain

Peter Krempa pkrempa at redhat.com
Thu Jul 20 12:30:01 UTC 2017


Similarly to when parsing XML we need to fill in default ports for the
backing chain. This was missed in commit 5bda835466a8050625dd8bb10566e
---
 src/util/virstoragefile.c |  3 +++
 tests/virstoragetest.c    | 14 +++++++-------
 2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
index 2d0ff7812..bc1b616d4 100644
--- a/src/util/virstoragefile.c
+++ b/src/util/virstoragefile.c
@@ -3340,6 +3340,9 @@ virStorageSourceNewFromBackingAbsolute(const char *path)

         if (rc < 0)
             goto error;
+
+        if (virStorageSourceNetworkAssignDefaultPorts(ret) < 0)
+            goto error;
     }

     return ret;
diff --git a/tests/virstoragetest.c b/tests/virstoragetest.c
index 5352500b7..d83db78f5 100644
--- a/tests/virstoragetest.c
+++ b/tests/virstoragetest.c
@@ -1349,7 +1349,7 @@ mymain(void)
     TEST_BACKING_PARSE("://", NULL);
     TEST_BACKING_PARSE("http://example.com/file",
                        "<source protocol='http' name='file'>\n"
-                       "  <host name='example.com'/>\n"
+                       "  <host name='example.com' port='80'/>\n"
                        "</source>\n");
     TEST_BACKING_PARSE("rbd:testshare:id=asdf:mon_host=example.com",
                        "<source protocol='rbd' name='testshare'>\n"
@@ -1385,14 +1385,14 @@ mymain(void)
     TEST_BACKING_PARSE("json:{\"file.driver\":\"http\", "
                              "\"file.url\":\"http://example.com/file\"}",
                        "<source protocol='http' name='file'>\n"
-                       "  <host name='example.com'/>\n"
+                       "  <host name='example.com' port='80'/>\n"
                        "</source>\n");
     TEST_BACKING_PARSE("json:{\"file\":{ \"driver\":\"http\","
                                         "\"url\":\"http://example.com/file\""
                                       "}"
                             "}",
                        "<source protocol='http' name='file'>\n"
-                       "  <host name='example.com'/>\n"
+                       "  <host name='example.com' port='80'/>\n"
                        "</source>\n");
     TEST_BACKING_PARSE("json:{\"file.driver\":\"ftp\", "
                              "\"file.url\":\"http://example.com/file\"}",
@@ -1400,7 +1400,7 @@ mymain(void)
     TEST_BACKING_PARSE("json:{\"file.driver\":\"gluster\", "
                              "\"file.filename\":\"gluster://example.com/vol/file\"}",
                        "<source protocol='gluster' name='vol/file'>\n"
-                       "  <host name='example.com'/>\n"
+                       "  <host name='example.com' port='24007'/>\n"
                        "</source>\n");
     TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"gluster\","
                                        "\"volume\":\"testvol\","
@@ -1421,7 +1421,7 @@ mymain(void)
                         "<source protocol='gluster' name='testvol/img.qcow2'>\n"
                         "  <host name='example.com' port='1234'/>\n"
                         "  <host transport='unix' socket='/path/socket'/>\n"
-                        "  <host name='example.com'/>\n"
+                        "  <host name='example.com' port='24007'/>\n"
                         "</source>\n");
     TEST_BACKING_PARSE("json:{\"file.driver\":\"gluster\","
                              "\"file.volume\":\"testvol\","
@@ -1441,7 +1441,7 @@ mymain(void)
                         "<source protocol='gluster' name='testvol/img.qcow2'>\n"
                         "  <host name='example.com' port='1234'/>\n"
                         "  <host transport='unix' socket='/path/socket'/>\n"
-                        "  <host name='example.com'/>\n"
+                        "  <host name='example.com' port='24007'/>\n"
                         "</source>\n");
     TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"nbd\","
                                        "\"path\":\"/path/to/socket\""
@@ -1552,7 +1552,7 @@ mymain(void)
                                       "}"
                             "}",
                        "<source protocol='iscsi' name='iqn.2016-12.com.virttest:emulated-iscsi-noauth.target/0'>\n"
-                       "  <host name='test.org'/>\n"
+                       "  <host name='test.org' port='3260'/>\n"
                        "</source>\n");
     TEST_BACKING_PARSE("json:{\"file\":{\"driver\":\"iscsi\","
                                        "\"transport\":\"tcp\","
-- 
2.13.2




More information about the libvir-list mailing list