From adaca0ff19308f2bb2c0e2eb3247ea778bfe6549 Mon Sep 17 00:00:00 2001 From: Miroslav Lichvar Date: Thu, 2 May 2024 13:20:54 +0200 Subject: [PATCH] reference: switch is_leap_close() from time_t to double Avoid undefined behavior in the timestamp conversion from double to time_t in REF_IsLeapSecondClose() with NTP sources configured with a large offset correction. --- reference.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference.c b/reference.c index ffe290c..009d7c9 100644 --- a/reference.c +++ b/reference.c @@ -1291,7 +1291,7 @@ REF_DisableLocal(void) #define LEAP_SECOND_CLOSE 5 static int -is_leap_close(time_t t) +is_leap_close(double t) { return leap_when != 0 && t >= leap_when - LEAP_SECOND_CLOSE && t < leap_when + LEAP_SECOND_CLOSE;