[libvirt] [PATCH 19/26] network_conf: Resolve Coverity FORWARD_NULL

John Ferlan jferlan at redhat.com
Thu Sep 4 22:26:27 UTC 2014


The code compares def->forwarders when deciding to return 0 at a
couple of points, then uses "def->nfwds" as a way to index into
the def->forwarders array.  That reference results in Coverity
complaining that def->forwarders being NULL was checked as part
of an arithmetic OR operation where failure could be any one 5
conditions, but that is not checked when entering the loop to
dereference the array.  Changing the comparisons to use nfwds
will clear the warnings

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

diff --git a/src/conf/network_conf.c b/src/conf/network_conf.c
index 9571ee1..f013d6b 100644
--- a/src/conf/network_conf.c
+++ b/src/conf/network_conf.c
@@ -2360,7 +2360,7 @@ virNetworkDNSDefFormat(virBufferPtr buf,
 {
     size_t i, j;
 
-    if (!(def->forwardPlainNames || def->forwarders || def->nhosts ||
+    if (!(def->forwardPlainNames || def->nfwds || def->nhosts ||
           def->nsrvs || def->ntxts))
         return 0;
 
@@ -2376,7 +2376,7 @@ virNetworkDNSDefFormat(virBufferPtr buf,
             return -1;
         }
         virBufferAsprintf(buf, " forwardPlainNames='%s'", fwd);
-        if (!(def->forwarders || def->nhosts || def->nsrvs || def->ntxts)) {
+        if (!(def->nfwds || def->nhosts || def->nsrvs || def->ntxts)) {
             virBufferAddLit(buf, "/>\n");
             return 0;
         }
-- 
1.9.3




More information about the libvir-list mailing list