diff options
-rw-r--r-- | include/utmp.h | 3 | ||||
-rw-r--r-- | include/utmpx.h | 14 |
2 files changed, 12 insertions, 5 deletions
diff --git a/include/utmp.h b/include/utmp.h index b357ac8c..e9ba23e2 100644 --- a/include/utmp.h +++ b/include/utmp.h @@ -10,6 +10,7 @@ extern "C" { #define ACCOUNTING 9 #define UT_NAMESIZE 32 #define UT_HOSTSIZE 256 +#define UT_LINESIZE 32 struct lastlog { time_t ll_time; @@ -22,6 +23,8 @@ struct lastlog { #define ut_addr ut_addr_v6[0] #define utmp utmpx #define utmpname(x) (-1) +#define e_exit __e_exit +#define e_termination __e_termination void endutent(void); struct utmp *getutent(void); diff --git a/include/utmpx.h b/include/utmpx.h index fd5f515a..f0c3b013 100644 --- a/include/utmpx.h +++ b/include/utmpx.h @@ -5,6 +5,8 @@ extern "C" { #endif +#include <features.h> + #define __NEED_pid_t #define __NEED_time_t #define __NEED_suseconds_t @@ -12,19 +14,17 @@ extern "C" { #include <bits/alltypes.h> -#define UT_LINESIZE 32 - struct utmpx { short ut_type; pid_t ut_pid; - char ut_line[UT_LINESIZE]; + char ut_line[32]; char ut_id[4]; char ut_user[32]; char ut_host[256]; struct { - short e_termination; - short e_exit; + short __e_termination; + short __e_exit; } ut_exit; long ut_session; struct timeval ut_tv; @@ -39,7 +39,11 @@ struct utmpx *getutxline(const struct utmpx *); struct utmpx *pututxline(const struct utmpx *); void setutxent(void); +#if defined(_BSD_SOURCE) | defined(_GNU_SOURCE) +#define e_exit __e_exit +#define e_termination __e_termination void updwtmpx(const char *, const struct utmpx *); +#endif #define EMPTY 0 #define RUN_LVL 1 |