summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--tests/test-readlinkat.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 05ed341156..e7cb1e47c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2011-09-20 Bruno Haible <bruno@clisp.org>
+ readlinkat tests: EBADF tests.
+ * tests/test-readlinkat.c (main): Add tests for EBADF.
+
symlinkat tests: EBADF tests.
* tests/test-symlinkat.c (main): Add tests for EBADF.
diff --git a/tests/test-readlinkat.c b/tests/test-readlinkat.c
index 1d588ac392..5685934a28 100644
--- a/tests/test-readlinkat.c
+++ b/tests/test-readlinkat.c
@@ -59,6 +59,18 @@ main (void)
/* Remove any leftovers from a previous partial run. */
ignore_value (system ("rm -rf " BASE "*"));
+ /* Test behaviour for invalid file descriptors. */
+ {
+ errno = 0;
+ ASSERT (readlinkat (-1, "foo", buf, sizeof buf) == -1);
+ ASSERT (errno == EBADF);
+ }
+ {
+ errno = 0;
+ ASSERT (readlinkat (99, "foo", buf, sizeof buf) == -1);
+ ASSERT (errno == EBADF);
+ }
+
/* Perform same checks as counterpart functions. */
result = test_readlink (do_readlink, false);
dfd = openat (AT_FDCWD, ".", O_RDONLY);