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 __unused1[20]; 37}; 38 39#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE) 40#define e_exit __e_exit 41#define e_termination __e_termination 42#endif 43 44#define EMPTY 0 45#define RUN_LVL 1 46#define BOOT_TIME 2 47#define NEW_TIME 3 48#define OLD_TIME 4 49#define INIT_PROCESS 5 50#define LOGIN_PROCESS 6 51#define USER_PROCESS 7 52#define DEAD_PROCESS 8 53 54#ifdef __cplusplus 55} 56#endif 57 58#endif 59