ptsname (3) - Linux Manuals
ptsname: get the name of the slave pseudoterminal
NAME
ptsname, ptsname_r - get the name of the slave pseudoterminal
SYNOPSIS
#include <stdlib.h>
char *ptsname(int fd);
int ptsname_r(int fd, char *buf, size_t buflen);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
ptsname():
-
Since glibc 2.24:
_XOPEN_SOURCE >= 500 ||
(_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED)
Glibc 2.23 and earlier:
_XOPEN_SOURCE
ptsname_r():
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.
On success,
ptsname_r()
returns 0.
On failure, an error number is returned to indicate the error.
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.
DESCRIPTION
The
ptsname()
function returns the name of the slave pseudoterminal device
corresponding to the master referred to by the file descriptor
fd.
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.
ERRORS
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.
COLOPHON
This page is part of release 5.10 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/.