login, logout − Écrire les entrées utmp et wtmp.
#include <utmp.h>
void login(const struct utmp *ut);
int logout(const char *ut_line);
Effectuez l’édition des liens avec l’option −lutil.
Le fichier utmp enregistre qui utilise actuellement le système. Le fichier wtmp enregistre toutes les connexions (Ndt : login) et déconnexions (Ndt : logout). Voir 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 des terminaux
(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.
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.
/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>
Absent de POSIX.1−2001. Présent sur les systèmes BSD.
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>.
Cette page fait partie de la publication 3.23 du projet man−pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l’adresse http://www.kernel.org/doc/man−pages/.
Cette page de manuel a été traduite et mise à jour par Christophe Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par Alain Portal <aportal AT univ−montp2 DOT fr> jusqu’en 2006, et mise à disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont directement gérées par Florentin Duneau <fduneau [AT] gmail.com> et l’équipe francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à <debian−l10n−french [AT] lists.org> ou par un rapport de bogue sur le paquet manpages−fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man −L C <section> <page_de_man> ».