diff options
Diffstat (limited to 'tests/test-file-has-acl.c')
-rw-r--r-- | tests/test-file-has-acl.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/tests/test-file-has-acl.c b/tests/test-file-has-acl.c index daab4dbd9f..5685f41155 100644 --- a/tests/test-file-has-acl.c +++ b/tests/test-file-has-acl.c @@ -1,5 +1,5 @@ /* Test for presence of ACL. - Copyright (C) 2008 Free Software Foundation, Inc. + Copyright (C) 2008-2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,6 +20,7 @@ #include "acl.h" +#include <signal.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> @@ -54,6 +55,14 @@ main (int argc, char *argv[]) exit (EXIT_FAILURE); } + /* Check against possible infinite loop in file_has_acl. */ +#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 + #if USE_ACL { int ret = file_has_acl (file, &statbuf); |