X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Ftimedate%2Ftimedated.c;h=8316bc3ea2fcf92d71c6358dc7bfd547490bc3d4;hb=9473414219330b9febc1d0712bbf49ad74cf962f;hp=792c61a7d78ac3e7b8aaa9776f7f6b4f86aaf792;hpb=89f134406af6a4b4c7493f624a89dcd654b48e81;p=elogind.git diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c index 792c61a7d..8316bc3ea 100644 --- a/src/timedate/timedated.c +++ b/src/timedate/timedated.c @@ -6,16 +6,16 @@ Copyright 2011 Lennart Poettering systemd is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. systemd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + Lesser General Public License for more details. - You should have received a copy of the GNU General Public License + You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . ***/ @@ -30,6 +30,7 @@ #include "dbus-common.h" #include "polkit.h" #include "def.h" +#include "hwclock.h" #define NULL_ADJTIME_UTC "0.0 0 0\n0\nUTC\n" #define NULL_ADJTIME_LOCAL "0.0 0 0\n0\nLOCAL\n" @@ -304,7 +305,7 @@ static int write_data_local_rtc(void) { static int read_ntp(DBusConnection *bus) { DBusMessage *m = NULL, *reply = NULL; - const char *name = "ntpd.service", *s; + const char *name = "systemd-timedated-ntp.target", *s; DBusError error; int r; @@ -334,6 +335,14 @@ static int read_ntp(DBusConnection *bus) { reply = dbus_connection_send_with_reply_and_block(bus, m, -1, &error); if (!reply) { + + if (streq(error.name, "org.freedesktop.DBus.Error.FileNotFound")) { + /* NTP is not installed. */ + tz.use_ntp = false; + r = 0; + goto finish; + } + log_error("Failed to issue method call: %s", bus_error_message(&error)); r = -EIO; goto finish; @@ -366,7 +375,7 @@ finish: static int start_ntp(DBusConnection *bus, DBusError *error) { DBusMessage *m = NULL, *reply = NULL; - const char *name = "ntpd.service", *mode = "replace"; + const char *name = "systemd-timedated-ntp.target", *mode = "replace"; int r; assert(bus); @@ -413,7 +422,7 @@ finish: static int enable_ntp(DBusConnection *bus, DBusError *error) { DBusMessage *m = NULL, *reply = NULL; - const char * const names[] = { "ntpd.service", NULL }; + const char * const names[] = { "systemd-timedated-ntp.target", NULL }; int r; DBusMessageIter iter; dbus_bool_t f = FALSE, t = TRUE;