On Fri, Mar 06, 2015 at 05:22:22PM -0800, Shawn Landden wrote: > it is trivial to fall back to our own timestamp > > v2: use now() > --- > src/timedate/timedated.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c > index 88d57e9..75b1f1b 100644 > --- a/src/timedate/timedated.c > +++ b/src/timedate/timedated.c > @@ -551,6 +551,9 @@ static int method_set_time(sd_bus *bus, sd_bus_message > *m, void *userdata, sd_bu > if (c->use_ntp) > return sd_bus_error_setf(error, > BUS_ERROR_AUTOMATIC_TIME_SYNC_ENABLED, "Automatic time synchronization is > enabled"); > > + /* this only gets used if dbus does not provide a timestamp */ > + start = now(CLOCK_MONOTONIC); > + > r = sd_bus_message_read(m, "xbb", &utc, &relative, &interactive); > if (r < 0) > return r; > @@ -592,7 +595,7 @@ static int method_set_time(sd_bus *bus, sd_bus_message > *m, void *userdata, sd_bu > r = sd_bus_message_get_monotonic_usec(m, &start); > if (r < 0 && r != -ENODATA) > return r; > - if (r >= 0) > + if (r >= 0 || r == -ENODATA)
Isn't this condition always true if reached? > timespec_store(&ts, timespec_load(&ts) + > (now(CLOCK_MONOTONIC) - start)); > > /* Set system clock */ > -- > 2.2.1.209.g41e5f3a > > _______________________________________________ > systemd-devel mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/systemd-devel _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
