Standard C Library Functions posixopenpt(3C)
NAME
posixopenpt - open a pseudo terminal device
SYNOPSIS
#include
#include
int posixopenpt(int oflag);
DESCRIPTION
The posixopenpt() function establishes a connection between
a master 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
description 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 .
ORDWR Open for reading and writing.
ONOCTY If set, posixopenpt() does not cause the termi-
nal 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 posixopenpt() function
opens a master 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.
ERORS
The posixopenpt() function will fail if:
EMFILE {OPENMAX} file descriptors are currently open in
the calling process.
ENFILE The maximum allowable number of files is currently
open in the system.
SunOS 5.11 Last change: 1 Dec 2003 1
Standard C Library Functions posixopenpt(3C)
The posixopenpt() 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 slave device and a file descriptor.
#include fcntl.h>
#include stdio.h>
int masterfd, slavefd;
char *slavedevice;
masterfd = posixopenpt(ORDWRONOCTY);
if (masterfd == -1
grantpt (masterfd) == -1
unlockpt (masterfd) == -1
(slavedevice = ptsname (masterfd)) == NUL)
return -1;
printf("slave device is: %s\n", slavedevice);
slavefd = open(slave, ORDWRONOCTY);
if (slavefd < 0)
return -1;
USAGE
This function provieds a method for portably obtaining a
file descriptor of a master 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 slave device, respectively.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
SunOS 5.11 Last change: 1 Dec 2003 2
Standard C Library Functions posixopenpt(3C)
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Standard
MT-Level MT-Safe
SEE ALSO
open(2), grantpt(3C), ptsname(3C), unlockpt(3C), attri-
butes(5), standards(5)
SunOS 5.11 Last change: 1 Dec 2003 3
|