From: Bruno Haible <bruno@clisp.org>
Date: Tue, 20 Sep 2011 20:09:55 +0000 (+0200)
Subject: lseek tests: EBADF tests.
X-Git-Tag: v0.1~1835
X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=d6e564567eb4ab3033d8e08c8467e3d1a3f51c0d;p=gnulib.git

lseek tests: EBADF tests.

* tests/test-lseek.c (main): Add more tests for EBADF.
---

diff --git a/ChangeLog b/ChangeLog
index b2dd6d4f17..642ac0e794 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-09-20  Bruno Haible  <bruno@clisp.org>
 
+	lseek tests: EBADF tests.
+	* tests/test-lseek.c (main): Add more tests for EBADF.
+
 	Tests for module 'ftruncate'.
 	* modules/ftruncate-tests: New file.
 	* tests/test-ftruncate.sh: New file.
diff --git a/tests/test-lseek.c b/tests/test-lseek.c
index ce2263cba0..f74516c6c3 100644
--- a/tests/test-lseek.c
+++ b/tests/test-lseek.c
@@ -81,12 +81,24 @@ main (int argc, char **argv)
          invoking shell are not enough on HP-UX.  */
       close (0);
       close (1);
+
       errno = 0;
       ASSERT (lseek (0, (off_t)0, SEEK_CUR) == -1);
       ASSERT (errno == EBADF);
+
       errno = 0;
       ASSERT (lseek (1, (off_t)0, SEEK_CUR) == -1);
       ASSERT (errno == EBADF);
+
+      /* Test behaviour for invalid file descriptors.  */
+      errno = 0;
+      ASSERT (lseek (-1, (off_t)0, SEEK_CUR) == -1);
+      ASSERT (errno == EBADF);
+
+      errno = 0;
+      ASSERT (lseek (99, (off_t)0, SEEK_CUR) == -1);
+      ASSERT (errno == EBADF);
+
       break;
 
     default: