PTSNAME(3)

NOM
ptsname, ptsname_r - Obtenir le nom d'un pseudo-terminal esclave

SYNOPSIS
#define _XOPEN_SOURCE
#include <stdlib.h>

char *ptsname(int fd);

#define _GNU_SOURCE
#include <stdlib.h>

char *ptsname_r(int fd, char *buf, size_t buflen);

DESCRIPTION
La fonction ptsname() renvoie le nom du périphérique pseudo-terminal esclave (pty) associé au pseudo-terminal maître indiqué par fd. La fonction ptsname_r() est la version réentrante équivalente à ptsname(). Elle renvoie le nom du périphérique pseudo-terminal esclave, sous la forme d'une chaîne de caractère terminée par un octet nul, dans le tampon pointé par buf. L'argument buflen indique le nombre d'octets disponible dans buf.

VALEUR RENVOYÉE
Lorsqu'elle réussit, la fonction ptsname() renvoie un pointeur sur une chaîne de stockage statique qui sera écrasée par des appels successifs. Le pointeur NE doit PAS être libéré.

Si elle échoue, ptsname() renvoie un pointeur NULL. Lorsqu'elle réussit, la fonction ptsname_r() renvoie 0 Si elle échoue, elle renvoie une valeur non nulle et errno contient le code de l'erreur.

ERREURS

EINVAL
    (ptsname_r() seulement) buf est NULL.

ENOTTY
    fd ne fait pas référence à un périphérique pseudo-terminal maître.

ERANGE
    (ptsname_r() seulement) buf est trop petit.

CONFORMITÉ
ptsname() fait partie du support pty d'Unix98. Voir pts(4). Cette fonction est spécifiée dans POSIX.1-2001. ptsname_r() est une extension Linux. Une version de cette fonction est documentée dans Tru64 et HP-UX, mais sur certaines implémentations, -1 est renvoyé en cas d'erreur et errno contient le code d'erreur. Évitez d'utiliser cette fonction dans des programmes conçus pour être portables.

VOIR AUSSI
grantpt(3), posix_openpt(3), ttyname(3), unlockpt(3), pts(4), feature_test_macros(7) pty(7)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 21 juillet 2003 et révisée le 10 décembre 2007.

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 ptsname ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.