ptsname(3)
NAME
ptsname, ptsname_r - get the name of the slave pseudoterminal
SYNOPSIS
#define _XOPEN_SOURCE /* See feature_test_macros(7) */
#include <stdlib.h>
char *ptsname(int fd);
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <stdlib.h>
int ptsname_r(int fd, char *buf, size_t buflen);
DESCRIPTION
The ptsname() function returns the name of the slave pseudoterminal
device corresponding to the master referred to by fd.
The ptsname_r() function is the reentrant equivalent of ptsname(). It
returns the name of the slave pseudoterminal device as a null-
terminated string in the buffer pointed to by buf. The buflen argument
specifies the number of bytes available in buf.
RETURN VALUE
On success, ptsname() returns a pointer to a string in static storage
which will be overwritten by subsequent calls. This pointer must not
be freed. On failure, NULL is returned.
On success, ptsname_r() returns 0. On failure, a nonzero value is
returned and errno is set to indicate the error.
ERRORS
EINVAL (ptsname_r() only) buf is NULL.
ENOTTY fd does not refer to a pseudoterminal master device.
ERANGE (ptsname_r() only) buf is too small.
VERSIONS
ptsname() is provided in glibc since version 2.1.
ATTRIBUTES
For an explanation of the terms used in this section, see
attributes(7).
Interface Attribute Value
ptsname() Thread safety MT-Unsafe race:ptsname
ptsname_r() Thread safety MT-Safe
CONFORMING TO
ptsname():
POSIX.1-2001, POSIX.1-2008.
ptsname() is part of the UNIX 98 pseudoterminal support (see pts(4)).
ptsname_r() is a Linux extension, that is proposed for inclusion in the
next major revision of POSIX.1 (Issue 8). A version of this function
is documented on Tru64 and HP-UX, but on those implementations, -1 is
returned on error, with errno set to indicate the error. Avoid using
this function in portable programs.
SEE ALSO
grantpt(3), posix_openpt(3), ttyname(3), unlockpt(3), pts(4), pty(7)
COLOPHON
This page is part of release 4.09 of the Linux man-pages project. A
description of the project, information about reporting bugs, and the
latest version of this page, can be found at
https://www.kernel.org/doc/man-pages/.
2016-12-12 PTSNAME(3)
Free and Open Source Software