From: naddy Date: Wed, 14 Jan 2015 21:14:27 +0000 (+0000) Subject: Switch drift file format to ppm for compatibility with the ntp.org X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=4b3d9004490dcb068a8bd4a20d1273754f80ed0c;p=openbsd Switch drift file format to ppm for compatibility with the ntp.org daemon. Old drift files will be interpreted as a minuscule adjustment and ntpd will proceed to rediscover the drift, like starting from zero on a newly installed machine. ok deraadt@ --- diff --git a/usr.sbin/ntpd/ntpd.c b/usr.sbin/ntpd/ntpd.c index 972849c8fd3..9796c34133e 100644 --- a/usr.sbin/ntpd/ntpd.c +++ b/usr.sbin/ntpd/ntpd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ntpd.c,v 1.85 2015/01/13 14:52:47 bcook Exp $ */ +/* $OpenBSD: ntpd.c,v 1.86 2015/01/14 21:14:27 naddy Exp $ */ /* * Copyright (c) 2003, 2004 Henning Brauer @@ -494,9 +494,10 @@ readfreq(void) if (adjfreq(NULL, ¤t) == -1) log_warn("adjfreq failed"); else if (current == 0) { - if (fscanf(fp, "%le", &d) == 1) + if (fscanf(fp, "%lf", &d) == 1) { + d /= 1e6; /* scale from ppm */ ntpd_adjfreq(d, 0); - else + } else log_warnx("can't read %s", DRIFTFILE); } fclose(fp); @@ -518,7 +519,7 @@ writefreq(double d) return 0; } - fprintf(fp, "%e\n", d); + fprintf(fp, "%.3f\n", d * 1e6); /* scale to ppm */ r = ferror(fp); if (fclose(fp) != 0 || r != 0) { if (warnonce) {