Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       openpty, login_tty, forkpty - funcții de utilitate pentru terminale

BIBLIOTECA

       Biblioteca de utilități a sistemului (libutil, -lutil)

SINOPSIS

       #include <pty.h>

       int openpty(int *amaster, int *aslave, char *name,
                     const struct termios *termp,
                     const struct winsize *winp);
       pid_t forkpty(int *amaster, char *name,
                     const struct termios *termp,
                     const struct winsize *winp);

       #include <utmp.h>

       int login_tty(int fd);

DESCRIERE

       Funcția  openpty()  găsește  un  pseudoterminal  disponibil  și returnează descriptorii de fișiere pentru
       maestru și sclav în amaster și aslave. Dacă name nu  este  NULL,  numele  de  fișier  al  sclavului  este
       returnat în name. Dacă termp nu este NULL, parametrii terminalului sclavului vor fi stabiliți la valorile
       din termp. Dacă winp nu este NULL, dimensiunea ferestrei sclavului va fi stabilită la valorile din winp.

       Funcția login_tty() pregătește o autentificare pe terminalul la care face referire descriptorul de fișier
       fd  (care  poate fi un dispozitiv terminal real sau sclavul unui pseudoterminal, așa cum este returnat de
       openpty()) prin crearea unei noi sesiuni, făcând din fd terminalul de control  pentru  procesul  apelant,
       stabilind  fd ca fiind fluxurile standard de intrare, ieșire și eroare ale procesului curent și închizând
       fd.

       Funcția forkpty() combină openpty(), fork(2) și login_tty() pentru a crea un  nou  proces  care  operează
       într-un  pseudoterminal.  Un  descriptor  de fișier care se referă la partea maestru a pseudoterminalului
       este returnat în amaster. În cazul în care name nu este NULL, memoria tampon la care acesta  indică  este
       utilizată  pentru a returna numele de fișier al sclavului.  Argumentele termp și winp, dacă nu sunt NULL,
       vor determina atributele terminalului și dimensiunea ferestrei părții sclav a pseudoterminalului.

VALOAREA RETURNATĂ

       În cazul în care un apel la openpty(), login_tty() sau forkpty() nu are succes,  se  returnează  -1,  iar
       errno este configurată pentru a indica eroarea.  În caz contrar, openpty(), login_tty() și procesul copil
       al  forkpty()  returnează  0,  iar procesul părinte al forkpty() returnează ID-ul de proces al procesului
       copil.

ERORI-IEȘIRE

       openpty() eșuează dacă:

       ENOENT Nu există terminale disponibile.

       login_tty() nu reușește dacă ioctl(2)  nu  reușește  să  stabilească  fd  la  terminalul  de  control  al
       procesului apelant.

       forkpty() eșuează dacă fie openpty(), fie fork(2) eșuează.

ATRIBUTE

       Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
       ┌──────────────────────────────────────────────────────────┬───────────────────┬────────────────────────┐
       │ InterfațăAtributValoare                │
       ├──────────────────────────────────────────────────────────┼───────────────────┼────────────────────────┤
       │ forkpty(), openpty()                                     │ Siguranța firelor │ MT-Safe locale         │
       ├──────────────────────────────────────────────────────────┼───────────────────┼────────────────────────┤
       │ login_tty()                                              │ Siguranța firelor │ MT-Unsafe race:ttyname │
       └──────────────────────────────────────────────────────────┴───────────────────┴────────────────────────┘

STANDARDE

       BSD.

ISTORIC

       Modificatorii const au fost adăugați la argumentele indicatorului de structură din openpty() și forkpty()
       în glibc 2.8.

       Înainte  de glibc 2.0.92, openpty() returnează descriptori de fișiere pentru o pereche de pseudoterminale
       BSD; începând cu glibc 2.0.92, aceasta încearcă mai întâi să deschidă o pereche de  pseudoterminale  UNIX
       98 și revine la deschiderea unei perechi de pseudoterminale BSD în cazul în care acest lucru eșuează.

ERORI

       Nimeni  nu  știe  cât  spațiu ar trebui să fie rezervat pentru name.  Prin urmare, apelarea openpty() sau
       forkpty() cu name non-NULL poate să nu fie sigură.

CONSULTAȚI ȘI

       fork(2), ttyname(3), pty(7)

TRADUCERE

       Traducerea   în   limba   română   a   acestui   manual   a   fost   făcută   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.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                         openpty(3)