>From 2b4ef0b9986914a9ba22da20cbfb5e675c459de2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A1draig=20Brady?= Date: Tue, 23 Apr 2013 10:01:30 +0100 Subject: [PATCH] test-getaddrinfo: Skip on system errors * tests/test-getaddrinfo.c (simple): Skip the test on system errors, which avoids "system error: Connection refused" failures. Reported by Richard W.M. Jones --- ChangeLog | 5 +++++ tests/test-getaddrinfo.c | 16 +++++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index f49e881..88a6ed8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-04-23 Pádraig Brady + + test-getaddrinfo: Skip on system errors + * tests/test-getaddrinfo.c (simple): Skip and diagnose system errors. + 2013-04-11 Dmitry V. Levin regex-tests, regex: allow glibc re_search behavior diff --git a/tests/test-getaddrinfo.c b/tests/test-getaddrinfo.c index 1b9892f..30afd9f 100644 --- a/tests/test-getaddrinfo.c +++ b/tests/test-getaddrinfo.c @@ -82,13 +82,18 @@ simple (char const *host, char const *service) if (res != 0) { - /* EAI_AGAIN is returned if no network is available. Don't fail + /* EAI_AGAIN is returned if no network is available. Don't fail the test merely because someone is down the country on their - in-law's farm. */ - if (res == EAI_AGAIN) + in-law's farm. Also skip the test if there is a system error + which can also be due to network connectivity (ECONNREFUSED etc.) */ + if (res == EAI_AGAIN || res == EAI_SYSTEM) { skip++; - fprintf (stderr, "skipping getaddrinfo test: no network?\n"); + fprintf (stderr, "skipping getaddrinfo test: "); + if (res == EAI_AGAIN) + fprintf (stderr, "no network?\n"); + else + fprintf (stderr, "system error: %s\n", strerror (err)); return 77; } /* IRIX reports EAI_NONAME for "https". Don't fail the test @@ -105,9 +110,6 @@ simple (char const *host, char const *service) if (res == EAI_NODATA) return 0; #endif - /* Provide details if errno was set. */ - if (res == EAI_SYSTEM) - fprintf (stderr, "system error: %s\n", strerror (err)); return 1; } -- 1.7.7.6