|
Packit |
6c4009 |
#include <errno.h>
|
|
Packit |
6c4009 |
#include <error.h>
|
|
Packit |
6c4009 |
#include <fcntl.h>
|
|
Packit |
6c4009 |
#include <stdio.h>
|
|
Packit |
6c4009 |
#include <unistd.h>
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
static void do_prepare (void);
|
|
Packit |
6c4009 |
#define PREPARE(argc, argv) do_prepare ()
|
|
Packit |
6c4009 |
static int do_test (void);
|
|
Packit |
6c4009 |
#define TEST_FUNCTION do_test ()
|
|
Packit |
6c4009 |
#include <test-skeleton.c>
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
static int temp_fd;
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
static void
|
|
Packit |
6c4009 |
do_prepare (void)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
char *temp_file;
|
|
Packit |
6c4009 |
temp_fd = create_temp_file ("tst-ttyname_r.", &temp_file);
|
|
Packit |
6c4009 |
if (temp_fd == -1)
|
|
Packit |
6c4009 |
error (1, errno, "cannot create temporary file");
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
|
|
Packit |
6c4009 |
static int
|
|
Packit |
6c4009 |
do_test (void)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
int ret = 0;
|
|
Packit |
6c4009 |
char buf[sysconf (_SC_TTY_NAME_MAX) + 1];
|
|
Packit |
6c4009 |
int res = ttyname_r (-1, buf, sizeof (buf));
|
|
Packit |
6c4009 |
if (res != EBADF)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
printf ("1st ttyname_r returned with res %d\n", res);
|
|
Packit |
6c4009 |
ret++;
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
res = ttyname_r (temp_fd, buf, sizeof (buf));
|
|
Packit |
6c4009 |
if (res != ENOTTY)
|
|
Packit |
6c4009 |
{
|
|
Packit |
6c4009 |
printf ("2nd ttyname_r returned with res %d\n", res);
|
|
Packit |
6c4009 |
ret++;
|
|
Packit |
6c4009 |
}
|
|
Packit |
6c4009 |
return ret;
|
|
Packit |
6c4009 |
}
|