posix_openpt(3c) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

posix_openpt(3c)

posix_openpt(3C)         Standard C Library Functions         posix_openpt(3C)

NAME
       posix_openpt - open a pseudo terminal device

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

       int posix_openpt(int oflag);

DESCRIPTION
       The  posix_openpt() function establishes a connection between a manager
       device for a pseudo-terminal and a file descriptor. The file descriptor
       is used by other I/O functions that refer to that pseudo-terminal.


       The file status flags and file access modes of the open  file  descrip‐
       tion are set according to the value of oflag.


       Values  for  oflag  are  constructed by a bitwise-inclusive OR of flags
       from the following list, defined in <fcntl.h>.

       O_RDWR      Open for reading and writing.


       O_NOCTTY    If set, posix_openpt() does not cause the  terminal  device
                   to become the controlling terminal for the process.



       The behavior of other values for the oflag argument is unspecified.

RETURN VALUES
       Upon successful completion, the posix_openpt() function opens a manager
       pseudo-terminal  device and returns a non-negative integer representing
       the lowest numbered unused file descriptor. Otherwise, -1  is  returned
       and errno is set to indicate the error.

ERRORS
       The posix_openpt() function will fail if:

       EMFILE    {OPEN_MAX} file descriptors are currently open in the calling
                 process.


       ENFILE    The  maximum  allowable  number of files is currently open in
                 the system.



       The posix_openpt() function may fail if:

       EINVAL    The value of oflag is not valid.


       EAGAIN    Out of pseudo-terminal resources.


       ENOSR     Out of STREAMS resources.


EXAMPLES
       Example 1 Open a pseudo-terminal.



       The following example opens a pseudo-terminal and returns the  name  of
       the subsidiary device and a file descriptor.


         #include <fcntl.h>
         #include <stdio.h>

         int managerfd, subsidiaryfd;
         char *subsidiarydevice;

         managerfd = posix_openpt(O_RDWR|O_NOCTTY);

         if (managerfd == -1
               || grantpt (managerfd) == -1
               || unlockpt (managerfd) == -1
               || (subsidiarydevice = ptsname (managerfd)) == NULL)
               return -1;

         printf("subsidiary device is: %s\n", subsidiarydevice);

         subsidiaryfd = open(subsidiary, O_RDWR|O_NOCTTY);
         if (subsidiaryfd < 0)
               return -1;


USAGE
       This  function provides a method for portably obtaining a file descrip‐
       tor of a manager terminal device for a pseudo-terminal. The grantpt(3C)
       and ptsname(3C) functions can be used to manipulate mode and  ownership
       permissions  and  to  obtain the name of the subsidiary device, respec‐
       tively.

ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE  VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe _ Stan‐
       dardSee standards(7).


SEE ALSO
       open(2), grantpt(3C), ptsname(3C),  unlockpt(3C),  spawn.h(3HEAD),  at‐
       tributes(7), standards(7)

Oracle Solaris 11.4               19 Jun 2024                 posix_openpt(3C)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3