From: dtucker@openbsd.org Date: Mon, 12 Jul 2021 06:08:57 +0000 (+0000) Subject: upstream: Use existing format_absolute_time() function when X-Git-Tag: V_8_7_P1~112 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c29b387cd64a57b0ec8ae7d2c8d02789d88fcc3;p=thirdparty%2Fopenssh-portable.git upstream: Use existing format_absolute_time() function when printing cert validity instead of doing it inline. Part of bz#3329. OpenBSD-Commit-ID: a13d4e3c4f59644c23745eb02a09b2a4e717c00c --- diff --git a/sshkey.c b/sshkey.c index c8e9a6adb..514829299 100644 --- a/sshkey.c +++ b/sshkey.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sshkey.c,v 1.117 2021/07/05 01:21:07 dtucker Exp $ */ +/* $OpenBSD: sshkey.c,v 1.118 2021/07/12 06:08:57 dtucker Exp $ */ /* * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. * Copyright (c) 2008 Alexander von Gernler. All rights reserved. @@ -3166,28 +3166,16 @@ size_t sshkey_format_cert_validity(const struct sshkey_cert *cert, char *s, size_t l) { char from[32], to[32], ret[128]; - time_t tt; - struct tm *tm; *from = *to = '\0'; if (cert->valid_after == 0 && cert->valid_before == 0xffffffffffffffffULL) return strlcpy(s, "forever", l); - if (cert->valid_after != 0) { - /* XXX revisit INT_MAX in 2038 :) */ - tt = cert->valid_after > INT_MAX ? - INT_MAX : cert->valid_after; - tm = localtime(&tt); - strftime(from, sizeof(from), "%Y-%m-%dT%H:%M:%S", tm); - } - if (cert->valid_before != 0xffffffffffffffffULL) { - /* XXX revisit INT_MAX in 2038 :) */ - tt = cert->valid_before > INT_MAX ? - INT_MAX : cert->valid_before; - tm = localtime(&tt); - strftime(to, sizeof(to), "%Y-%m-%dT%H:%M:%S", tm); - } + if (cert->valid_after != 0) + format_absolute_time(cert->valid_after, from, sizeof(from)); + if (cert->valid_before != 0xffffffffffffffffULL) + format_absolute_time(cert->valid_before, to, sizeof(to)); if (cert->valid_after == 0) snprintf(ret, sizeof(ret), "before %s", to);