summaryrefslogtreecommitdiff
path: root/crypto
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2025-10-31 13:04:51 -0400
committerEd Maste <emaste@FreeBSD.org>2025-10-31 13:08:45 -0400
commitce03706ab26c5770150f1ef96aca36b69baa535f (patch)
treea19aea3f19f922fa77bbc42f57394d5334cc0879 /crypto
parentd787ce1927bc7662b869cf2bc5e280c3c524dff5 (diff)
openssh: Handle localtime_r() failure by return "UNKNOWN-TIME"
Apply openssh-portable commit 8b6c1f402feb by deraadt@openbsd.org Obtained from: openssh-portable PR: 288773 Reported by: wosch Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'crypto')
-rw-r--r--crypto/openssh/misc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/crypto/openssh/misc.c b/crypto/openssh/misc.c
index dd0bd032ae3c..1ed71646ebe4 100644
--- a/crypto/openssh/misc.c
+++ b/crypto/openssh/misc.c
@@ -2535,8 +2535,10 @@ format_absolute_time(uint64_t t, char *buf, size_t len)
time_t tt = t > SSH_TIME_T_MAX ? SSH_TIME_T_MAX : t;
struct tm tm;
- localtime_r(&tt, &tm);
- strftime(buf, len, "%Y-%m-%dT%H:%M:%S", &tm);
+ if (localtime_r(&tt, &tm) == NULL)
+ strlcpy(buf, "UNKNOWN-TIME", len);
+ else
+ strftime(buf, len, "%Y-%m-%dT%H:%M:%S", &tm);
}
/*