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


Free Software Video

Useful Programs

Free Online Courses

Open Opportunity

Open Business