Browse Source

don't call settimeofday() when the offset is smaller than 180 seconds,

adjtime() will fix that fast enough, from discussion in theo's living room
ok mcbride beck
OPENBSD_3_7
henning 20 years ago
parent
commit
2f6447073a
2 changed files with 7 additions and 2 deletions
  1. +5
    -1
      src/usr.sbin/ntpd/ntpd.c
  2. +2
    -1
      src/usr.sbin/ntpd/ntpd.h

+ 5
- 1
src/usr.sbin/ntpd/ntpd.c View File

@ -1,4 +1,4 @@
/* $OpenBSD: ntpd.c,v 1.18 2004/09/18 20:01:38 henning Exp $ */
/* $OpenBSD: ntpd.c,v 1.19 2004/09/18 20:27:57 henning Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@ -314,6 +314,10 @@ ntpd_settime(double d)
char buf[80];
time_t tval;
/* if the offset is small, don't call settimeofday */
if (d < SETTIME_MIN_OFFSET && d > -SETTIME_MIN_OFFSET)
return;
d_to_tv(d, &tv);
if (gettimeofday(&curtime, NULL) == -1)
log_warn("gettimeofday");


+ 2
- 1
src/usr.sbin/ntpd/ntpd.h View File

@ -1,4 +1,4 @@
/* $OpenBSD: ntpd.h,v 1.38 2004/09/18 20:01:38 henning Exp $ */
/* $OpenBSD: ntpd.h,v 1.39 2004/09/18 20:27:57 henning Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@ -48,6 +48,7 @@
#define QUERYTIME_MAX 15 /* single query might take n secs max */
#define OFFSET_ARRAY_SIZE 8
#define SETTIME_MIN_OFFSET 180 /* min offset for settime at start */
enum client_state {
STATE_NONE,


Loading…
Cancel
Save