[libvirt] [v3 1/2] conf: Adjust duplicate source host port check

John Ferlan jferlan at redhat.com
Tue May 12 02:23:36 UTC 2015


Only perform the port number check if the incoming definition actually
provides it. Since the port number is optional we could erroneously pass
a duplicate source host check since some storage pool backends which fill
in the default port number (e.g., iSCSI and sheepdog) for the started pool.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/conf/storage_conf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c
index 4852dfb..61365b9 100644
--- a/src/conf/storage_conf.c
+++ b/src/conf/storage_conf.c
@@ -2412,7 +2412,8 @@ virStoragePoolSourceMatchSingleHost(virStoragePoolSourcePtr poolsrc,
     if (poolsrc->nhost != 1 && defsrc->nhost != 1)
         return false;
 
-    if (poolsrc->hosts[0].port != defsrc->hosts[0].port)
+    if (defsrc->hosts[0].port &&
+        poolsrc->hosts[0].port != defsrc->hosts[0].port)
         return false;
 
     return STREQ(poolsrc->hosts[0].name, defsrc->hosts[0].name);
-- 
2.1.0




More information about the libvir-list mailing list