17777dab0Sopenharmony_ci#ifndef _UTMPX_H
27777dab0Sopenharmony_ci#define _UTMPX_H
37777dab0Sopenharmony_ci
47777dab0Sopenharmony_ci#ifdef __cplusplus
57777dab0Sopenharmony_ciextern "C" {
67777dab0Sopenharmony_ci#endif
77777dab0Sopenharmony_ci
87777dab0Sopenharmony_ci#include <features.h>
97777dab0Sopenharmony_ci
107777dab0Sopenharmony_ci#define __NEED_pid_t
117777dab0Sopenharmony_ci#define __NEED_time_t
127777dab0Sopenharmony_ci#define __NEED_suseconds_t
137777dab0Sopenharmony_ci#define __NEED_struct_timeval
147777dab0Sopenharmony_ci
157777dab0Sopenharmony_ci#include <bits/alltypes.h>
167777dab0Sopenharmony_ci
177777dab0Sopenharmony_cistruct utmpx {
187777dab0Sopenharmony_ci	short ut_type;
197777dab0Sopenharmony_ci	short __ut_pad1;
207777dab0Sopenharmony_ci	pid_t ut_pid;
217777dab0Sopenharmony_ci	char ut_line[32];
227777dab0Sopenharmony_ci	char ut_id[4];
237777dab0Sopenharmony_ci	char ut_user[32];
247777dab0Sopenharmony_ci	char ut_host[256];
257777dab0Sopenharmony_ci	struct {
267777dab0Sopenharmony_ci		short __e_termination;
277777dab0Sopenharmony_ci		short __e_exit;
287777dab0Sopenharmony_ci	} ut_exit;
297777dab0Sopenharmony_ci#if __BYTE_ORDER == 1234
307777dab0Sopenharmony_ci	int ut_session, __ut_pad2;
317777dab0Sopenharmony_ci#else
327777dab0Sopenharmony_ci	int __ut_pad2, ut_session;
337777dab0Sopenharmony_ci#endif
347777dab0Sopenharmony_ci	struct timeval ut_tv;
357777dab0Sopenharmony_ci	unsigned ut_addr_v6[4];
367777dab0Sopenharmony_ci	char __unused1[20];
377777dab0Sopenharmony_ci};
387777dab0Sopenharmony_ci
397777dab0Sopenharmony_ci#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)
407777dab0Sopenharmony_ci#define e_exit __e_exit
417777dab0Sopenharmony_ci#define e_termination __e_termination
427777dab0Sopenharmony_ci#endif
437777dab0Sopenharmony_ci
447777dab0Sopenharmony_ci#define EMPTY           0
457777dab0Sopenharmony_ci#define RUN_LVL         1
467777dab0Sopenharmony_ci#define BOOT_TIME       2
477777dab0Sopenharmony_ci#define NEW_TIME        3
487777dab0Sopenharmony_ci#define OLD_TIME        4
497777dab0Sopenharmony_ci#define INIT_PROCESS    5
507777dab0Sopenharmony_ci#define LOGIN_PROCESS   6
517777dab0Sopenharmony_ci#define USER_PROCESS    7
527777dab0Sopenharmony_ci#define DEAD_PROCESS    8
537777dab0Sopenharmony_ci
547777dab0Sopenharmony_ci#ifdef __cplusplus
557777dab0Sopenharmony_ci}
567777dab0Sopenharmony_ci#endif
577777dab0Sopenharmony_ci
587777dab0Sopenharmony_ci#endif
59