POSIX_OPENPT(3)

NOM
posix_openpt - Ouvrir un périphérique pseudo-terminal

SYNOPSIS
#include <stdlib.h>
#include <fcntl.h>

int posix_openpt(int flags);

Exigences de macros de test de fonctionnalités pour la glibc (voir feature_test_macros(7)) :

posix_openpt() : _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600

DESCRIPTION
La fonction posix_openpt() ouvre un périphérique pseudo-terminal maître et renvoie un descripteur de fichier qui pourra être utilisé pour se référer à ce périphérique. L'argument flags est un masque OU bit à bit de zéro ou plusieurs des attributs suivants :

O_RDWR
    ouvrir le périphérique en lecture et en écriture. En général, on utilise cet attribut.

O_NOCTTY
    Ne pas faire de ce périphérique le terminal de contrôle du processus.

VALEUR RENVOYÉE
Si elle réussit, posix_openpt() renvoie un descripteur de fichier non négatif qui est le plus petit des descripteurs inutilisés. Si elle échoue, elle renvoie -1 et errno indique l'erreur.

ERREURS
Voir open(2).

VERSIONS
La glibc prend en charge posix_openpt() depuis la version 2.2.1.

CONFORMITÉ
posix_openpt() est une partie de la gestion des pseudo-terminaux d'Unix98 (voir pts(4)). Cette fonction est spécifiée par POSIX.1-2001.

NOTES
Cette fonction est une création récente dans POSIX. Certaines implémentations UNIX qui supportent les pseudo-terminaux System V (aussi appelés Unix 98) n'ont pas cette fonction, mais il est facile de l'implémenter :
int
posix_openpt(int flags)
{
    return open("/dev/ptmx", flags);
}

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

TRADUCTION

Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 31 mai 2006 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 posix_openpt ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.