X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-ttyname_r.c;h=980d14e5bd14ff4dfd4a70d11e5e1585aa33ebd3;hb=fba20d159fe191b9d67688738b7c31e769171aac;hp=698eb8782299b9c8a6b4eca2348591d4dc16e7d9;hpb=d60f3b0c6b0f93a601acd1cfd3923f94ca05abb0;p=gnulib.git diff --git a/tests/test-ttyname_r.c b/tests/test-ttyname_r.c index 698eb8782..980d14e5b 100644 --- a/tests/test-ttyname_r.c +++ b/tests/test-ttyname_r.c @@ -1,5 +1,5 @@ /* Test of ttyname_r(3). - Copyright (C) 2010-2011 Free Software Foundation, Inc. + Copyright (C) 2010-2013 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 @@ -47,5 +47,21 @@ main (void) 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; + close (99); + err = ttyname_r (99, buf, sizeof (buf)); + ASSERT (err == EBADF + || err == ENOTTY /* seen on FreeBSD 6.4 */ + ); + } + return 0; }