X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=src%2Ftimesync%2Ftimesyncd-manager.c;h=60f39c638d3bdd715cf6ca0cb7a720a392b19803;hb=07610e108e2d3f046da683a3a69c4d5cccd2cf8e;hp=bb8fcca1df4c0fb1f886c7c60b1fbf56bb363ff8;hpb=874ff7bf4d6fe693542209f127d23cd89adc499b;p=elogind.git diff --git a/src/timesync/timesyncd-manager.c b/src/timesync/timesyncd-manager.c index bb8fcca1d..60f39c638 100644 --- a/src/timesync/timesyncd-manager.c +++ b/src/timesync/timesyncd-manager.c @@ -574,7 +574,8 @@ static int manager_receive_response(sd_event_source *source, int fd, uint32_t re return manager_connect(m); } - if (NTP_FIELD_LEAP(ntpmsg.field) == NTP_LEAP_NOTINSYNC) { + if (NTP_FIELD_LEAP(ntpmsg.field) == NTP_LEAP_NOTINSYNC || + ntpmsg.stratum == 0 || ntpmsg.stratum >= 16) { log_debug("Server is not synchronized. Disconnecting."); return manager_connect(m); } @@ -1111,9 +1112,7 @@ int manager_new(Manager **ret) { if (r < 0) return r; - r = manager_network_read_link_servers(m); - if (r < 0) - return r; + manager_network_read_link_servers(m); *ret = m; m = NULL;