summaryrefslogtreecommitdiff
path: root/miscutils/last.c
diff options
context:
space:
mode:
author"Vladimir N. Oleynik"2006-01-31 09:35:45 +0000
committer"Vladimir N. Oleynik"2006-01-31 09:35:45 +0000
commitdd14ca082a6e91432993e4d6f31ae75bed58df6e (patch)
tree9dfa5bd6b7afd03850341ec4aaa82de8f202b742 /miscutils/last.c
parent4ccd2b46975df7b06b9d162fac4ac06dba0bdad4 (diff)
downloadbusybox-dd14ca082a6e91432993e4d6f31ae75bed58df6e.zip
busybox-dd14ca082a6e91432993e4d6f31ae75bed58df6e.tar.gz
protect potential overflow for x86_64
Diffstat (limited to 'miscutils/last.c')
-rw-r--r--miscutils/last.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/miscutils/last.c b/miscutils/last.c
index d7ce5e77..72386ea 100644
--- a/miscutils/last.c
+++ b/miscutils/last.c
@@ -47,6 +47,7 @@ extern int last_main(int argc, char **argv)
{
struct utmp ut;
int n, file = STDIN_FILENO;
+ time_t t_tmp;
if (argc > 1) {
bb_show_usage();
@@ -98,9 +99,9 @@ extern int last_main(int argc, char **argv)
break;
}
}
-
+ t_tmp = (time_t)ut.ut_tv.tv_sec;
printf("%-10s %-14s %-18s %-12.12s\n", ut.ut_user, ut.ut_line, ut.ut_host,
- ctime((time_t *)&(ut.ut_tv.tv_sec)) + 4);
+ ctime(&t_tmp) + 4);
}
bb_fflush_stdout_and_exit(EXIT_SUCCESS);