mirror of
https://github.com/systemd/systemd.git
synced 2025-01-11 09:18:07 +03:00
timedated: introduce systemd-timedated-ntp.target which is controlled by timedated's NTP setting
We shouldn't hardcode the name of the NTP implementation in the timedated mechanism, especially since Fedora currently switched from NTP to chrony. This patch introduces a new target that is enabled/disabled instead of the actual NTP implementation. The various NTP implementations should then add .wants/ symlinks to their services and BindTo back to the target, so that their implementations are started/stopped jointly with the target. https://bugzilla.redhat.com/show_bug.cgi?id=815748
This commit is contained in:
parent
bc2f673ec2
commit
e2875c4693
@ -297,7 +297,8 @@ dist_systemunit_DATA = \
|
||||
units/systemd-ask-password-console.path \
|
||||
units/syslog.target \
|
||||
units/systemd-udev-control.socket \
|
||||
units/systemd-udev-kernel.socket
|
||||
units/systemd-udev-kernel.socket \
|
||||
units/systemd-timedated-ntp.target
|
||||
|
||||
nodist_systemunit_DATA = \
|
||||
units/getty@.service \
|
||||
|
@ -304,7 +304,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;
|
||||
|
||||
@ -374,7 +374,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);
|
||||
@ -421,7 +421,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;
|
||||
|
17
units/systemd-timedated-ntp.target
Normal file
17
units/systemd-timedated-ntp.target
Normal file
@ -0,0 +1,17 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# 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.
|
||||
|
||||
# This target is enabled/disabled via the timedated mechanism when the
|
||||
# user asks for it via the UI. NTP implementations should hook
|
||||
# themselves into this target via .wants/ symlinks, and then add
|
||||
# BindTo= on this target so that they are stopped when it goes away.
|
||||
|
||||
[Unit]
|
||||
Description=Network Time Protocol
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Reference in New Issue
Block a user