From a4c1b1f4fcfd9cd967bf326afbbada3d91f9da34 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Tue, 4 Dec 2018 19:04:09 +0000 Subject: Add an option for changing the allowed server clock drift. --- src/inspircd.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'src/inspircd.cpp') diff --git a/src/inspircd.cpp b/src/inspircd.cpp index aa3fb9612..7e299700b 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -644,14 +644,15 @@ void InspIRCd::Run() } #endif - /* Allow a buffer of two seconds drift on this so that ntpdate etc dont harass admins */ - if (TIME.tv_sec < OLDTIME - 2) + if (Config->TimeSkipWarn) { - SNO->WriteToSnoMask('a', "\002EH?!\002 -- Time is flowing BACKWARDS in this dimension! Clock drifted backwards %lu secs.", (unsigned long)(OLDTIME-TIME.tv_sec)); - } - else if (TIME.tv_sec > OLDTIME + 2) - { - SNO->WriteToSnoMask('a', "\002EH?!\002 -- Time is jumping FORWARDS! Clock skipped %lu secs.", (unsigned long)(TIME.tv_sec - OLDTIME)); + time_t timediff = TIME.tv_sec - OLDTIME; + + if (timediff > Config->TimeSkipWarn) + SNO->WriteToSnoMask('a', "\002Performance warning!\002 Server clock jumped forwards by %lu seconds!", timediff); + + else if (timediff < -Config->TimeSkipWarn) + SNO->WriteToSnoMask('a', "\002Performance warning!\002 Server clock jumped backwards by %lu seconds!", labs(timediff)); } OLDTIME = TIME.tv_sec; -- cgit v1.3.1-10-gc9f91