Scroll to navigation

grantpt(3) Library Functions Manual grantpt(3)

NUME

grantpt - acordă acces la pseudoterminalul sclav

BIBLIOTECA

Biblioteca C standard (libc, -lc)

REZUMAT

#include <stdlib.h>
int grantpt(int fd);

Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

grantpt():


Începând cu glibc 2.24:
_XOPEN_SOURCE >= 500
glibc 2.23 și versiunile anterioare:
_XOPEN_SOURCE

DESCRIERE

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.

VALOAREA RETURNATĂ

În caz de succes, grantpt() returnează 0. În caz contrar, returnează -1 și configurează errno pentru a indica eroarea.

ERORI

Pseudoterminalul sclav corespunzător nu a putut fi accesat.
Argumentul fd nu este un descriptor de fișier deschis valid.
Argumentul fd este valid, dar nu este asociat cu un pseudoterminal maestru.

VERSIUNI

grantpt() este furnizată începând cu glibc 2.1.

ATRIBUTE

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

STANDARDE

POSIX.1-2001, POSIX.1-2008.

NOTE

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).

CONSULTAȚI ȘI

open(2), posix_openpt(3), ptsname(3), unlockpt(3), pts(4), pty(7)

TRADUCERE

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