Compare commits

...
Sign in to create a new pull request.

137 commits

Author SHA1 Message Date
Miroslav Lichvar
f14345b711 4.8-3 2025-10-22 14:16:17 +02:00
Miroslav Lichvar
d146c7faa5 fix seccomp fix to build on ppc64 2025-10-22 14:15:13 +02:00
Miroslav Lichvar
ed7a59c023 4.8-3 2025-10-21 14:34:19 +02:00
Miroslav Lichvar
57f2f4a8c1 update seccomp filter for new glibc (#2405310) 2025-10-21 14:26:44 +02:00
Miroslav Lichvar
9c685eb118 4.8-2 2025-09-08 11:12:58 +02:00
Miroslav Lichvar
95665ab060 drop root privileges in chronyc by default
Use the new configure option added in chrony-4.8 to change the default
chronyc user to chrony. If chronyc is started under root, it will switch
to the chrony user automatically to minimize impact of potential
security issues. This shouldn't be visible to the user, but if for some
reason the original behavior is required, "-u root" can be added to the
chronyc command line.
2025-09-08 11:11:25 +02:00
Miroslav Lichvar
fbf4abe953 4.8-1 2025-08-27 14:48:58 +02:00
Miroslav Lichvar
b9e07af779 update to 4.8 2025-08-27 14:47:58 +02:00
Miroslav Lichvar
283f2dad2f 4.8-0.1.pre1 2025-08-14 16:34:48 +02:00
Miroslav Lichvar
1db87bbe8d update to 4.8-pre1 2025-08-14 16:32:02 +02:00
Fedora Release Engineering
7134438422 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-23 18:17:48 +00:00
Miroslav Lichvar
58b9f12d34 4.7-2 2025-07-10 14:04:36 +02:00
Miroslav Lichvar
98c501e504 drop workaround for broken build on aarch64 2025-07-10 14:04:36 +02:00
Miroslav Lichvar
53321f84b8 let systemd create /var/lib/chrony and /var/log/chrony (#2372944)
Specify the directories in the chronyd unit file, so they don't have to
exist before starting the service and rpm doesn't need to create any
non-root directories/files.
2025-07-10 14:04:36 +02:00
Miroslav Lichvar
70a42e2391 drop old conflict with NetworkManager 2025-07-10 14:04:36 +02:00
Ondrej Mejzlik
0de0308307 Testing moves to RH gitlab centos-stream space 2025-06-18 20:38:17 +02:00
Miroslav Lichvar
fcb1dcbf53 4.7-1 2025-06-11 15:51:50 +02:00
Miroslav Lichvar
d17bcd6d55 update to 4.7 2025-06-11 15:51:04 +02:00
Miroslav Lichvar
969143e1d6 4.7-0.2.pre1 2025-05-22 14:40:43 +02:00
Miroslav Lichvar
5d99ee337f add workaround for broken build on aarch64 2025-05-22 14:40:19 +02:00
Miroslav Lichvar
3b9d8b1213 4.7-0.1.pre1 2025-05-21 14:47:51 +02:00
Miroslav Lichvar
8f77afe47e update to 4.7-pre1 2025-05-21 14:45:46 +02:00
Ondrej Mejzlik
18b59b5827 Update plans and gating 2025-03-03 11:19:33 +00:00
Fedora Release Engineering
0aae5f7bf1 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-16 13:43:18 +00:00
Miroslav Lichvar
efe2d99a07 4.6.1-1 2024-10-08 15:42:45 +02:00
Miroslav Lichvar
9999104b09 update to 4.6.1 2024-10-08 15:39:55 +02:00
Miroslav Lichvar
73179b1fbd 4.6-1 2024-09-02 16:29:51 +02:00
Miroslav Lichvar
bf7e96a93b update clknetsim to fix %check on i686 2024-09-02 16:29:31 +02:00
Miroslav Lichvar
0ba6e157c2 4.6-1 2024-09-02 15:16:32 +02:00
Miroslav Lichvar
60a3986f3a update to 4.6 2024-09-02 15:15:35 +02:00
Miroslav Lichvar
02f36b402e 4.6-0.1.pre1 2024-07-30 15:00:59 +02:00
Miroslav Lichvar
2aac4c014b update to 4.6-pre1 2024-07-30 15:00:27 +02:00
Fedora Release Engineering
5d030eca6d Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-17 19:17:25 +00:00
Fedora Release Engineering
2484d4001e Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-23 01:36:12 +00:00
Fedora Release Engineering
9cedf747bf Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 15:25:29 +00:00
Miroslav Lichvar
396d15c284 update clknetsim source 2024-01-09 16:52:30 +01:00
Miroslav Lichvar
17bd1206e3 4.5-1 2023-12-05 15:23:50 +01:00
Miroslav Lichvar
9bca6ebe57 update to 4.5 2023-12-05 15:20:20 +01:00
Miroslav Lichvar
69e59ad695 4.5-0.1.pre1 2023-11-22 14:46:50 +01:00
Miroslav Lichvar
a1d483c64b update to 4.5-pre1 2023-11-22 14:44:56 +01:00
Miroslav Lichvar
271a50e6c1 4.4-1 2023-08-09 16:38:54 +02:00
Miroslav Lichvar
5782cfd640 update to 4.4 2023-08-09 16:38:27 +02:00
Miroslav Lichvar
0b020ff4e0 require tzdata (#2218368) 2023-07-20 13:13:04 +02:00
Fedora Release Engineering
133e764afb Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-19 15:38:23 +00:00
Miroslav Lichvar
c2ad1d7c43 4.4-0.3.pre2 2023-06-21 14:39:24 +02:00
Miroslav Lichvar
9d4dc9b2d9 update to 4.4-pre2 2023-06-21 14:38:35 +02:00
Miroslav Lichvar
dd472d8c34 set selinux context in chronyd-restricted service (#2169949) 2023-06-21 14:38:35 +02:00
Miroslav Lichvar
cf4057bdec 4.4-0.2.pre1 2023-06-06 13:08:16 +02:00
Miroslav Lichvar
014a45966e 4.4-0.1.pre1 2023-05-10 16:00:38 +02:00
Miroslav Lichvar
55b6de1226 switch from patchX to patch -P X 2023-05-10 16:00:38 +02:00
Miroslav Lichvar
e3bd39f52e update to 4.4-pre1 2023-05-10 16:00:38 +02:00
Ondrej Mejzlik
08a5b8042d Adding fmf plans and gating 2023-04-17 18:47:07 +02:00
Miroslav Lichvar
e8775477fe 4.3-3 2023-01-25 16:48:40 +01:00
Miroslav Lichvar
f078395411 drop default chrony.keys config (#2104918) 2023-01-25 16:48:37 +01:00
Miroslav Lichvar
906e072deb add chronyd-restricted service for minimal NTP client configurations 2023-01-25 15:18:44 +01:00
Miroslav Lichvar
95d7d27489 convert license tag to SPDX 2023-01-24 16:22:40 +01:00
Fedora Release Engineering
ad0b95f521 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-18 23:50:34 +00:00
Miroslav Lichvar
ca4d1cf061 4.3-1 2022-08-31 15:01:50 +02:00
Miroslav Lichvar
cd216d6ebb update to 4.3 2022-08-31 14:54:34 +02:00
Miroslav Lichvar
b580bc676c 4.3-0.1.pre1 2022-08-11 11:24:19 +02:00
Miroslav Lichvar
7a0122bf71 update to 4.3-pre1 2022-08-11 11:21:14 +02:00
Fedora Release Engineering
9d18b2f3ab Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-20 22:54:57 +00:00
Luca BRUNO
e60c1652e5 Add a sysusers.d fragment for chrony user/group
This installs a configuration fragment for systemd-sysusers which
covers chrony user and group. For more details, see
https://fedoraproject.org/wiki/Changes/Adopting_sysusers.d_format
2022-05-25 08:32:10 +02:00
Zbigniew Jędrzejewski-Szmek
043d045ae8 Drop obsolete workaround in scriptlet
The bug with daemon-reload was fixed a long time ago.
The direct invocation of 'systemctl daemon-reload' with no redirect of
errors to /dev/null causes a user-visible message when installing into a chroot:

  Running scriptlet: chrony-4.2-4.fc37.x86_64     320/334
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
  ...
2022-02-16 10:57:01 +01:00
Miroslav Lichvar
29c4de2d77 4.2-4 2022-02-09 11:48:14 +01:00
Miroslav Lichvar
d88eefe3d0 update seccomp filter for latest glibc 2022-02-09 11:41:07 +01:00
Miroslav Lichvar
f7730a70df 4.2-3 2022-02-08 11:17:56 +01:00
Miroslav Lichvar
33529ab184 use NTP servers passed by NetworkManager from DHCPv6 NTP server option 2022-02-08 11:14:33 +01:00
Fedora Release Engineering
585d0a7e34 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-19 23:12:23 +00:00
Miroslav Lichvar
6ed36d01fa 4.2-1 2021-12-16 16:23:58 +01:00
Miroslav Lichvar
5558df92e7 update to 4.2 2021-12-16 16:23:42 +01:00
Miroslav Lichvar
b410207eb6 fix changelog nvr 2021-12-16 16:23:41 +01:00
Miroslav Lichvar
8f45aa322d fix gating.yaml to not rely on ci.fmf 2021-12-09 12:37:46 +01:00
Miroslav Lichvar
14a8230871 add gating.yaml 2021-12-07 15:49:36 +01:00
Miroslav Lichvar
38c951ced8 4.2-0.1.pre1 2021-12-02 13:18:15 +01:00
Miroslav Lichvar
2eeb6969c5 update to 4.2-pre1 2021-12-02 13:18:15 +01:00
Miroslav Lichvar
8ebbcb0ef4 4.1-5 2021-11-16 16:47:03 +01:00
Miroslav Lichvar
90ef1216ea fix hardened chronyd service to allow writing log files 2021-11-16 16:46:28 +01:00
Ondrej Mejzlik
a1a45e3283 Adding fmf plan 2021-10-05 14:50:46 +02:00
Miroslav Lichvar
89973469bd 4.1-4 2021-09-29 16:22:20 +02:00
Miroslav Lichvar
cdae473dfc harden chronyd and chrony-wait services 2021-09-29 16:20:36 +02:00
Miroslav Lichvar
49d1a1fef3 4.1-3 2021-08-09 15:54:11 +02:00
Miroslav Lichvar
e7d17261da update seccomp filter for new glibc 2021-08-09 15:52:20 +02:00
Miroslav Lichvar
eeb5738583 remove unnecessary build requirement 2021-08-05 09:26:45 +02:00
Miroslav Lichvar
db7c1c4450 update out-of-date comment about NM DHCP script 2021-08-05 09:26:45 +02:00
Fedora Release Engineering
41461a14e3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 19:26:44 +00:00
Fedora Release Engineering
1fbbda2376 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-21 14:29:32 +00:00
Miroslav Lichvar
f1723893df 4.1-1 2021-05-13 16:55:54 +02:00
Miroslav Lichvar
eeffcafda9 enable seccomp filter by default
Add -F 2 to default /etc/sysconfig/chronyd to enable a filter blocking a
small number of specific system calls. The filter is incompatible with
the mailonchange directive.
2021-05-13 16:55:34 +02:00
Miroslav Lichvar
c6a8172473 add bcond for seccomp 2021-05-13 16:35:50 +02:00
Miroslav Lichvar
7065ea6b2d update to 4.1 2021-05-13 16:03:51 +02:00
Miroslav Lichvar
3353132ff7 4.1-0.1.pre1 2021-04-22 14:55:09 +02:00
Miroslav Lichvar
f9f7cf22a9 update to 4.1-pre1 2021-04-22 14:52:16 +02:00
Miroslav Lichvar
ba7e409249 rework NM-dispatcher/dhclient detection
The packaged NM dispatcher and dhclient scripts provide the same
functionality. Only one should be active depending on the system
configuration.

Instead of guessing in the NM dispatcher script whether the dhclient
script is executed, check in the dhclient script whether it is called
from a NM dispatcher script (the 11-dhclient script included in the
dhcp-client package).

This is simpler and it removes dependency on the 11-dhclient script.
2021-04-22 13:21:39 +02:00
Miroslav Lichvar
c3c3f0c2dd enable LTO on s390x
Update clknetsim to fix test failure on s390x with enabled LTO.
2021-04-22 11:03:05 +02:00
Zbigniew Jędrzejewski-Szmek
b1f5ca1523 Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
2021-03-02 16:14:05 +01:00
Miroslav Lichvar
ed6f12d1c1 4.0-3 2021-02-02 10:48:16 +01:00
Christian Glombek
7f89c4666b update NM DHCP dispatcher script
Updates the patch with downstream changes from
https://github.com/openshift/os/pull/486
and https://github.com/openshift/os/pull/494
2021-02-02 10:46:27 +01:00
Miroslav Lichvar
a565083d9b fix spec indentation 2021-02-02 10:46:27 +01:00
Fedora Release Engineering
65b8f20ff6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 01:57:12 +00:00
Tom Stellard
dbe22151e2 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2020-12-19 05:13:45 +00:00
Miroslav Lichvar
0fb07c271c drop dnssrv service and timer
They no longer work as they rely on the chrony-helper script, which was
dropped in 4.0-1.
2020-11-04 15:59:53 +01:00
Miroslav Lichvar
38e248d337 4.0-1 2020-10-07 18:34:12 +02:00
Miroslav Lichvar
2baf9594ab update to 4.0 2020-10-07 18:33:19 +02:00
Miroslav Lichvar
1fd00dcac3 update directory permissions to follow upstream 2020-09-24 11:13:22 +02:00
Miroslav Lichvar
960e995c53 4.0-0.9.pre3 2020-09-16 12:55:14 +02:00
Miroslav Lichvar
252f14c474 update to 4.0-pre4 2020-09-16 12:36:57 +02:00
Miroslav Lichvar
8b2e77bb85 4.0-0.8.pre3 2020-08-26 09:39:23 +02:00
Miroslav Lichvar
4578c8d659 move default paths in /var/run to /run 2020-08-26 09:39:23 +02:00
Miroslav Lichvar
3b687e3ada drop old migration code from scriptlet 2020-08-26 09:39:23 +02:00
Robert Fairley
9bae83fd80 patch DHCP NM dispatcher for distribution
Patch the upstream example `nm-dispatcher.dhcp` with
Fedora/RHEL-specific behavior including exiting if a dhclient
install is detected, and using the /etc/sysconfig paths.

Originally part of work for fixing integration between the
NetworkManager internal DHCP client and chrony:
https://bugzilla.redhat.com/show_bug.cgi?id=1800901
2020-08-26 09:39:23 +02:00
Miroslav Lichvar
0ecc1e4fe9 switch to sourcedir directive for loading servers from DHCP
Drop the chrony-helper script in favor of the new sourcedir directive.

Modify the dhclient script to save NTP servers from DHCP to
/run/chrony-dhcp/$interface.sources and configure chronyd to (re)load
the sources from files in that directory on start and the "reload
sources" command.

Other functionality of the helper script is dropped with no
replacemement.
2020-08-26 09:39:23 +02:00
Miroslav Lichvar
304dad1ba3 update to 4.0-pre3 2020-08-25 12:59:54 +02:00
Jeff Law
26e6c4a46d Disable LTO on s390x for now 2020-08-10 14:51:17 -06:00
Fedora Release Engineering
42541fd056 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-08-01 00:22:10 +00:00
Fedora Release Engineering
e041600a11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-27 13:57:34 +00:00
Tom Stellard
26ef0d15b0 use make macros
https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
2020-07-21 08:41:13 +02:00
Miroslav Lichvar
58c7956c63 4.0-0.3.pre2 2020-05-04 09:44:41 +02:00
Miroslav Lichvar
069897be45 4.0-0.2.pre2 2020-04-20 16:54:47 +02:00
Miroslav Lichvar
6e0c18861d update to 4.0-pre2 2020-04-20 16:54:04 +02:00
Miroslav Lichvar
14baaf0f8f fix testing on ppc64le and s390x 2020-03-18 12:49:50 +01:00
Miroslav Lichvar
7c4c641397 4.0-0.1.pre1 2020-03-17 15:27:44 +01:00
Miroslav Lichvar
3292ab8a8e update to 4.0-pre1 2020-03-17 15:27:42 +01:00
Miroslav Lichvar
eff127108e add net-tools to build requirements for testing 2020-03-17 15:06:54 +01:00
Miroslav Lichvar
127d88dd27 add missing dependency on coreutils 2020-03-17 15:06:31 +01:00
Fedora Release Engineering
680f8eded3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-28 14:01:03 +00:00
Miroslav Lichvar
b4ceda5f40 3.5-7 2020-01-20 12:21:29 +01:00
Miroslav Lichvar
1e0baf8ccb fix testing with new glibc (#1792854) 2020-01-20 12:20:42 +01:00
Miroslav Lichvar
718aa8464c 3.5-6 2019-10-09 17:05:15 +02:00
Miroslav Lichvar
ae57c18ced drop timedatex recommendation
systemd-timedated has obsoleted timedatex in F31.
2019-10-09 17:04:42 +02:00
Lubomir Rintel
58f87738ea Move the NetworkManager dispatcher script out of /etc
It's not user configuration and shouldn't ever have been there. Except for that
it used to be the only location NetworkManager looked into. With NetworkManager
1.20 that is no longer the case and the dispatcher scripts can be moved to
/usr/lib.
2019-08-29 16:31:35 +02:00
Miroslav Lichvar
3a97d2952c upload new sources 2019-08-27 15:37:42 +02:00
Miroslav Lichvar
c0f3bfcbcd verify upstream signatures 2019-08-27 15:34:56 +02:00
Fedora Release Engineering
e6d617a744 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-24 20:14:40 +00:00
Miroslav Lichvar
3364ee9583 3.5-3 2019-07-16 15:39:26 +02:00
Miroslav Lichvar
06bbe31ce3 3.5-2 2019-05-23 09:52:48 +02:00
Miroslav Lichvar
cafc2b7a75 fix shellcheck warnings in helper scripts 2019-05-23 09:50:28 +02:00
17 changed files with 697 additions and 362 deletions

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

5
.gitignore vendored
View file

@ -1,2 +1,3 @@
/chrony-3.5.tar.gz
/clknetsim-3f5ef9.tar.gz
/chrony-4.8-tar-gz-asc.txt
/chrony-4.8.tar.gz
/clknetsim-6ee99f50dec8.tar.gz

View file

@ -1,8 +0,0 @@
[Unit]
Description=DNS SRV lookup of %I for chrony
After=chronyd.service network-online.target
Wants=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/libexec/chrony-helper update-dnssrv-servers %I

View file

@ -1,9 +0,0 @@
[Unit]
Description=Periodic DNS SRV lookup of %I for chrony
[Timer]
OnActiveSec=0
OnUnitInactiveSec=1h
[Install]
WantedBy=timers.target

View file

@ -0,0 +1,39 @@
From: Robert Fairley <rfairley@redhat.com>
Date: Wed, 17 Jun 2020 10:14:19 -0400
Subject: [PATCH] examples/nm-dispatcher.dhcp: use sysconfig
Use the PEERNTP and NTPSERVERARGS environment variables from
/etc/sysconfig/network{-scripts}.
Co-Authored-By: Christian Glombek <cglombek@redhat.com>
diff --git a/examples/chrony.nm-dispatcher.dhcp b/examples/chrony.nm-dispatcher.dhcp
index 6ea4c37..a6ad35a 100644
--- a/examples/chrony.nm-dispatcher.dhcp
+++ b/examples/chrony.nm-dispatcher.dhcp
@@ -8,15 +8,23 @@ export LC_ALL=C
interface=$1
action=$2
+[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
+[ -f /etc/sysconfig/network-scripts/ifcfg-"${interface}" ] && \
+ . /etc/sysconfig/network-scripts/ifcfg-"${interface}"
+
chronyc=/usr/bin/chronyc
-server_options=iburst
-server_dir=/var/run/chrony-dhcp
+server_options=${NTPSERVERARGS:-iburst}
+server_dir=/run/chrony-dhcp
dhcp_server_file=$server_dir/$interface.sources
dhcp_ntp_servers="$DHCP4_NTP_SERVERS $DHCP6_DHCP6_NTP_SERVERS"
add_servers_from_dhcp() {
rm -f "$dhcp_server_file"
+
+ # Don't add NTP servers if PEERNTP=no specified; return early.
+ [ "$PEERNTP" = "no" ] && return
+
for server in $dhcp_ntp_servers; do
# Check for invalid characters (from the DHCPv6 NTP FQDN suboption)
len1=$(printf '%s' "$server" | wc -c)

194
chrony-seccomp.patch Normal file
View file

@ -0,0 +1,194 @@
commit 03875f1ea5c4c0eeeb30a7d1fc5fdd53236f4ac2
Author: Miroslav Lichvar <mlichvar@redhat.com>
Date: Tue Oct 21 14:06:38 2025 +0200
sys_linux: allow ioctl(TCGETS2) in seccomp filter
Add TCGETS2 to the list of allowed ioctls. It seems to be called by the
latest glibc version from isatty(), which is called from libpcsclite
used by gnutls in an NTS-KE session.
Include the linux termios header instead of glibc header to get a usable
definition of TCGETS2.
diff --git a/sys_linux.c b/sys_linux.c
index ca5540f2..e20e459d 100644
--- a/sys_linux.c
+++ b/sys_linux.c
@@ -48,7 +48,7 @@
#ifdef FEAT_SCFILTER
#include <sys/prctl.h>
#include <seccomp.h>
-#include <termios.h>
+#include <linux/termios.h>
#ifdef FEAT_PPS
#include <linux/pps.h>
#endif
@@ -615,7 +615,7 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
const static int fcntls[] = { F_GETFD, F_SETFD, F_GETFL, F_SETFL };
const static unsigned long ioctls[] = {
- FIONREAD, TCGETS, TIOCGWINSZ,
+ FIONREAD, TCGETS, TCGETS2, TIOCGWINSZ,
#if defined(FEAT_PHC) || defined(HAVE_LINUX_TIMESTAMPING)
PTP_EXTTS_REQUEST, PTP_SYS_OFFSET,
#ifdef PTP_PIN_SETFUNC
commit 3c39afa13c769452d4c340bfc987e229b7c9caeb
Author: Miroslav Lichvar <mlichvar@redhat.com>
Date: Wed Oct 22 10:53:11 2025 +0200
sys_linux: fix building with older compilers and some archs
The recent replacement of <termios.h> with <linux/termios.h> to get
TCGETS2 seems to work only with compilers (or C standards) that allow
the same structure to be defined multiple times. There is a conflict
between <sys/ioctl.h> and <linux/termios.h>.
Another problem is that TCGETS2 is not used on some archs like ppc64.
Switch back to <termios.h> and move TCGETS2 to a list in a separate
file where it can be compiled without <sys/ioctl.h>.
Fixes: 03875f1ea5c4 ("sys_linux: allow ioctl(TCGETS2) in seccomp filter")
diff --git a/configure b/configure
index 195b1ed7..ca64475d 100755
--- a/configure
+++ b/configure
@@ -808,6 +808,7 @@ then
# a time and the async resolver would block the main thread
priv_ops="NAME2IPADDRESS RELOADDNS"
EXTRA_LIBS="$EXTRA_LIBS -lseccomp"
+ EXTRA_OBJECTS="$EXTRA_OBJECTS sys_linux_scmp.o"
fi
if [ "x$priv_ops" != "x" ]; then
diff --git a/sys_linux.c b/sys_linux.c
index e20e459d..89eec950 100644
--- a/sys_linux.c
+++ b/sys_linux.c
@@ -48,7 +48,7 @@
#ifdef FEAT_SCFILTER
#include <sys/prctl.h>
#include <seccomp.h>
-#include <linux/termios.h>
+#include <termios.h>
#ifdef FEAT_PPS
#include <linux/pps.h>
#endif
@@ -63,6 +63,7 @@
#endif
#include "sys_linux.h"
+#include "sys_linux_scmp.h"
#include "sys_timex.h"
#include "conf.h"
#include "local.h"
@@ -615,7 +616,7 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
const static int fcntls[] = { F_GETFD, F_SETFD, F_GETFL, F_SETFL };
const static unsigned long ioctls[] = {
- FIONREAD, TCGETS, TCGETS2, TIOCGWINSZ,
+ FIONREAD, TCGETS, TIOCGWINSZ,
#if defined(FEAT_PHC) || defined(HAVE_LINUX_TIMESTAMPING)
PTP_EXTTS_REQUEST, PTP_SYS_OFFSET,
#ifdef PTP_PIN_SETFUNC
@@ -728,6 +729,14 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
SCMP_A1(SCMP_CMP_EQ, ioctls[i])) < 0)
goto add_failed;
}
+
+ /* Allow selected ioctls that need to be specified in a separate
+ file to avoid conflicting headers (e.g. TCGETS2) */
+ for (i = 0; SYS_Linux_GetExtraScmpIoctl(i) != 0; i++) {
+ if (seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(ioctl), 1,
+ SCMP_A1(SCMP_CMP_EQ, SYS_Linux_GetExtraScmpIoctl(i))) < 0)
+ goto add_failed;
+ }
}
if (seccomp_load(ctx) < 0)
diff --git a/sys_linux_scmp.c b/sys_linux_scmp.c
new file mode 100644
index 00000000..a907a97d
--- /dev/null
+++ b/sys_linux_scmp.c
@@ -0,0 +1,44 @@
+/*
+ chronyd/chronyc - Programs for keeping computer clocks accurate.
+
+ **********************************************************************
+ * Copyright (C) Miroslav Lichvar 2025
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
+ *
+ * This program 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ **********************************************************************
+
+ =======================================================================
+
+ Lists of values that are needed in seccomp filters but need to
+ be compiled separately from sys_linux.c due to conflicting headers.
+ */
+
+#include <linux/termios.h>
+
+#include "sys_linux_scmp.h"
+
+unsigned long
+SYS_Linux_GetExtraScmpIoctl(int index)
+{
+ const unsigned long ioctls[] = {
+#ifdef TCGETS2
+ /* Conflict between <linux/termios.h> and <sys/ioctl.h> */
+ TCGETS2,
+#endif
+ 0
+ };
+
+ return ioctls[index];
+}
diff --git a/sys_linux_scmp.h b/sys_linux_scmp.h
new file mode 100644
index 00000000..62a9d548
--- /dev/null
+++ b/sys_linux_scmp.h
@@ -0,0 +1,28 @@
+/*
+ chronyd/chronyc - Programs for keeping computer clocks accurate.
+
+ **********************************************************************
+ * Copyright (C) Miroslav Lichvar 2025
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
+ *
+ * This program 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ **********************************************************************
+
+ =======================================================================
+
+ Header file for lists that are needed in seccomp filters but need to
+ be compiled separately from sys_linux.c due to conflicting headers.
+ */
+
+extern unsigned long SYS_Linux_GetExtraScmpIoctl(int index);

View file

@ -1,11 +0,0 @@
diff -up chrony-3.5/examples/chronyd.service.service-helper chrony-3.5/examples/chronyd.service
--- chrony-3.5/examples/chronyd.service.service-helper 2019-05-10 12:22:57.000000000 +0200
+++ chrony-3.5/examples/chronyd.service 2019-05-14 13:42:38.069516800 +0200
@@ -10,6 +10,7 @@ Type=forking
PIDFile=/run/chrony/chronyd.pid
EnvironmentFile=-/etc/sysconfig/chronyd
ExecStart=/usr/sbin/chronyd $OPTIONS
+ExecStartPost=/usr/libexec/chrony-helper update-daemon
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=full

18
chrony-servicedirs.patch Normal file
View file

@ -0,0 +1,18 @@
diff -up chrony-4.7/examples/chronyd.service.servicedirs chrony-4.7/examples/chronyd.service
--- chrony-4.7/examples/chronyd.service.servicedirs 2025-06-11 15:06:19.000000000 +0200
+++ chrony-4.7/examples/chronyd.service 2025-07-10 12:06:57.354215498 +0200
@@ -10,7 +10,13 @@ Type=notify
PIDFile=/run/chrony/chronyd.pid
Environment="OPTIONS="
EnvironmentFile=-/etc/sysconfig/chronyd
-ExecStart=/usr/sbin/chronyd -n $OPTIONS
+ExecStart=!/usr/sbin/chronyd -n $OPTIONS
+
+User=chrony
+LogsDirectory=chrony
+LogsDirectoryMode=0750
+StateDirectory=chrony
+StateDirectoryMode=0750
CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE
CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_KILL CAP_LEASE CAP_LINUX_IMMUTABLE

View file

@ -1,20 +1,27 @@
#!/bin/bash
SERVERFILE=$SAVEDIR/chrony.servers.$interface
CHRONY_SOURCEDIR=/run/chrony-dhcp
SERVERFILE=$CHRONY_SOURCEDIR/$interface.sources
chrony_config() {
rm -f $SERVERFILE
# Disable modifications if called from a NM dispatcher script
[ -n "$NM_DISPATCHER_ACTION" ] && return 0
rm -f "$SERVERFILE"
if [ "$PEERNTP" != "no" ]; then
mkdir -p $CHRONY_SOURCEDIR
for server in $new_ntp_servers; do
echo "$server ${NTPSERVERARGS:-iburst}" >> $SERVERFILE
echo "server $server ${NTPSERVERARGS:-iburst}" >> "$SERVERFILE"
done
/usr/libexec/chrony-helper update-daemon || :
/usr/bin/chronyc reload sources > /dev/null 2>&1 || :
fi
}
chrony_restore() {
if [ -f $SERVERFILE ]; then
rm -f $SERVERFILE
/usr/libexec/chrony-helper update-daemon || :
[ -n "$NM_DISPATCHER_ACTION" ] && return 0
if [ -f "$SERVERFILE" ]; then
rm -f "$SERVERFILE"
/usr/bin/chronyc reload sources > /dev/null 2>&1 || :
fi
}

View file

@ -1,252 +0,0 @@
#!/bin/bash
# This script configures running chronyd to use NTP servers obtained from
# DHCP and _ntp._udp DNS SRV records. Files with servers from DHCP are managed
# externally (e.g. by a dhclient script). Files with servers from DNS SRV
# records are updated here using the dig utility. The script can also list
# and set static sources in the chronyd configuration file.
chronyc=/usr/bin/chronyc
chrony_conf=/etc/chrony.conf
chrony_service=chronyd.service
helper_dir=/var/run/chrony-helper
added_servers_file=$helper_dir/added_servers
network_sysconfig_file=/etc/sysconfig/network
dhclient_servers_files=/var/lib/dhclient/chrony.servers.*
dnssrv_servers_files=$helper_dir/dnssrv@*
dnssrv_timer_prefix=chrony-dnssrv@
. $network_sysconfig_file &> /dev/null
chrony_command() {
$chronyc -a -n -m "$1"
}
is_running() {
chrony_command "tracking" &> /dev/null
}
get_servers_files() {
[ "$PEERNTP" != "no" ] && echo "$dhclient_servers_files"
echo "$dnssrv_servers_files"
}
is_update_needed() {
for file in $(get_servers_files) $added_servers_file; do
[ -e "$file" ] && return 0
done
return 1
}
update_daemon() {
local all_servers_with_args all_servers added_servers
if ! is_running; then
rm -f $added_servers_file
return 0
fi
all_servers_with_args=$(cat $(get_servers_files) 2> /dev/null)
all_servers=$(
echo "$all_servers_with_args" |
while read server serverargs; do
echo "$server"
done | sort -u)
added_servers=$( (
cat $added_servers_file 2> /dev/null
echo "$all_servers_with_args" |
while read server serverargs; do
[ -z "$server" ] && continue
chrony_command "add server $server $serverargs" &> /dev/null &&
echo "$server"
done) | sort -u)
comm -23 <(echo -n "$added_servers") <(echo -n "$all_servers") |
while read server; do
chrony_command "delete $server" &> /dev/null
done
added_servers=$(comm -12 <(echo -n "$added_servers") <(echo -n "$all_servers"))
[ -n "$added_servers" ] && echo "$added_servers" > $added_servers_file ||
rm -f $added_servers_file
}
get_dnssrv_servers() {
local name=$1 output
if ! command -v dig &> /dev/null; then
echo "Missing dig (DNS lookup utility)" >&2
return 1
fi
output=$(dig "$name" srv +short +ndots=2 +search 2> /dev/null)
[ $? -ne 0 ] && return 0
echo "$output" | while read prio weight port target; do
server=${target%.}
[ -z "$server" ] && continue
echo "$server port $port ${NTPSERVERARGS:-iburst}"
done
}
check_dnssrv_name() {
local name=$1
if [ -z "$name" ]; then
echo "No DNS SRV name specified" >&2
return 1
fi
if [ "${name:0:9}" != _ntp._udp ]; then
echo "DNS SRV name $name doesn't start with _ntp._udp" >&2
return 1
fi
}
update_dnssrv_servers() {
local name=$1
local srv_file=$helper_dir/dnssrv@$name servers
check_dnssrv_name "$name" || return 1
servers=$(get_dnssrv_servers "$name")
[ -n "$servers" ] && echo "$servers" > "$srv_file" || rm -f "$srv_file"
}
set_dnssrv_timer() {
local state=$1 name=$2
local srv_file=$helper_dir/dnssrv@$name servers
local timer=$dnssrv_timer_prefix$(systemd-escape "$name").timer
check_dnssrv_name "$name" || return 1
if [ "$state" = enable ]; then
systemctl enable "$timer"
systemctl start "$timer"
elif [ "$state" = disable ]; then
systemctl stop "$timer"
systemctl disable "$timer"
rm -f "$srv_file"
fi
}
list_dnssrv_timers() {
systemctl --all --full -t timer list-units | grep "^$dnssrv_timer_prefix" | \
sed "s|^$dnssrv_timer_prefix\(.*\)\.timer.*|\1|" |
while read -r name; do
systemd-escape --unescape "$name"
done
}
prepare_helper_dir() {
mkdir -p $helper_dir
exec 100> $helper_dir/lock
if ! flock -w 20 100; then
echo "Failed to lock $helper_dir" >&2
return 1
fi
}
is_source_line() {
local pattern="^[ \t]*(server|pool|peer|refclock)[ \t]+[^ \t]+"
[[ "$1" =~ $pattern ]]
}
list_static_sources() {
while read line; do
is_source_line "$line" && echo "$line" || :
done < $chrony_conf
}
set_static_sources() {
local new_config tmp_conf
new_config=$(
sources=$(
while read line; do
is_source_line "$line" && echo "$line"
done)
while read line; do
if ! is_source_line "$line"; then
echo "$line"
continue
fi
tmp_sources=$(
local removed=0
echo "$sources" | while read line2; do
[ "$removed" -ne 0 -o "$line" != "$line2" ] && \
echo "$line2" || removed=1
done)
[ "$sources" == "$tmp_sources" ] && continue
sources=$tmp_sources
echo "$line"
done < $chrony_conf
echo "$sources"
)
tmp_conf=${chrony_conf}.tmp
cp -a $chrony_conf $tmp_conf &&
echo "$new_config" > $tmp_conf &&
mv $tmp_conf $chrony_conf || return 1
systemctl try-restart $chrony_service
}
print_help() {
echo "Usage: $0 COMMAND"
echo
echo "Commands:"
echo " update-daemon"
echo " update-dnssrv-servers NAME"
echo " enable-dnssrv NAME"
echo " disable-dnssrv NAME"
echo " list-dnssrv"
echo " list-static-sources"
echo " set-static-sources < sources.list"
echo " is-running"
echo " command CHRONYC-COMMAND"
}
case "$1" in
update-daemon|add-dhclient-servers|remove-dhclient-servers)
is_update_needed || exit 0
prepare_helper_dir && update_daemon
;;
update-dnssrv-servers)
prepare_helper_dir && update_dnssrv_servers "$2" && update_daemon
;;
enable-dnssrv)
set_dnssrv_timer enable "$2"
;;
disable-dnssrv)
set_dnssrv_timer disable "$2" && prepare_helper_dir && update_daemon
;;
list-dnssrv)
list_dnssrv_timers
;;
list-static-sources)
list_static_sources
;;
set-static-sources)
set_static_sources
;;
is-running)
is_running
;;
command|forced-command)
chrony_command "$2"
;;
*)
print_help
exit 2
esac
exit $?

