getutent(3)

NAME
getutent, getutid, getutline, pututline, setutent, endutent, utmpname - greife auf Einträge der utmp-Datei zu

ÜBERSICHT
#include <utmp.h>

struct utmp *getutent(void);
struct utmp *getutid(struct utmp *ut);
struct utmp *getutline(struct utmp *ut);

void pututline(struct utmp *ut);

void setutent(void);
void endutent(void);

void utmpname(const char *file);

BESCHREIBUNG
utmpname() setzt den Namen der Datei im utmp-Format für die anderen utmp-Funktionen. Wenn utmpname() nicht benutzt wird um den Dateinamen zu setzen bevor die anderen Funktionen benutzt werden, wird von diesen _PATH_UTMP angenommen wie in <paths.h> definiert. setutent() setzt den Dateizeiger auf den Anfang des utmp-Datei zurück. Es ist allgemein eine gute Idee dies vor Gebrauch der anderen Funktionen aufzurufen. endutent() schließt die utmp-Datei. Sie sollte benutzt werden wenn die Benutzung der anderen Funktionen beendet ist. getutent() liest eine Zeile ab der aktuellen Dateiposition der utmp-Datei. Es wird ein Zeiger auf eine Struktur zurückgegeben, die die Felder der Zeile enthält. getutid() sucht vorwärts ab der aktuellen Dateiposition in der utmp-Datei basierend auf ut. Wenn ut->ut_type gleich RUN_LVL, BOOT_TIME, NEW_TIME oder OLD_TIME ist, wird getutid() den ersten Eintrag finden, dessen Feld ut_type ut->ut_type entspricht. Wenn ut->ut_type gleich INIT_PROCESS, LOGIN_PROCESS, USER_PROCESS oder DEAD_PROCESS ist, wird getutid() den ersten Eintrag finden, dessen Feld ut_id ut->ut_id entspricht. getutline() sucht vorwärts ab der aktuellen Dateiposition in der utmp-Datei. Die Funktion überprüft Einträge deren Feld ut_type gleich USER_PROCESS oder LOGIN_PROCESS ist und gibt den ersten Eintrag zurück, dessen Feld ut_line ut->ut_line entspricht. pututline() schreibt eine utmp-Struktur ut in die utmp-Datei. Die Funktion benutzt getutid() um einen geeigneten Platz in der Datei zu finden um den neuen Eintrag einzufügen. Wenn die einen geeigneten Platz für ut nicht finden kann, hängt pututline() den neuen Eintrag an die Datei an.

RÜCKGABEWERT
getutent(), getutid() und getutline() geben einen Zeiger auf eine Struktur struct utmp zurück, die in <utmp.h> definiert ist.

DATEIEN

/var/run/utmp
    Datenbank der gerade angemeldeten Benutzer

/var/log/wtmp
    Datenbank der früheren Benutzeranmeldungen

KONFORM ZU
XPG 2, SVID 2, Linux FSSTND 1.2

SIEHE AUCH
utmp(5).