diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-12-05 21:28:15 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-12-05 21:28:15 +0000 |
commit | f0d5e1f67bf5d856f7dad926746ca7170560e65f (patch) | |
tree | 5c392aa4d0baa98aa814e249b0341af60b60dfda /io/tst-ttyname_r.c | |
parent | 30a58e6599d9d8419006eb12e413854674ab2f24 (diff) | |
download | glibc-f0d5e1f67bf5d856f7dad926746ca7170560e65f.tar.gz |
* nis/nis_subr.c (nis_getnames): Revert last change.cvs/fedora-glibc-20061205T2141
2006-12-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
(ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
* sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
(__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
ENOTTY.
* io/Makefile: Add rules to build and run tst-ttyname_r test.
* io/tst-ttyname_r.c: New test.
Diffstat (limited to 'io/tst-ttyname_r.c')
-rw-r--r-- | io/tst-ttyname_r.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/io/tst-ttyname_r.c b/io/tst-ttyname_r.c new file mode 100644 index 0000000000..8e2f30c972 --- /dev/null +++ b/io/tst-ttyname_r.c @@ -0,0 +1,42 @@ +#include <errno.h> +#include <error.h> +#include <fcntl.h> +#include <stdio.h> +#include <unistd.h> + +static void do_prepare (void); +#define PREPARE(argc, argv) do_prepare () +static int do_test (void); +#define TEST_FUNCTION do_test () +#include <test-skeleton.c> + +static int temp_fd; + +static void +do_prepare (void) +{ + char *temp_file; + temp_fd = create_temp_file ("tst-ttyname_r.", &temp_file); + if (temp_fd == -1) + error (1, errno, "cannot create temporary file"); +} + +static int +do_test (void) +{ + int ret = 0; + char buf[sysconf (_SC_TTY_NAME_MAX) + 1]; + int res = ttyname_r (-1, buf, sizeof (buf)); + if (res != EBADF) + { + printf ("1st ttyname_r returned with res %d\n", res); + ret++; + } + res = ttyname_r (temp_fd, buf, sizeof (buf)); + if (res != ENOTTY) + { + printf ("2nd ttyname_r returned with res %d\n", res); + ret++; + } + return ret; +} |