posix_openpt

POSIX_OPENPT(3)            Linux Programmer's Manual           POSIX_OPENPT(3)

NAME
       posix_openpt - open a pseudoterminal device

SYNOPSIS
       #include <stdlib.h>
       #include <fcntl.h>

       int posix_openpt(int flags);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       posix_openpt(): _XOPEN_SOURCE >= 600

DESCRIPTION
       The  posix_openpt()  function opens an unused pseudoterminal master de-
       vice, returning a file descriptor that can be used to refer to that de-
       vice.

       The  flags argument is a bit mask that ORs together zero or more of the
       following flags:

       O_RDWR Open the device for both reading and writing.  It  is  usual  to
              specify this flag.

       O_NOCTTY
              Do  not  make  this  device  the  controlling  terminal  for the
              process.

RETURN VALUE
       On success, posix_openpt() returns a nonnegative file descriptor  which
       is  the  lowest numbered unused file descriptor.  On failure, -1 is re-
       turned, and errno is set to indicate the error.

ERRORS
       See open(2).

VERSIONS
       Glibc support for posix_openpt() has been provided since version 2.2.1.

ATTRIBUTES
       For an  explanation  of  the  terms  used  in  this  section,  see  at-
       tributes(7).

       +---------------+---------------+---------+
       |Interface      | Attribute     | Value   |
       +---------------+---------------+---------+
       |posix_openpt() | Thread safety | MT-Safe |
       +---------------+---------------+---------+
CONFORMING TO
       POSIX.1-2001, POSIX.1-2008.

       posix_openpt()  is  part  of  the  UNIX  98 pseudoterminal support (see
       pts(4)).

NOTES
       Some older UNIX implementations that support System  V  (aka  UNIX  98)
       pseudoterminals don't have this function, but it is easy to implement:

           int
           posix_openpt(int flags)
           {
               return open("/dev/ptmx", flags);
           }

       Calling  posix_openpt()  creates a pathname for the corresponding pseu-
       doterminal slave device.  The pathname of the slave device can  be  ob-
       tained using ptsname(3).  The slave device pathname exists only as long
       as the master device is open.

SEE ALSO
       open(2), getpt(3), grantpt(3), ptsname(3), unlockpt(3), pts(4), pty(7)

COLOPHON
       This page is part of release 5.05 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/.

                                  2017-09-15                   POSIX_OPENPT(3)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.