Miroslav Lichvar
4e26f48781
manual: check offset sanity
2015-04-07 15:23:47 +02:00
Miroslav Lichvar
aec97397e8
local: check offset sanity before accumulation
...
Don't accept an offset that points to time before 1970 or outside the
interval to which is mapped NTP time.
2015-04-07 15:23:47 +02:00
Miroslav Lichvar
183a648d01
local: clamp frequency offset
...
Don't allow frequency offset larger than 50%, the tracked time must not
stop or run backwards.
2015-04-07 14:13:41 +02:00
Miroslav Lichvar
27f8ad7fd1
cmdmon: fix handling of client access command
...
Rework the loop to limit the number of iterations to MAX_CLIENT_ACCESSES
and not waste CPU.
2015-04-07 14:07:40 +02:00
Miroslav Lichvar
a79fbef21e
ntp: set maximum allowed polling interval
...
To have an upper bound don't allow polling interval be larger than 24
(194 days).
2015-04-07 14:06:53 +02:00
Miroslav Lichvar
565976acbe
doc: document smoothtime directive
2015-04-07 12:38:37 +02:00
Miroslav Lichvar
857d51ea8e
test: extend 113-leapsecond for leap smear
2015-04-07 10:51:07 +02:00
Miroslav Lichvar
ba85544611
ntp: smear leap second with slewing mode and smoothing
...
Suppress leap second in packets sent to clients when smoothing and leap
second slew mode are enabled.
2015-04-07 10:45:32 +02:00
Miroslav Lichvar
293806d52d
test: add 119-smoothtime
2015-04-07 10:42:32 +02:00
Miroslav Lichvar
7f45eb7957
ntp: add server time smoothing
...
Time smoothing determines an offset that needs to be applied to the
cooked time to make it smooth for external observers. Observed offset
and frequency change slowly and there are no discontinuities. This can
be used on an NTP server to make it easier for the clients to track the
time and keep their clocks close together even when large offset or
frequency corrections are applied to the server's clock (e.g. after
being offline for longer time).
Accumulated offset and frequency are smoothed out in three stages. In
the first stage, the frequency is changed at a constant rate (wander) up
to a maximum, in the second stage the frequency stays at the maximum for
as long as needed and in the third stage the frequency is brought back
to zero.
Time smoothing is configured by the smoothtime directive. It takes two
arguments, maximum frequency offset and maximum wander. It's disabled by
default.
2015-04-07 10:42:26 +02:00
Miroslav Lichvar
78283dd822
test: fix source selection check
...
The chronyd log message changed from "no reachable sources" to "no
selectable sources" in 8f062454
.
2015-04-02 16:43:25 +02:00
Miroslav Lichvar
bbdf708d1a
reference: update our reference time on slew
2015-03-31 11:51:03 +02:00
Miroslav Lichvar
08195d7e41
sourcestats: fix updating of slope on slew with large residual freq
2015-03-27 10:37:55 +01:00
Miroslav Lichvar
9ff0dbb7a4
test: make 009-sourceselection more reliable
2015-03-27 10:37:55 +01:00
Miroslav Lichvar
6ba97f9161
test: add 118-maxdelay
2015-03-27 10:37:55 +01:00
Miroslav Lichvar
4eca60e7dc
test: add 117-fallbackdrift
2015-03-27 10:37:55 +01:00
Miroslav Lichvar
2af6f8cf78
reference: schedule fallback drift even when synchronized
...
After update to NTPv4 the synchronized status doesn't change when
sources are unreachable, start fallbackdrift timeout on reference update
too.
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
d9a84d24cf
reference: don't limit fallback drift offset
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
09ce631e21
reference: fix initial fallback drift setting
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
f93f2a15af
ntp: check also reference timestamp in test3
...
Zero reference timestamp doesn't pass test7, but only before we reach
the next NTP era.
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
47839b7701
cmdmon: remove obsolete request/reply in candm.h
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
41e99afe54
cmdmon: fix noselect flag setting in source data
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
80af04040a
ntp: change default maxdelay to 3 seconds
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
3caa1e2f71
doc: document leapsecmode directive
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
ddbbe30b9e
test: extend 113-leapsecond to test new leap modes
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
802a98e7fc
reference: use step leap mode by default if system is not supported
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
bb21841659
reference: update leap status right after leap second
...
Don't wait for the next update, there may not be any before the end of
the day.
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
3f9691baff
reference: don't report synchronized status during leap second
...
During inserted leap second the time is invalid, reply with
unsynchronized status to avoid confusing clients that are not smart
enough to ignore measurements close to leap second.
2015-03-27 10:37:54 +01:00
Miroslav Lichvar
f8db832491
reference: add new leap second handling modes
...
In addition to the system driver handling add new modes to slew or step
the system clock for leap second, or ignore it completely. This can be
configured with leapsecmode directive.
2015-03-27 10:37:48 +01:00
Miroslav Lichvar
c68a92ba80
sys: avoid syslog message when leap bits are not changed
...
After leap second the kernel removes STA_INS and STA_DEL bits from the
adjtimex status automatically, don't report a change when clearing the
bits.
2015-03-25 15:32:05 +01:00
Miroslav Lichvar
e5cf4645fe
refclock: start refid numbering at zero
...
Commit d92583ed
inadvertently changed the refclock refid numbering to
start from 1 instead of 0. Restore the original numbering.
2015-02-17 10:33:03 +01:00
Miroslav Lichvar
fad97e12da
ntp: fix maxdelayratio test
...
This was broken in commit 8fbfe55e
.
2015-01-29 12:49:02 +01:00
Miroslav Lichvar
2f6152a580
test: require latest clknetsim
2015-01-28 09:09:08 +01:00
Miroslav Lichvar
7446da8c9b
doc: update NEWS
2015-01-27 15:03:57 +01:00
Miroslav Lichvar
00eecd3a1d
examples: add chrony.conf.example1
...
This is a minimal example.
2015-01-27 15:03:57 +01:00
Miroslav Lichvar
46a178cf48
examples: update configuration examples
2015-01-27 15:03:57 +01:00
Miroslav Lichvar
ddcc28f726
examples: rename chrony.conf.example to chrony.conf.example3
...
Order the examples by complexity.
2015-01-27 15:03:57 +01:00
Miroslav Lichvar
04f86aa2ff
doc: update chrony.conf man page
2015-01-27 15:03:57 +01:00
Miroslav Lichvar
72f0f99ac3
doc: update chrony.texi
2015-01-27 14:52:32 +01:00
Miroslav Lichvar
c8fe0fe992
test: add compilation test
...
Check if chrony can be compiled in various combination of disabled
features. This should fail if there are missing functions in stubs.c.
2015-01-26 12:16:17 +01:00
Miroslav Lichvar
be5c3b0b90
clientlog: remove unused code
2015-01-26 11:38:02 +01:00
Miroslav Lichvar
5194101c8b
cmdmon: bind to loopback interface by default
2015-01-26 10:40:15 +01:00
Miroslav Lichvar
0ee27c6ef6
cmdmon: use system values for loopback addresses
2015-01-26 10:40:15 +01:00
Miroslav Lichvar
46a0aab6b9
test: require latest clknetsim
2015-01-26 10:40:15 +01:00
Miroslav Lichvar
55fb7abc39
contrib: remove DNSchrony from distribution
...
With the new pool directive chronyd is now able to replace unreachable
NTP servers with newly resolved addresses automatically. Starting
without DNS wasn't a problem since 1.25.
2015-01-26 10:39:58 +01:00
Miroslav Lichvar
407e47b306
ntp: remove unnecessary check in read_from_socket()
2015-01-22 15:38:41 +01:00
Miroslav Lichvar
4e54770f18
create NTP and cmdmon sockets after root drop
...
This is now possible as we keep the cap_net_bind_service capability.
2015-01-22 15:38:39 +01:00
Miroslav Lichvar
f9a31f36a0
ntp: keep all length constants signed
...
This should make it harder to accidentally create an unsafe comparison
between signed and unsigned values.
2015-01-22 14:37:35 +01:00
Miroslav Lichvar
547272e66c
ntp: use different value for invalid socket in ntp_core
...
This should make it easier to see invalid sockets leaking from ntp_core
to ntp_io.
2015-01-07 16:14:29 +01:00
Miroslav Lichvar
35e11ffe60
ntp: fix length check of NTPv4 extension fields
...
Don't allow extension fields shorter than 16 bytes.
2015-01-07 14:12:29 +01:00