From ceabceacb175fe3e37d05ba7cbe74aa502115adb Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Mon, 19 Sep 2011 01:02:09 +0200 Subject: [PATCH] ptsname tests: Let the test fail rather than hang (e.g. on AIX 5.1). * tests/test-ptsname.c (main): Terminate the test if it takes longer than 5 seconds. * modules/ptsname-tests (configure.ac): Test for alarm. --- ChangeLog | 7 +++++++ modules/ptsname-tests | 1 + tests/test-ptsname.c | 8 ++++++++ 3 files changed, 16 insertions(+) diff --git a/ChangeLog b/ChangeLog index e73f7d413..f9d52f481 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2011-09-18 Bruno Haible + ptsname tests: Let the test fail rather than hang (e.g. on AIX 5.1). + * tests/test-ptsname.c (main): Terminate the test if it takes longer + than 5 seconds. + * modules/ptsname-tests (configure.ac): Test for alarm. + +2011-09-18 Bruno Haible + posix_spawn_file_actions_add*: Fix module dependencies. * modules/posix_spawn_file_actions_addclose (Dependencies): Add posix_spawn_file_actions_init. diff --git a/modules/ptsname-tests b/modules/ptsname-tests index 344b8a703..e26bc9e5c 100644 --- a/modules/ptsname-tests +++ b/modules/ptsname-tests @@ -7,6 +7,7 @@ Depends-on: same-inode configure.ac: +AC_CHECK_DECLS_ONCE([alarm]) Makefile.am: TESTS += test-ptsname diff --git a/tests/test-ptsname.c b/tests/test-ptsname.c index ccf2ab1b5..921367cc1 100644 --- a/tests/test-ptsname.c +++ b/tests/test-ptsname.c @@ -22,6 +22,7 @@ SIGNATURE_CHECK (ptsname, char *, (int)); #include +#include #include #include #include @@ -54,6 +55,13 @@ same_slave (const char *slave_name1, const char *slave_name2) int main (void) { +#if HAVE_DECL_ALARM + /* Declare failure if test takes too long, by using default abort + caused by SIGALRM. */ + signal (SIGALRM, SIG_DFL); + alarm (5); +#endif + { int fd; char *result; -- 2.11.0