ttyname.c 278 B

1234567891011121314151617
  1. #include <unistd.h>
  2. #include <errno.h>
  3. #include <sys/ioctl.h>
  4. static char _tty_name[30]; /* only needs to hold /dev/pty/ttyXXXXXXX */
  5. char * ttyname(int fd) {
  6. if (!isatty(fd)) {
  7. errno = ENOTTY;
  8. return NULL;
  9. }
  10. ioctl(fd, IOCTLTTYNAME, _tty_name);
  11. return _tty_name;
  12. }