属性

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

InterfaceAttributeValue
ptsname()Thread safetyMT-Unsafe race:ptsname
ptsname_r()Thread safetyMT-Safe

错误说明

EINVAL
(仅限ptsname_r())buf为NULL。 (仅对于glibc 2.25和更早版本,返回此错误。)
ENOTTY
fd不引用伪终端主设备。
ERANGE
(仅限ptsname_r())buf太小。

版本

从版本2.1开始,在glibc中提供了ptsname()。

出版信息

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

另外参见

grantpt(3),posix_openpt(3),ttyname(3),unlockpt(3),pts(4),pty(7)

语法

#包括

字符* ptsname(int fd);
int ptsname_r(int fd,char * buf,size_t buflen);

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

ptsname():

从glibc 2.24开始: _XOPEN_SOURCE >>500 (_XOPEN_SOURCE && __ XOPEN_SOURCE_EXTENDED) Glibc 2.23和更早版本: _XOPEN_SOURCE

ptsname_r():
_GNU_SOURCE

返回值

成功后,ptsname()将返回指向静态存储中字符串的指针,该字符串将被后续调用覆盖。不能释放该指针。失败时,返回NULL。

成功时,ptsname_r()返回0。失败时,返回错误号以指示错误。

名称

ptsname,ptsname_r-获取从属伪终端的名称

PTSNAME - Linux手册页

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

遵循规范

ptsname():
POSIX.1-2001,POSIX.1-2008。

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

ptsname_r()是Linux扩展,建议将其包含在POSIX.1的下一个主要修订版中(问题8)。 Tru64和HP-UX上记录了此功能的版本,但在这些实现上,错误时返回-1,并设置errno表示错误。避免在可移植程序中使用此功能。

说明

ptsname()函数返回与文件描述符fd引用的主机相对应的从属伪终端设备的名称。

ptsname_r()函数是ptsname()的可重入等效项。它在buf指向的缓冲区中以空值结尾的字符串形式返回从属伪终端设备的名称。 buflen参数指定buf中可用的字节数。

日期:2019-08-20 18:01:06 来源:oir作者:oir