On 7/17/20 12:33 PM, John Ferlan wrote:
On 7/15/20 7:48 AM, Michal Privoznik wrote:
There is not much sense trying to disprove host is IPv6 capable
if we know after first round (getifaddrs()) that is is not.
Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
---
src/rpc/virnetsocket.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index b6bc3edc3b..b0d63f0f2c 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -205,7 +205,8 @@ int virNetSocketCheckProtocols(bool *hasIPv4,
freeifaddrs(ifaddr);
- if (virNetSocketCheckProtocolByLookup("::1", AF_INET6, hasIPv6) < 0)
+ if (hasIPv6 &&
For this and the subsequent hasIPv4 patch, Coverity complains that
checking "if (hasIPv6)" is a REVERSE_INULL issue since a few lines above
we have "*hasIPv4 = *hasIPv6 = false;" or individual setting to true.
This then should be "if (!*hasIPv6..." and of course the same for hasIPv4.
/me wonders what kind of slight optimization exists or anyone cares
about in the ifaddr loop once both has* bool ptrs are proven true - it's
not like there's a set to false...
D'oh! It should have been: if (*hasIPv6 && ..); because we are
interested in the value of boolean, not its address. I'll post a patch
shortly.
Michal