table of contents
- bookworm-backports 1:4.26.3.1-3~bpo12+1
- testing 1:4.26.3.1-3
- unstable 1:4.26.3.1-3
grantpt(3) | Library Functions Manual | grantpt(3) |
NAZWA¶
grantpt - przyznaje dostęp do podrzędnego urządzenia pseudoterminala
BIBLIOTEKA¶
Standardowa biblioteka C (libc, -lc)
SKŁADNIA¶
#define _XOPEN_SOURCE #include <stdlib.h>
int grantpt(int fd);
grantpt():
Od glibc 2.24:
_XOPEN_SOURCE >= 500
glibc 2.23 i wcześniejsze:
_XOPEN_SOURCE
OPIS¶
Funkcja grantpt() zmienia dostęp i właściciela podrzędnego urządzenia pseudoterminala na pasujące do urządzenia nadrzędnego pseudoterminala, do którego odnosi się deskryptor pliku fd. Identyfikator użytkownika urządzenia podrzędnego jest ustawiany na rzeczywisty UID procesu wywołującego. Identyfikator grupy jest ustawiany na wartość nieokreśloną (np. tty). Tryb jest ustawiany na 0620 (crw--w----).
Zachowanie grantpt() jest nieokreślone, gdy zainstalowano procedurę obsługi sygnału w celu przechwycenia sygnałów SIGCHLD.
WARTOŚĆ ZWRACANA¶
Po pomyślnym zakończeniu grantpt() zwraca zero. W przeciwnym przypadku zwraca -1 i ustawia errno, 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ść |
grantpt() | Bezpieczeństwo wątkowe | MT-bezpieczne locale |
STANDARDY¶
POSIX.1-2008.
HISTORIA¶
glibc 2.1. POSIX.1-2001.
Stanowi część obsługi pseudoterminali UNIX 98, zob. pts(4).
Dawne systemy implementowały tę funkcję za pomocą pomocniczego pliku binarnego o nazwie „pt_chown”, korzystającego z bitu SUID. glibc w Linuksie przed glibc 2.33 również mógła tak robić, aby obsłużyć konfigurację korzystającą wyłącznie z pseudoterminali BSD; jednak obsługę tę usunięto. Na współczesnych systemach albo jest to niaktywne — z uprawnieniami konfigurowanymi przy przydzielaniu pty, jak jest to w Linuksie — albo korzysta się z ioctl(2).
ZOBACZ TAKŻE¶
open(2), posix_openpt(3), ptsname(3), unlockpt(3), pts(4), pty(7)
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: 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.
26 maja 2024 r. | Linux man-pages 6.9.1 |