diff options
Diffstat (limited to 'libutil')
-rw-r--r-- | libutil/logout.c | 9 | ||||
-rw-r--r-- | libutil/logwtmp.c | 9 |
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)); } |