Go to the first, previous, next, last section, table of contents.


XPG User Accounting Database Functions

These functions, described in the X/Open Portability Guide, are declared in the header file `utmpx.h'.

Data Type: struct utmpx
The utmpx data structure contains at least the following members:

short int ut_type
Specifies the type of login; one of EMPTY, RUN_LVL, BOOT_TIME, OLD_TIME, NEW_TIME, INIT_PROCESS, LOGIN_PROCESS, USER_PROCESS or DEAD_PROCESS.
pid_t ut_pid
The process ID number of the login process.
char ut_line[]
The device name of the tty (without `/dev/').
char ut_id[]
The inittab ID of the process.
char ut_user[]
The user's login name.
struct timeval ut_tv
Time the entry was made. For entries of type OLD_TIME this is the time when the system clock changed, and for entries of type NEW_TIME this is the time the system clock was set to.

On the GNU system, struct utmpx is identical to struct utmp except for the fact that including `utmpx.h' does not make visible the declaration of struct exit_status.

The following macros are defined for use as values for the ut_type member of the utmpx structure. The values are integer constants and are, on the GNU system, identical to the definitions in `utmp.h'.

EMPTY
This macro is used to indicate that the entry contains no valid user accounting information.
RUN_LVL
This macro is used to identify the systems runlevel.
BOOT_TIME
This macro is used to identify the time of system boot.
OLD_TIME
This macro is used to identify the time when the system clock changed.
NEW_TIME
This macro is used to identify the time after the system changed.
INIT_PROCESS
This macro is used to identify a process spawned by the init process.
LOGIN_PROCESS
This macro is used to identify the session leader of a logged in user.
USER_PROCESS
This macro is used to identify a user process.
DEAD_PROCESS
This macro is used to identify a terminated process.

The size of the ut_line, ut_id and ut_user arrays can be found using the sizeof operator.

Function: void setutxent (void)
This function is similar to setutent. On the GNU system it is simply an alias for setutent.

Function: struct utmpx * getutxent (void)
The getutxent function is similar to getutent, but returns a pointer to a struct utmpx instead of struct utmp. On the GNU system it simply is an alias for getutent.

Function: void endutxent (void)
This function is similar to endutent. On the GNU system it is simply an alias for endutent.

Function: struct utmpx * getutxid (const struct utmpx *id)
This function is similar to getutid, but uses struct utmpx instead of struct utmp. On the GNU system it is simply an alias for getutid.

Function: struct utmpx * getutxline (const struct utmpx *line)
This function is similar to getutid, but uses struct utmpx instead of struct utmp. On the GNU system it is simply an alias for getutline.

Function: struct utmpx * pututxline (const struct utmpx *utmp)
The pututxline function provides functionality identical to pututline, but uses struct utmpx instead of struct utmp. On the GNU system pututxline is simply an alias for pututline.


Go to the first, previous, next, last section, table of contents.