changeset 15697:a4ad24b6e079

test-ttyname_r tests: EBADF tests. * tests/test-ttyname_r.c (main): Add tests for EBADF.
author Bruno Haible <bruno@clisp.org>
date Tue, 20 Sep 2011 22:22:15 +0200
parents 710ef6879d5b
children 8897fe9c964d
files ChangeLog tests/test-ttyname_r.c
diffstat 2 files changed, 17 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-09-20  Bruno Haible  <bruno@clisp.org>
 
+	test-ttyname_r tests: EBADF tests.
+	* tests/test-ttyname_r.c (main): Add tests for EBADF.
+
 	Tests for module 'isatty'.
 	* modules/isatty-tests: New file.
 	* tests/test-isatty.c: New file.
--- a/tests/test-ttyname_r.c
+++ b/tests/test-ttyname_r.c
@@ -47,5 +47,19 @@
   ASSERT (ttyname_r (fd, buf, sizeof (buf)) == 0);
   ASSERT (memcmp (buf, "/dev/", 5) == 0);
 
+  /* Test behaviour for invalid file descriptors.  */
+  {
+    int err = ttyname_r (-1, buf, sizeof (buf));
+    ASSERT (err == EBADF
+            || err == ENOTTY /* seen on FreeBSD 6.4 */
+           );
+  }
+  {
+    int err = ttyname_r (99, buf, sizeof (buf));
+    ASSERT (err == EBADF
+            || err == ENOTTY /* seen on FreeBSD 6.4 */
+           );
+  }
+
   return 0;
 }