NOM

login, logout - Écrire les entrées utmp et wtmp

BIBLIOTHÈQUE

System utilities library ( libutil, -lutil)

SYNOPSIS

#include <utmp.h>
void login(const struct utmp *ut);
int logout(const char *ut_line);

DESCRIPTION

Le fichier utmp enregistre qui utilise actuellement le système. Le fichier wtmp enregistre toutes les connexions (Ndt : login) et déconnexions (Ndt : logout). Consultez utmp(5).
La fonction login() prend la structure utmp fournie (ut) et l'écrit dans les fichiers utmp et wtmp.
La fonction logout() efface l'entrée du fichier utmp.

Détails à propos des spécificités GNU

Plus précisément, login() prend l'argument structure ut, remplit le champ ut->ut_type (s'il existe) avec la valeur USER_PROCESS, et remplit le champ ut->ut_pid (s'il existe) avec le PID du processus appelant. Elle tente ensuite de remplir le champ ut->ut_line. Elle prend le premier parmi l'entrée standard ( stdin), la sortie standard ( stdout) et la sortie d'erreur (stderr) qui soit un terminal (tty) et enregistre dans ce champ le chemin correspondant, amputé d'un possible /dev/. Elle écrit ensuite la structure dans le fichier utmp. Si aucun terminal (tty) n'est trouvé, le champ est renseigné avec « ??? » et la structure n'est pas écrite dans le fichier utmp. Après cela, la structure est écrite dans le fichier wtmp.
La fonction logout() cherche dans le fichier utmp une entrée correspondant à l'argument ut_line. Si un enregistrement est trouvé, il est mis à jour par une mise à zéro des champs ut_name et ut_host, une mise à jour du champ d'horodatage ut_tv et un renseignement du champ ut_type (s'il existe) à la valeur DEAD_PROCESS.

VALEUR RENVOYÉE

La fonction logout() renvoie 1 si l'entrée a été correctement écrite dans la base de données, ou zéro en cas d'erreur.

FICHIERS

/var/run/utmp
base de données de comptabilité utilisateur, configurée par _PATH_UTMP dans <paths.h>
/var/log/wtmp
fichier de journalisation de comptabilité utilisateur, configuré par _PATH_WTMP dans <paths.h>

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
login(), logout() Sécurité des threads MT-Unsafe race:utent sig:ALRM timer
 
Dans la table ci-dessus, utent dans race:utent veut dire que si une des fonctions setutent(3), getutent(3) ou endutent(3) est utilisée en parallèle dans différents fils d'exécution (thread) d'un programme, alors des situations de concurrences de données peuvent se produire. login() et logout() appellent ces fonctions, nous utilisons donc race:utent pour le rappeler aux utilisateurs.

STANDARDS

Absent de POSIX.1. Présent sur les systèmes BSD.

NOTES

Notez que le membre ut_user de la structure utmp est appelé ut_name dans BSD. C'est pourquoi ut_name est défini comme un alias de ut_user dans <utmp.h>.

VOIR AUSSI

getutent(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 <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]>, Jean-Baptiste Holcroft <[email protected]> et Grégoire Scano <[email protected]>
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 à [email protected]

Recommended readings

Pages related to logout you should read also: