ptsname, ptsname_r — get the name of the slave pseudoterminal
#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); |
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.
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.
(ptsname_r() only)
buf is
NULL.
fd does not
refer to a pseudoterminal master device.
(ptsname_r() only)
buf is too
small.
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 |
POSIX.1-2001, POSIX.1-2008.
ptsname() is part of the
UNIX 98 pseudoterminal support (see pts(4)).
ptsname_r() is a Linux
extension. 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.
This page is part of release 4.04 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
http://www.kernel.org/doc/man−pages/.
|
%%%LICENSE_START(PUBLIC_DOMAIN) This page is in the public domain. - aeb %%%LICENSE_END 2004-12-17, mtk, added description of ptsname_r() + ERRORS |