View file

@ -1,37 +1,45 @@
%global _hardened_build 1
%global clknetsim_ver 3f5ef9
%global clknetsim_ver 6ee99f50dec8
%bcond_without debug
%bcond_without nts
%ifarch %{ix86} x86_64 %{arm} aarch64 mipsel mips64el ppc64 ppc64le s390 s390x
%bcond_without seccomp
%endif
Name: chrony
Version: 3.5
Release: 1%{?dist}
Version: 4.8
Release: 3%{?dist}
Summary: An NTP client/server
License: GPLv2
URL: https://chrony.tuxfamily.org
Source0: https://download.tuxfamily.org/chrony/chrony-%{version}%{?prerelease}.tar.gz
Source1: chrony.dhclient
Source2: chrony.helper
Source3: chrony-dnssrv@.service
Source4: chrony-dnssrv@.timer
License: GPL-2.0-only
URL: https://chrony-project.org
Source0: https://chrony-project.org/releases/chrony-%{version}%{?prerelease}.tar.gz
Source1: https://chrony-project.org/releases/chrony-%{version}%{?prerelease}-tar-gz-asc.txt
Source2: https://chrony-project.org/gpgkey-8F375C7E8D0EE125A3D3BD51537E2B76F7680DAC.asc
Source3: chrony.dhclient
Source4: chrony.sysusers
# simulator for test suite
Source10: https://github.com/mlichvar/clknetsim/archive/%{clknetsim_ver}/clknetsim-%{clknetsim_ver}.tar.gz
Source10: https://gitlab.com/chrony/clknetsim/-/archive/master/clknetsim-%{clknetsim_ver}.tar.gz
%{?gitpatch:Patch0: chrony-%{version}%{?prerelease}-%{gitpatch}.patch.gz}
# add NTP servers from DHCP when starting service
Patch2: chrony-service-helper.patch
# add distribution-specific bits to DHCP dispatcher
Patch1: chrony-nm-dispatcher-dhcp.patch
# let systemd create /var/lib/chrony and /var/log/chrony
Patch2: chrony-servicedirs.patch
# update seccomp filter for new glibc
Patch3: chrony-seccomp.patch
BuildRequires: libcap-devel libedit-devel nettle-devel pps-tools-devel
%ifarch %{ix86} x86_64 %{arm} aarch64 mipsel mips64el ppc64 ppc64le s390 s390x
BuildRequires: libseccomp-devel
%endif
BuildRequires: gcc gcc-c++ bison systemd
BuildRequires: gcc gcc-c++ make bison systemd gnupg2
%{?with_nts:BuildRequires: gnutls-devel gnutls-utils}
%{?with_seccomp:BuildRequires: libseccomp-devel}
Requires(pre): shadow-utils
%{?systemd_requires}
%{?sysusers_requires_compat}
# install timedated implementation that can control chronyd service
Recommends: timedatex
# Needed by the leapseclist directive in default chrony.conf
Requires: tzdata
# suggest drivers for hardware reference clocks
Suggests: ntp-refclock
@ -48,20 +56,24 @@ service to other computers in the network.
%endif
%prep
%{gpgverify} --keyring=%{SOURCE2} --signature=%{SOURCE1} --data=%{SOURCE0}
%setup -q -n %{name}-%{version}%{?prerelease} -a 10
%{?gitpatch:%patch0 -p1}
%patch2 -p1 -b .service-helper
%{?gitpatch:%patch -P 0 -p1}
%patch -P 1 -p1 -b .nm-dispatcher-dhcp
%patch -P 2 -p1 -b .servicedirs
%patch -P 3 -p1 -b .seccomp
%{?gitpatch: echo %{version}-%{gitpatch} > version.txt}
# review changes in packaged configuration files and scripts
md5sum -c <<-EOF | (! grep -v 'OK$')
47ad7eccc410b981d2f2101cf5682616 examples/chrony-wait.service
e473a9fab7fe200cacce3dca8b66290b examples/chrony.conf.example2
96999221eeef476bd49fe97b97503126 examples/chrony.keys.example
5530d6e60f84b76c27495485d2510bac examples/chrony-wait.service
3f2ddca6065c3e8f4565d7422739795a examples/chrony.conf.example2
6a3178c4670de7de393d9365e2793740 examples/chrony.logrotate
8748a663f0b1943ea491858f414a6b26 examples/chrony.nm-dispatcher
b23bcc3bd78e195ca2849459e459f3ed examples/chronyd.service
c3992e2f985550739cd1cd95f98c9548 examples/chrony.nm-dispatcher.dhcp
4e85d36595727318535af3387411070c examples/chrony.nm-dispatcher.onoffline
607c82f56639486f52c31105632909eb examples/chronyd.service
5ddbb8a8055f587cb6b0b462ca73ea46 examples/chronyd-restricted.service
EOF
# don't allow packaging without vendor zone
@ -69,69 +81,79 @@ test -n "%{vendorzone}"
# use example chrony.conf as the default config with some modifications:
# - use our vendor zone (2.*pool.ntp.org names include IPv6 addresses)
# - enable leapsectz to get TAI-UTC offset and leap seconds from tzdata
# - enable keyfile
# - enable leapseclist to get TAI-UTC offset and leap seconds
# - use NTP servers from DHCP
sed -e 's|^\(pool \)\(pool.ntp.org\)|\12.%{vendorzone}\2|' \
-e 's|#\(leapsectz\)|\1|' \
-e 's|#\(keyfile\)|\1|' \
-e 's|#\(leapseclist\)|\1|' \
-e 's|^pool.*pool.ntp.org.*|&\n\n# Use NTP servers from DHCP.\nsourcedir /run/chrony-dhcp|' \
< examples/chrony.conf.example2 > chrony.conf
touch -r examples/chrony.conf.example2 chrony.conf
# set selinux context in chronyd-restricted service
sed -i '/^ExecStart/a SELinuxContext=system_u:system_r:chronyd_restricted_t:s0' \
examples/chronyd-restricted.service
# regenerate the file from getdate.y
rm -f getdate.c
mv clknetsim-%{clknetsim_ver}* test/simulation/clknetsim
mv clknetsim-*-%{clknetsim_ver}* test/simulation/clknetsim
%build
%configure \
%{?with_debug: --enable-debug} \
--enable-ntp-signd \
--enable-scfilter \
%{?with_seccomp: --enable-scfilter} \
%{!?with_nts: --disable-nts} \
--chronyrundir=/run/chrony \
--docdir=%{_docdir} \
--with-ntp-era=$(date -d '1970-01-01 00:00:00+00:00' +'%s') \
--with-chronyc-user=chrony \
--with-user=chrony \
--with-hwclockfile=%{_sysconfdir}/adjtime \
--with-pidfile=/run/chrony/chronyd.pid \
--with-sendmail=%{_sbindir}/sendmail
make %{?_smp_mflags}
%make_build
%install
make install DESTDIR=$RPM_BUILD_ROOT
%make_install
rm -rf $RPM_BUILD_ROOT%{_docdir}
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/{sysconfig,logrotate.d}
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/{lib,log}/chrony
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/NetworkManager/dispatcher.d
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/dhcp/dhclient.d
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
mkdir -p $RPM_BUILD_ROOT%{_sysusersdir}
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/NetworkManager/dispatcher.d
mkdir -p $RPM_BUILD_ROOT{%{_unitdir},%{_prefix}/lib/systemd/ntp-units.d}
install -m 644 -p chrony.conf $RPM_BUILD_ROOT%{_sysconfdir}/chrony.conf
install -m 640 -p examples/chrony.keys.example \
$RPM_BUILD_ROOT%{_sysconfdir}/chrony.keys
install -m 755 -p examples/chrony.nm-dispatcher \
$RPM_BUILD_ROOT%{_sysconfdir}/NetworkManager/dispatcher.d/20-chrony
install -m 755 -p %{SOURCE1} \
install -m 755 -p %{SOURCE3} \
$RPM_BUILD_ROOT%{_sysconfdir}/dhcp/dhclient.d/chrony.sh
install -m 644 -p examples/chrony.logrotate \
$RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/chrony
install -m 644 -p examples/chronyd.service \
$RPM_BUILD_ROOT%{_unitdir}/chronyd.service
install -m 644 -p examples/chronyd-restricted.service \
$RPM_BUILD_ROOT%{_unitdir}/chronyd-restricted.service
install -m 755 -p examples/chrony.nm-dispatcher.onoffline \
$RPM_BUILD_ROOT%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-onoffline
install -m 755 -p examples/chrony.nm-dispatcher.dhcp \
$RPM_BUILD_ROOT%{_prefix}/lib/NetworkManager/dispatcher.d/20-chrony-dhcp
install -m 644 -p examples/chrony-wait.service \
$RPM_BUILD_ROOT%{_unitdir}/chrony-wait.service
install -m 644 -p %{SOURCE3} $RPM_BUILD_ROOT%{_unitdir}/chrony-dnssrv@.service
install -m 644 -p %{SOURCE4} $RPM_BUILD_ROOT%{_unitdir}/chrony-dnssrv@.timer
install -m 755 -p %{SOURCE2} $RPM_BUILD_ROOT%{_libexecdir}/chrony-helper
install -m 644 -p %{SOURCE4} \
$RPM_BUILD_ROOT%{_sysusersdir}/chrony.conf
cat > $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/chronyd <<EOF
# Command-line options for chronyd
OPTIONS=""
OPTIONS="%{?with_seccomp:-F 2}"
EOF
touch $RPM_BUILD_ROOT%{_sysconfdir}/chrony.keys
touch $RPM_BUILD_ROOT%{_localstatedir}/lib/chrony/{drift,rtc}
echo 'chronyd.service' > \
@ -139,58 +161,261 @@ echo 'chronyd.service' > \
%check
# set random seed to get deterministic results
export CLKNETSIM_RANDOM_SEED=24502
make %{?_smp_mflags} -C test/simulation/clknetsim
export CLKNETSIM_RANDOM_SEED=24508
%make_build -C test/simulation/clknetsim
make quickcheck
%pre
getent group chrony > /dev/null || /usr/sbin/groupadd -r chrony
getent passwd chrony > /dev/null || /usr/sbin/useradd -r -g chrony \
-d %{_localstatedir}/lib/chrony -s /sbin/nologin chrony
:
%sysusers_create_compat %{SOURCE4}
%post
# fix PIDFile in local chronyd.service on upgrades from chrony < 3.3-2
if grep -q 'PIDFile=%{_localstatedir}/run/chronyd.pid' \
%{_sysconfdir}/systemd/system/chronyd.service 2> /dev/null && \
! grep -qi '^[ '$'\t'']*pidfile' %{_sysconfdir}/chrony.conf 2> /dev/null
then
sed -i '/PIDFile=/s|/run/|/run/chrony/|' \
%{_sysconfdir}/systemd/system/chronyd.service
# migrate from chrony-helper to sourcedir directive
if test -a %{_libexecdir}/chrony-helper; then
grep -qi 'sourcedir /run/chrony-dhcp$' %{_sysconfdir}/chrony.conf 2> /dev/null || \
echo -e '\n# Use NTP servers from DHCP.\nsourcedir /run/chrony-dhcp' >> \
%{_sysconfdir}/chrony.conf
mkdir -p /run/chrony-dhcp
for f in %{_localstatedir}/lib/dhclient/chrony.servers.*; do
sed 's|.*|server &|' < $f > /run/chrony-dhcp/"${f##*servers.}.sources"
done 2> /dev/null
fi
# workaround for late reload of unit file (#1614751)
%{_bindir}/systemctl daemon-reload
%systemd_post chronyd.service chrony-wait.service
%systemd_post chronyd.service chronyd-restricted.service chrony-wait.service
%preun
%systemd_preun chronyd.service chrony-wait.service
%systemd_preun chronyd.service chronyd-restricted.service chrony-wait.service
%postun
%systemd_postun_with_restart chronyd.service
%systemd_postun_with_restart chronyd.service chronyd-restricted.service
%files
%{!?_licensedir:%global license %%doc}
%license COPYING
%doc FAQ NEWS README
%doc FAQ NEWS README examples/chrony.keys.example
%config(noreplace) %{_sysconfdir}/chrony.conf
%config(noreplace) %verify(not md5 size mtime) %attr(640,root,chrony) %{_sysconfdir}/chrony.keys
%ghost %config %attr(640,root,chrony) %{_sysconfdir}/chrony.keys
%config(noreplace) %{_sysconfdir}/logrotate.d/chrony
%config(noreplace) %{_sysconfdir}/sysconfig/chronyd
%{_sysconfdir}/NetworkManager/dispatcher.d/20-chrony
%{_sysconfdir}/dhcp/dhclient.d/chrony.sh
%{_bindir}/chronyc
%{_sbindir}/chronyd
%{_libexecdir}/chrony-helper
%{_prefix}/lib/NetworkManager
%{_prefix}/lib/systemd/ntp-units.d/*.list
%{_unitdir}/chrony*.service
%{_unitdir}/chrony*.timer
%{_sysusersdir}/chrony.conf
%{_mandir}/man[158]/%{name}*.[158]*
%dir %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony
%ghost %dir %attr(750,chrony,chrony) %{_localstatedir}/lib/chrony
%ghost %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony/drift
%ghost %attr(-,chrony,chrony) %{_localstatedir}/lib/chrony/rtc
%dir %attr(-,chrony,chrony) %{_localstatedir}/log/chrony
%ghost %dir %attr(750,chrony,chrony) %{_localstatedir}/log/chrony
%changelog
* Tue Oct 21 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.8-3
- update seccomp filter for new glibc (#2405310)
* Mon Sep 08 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.8-2
- drop root privileges in chronyc by default
* Wed Aug 27 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.8-1
- update to 4.8
* Thu Aug 14 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.8-0.1.pre1
- update to 4.8-pre1
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.7-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Thu Jul 10 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.7-2
- let systemd create /var/lib/chrony and /var/log/chrony (#2372944)
- drop workaround for broken build on aarch64
- drop old conflict with NetworkManager
* Wed Jun 11 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.7-1
- update to 4.7
* Thu May 22 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.7-0.2.pre1
- add workaround for broken build on aarch64
* Wed May 21 2025 Miroslav Lichvar <mlichvar@redhat.com> 4.7-0.1.pre1
- update to 4.7-pre1
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.6.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Tue Oct 08 2024 Miroslav Lichvar <mlichvar@redhat.com> 4.6.1-1
- update to 4.6.1
* Mon Sep 02 2024 Miroslav Lichvar <mlichvar@redhat.com> 4.6-1
- update to 4.6
* Tue Jul 30 2024 Miroslav Lichvar <mlichvar@redhat.com> 4.6-0.1.pre1
- update to 4.6-pre1
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Dec 05 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.5-1
- update to 4.5
* Wed Nov 22 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.5-0.1.pre1
- update to 4.5-pre1
* Wed Aug 09 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.4-1
- update to 4.4
- require tzdata (#2218368)
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.4-0.4.pre2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed Jun 21 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.4-0.3.pre2
- update to 4.4-pre2
- set selinux context in chronyd-restricted service (#2169949)
* Tue Jun 06 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.4-0.2.pre1
- rebuild for AES-GCM-SIV in new nettle
* Wed May 10 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.4-0.1.pre1
- update to 4.4-pre1
- switch from patchX to patch -P X
* Wed Jan 25 2023 Miroslav Lichvar <mlichvar@redhat.com> 4.3-3
- drop default chrony.keys config (#2104918)
- add chronyd-restricted service for minimal NTP client configurations
- convert license tag to SPDX
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Aug 31 2022 Miroslav Lichvar <mlichvar@redhat.com> 4.3-1
- update to 4.3
* Thu Aug 11 2022 Miroslav Lichvar <mlichvar@redhat.com> 4.3-0.1.pre1
- update to 4.3-pre1
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue May 24 2022 Luca BRUNO <lucab@lucabruno.net> - 4.2-6
- Add a sysusers.d fragment for chrony user/group
* Wed Feb 16 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 4.2-5
- Drop obsolete workaround in scriptlet
* Wed Feb 09 2022 Miroslav Lichvar <mlichvar@redhat.com> 4.2-4
- update seccomp filter for latest glibc
* Tue Feb 08 2022 Miroslav Lichvar <mlichvar@redhat.com> 4.2-3
- use NTP servers passed by NetworkManager from DHCPv6 NTP server option
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Dec 16 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.2-1
- update to 4.2
* Thu Dec 02 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.2-0.1.pre1
- update to 4.2-pre1
* Tue Nov 16 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.1-5
- fix hardened chronyd service to allow writing log files
* Wed Sep 29 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.1-4
- harden chronyd and chrony-wait services
* Mon Aug 09 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.1-3
- update seccomp filter for new glibc
- remove unnecessary build requirement
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Thu May 13 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.1-1
- update to 4.1
- enable seccomp filter by default (incompatible with mailonchange directive)
* Thu Apr 22 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.1-0.1.pre1
- update to 4.1-pre1
- rework NM-dispatcher/dhclient detection
- enable LTO on s390x
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 4.0-4
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Tue Feb 02 2021 Miroslav Lichvar <mlichvar@redhat.com> 4.0-3
- update NM DHCP dispatcher script
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
- Add BuildRequires: make
- drop dnssrv service and timer
* Wed Oct 07 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-1
- update to 4.0
- update directory permissions to follow upstream
* Wed Sep 16 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-0.9.pre4
- update to 4.0-pre4
* Wed Aug 26 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-0.8.pre3
- update to 4.0-pre3
- switch to sourcedir directive for loading servers from DHCP
- add NetworkManager dispatcher script to save servers from DHCP when
dhclient is not installed (Robert Fairley)
- drop old migration code from scriptlet
- move default paths in /var/run to /run
* Mon Aug 10 2020 Jeff Law <law@redhat.com> - 4.0-0.7.pre2
- Disable LTO on s390x
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.0-0.6.pre2
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.0-0.5.pre2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> 4.0-0.4.pre2
- use make macros
* Mon May 04 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-0.3.pre2
- rebuild for new nettle
* Mon Apr 20 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-0.2.pre2
- update to 4.0-pre2
* Tue Mar 17 2020 Miroslav Lichvar <mlichvar@redhat.com> 4.0-0.1.pre1
- update to 4.0-pre1
- add net-tools to build requirements for testing
- add missing dependency on coreutils
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Miroslav Lichvar <mlichvar@redhat.com> 3.5-7
- fix testing with new glibc (#1792854)
* Wed Oct 09 2019 Miroslav Lichvar <mlichvar@redhat.com> 3.5-6
- drop timedatex recommendation
- verify upstream signatures
* Thu Aug 22 2019 Lubomir Rintel <lkundrak@v3.sk> - 3.5-5
- Move the NetworkManager dispatcher script out of /etc
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.5-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Tue Jul 16 2019 Miroslav Lichvar <mlichvar@redhat.com> 3.5-3
- rebuild for new nettle
* Thu May 23 2019 Miroslav Lichvar <mlichvar@redhat.com> 3.5-2
- fix shellcheck warnings in helper scripts
* Tue May 14 2019 Miroslav Lichvar <mlichvar@redhat.com> 3.5-1
- update to 3.5

2
chrony.sysusers Normal file
View file

@ -0,0 +1,2 @@
#Type Name ID GECOS Home directory Shell
u chrony - "chrony system user" /var/lib/chrony /sbin/nologin

1
ci.fmf Normal file
View file

@ -0,0 +1 @@
resultsdb-testcase: separate

25
gating.yaml Normal file
View file

@ -0,0 +1,25 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#Rawhide
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build./plans/tier1-public.functional}
#gating rhel
--- !Policy
product_versions:
- rhel-*
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-public.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build./plans/tier1-internal.functional}

View file

@ -0,0 +1,54 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
bcAu2uXfRrQxpaqcOg==
=/wbD
-----END PGP PUBLIC KEY BLOCK-----

47
plans.fmf Normal file
View file

@ -0,0 +1,47 @@
/tier1-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/tier1/internal
adjust:
enabled: false
when: distro == centos-stream, fedora
because: They don't have access to internal repos.
/tier1-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/tier1/public
/tier2-tier3-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/tier2-tier3/internal
adjust:
enabled: false
when: distro == centos-stream, fedora
because: They don't have access to internal repos.
/tier2-tier3-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/tier2-tier3/public
/others-internal:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/others/internal
adjust:
enabled: false
when: distro == centos-stream, fedora
because: They don't have access to internal repos.
/others-public:
plan:
import:
url: https://gitlab.com/redhat/centos-stream/tests/chrony.git
name: /plans/others/public

View file

@ -1,2 +1,3 @@
SHA512 (chrony-3.5.tar.gz) = c4f6376a44d71b6ac2b6d86e3d6fb4348642faeef7f3f3a4d6431627b5645efcc868b005cc398c8292bc3b63a1161fbd1a042c6ac2a0595843f908fe32eed90c
SHA512 (clknetsim-3f5ef9.tar.gz) = 01eea027ec8289d1053236fcc9ee09a8411e5f68cb3279077e50d330169a1ba1284798a50786dbd94382444aeaa652e276b94668c7adf5be66e910f937a9e55d
SHA512 (chrony-4.8-tar-gz-asc.txt) = df7f4e06f74a4b8c9a49e8fe57ea02e0324c5683d036412c32192a09f08e08f33537609cef8df0b4302bfcd63332b3092f33f40c8d02857c93ecea13822b5b47
SHA512 (chrony-4.8.tar.gz) = 949b796bb34db32a5c1b9e6b53be6a22e51c59f24a316d585b8a52a52ab1f61bdf0378dc58b282bb0ba4fac1f05e1e99fbe37cb4259aa2b359e7bf679c176aab
SHA512 (clknetsim-6ee99f50dec8.tar.gz) = 2621d1c44b84b42fcdf644f236ff90dab9f8a8407a138c8719c53dd9c4f21480db3b4ba598116aa1b9d6bd1fa02fc410d85a43baf55ddf8ad47fc09aba4c4477