From: Miroslav Lichvar Date: Tue, 9 Sep 2014 12:02:00 +0000 (+0200) Subject: ntp: print warning 10 years before supported time ends X-Git-Tag: 1.31~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e1accce49868b448cdebe9a03db3f87c63367f83;p=thirdparty%2Fchrony.git ntp: print warning 10 years before supported time ends --- diff --git a/ntp_core.c b/ntp_core.c index 53858f69..ebb6a7c9 100644 --- a/ntp_core.c +++ b/ntp_core.c @@ -262,6 +262,9 @@ do_size_checks(void) static void do_time_checks(void) { + struct timeval now; + time_t warning_advance = 3600 * 24 * 365 * 10; /* 10 years */ + #ifdef HAVE_LONG_TIME_T /* Check that time before NTP_ERA_SPLIT underflows correctly */ @@ -278,6 +281,16 @@ do_time_checks(void) tv1.tv_sec + (1ULL << 32) - 1 == tv2.tv_sec; assert(r); + + LCL_ReadRawTime(&now); + if (tv2.tv_sec - now.tv_sec < warning_advance) + LOG(LOGS_WARN, LOGF_NtpCore, "Assumed NTP time ends at %s!", + UTI_TimeToLogForm(tv2.tv_sec)); +#else + LCL_ReadRawTime(&now); + if (now.tv_sec > 0x7fffffff - warning_advance) + LOG(LOGS_WARN, LOGF_NtpCore, "System time ends at %s!", + UTI_TimeToLogForm(0x7fffffff)); #endif }