Provided by: manpages-dev_3.35-0.1ubuntu1_all bug

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, a NULL pointer 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.

CONFORMING TO

       ptsname() is part of the UNIX 98 pseudoterminal support  (see  pts(4)).
       This function is specified in POSIX.1-2001.

       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.

SEE ALSO

       grantpt(3), posix_openpt(3), ttyname(3), unlockpt(3), pts(4), pty(7)

COLOPHON

       This page is part of release 3.35 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at http://man7.org/linux/man-pages/.

                                  2008-09-03                        PTSNAME(3)