On Mon, Dec 15, 2014 at 03:21:24PM +0100, Otto Moerbeek wrote:
> On Tue, Dec 16, 2014 at 01:04:05AM +1100, Jonathan Gray wrote:
>
> > So now time is printed by default afl has found that time_t values
> > such as -9223372035438150153 will cause localtime() to fail and
> > return NULL. strftime() can't deal with this and will at some point
> > dereference tm without checking if it is NULL causing a crash.
>
> I'd pefer to print the time_t value if it cannot be converted.
ignore this, I was looking at old src.
>
> -Otto
>
> > Index: ktrstruct.c
> > ===================================================================
> > RCS file: /cvs/src/usr.bin/kdump/ktrstruct.c,v
> > retrieving revision 1.8
> > diff -u -p -r1.8 ktrstruct.c
> > --- ktrstruct.c 15 Dec 2014 01:48:54 -0000 1.8
> > +++ ktrstruct.c 15 Dec 2014 13:56:03 -0000
> > @@ -146,8 +146,10 @@ print_time(time_t t, int relative, int h
> >
> > if (!relative) {
> > tm = localtime(&t);
> > - (void)strftime(timestr, sizeof(timestr), TIME_FORMAT, tm);
> > - printf("<\"%s\">", timestr);
> > + if (tm != NULL) {
> > + (void)strftime(timestr, sizeof(timestr), TIME_FORMAT,
> > tm);
> > + printf("<\"%s\">", timestr);
> > + }
> > }
> > }
> >