aboutsummaryrefslogtreecommitdiff
path: root/toys/posix/tty.c
blob: 1694d84610cbf3e1e4b1f85ac6d60fed1234b4a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/* tty.c - Show stdin's terminal name
 *
 * Copyright 2011 Rob Landley <rob@landley.net>
 *
 * See http://opengroup.org/onlinepubs/9699919799/utilities/tty.html

USE_TTY(NEWTOY(tty, "s", TOYFLAG_USR|TOYFLAG_BIN))

config TTY
  bool "tty"
  default y
  help
    usage: tty [-s]

    Show filename of terminal connected to stdin.

    Prints "not a tty" and exits with nonzero status if no terminal
    is connected to stdin.

    -s	silent, exit code only
*/

#include "toys.h"

void tty_main(void)
{
  char *tty = ttyname(0);

  if (!toys.optflags) puts(tty ? tty : "not a tty");

  toys.exitval = !tty;
}