grantpt(3) | Library Functions Manual | grantpt(3) |
grantpt - acordă acces la pseudoterminalul sclav
Biblioteca C standard (libc, -lc)
#include <stdlib.h>
int grantpt(int fd);
grantpt():
Începând cu glibc 2.24: _XOPEN_SOURCE >= 500 glibc 2.23 și versiunile anterioare: _XOPEN_SOURCE
Funcția grantpt() schimbă modul și proprietarul dispozitivului pseudoterminal sclav corespunzător pseudoterminalului maestru la care face referire descriptorul de fișier fd. ID-ul de utilizator al sclavului este stabilit la UID-ul real al procesului apelant. ID-ul de grup este stabilit la o valoare nespecificată (de exemplu, tty). Modul sclavului este stabilit la 0620 (crw--w----).
Comportamentul lui grantpt() este nespecificat dacă este instalat un gestionar de semnal pentru a capta semnalele SIGCHLD.
În caz de succes, grantpt() returnează 0. În caz contrar, returnează -1 și configurează errno pentru a indica eroarea.
grantpt() este furnizată începând cu glibc 2.1.
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare |
grantpt() | Siguranța firelor | MT-Safe locale |
POSIX.1-2001, POSIX.1-2008.
Aceasta face parte din suportul UNIX 98 pentru pseudoterminal, a se vedea pts(4).
Multe sisteme implementează această funcție prin intermediul unui binar auxiliar set-user-ID numit „pt_chown”. În sistemele Linux cu un sistem de fișiere devpts (prezent începând cu Linux 2.2), nucleul stabilește în mod normal proprietatea și permisiunile corecte pentru pseudoterminalul sclav atunci când este deschis maestrul (posix_openpt(3)), astfel încât grantpt() nu trebuie să facă nimic. Astfel, nu este necesar un astfel de binar ajutător (și, într-adevăr, este configurat pentru a fi absent în timpul compilării glibc, care este tipică pentru multe sisteme).
open(2), posix_openpt(3), ptsname(3), unlockpt(3), pts(4), pty(7)
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
5 februarie 2023 | Pagini de manual de Linux 6.03 |