备注

一些支持System V(也称为UNIX 98)伪终端的较早的UNIX实现不具有此功能,但是可以通过打开伪终端多路复用器设备来轻松实现:

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

调用posix_openpt()创建相应伪终端从设备的路径名。可以使用ptsname(3)获得从站设备的路径名。从设备路径名仅在打开主设备时存在。

说明

posix_openpt()函数将打开未使用的伪终端主设备,并返回可用于引用该设备的文件描述符。

flags参数是一个位掩码,可以对以下零个或多个标志进行"或"运算:

O_RDWR
打开设备以进行读取和写入。通常指定此标志。
O_NOCTTY
不要将此设备作为该过程的控制终端。

另外参见

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

语法

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

int posix_openpt(int flags);

glibc的功能测试宏要求(请参阅feature_test_macros(7)):

posix_openpt():_XOPEN_SOURCE> = 600

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/

错误说明

参见open(2)。

名称

posix_openpt-打开一个伪终端设备

POSIX_OPENPT - Linux手册页

Linux程序员手册 第3部分
更新日期: 2020-08-13

返回值

成功后,posix_openpt()返回一个文件描述符(一个非负整数),它是编号最小的未使用文件描述符。失败时,将返回-1,并且将errno设置为指示错误。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
posix_openpt()Thread safetyMT-Safe

遵循规范

POSIX.1-2001,POSIX.1-2008。

posix_openpt()是UNIX 98伪终端支持的一部分(请参阅pts(4))。

版本

从2.2.1版开始,已提供posix_openpt()的Glibc支持。

日期:2019-08-20 18:00:59 来源:oir作者:oir