From: Dmitry V. Levin Date: Sat, 19 Apr 2008 23:47:47 +0000 (+0000) Subject: 2008-04-19 Dmitry V. Levin X-Git-Tag: v4.5.18~85 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b838b1e0b9b3f6077acdf9a8cb2860b6fd1be424;p=strace 2008-04-19 Dmitry V. Levin * file.c [LINUXSPARC] (printstatsol): Fix sprinttime() invocation. The sprinttime() function takes a time_t argument, but timestruct_t argument was given. Signed-off-by: Mike Frysinger --- diff --git a/ChangeLog b/ChangeLog index 8fd4063e..e59b000f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2008-04-19 Dmitry V. Levin + * file.c [LINUXSPARC] (printstatsol): Fix sprinttime() + invocation. The sprinttime() function takes a time_t argument, + but timestruct_t argument was given. + Signed-off-by: Mike Frysinger + * file.c (sprinttime): Check localtime() return value, to avoid potential NULL dereference due to invalid time structures. Signed-off-by: Harald van Dijk diff --git a/file.c b/file.c index 7128523a..25fb5316 100644 --- a/file.c +++ b/file.c @@ -723,9 +723,7 @@ struct solstat { }; static void -printstatsol(tcp, addr) -struct tcb *tcp; -long addr; +printstatsol(struct tcb *tcp, long addr) { struct solstat statbuf; @@ -767,9 +765,9 @@ long addr; break; } if (!abbrev(tcp)) { - tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime)); - tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime)); - tprintf("st_ctime=%s}", sprinttime(statbuf.st_ctime)); + tprintf("st_atime=%s, ", sprinttime(statbuf.st_atime.tv_sec)); + tprintf("st_mtime=%s, ", sprinttime(statbuf.st_mtime.tv_sec)); + tprintf("st_ctime=%s}", sprinttime(statbuf.st_ctime.tv_sec)); } else tprintf("...}");