diff options
author | 2014-12-16 03:19:23 +0000 | |
---|---|---|
committer | 2014-12-16 03:19:23 +0000 | |
commit | 40f07bdcf47daace717819c51e706e5a063bacf2 (patch) | |
tree | aff1b189d0ed2dc4830c8c0530d7eff1987c32c0 | |
parent | When a numerical condition errors out after consuming at least one (diff) | |
download | wireguard-openbsd-40f07bdcf47daace717819c51e706e5a063bacf2.tar.xz wireguard-openbsd-40f07bdcf47daace717819c51e706e5a063bacf2.zip |
Don't display formatted time if localtime() fails.
Avoids a crash in strftime() found with the afl fuzzer.
ok guenther@
-rw-r--r-- | usr.bin/kdump/ktrstruct.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/usr.bin/kdump/ktrstruct.c b/usr.bin/kdump/ktrstruct.c index 03910666477..b218ee2027e 100644 --- a/usr.bin/kdump/ktrstruct.c +++ b/usr.bin/kdump/ktrstruct.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ktrstruct.c,v 1.8 2014/12/15 01:48:54 guenther Exp $ */ +/* $OpenBSD: ktrstruct.c,v 1.9 2014/12/16 03:19:23 jsg Exp $ */ /*- * Copyright (c) 1988, 1993 @@ -146,8 +146,11 @@ print_time(time_t t, int relative, int have_subsec) 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); + } } } |