master
 1#ifndef _UTMPX_H
 2#define _UTMPX_H
 3
 4#ifdef __cplusplus
 5extern "C" {
 6#endif
 7
 8#include <features.h>
 9
10#define __NEED_pid_t
11#define __NEED_time_t
12#define __NEED_suseconds_t
13#define __NEED_struct_timeval
14
15#include <bits/alltypes.h>
16
17struct utmpx {
18	short ut_type;
19	short __ut_pad1;
20	pid_t ut_pid;
21	char ut_line[32];
22	char ut_id[4];
23	char ut_user[32];
24	char ut_host[256];
25	struct {
26		short __e_termination;
27		short __e_exit;
28	} ut_exit;
29#if __BYTE_ORDER == 1234
30	int ut_session, __ut_pad2;
31#else
32	int __ut_pad2, ut_session;
33#endif
34	struct timeval ut_tv;
35	unsigned ut_addr_v6[4];
36	char __unused[20];
37};
38
39void          endutxent(void);
40struct utmpx *getutxent(void);
41struct utmpx *getutxid(const struct utmpx *);
42struct utmpx *getutxline(const struct utmpx *);
43struct utmpx *pututxline(const struct utmpx *);
44void          setutxent(void);
45
46#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)
47#define e_exit __e_exit
48#define e_termination __e_termination
49void updwtmpx(const char *, const struct utmpx *);
50int utmpxname(const char *);
51#endif
52
53#define EMPTY           0
54#define RUN_LVL         1
55#define BOOT_TIME       2
56#define NEW_TIME        3
57#define OLD_TIME        4
58#define INIT_PROCESS    5
59#define LOGIN_PROCESS   6
60#define USER_PROCESS    7
61#define DEAD_PROCESS    8
62
63#ifdef __cplusplus
64}
65#endif
66
67#endif