]>
Commit | Line | Data |
---|---|---|
2d6c6dd1 | 1 | .\" %%%LICENSE_START(PUBLIC_DOMAIN) |
fea681da | 2 | .\" This page is in the public domain. - aeb |
2d6c6dd1 | 3 | .\" %%%LICENSE_END |
fea681da | 4 | .\" |
72897648 MK |
5 | .\" 2004-12-17, mtk, added description of ptsname_r() + ERRORS |
6 | .\" | |
4b8c67d9 | 7 | .TH PTSNAME 3 2017-09-15 "" "Linux Programmer's Manual" |
fea681da | 8 | .SH NAME |
b218b023 | 9 | ptsname, ptsname_r \- get the name of the slave pseudoterminal |
fea681da | 10 | .SH SYNOPSIS |
fea681da | 11 | .B #include <stdlib.h> |
68e4db0a | 12 | .PP |
fea681da | 13 | .BI "char *ptsname(int " fd ");" |
72897648 | 14 | .br |
55fbb69b | 15 | .BI "int ptsname_r(int " fd ", char *" buf ", size_t " buflen ");" |
c2ba3716 FT |
16 | .PP |
17 | .in -4n | |
18 | Feature Test Macro Requirements for glibc (see | |
19 | .BR feature_test_macros (7)): | |
20 | .in | |
21 | .PP | |
22 | .ad l | |
23 | .BR ptsname (): | |
24 | .br | |
25 | .RS 4 | |
26 | Since glibc 2.24: | |
27 | _XOPEN_SOURCE\ >=\ 500 || | |
28 | (_XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED) | |
29 | .br | |
30 | Glibc 2.23 and earlier: | |
31 | _XOPEN_SOURCE | |
32 | .RE | |
33 | .PP | |
34 | .BR ptsname_r (): | |
35 | _GNU_SOURCE | |
36 | .ad | |
fea681da MK |
37 | .SH DESCRIPTION |
38 | The | |
39 | .BR ptsname () | |
b218b023 | 40 | function returns the name of the slave pseudoterminal device |
72897648 | 41 | corresponding to the master referred to by |
fea681da | 42 | .IR fd . |
847e0d88 | 43 | .PP |
72897648 MK |
44 | The |
45 | .BR ptsname_r () | |
46 | function is the reentrant equivalent of | |
47 | .BR ptsname (). | |
b218b023 | 48 | It returns the name of the slave pseudoterminal device as a |
72897648 MK |
49 | null-terminated string in the buffer pointed to by |
50 | .IR buf . | |
51 | The | |
52 | .I buflen | |
53 | argument specifies the number of bytes available in | |
54 | .IR buf . | |
47297adb | 55 | .SH RETURN VALUE |
72897648 | 56 | On success, |
fea681da | 57 | .BR ptsname () |
72897648 MK |
58 | returns a pointer to a string in static storage which will be |
59 | overwritten by subsequent calls. | |
60 | This pointer must not be freed. | |
b437fdd9 | 61 | On failure, NULL is returned. |
847e0d88 | 62 | .PP |
72897648 MK |
63 | On success, |
64 | .BR ptsname_r () | |
65 | returns 0. | |
8d4d268f BH |
66 | On failure, an error number is returned to indicate the error. |
67 | .\" In glibc, the error number is not only returned as the return value | |
68 | .\" but also stored in errno. But this is not true for musl libc. | |
72897648 MK |
69 | .SH ERRORS |
70 | .TP | |
71 | .B EINVAL | |
72 | .RB ( ptsname_r () | |
73 | only) | |
74 | .I buf | |
75 | is NULL. | |
7676eafe MK |
76 | (This error is returned only for |
77 | .\" glibc commit 8f0a947cf55f3b0c4ebdf06953c57eff67a22fa9 | |
78 | glibc 2.25 and earlier.) | |
72897648 MK |
79 | .TP |
80 | .B ENOTTY | |
81 | .I fd | |
b218b023 | 82 | does not refer to a pseudoterminal master device. |
72897648 MK |
83 | .TP |
84 | .B ERANGE | |
85 | .RB ( ptsname_r () | |
86 | only) | |
87 | .I buf | |
88 | is too small. | |
c343e74c MK |
89 | .SH VERSIONS |
90 | .BR ptsname () | |
91 | is provided in glibc since version 2.1. | |
1d94efa5 | 92 | .SH ATTRIBUTES |
447d472c PH |
93 | For an explanation of the terms used in this section, see |
94 | .BR attributes (7). | |
95 | .TS | |
96 | allbox; | |
97 | lb lb lb | |
98 | l l l. | |
99 | Interface Attribute Value | |
100 | T{ | |
1d94efa5 | 101 | .BR ptsname () |
f13ba82a | 102 | T} Thread safety MT-Unsafe race:ptsname |
447d472c | 103 | T{ |
1d94efa5 | 104 | .BR ptsname_r () |
447d472c PH |
105 | T} Thread safety MT-Safe |
106 | .TE | |
47297adb | 107 | .SH CONFORMING TO |
b0786370 MK |
108 | .BR ptsname (): |
109 | POSIX.1-2001, POSIX.1-2008. | |
847e0d88 | 110 | .PP |
72897648 | 111 | .BR ptsname () |
b218b023 | 112 | is part of the UNIX 98 pseudoterminal support (see |
72897648 | 113 | .BR pts (4)). |
847e0d88 | 114 | .PP |
704a18f0 | 115 | .BR ptsname_r () |
97d8fd29 MK |
116 | is a Linux extension, that is proposed for inclusion |
117 | .\" FIXME . for later review when Issue 8 is one day released | |
118 | .\" http://austingroupbugs.net/tag_view_page.php?tag_id=8 | |
119 | .\" http://austingroupbugs.net/view.php?id=508 | |
120 | in the next major revision of POSIX.1 (Issue 8). | |
85eb6f28 | 121 | A version of this function is documented on Tru64 and HP-UX, but |
8729177b | 122 | on those implementations, \-1 is returned on error, with |
72897648 MK |
123 | .I errno |
124 | set to indicate the error. | |
125 | Avoid using this function in portable programs. | |
47297adb | 126 | .SH SEE ALSO |
fea681da | 127 | .BR grantpt (3), |
a856c2ea | 128 | .BR posix_openpt (3), |
fea681da | 129 | .BR ttyname (3), |
a856c2ea | 130 | .BR unlockpt (3), |
88ab292b MK |
131 | .BR pts (4), |
132 | .BR pty (7) |