Man page - ttyslot(3)

Packages contains this manual

Available languages:

en fr es ja ru ro

Manual

ttyslot

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
Histoire ancienne
Histoire ancienne (bis)
SÉMANTIQUE DE TTYSLOT
VALEUR RENVOYÉE
ATTRIBUTS
VERSIONS
STANDARDS
HISTORIQUE
VOIR AUSSI
TRADUCTION

NOM

ttyslot - Trouver l’emplacement du terminal en cours dans un fichier

BIBLIOTHÈQUE

BibliothĂšque C standard ( libc , -lc )

SYNOPSIS

#include <unistd.h> /* Voir NOTES */

int ttyslot(void);

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

ttyslot () :
Depuis la glibc 2.24 :
_DEFAULT_SOURCE
De la glibc 2.20 Ă  la glibc 2.23 :
_DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
Pour la glibc antérieure et égale à 2.19 :
_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION

La fonction ttyslot () renvoie la position de l’entrĂ©e du terminal en cours dans un fichier.

« Dans quel fichier ? » demandez-vous... Bonne question ; voyons un peu d’histoire.

Histoire ancienne

Il existait un fichier /etc/ttys dans UNIX V6, qui Ă©tait consultĂ© par init (1) afin de savoir que faire sur chaque terminal. Chaque ligne Ă©tait composĂ©e de trois caractĂšres. Le premier Ă©tait « 0 » ou « 1 », le « 0 » signifiant « ignoré ». Le second caractĂšre indiquait le terminal : « 8 » signifiant « /dev/tty8 ». Le troisiĂšme caractĂšre Ă©tait un argument pour getty (8) indiquant la sĂ©quence de vitesses Ă  essayer (« - » signifiait « essayer Ă  partir de 110 bauds »). Ainsi, une ligne typique Ă©tait « 18- ». Une dĂ©connexion sur une ligne Ă©tait rĂ©solu en changeant le « 1 » en « 0 », en envoyant un signal Ă  init, en rechangeant Ă  l’inverse et en renvoyant un signal.

Sous UNIX V7, le format a changé : le second caractĂšre devenait l’argument pour getty (8) indiquant la sĂ©quence de vitesses Ă  essayer (« 0 » signifiait « essayer en boucle 300-1200-150-110 bauds » et « 4 » signifiait « console DECwriter ») tandis que le reste de la ligne contenait le nom du terminal. Une ligne typique Ă©tait « 14console ».

Les systÚmes ultérieurs utilisÚrent une syntaxe plus élaborée. Les systÚmes type System V employaient /etc/inittab à la place.

Histoire ancienne (bis)

D’autre part, il existe un fichier /etc/utmp listant les gens actuellement connectĂ©s. Il est gĂ©rĂ© par login (1). Il a une taille fixe, et la position appropriĂ©e dans le fichier est dĂ©terminĂ©e par login (1) en utilisant l’appel ttyslot () pour trouver le numĂ©ro de la ligne dans /etc/ttys (Ă  partir de 1).

SÉMANTIQUE DE TTYSLOT

Ainsi, la fonction ttyslot () renvoie l’index du terminal de contrĂŽle du processus appelant dans le fichier /etc/ttys , qui est aussi (en principe) l’index de l’entrĂ©e pour l’utilisateur en cours dans le fichier /etc/utmp . BSD utilise encore le fichier /etc/ttys , mais pas les systĂšme de type System V, qui ne peuvent donc pas s’y rĂ©fĂ©rer. Sur ces systĂšmes, la documentation dit que ttyslot () renvoie l’index de l’utilisateur appelant dans la base de donnĂ©es de comptabilitĂ© des utilisateurs.

VALEUR RENVOYÉE

Si elle rĂ©ussit, cette fonction renvoie le numĂ©ro d’entrĂ©e. Si elle Ă©choue (par exemple si aucun des descripteurs 0, 1 ou 2 n’est associĂ© Ă  un terminal trouvĂ© dans la base de donnĂ©es), elle renvoie 0 sur UNIX V6, V7 et les systĂšmes BSD, mais -1 sur les autres systĂšmes V.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes (7).

Image grohtml-3886125-1.png

VERSIONS

Le fichier utmp se rencontre à divers endroits sur les différents systÚmes, comme /etc/utmp , /var/adm/utmp ou /var/run/utmp .

STANDARDS

Aucun.

HISTORIQUE

SUSv1 ; mentionnĂ© comme historique dans SUSv2 ; supprimĂ© dans POSIX.1-2001. SUSv2 demande un -1 en cas d’erreur.

L’implĂ©mentation de cette fonction dans la glibc 2 lit le fichier _PATH_TTYS , dĂ©fini dans <ttyent.h> comme "/etc/ttys". Elle renvoie 0 en cas d’erreur. Comme les systĂšmes Linux n’ont habituellement pas de « /etc/ttys », elle renverra toujours 0 .

Sur les sytÚmes de type BSD et Linux, la déclaration de ttyslot () est fournie par <unistd.h> . Sur les systÚmes de type System V, la déclaration est fournie par <stdlib.h> . Depuis la glibc 2.24, <stdlib.h> fournit aussi la déclaration avec les définitions de macros de test de fonctionnalités suivantes :

(_XOPEN_SOURCE >= 500 ||
(_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED))
&& ! (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)

Minix avait aussi fttyslot ( fd ).

VOIR AUSSI

getttyent (3), ttyname (3), utmp (5)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .