ptsname(3) | Library Functions Manual | ptsname(3) |
NAZWA
ptsname, ptsname_r - uzyskuje nazwę podrzędnego urządzenia pseudoterminala
BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)
SKŁADNIA
#include <stdlib.h>
char *ptsname(int fd); int ptsname_r(size_t size; int fd, char buf[size], size_t size);
ptsname():
Od glibc 2.24: _XOPEN_SOURCE >= 500 glibc 2.23 i wcześniejsze: _XOPEN_SOURCE
ptsname_r():
_GNU_SOURCE
OPIS
Funkcja ptsname() zwraca nazwę podrzędnego urządzenia pseudoterminala związanego z urządzeniem nadrzędnym, do którego odnosi się deskryptor pliku fd.
Funkcja ptsname_r() jest wielobieżnym odpowiednikiem ptsname(). Zwraca nazwę podrzędnego urządzenia pseudoterminala jako łańcuch zakończony znakiem null w buforze, na który wskazuje buf. Argument size określa liczbę bajtów dostępnych w buf.
WARTOŚĆ ZWRACANA
W przypadku powodzenia, ptsname() zwraca wskaźnik do łańcucha w magazynie statycznym, który zostanie nadpisany kolejnymi wywołaniami. Wskaźnika nie można zwalniać. W przypadku niepowodzenia, zwracane jest NULL.
W przypadku powodzenia ptsname_r() zwraca zero. W razie niepowodzenia zwracany jest numer błędu, wskazując błąd.
BŁĘDY
ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs | Atrybut | Wartość |
ptsname() | Bezpieczeństwo wątkowe | MT-niebezpieczne race:ptsname |
ptsname_r() | Bezpieczeństwo wątkowe | MT-bezpieczne |
WERSJE
Wersję ptsname_r() udokumentowano na Tru64 i HP-UX, jednak w tych implementacjach przy błędzie zwracane jest -1, z ustawionym errno wskazującym błąd. Należy unikać tej funkcji w przenośnych programach.
STANDARDY
- ptsname():
- POSIX.1-2008.
ptsname_r() jest rozszerzeniem systemu Linux, które zaproponowano do następnego głównego wydania POSIX.1 (wydanie 8).
HISTORIA
- ptsname():
- POSIX.1-2001. glibc 2.1.
ptsname() jest częścią obsługi pseudoterminali UNIX 98 (zob. pts(4)).
ZOBACZ TAKŻE
grantpt(3), posix_openpt(3), ttyname(3), unlockpt(3), pts(4), pty(7)
TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
28 czerwca 2025 r. | Linux man-pages 6.15 |