From: Thomas Huth Date: Tue, 8 Sep 2020 11:48:13 +0000 (+0200) Subject: tests/socket-helpers: Treat EAI_NONAME as EADDRNOTAVAIL X-Git-Tag: pull-xen-20201020~67^2~20 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=b822c05b812a39940f78e4d020852d134d49dc99;p=people%2Faperard%2Fqemu-dm.git tests/socket-helpers: Treat EAI_NONAME as EADDRNOTAVAIL The tests/test-char test is currently always failing on my system since the getaddrinfo() in socket_can_bind_connect() returns EAI_NONAME when it is called from socket_check_protocol_support() to check for IPv6. socket_check_protocol_support() then returns -1 and thus the tests are not run at all - even though IPv4 is working fine. socket_can_bind_connect() connect should return EADDRNOTAVAIL in this case instead, so that socket_check_protocol_support() does not fail. Suggested-by: Daniel P. Berrangé Message-Id: <20200908121543.222872-1-thuth@redhat.com> Reviewed-by: Daniel P. Berrangé Signed-off-by: Thomas Huth --- diff --git a/tests/socket-helpers.c b/tests/socket-helpers.c index 19a51e887e..f704fd1a69 100644 --- a/tests/socket-helpers.c +++ b/tests/socket-helpers.c @@ -59,8 +59,7 @@ static int socket_can_bind_connect(const char *hostname, int family) /* lookup */ rc = getaddrinfo(hostname, NULL, &ai, &res); if (rc != 0) { - if (rc == EAI_ADDRFAMILY || - rc == EAI_FAMILY) { + if (rc == EAI_ADDRFAMILY || rc == EAI_FAMILY || rc == EAI_NONAME) { errno = EADDRNOTAVAIL; } else { errno = EINVAL;