Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TTYNAME(3)	       FreeBSD Library Functions Manual		    TTYNAME(3)

NAME
     ttyname, ttyname_r, isatty	-- get name of associated terminal (tty) from
     file descriptor

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <unistd.h>

     char *
     ttyname(int fd);

     int
     ttyname_r(int fd, char *buf, size_t len);

     int
     isatty(int	fd);

DESCRIPTION
     These functions operate on	file descriptors for terminal type devices.

     The isatty() function determines if the file descriptor fd	refers to a
     valid terminal type device.

     The ttyname() function gets the related device name of a file descriptor
     for which isatty()	is true.

     The ttyname() function returns the	name stored in a static	buffer which
     will be overwritten on subsequent calls.  The ttyname_r() function	takes
     a buffer and length as arguments to avoid this problem.

RETURN VALUES
     The isatty() function returns 1 if	fd refers to a terminal	type device;
     otherwise,	it returns 0 and may set errno to indicate the error.  The
     ttyname() function	returns	the null terminated name if the	device is
     found and isatty()	is true; otherwise a NULL pointer is returned.	The
     ttyname_r() function returns 0 if successful.  Otherwise an error number
     is	returned.

ERRORS
     These functions may fail if:

     [EBADF]		The fd argument	is not a valid file descriptor.

     [ENOTTY]		The file associated with fd is not a terminal.

     Additionally, ttyname_r() may fail	if:

     [ERANGE]		The bufsize argument is	smaller	than the length	of the
			string to be returned.

SEE ALSO
     fdevname(3), ptsname(3), tcgetattr(3), tty(4)

HISTORY
     The isatty() and ttyname()	functions appeared in Version 7	AT&T UNIX.
     The ttyname_r() function appeared in FreeBSD 6.0.

FreeBSD	13.0			 July 18, 2014			  FreeBSD 13.0

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ttyname_r&sektion=3&manpath=FreeBSD+13.2-RELEASE+and+Ports>

home | help