fix namespace violations in utmpx.h
authorRich Felker <dalias@aerifal.cx>
Thu, 9 Jan 2014 00:36:29 +0000 (19:36 -0500)
committerRich Felker <dalias@aerifal.cx>
Thu, 9 Jan 2014 00:36:29 +0000 (19:36 -0500)
include/utmp.h
include/utmpx.h

index b357ac8c4351461c97a404ddbaafe6b5086afcfd..e9ba23e2de059f832e1bf8297dfe4987b3b82aca 100644 (file)
@@ -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);
index fd5f515a10ff599e9f60fbbae3913a74c9c003a7..f0c3b01370c7b5a4b87bd6010929e298993d1924 100644 (file)
@@ -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