posix_openpt(3) Library Functions Manual posix_openpt(3)

posix_openpt - deschide un dispozitiv pseudoterminal

Biblioteca C standard (libc, -lc)

#include <stdlib.h>
#include <fcntl.h>
int posix_openpt(int flags);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

posix_openpt():

    _XOPEN_SOURCE >= 600

Funcția posix_openpt() deschide un dispozitiv maestru pseudoterminal neutilizat, returnând un descriptor de fișier care poate fi utilizat pentru a face referire la acel dispozitiv.

Argumentul flags este o mască de biți care combină împreună zero sau mai mulți dintre următoarele fanioane:

Deschide dispozitivul atât pentru citire, cât și pentru scriere. Este obișnuit să se specifice acest fanion.
Nu faceți din acest dispozitiv terminalul de control al procesului.

În caz de reușită, posix_openpt() returnează un descriptor de fișier (un număr întreg nenegativ), care este cel mai mic descriptor de fișier neutilizat cu cel mai mic număr. În caz de eșec, se returnează -1, iar errno este configurată pentru a indica eroarea.

A se vedea open(2).

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
posix_openpt() Siguranța firelor MT-Safe

POSIX.1-2008.

glibc 2.2.1. POSIX.1-2001.

Face parte din suportul pentru pseudoterminalul UNIX 98 (a se vedea pts(4)).

Unele implementări UNIX mai vechi care suportă pseudoterminale System V (aka UNIX 98) nu au această funcție, dar ea poate fi implementată cu ușurință prin deschiderea dispozitivului multiplexor pseudoterminal:


int
posix_openpt(int flags)
{
    return open("/dev/ptmx", flags);
}

Apelarea posix_openpt() creează un nume de rută pentru dispozitivul sclav pseudoterminal corespunzător. Numele de rută al dispozitivului sclav poate fi obținut utilizând ptsname(3). Numele de rută al dispozitivului sclav există numai atât timp cât dispozitivul maestru este deschis.

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

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.

31 octombrie 2023 Pagini de manual de Linux 6.06