From 8979051a468586f7b9674009398648b06229dcf9 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Wed, 21 Sep 2011 21:28:38 +0200 Subject: [PATCH] select tests: Avoid test failures on OSF/1 5.1 and mingw. * tests/test-select.h (test_bad_fd): Disable all tests on OSF/1 and native Windows. --- ChangeLog | 6 ++++++ tests/test-select.h | 15 +++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index b3c41501e..415dfc13c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2011-09-21 Bruno Haible + select tests: Avoid test failures on OSF/1 5.1 and mingw. + * tests/test-select.h (test_bad_fd): Disable all tests on OSF/1 and + native Windows. + +2011-09-21 Bruno Haible + New module 'fdopen'. * lib/stdio.in.h (fdopen): New declaration. * lib/fdopen.c: New file. diff --git a/tests/test-select.h b/tests/test-select.h index 85c561a45..4612dfc71 100644 --- a/tests/test-select.h +++ b/tests/test-select.h @@ -261,16 +261,18 @@ do_select_bad_fd_nowait (int fd, int ev, select_fn my_select) static void test_bad_fd (select_fn my_select) { + /* This tests fails on OSF/1 and native Windows, even with fd = 16. */ +#if !(defined __osf__ || defined WIN32_NATIVE) int fd; - /* On Linux, MacOS X, *BSD, and OSF/1, values of fd like 99 or 399 are - discarded by the kernel early and therefore do *not* lead to EBADF, - as required by POSIX. */ -#if defined __linux__ || (defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined __NetBSD__ || defined __osf__ + /* On Linux, MacOS X, *BSD, values of fd like 99 or 399 are discarded + by the kernel early and therefore do *not* lead to EBADF, as required + by POSIX. */ +# if defined __linux__ || (defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined __NetBSD__ fd = 16; -#else +# else fd = 99; -#endif +# endif if (do_select_bad_fd_nowait (fd, SEL_IN, my_select) == 0 || errno != EBADF) failed ("invalid fd among rfds"); @@ -278,6 +280,7 @@ test_bad_fd (select_fn my_select) failed ("invalid fd among wfds"); if (do_select_bad_fd_nowait (fd, SEL_EXC, my_select) == 0 || errno != EBADF) failed ("invalid fd among xfds"); +#endif } -- 2.11.0