summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-11-23 13:17:18 +0000
committerMike Frysinger <vapier@gentoo.org>2005-11-23 13:17:18 +0000
commit164c1d8ffb2b508675ec56292e3b984c91dc7be4 (patch)
tree688ff70171f5dc6d456b0ee6471255ba48de54db
parentdf052df931ff7a0382b901b8fb7e3cf6918a334b (diff)
import 32/64 bit compat support from glibc
-rw-r--r--libutil/logout.c9
-rw-r--r--libutil/logwtmp.c9
2 files changed, 18 insertions, 0 deletions
diff --git a/libutil/logout.c b/libutil/logout.c
index 165077e1d..08094d41d 100644
--- a/libutil/logout.c
+++ b/libutil/logout.c
@@ -51,7 +51,16 @@ logout (const char *line)
memset (ut->ut_host, 0, sizeof ut->ut_host);
#endif
#if _HAVE_UT_TV - 0
+# if __WORDSIZE_COMPAT32 == 0
gettimeofday (&ut->ut_tv, NULL);
+# else
+ {
+ struct timeval tv;
+ gettimeofday (&tv, NULL);
+ ut->ut_tv.tv_sec = tv.tv_sec;
+ ut->ut_tv.tv_usec = tv.tv_usec;
+ }
+# endif
#else
time (&ut->ut_time);
#endif
diff --git a/libutil/logwtmp.c b/libutil/logwtmp.c
index 85721a72d..c6a8530ca 100644
--- a/libutil/logwtmp.c
+++ b/libutil/logwtmp.c
@@ -37,7 +37,16 @@ void logwtmp (const char *line, const char *name, const char *host)
strncpy(lutmp.ut_line, line, sizeof(lutmp.ut_line)-1);
strncpy(lutmp.ut_name, name, sizeof(lutmp.ut_name)-1);
strncpy(lutmp.ut_host, host, sizeof(lutmp.ut_host)-1);
+#if __WORDSIZE_COMPAT32 == 0
gettimeofday(&(lutmp.ut_tv), NULL);
+#else
+ {
+ struct timeval tv;
+ gettimeofday (&tv, NULL);
+ lutmp.ut_tv.tv_sec = tv.tv_sec;
+ lutmp.ut_tv.tv_usec = tv.tv_usec;
+ }
+#endif
updwtmp(_PATH_WTMP, &(lutmp));
}