From 53438c510bc06ca4ca0e12e41dc8c77c8dde5345 Mon Sep 17 00:00:00 2001 From: Pierre Fersing Date: Tue, 20 Oct 2015 11:27:41 +0200 Subject: [PATCH] Fix NTP kerninfo offset/estimated error scaling --- src/ntpd.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/ntpd.c b/src/ntpd.c index 540eb788..8e00734c 100644 --- a/src/ntpd.c +++ b/src/ntpd.c @@ -901,6 +901,7 @@ static int ntpd_read (void) int status; int i; + double tscale = 1e-6; ik = NULL; ik_num = 0; @@ -929,13 +930,13 @@ static int ntpd_read (void) " pll offset = %.8f\n" " pll frequency = %.8f\n" /* drift compensation */ " est error = %.8f\n", - ntpd_read_fp (ik->offset), + (int32_t)ntohl(ik->offset) * tscale, ntpd_read_fp (ik->freq), - ntpd_read_fp (ik->esterror)); + (u_long)ntohl(ik->esterror) * 1e-6); ntpd_submit ("frequency_offset", "loop", ntpd_read_fp (ik->freq)); - ntpd_submit ("time_offset", "loop", ntpd_read_fp (ik->offset)); - ntpd_submit ("time_offset", "error", ntpd_read_fp (ik->esterror)); + ntpd_submit ("time_offset", "loop", (int32_t)ntohl(ik->offset) * tscale); + ntpd_submit ("time_offset", "error", (u_long)ntohl(ik->esterror) * 1e-6); free (ik); ik = NULL; -- 2.30.2