diff --git a/server/ntp/comar/ntpd-service.py b/server/ntp/comar/ntpd-service.py
index 8ad77f3c4b..9eac7f0ad5 100644
--- a/server/ntp/comar/ntpd-service.py
+++ b/server/ntp/comar/ntpd-service.py
@@ -13,7 +13,7 @@ PIDFILE = "/run/ntpd.pid"
@synchronized
def start():
startService(command="/usr/sbin/ntpd",
- args=config.get("OPTIONS", "-x -g -u ntp:ntp -p %s " % PIDFILE),
+ args=config.get("OPTIONS", "-x -u ntp:ntp -p %s " % PIDFILE),
donotify=True)
@synchronized
diff --git a/server/ntp/comar/ntpdate-service.py b/server/ntp/comar/ntpdate-service.py
index 7a62c99cb9..a4df66bfcc 100644
--- a/server/ntp/comar/ntpdate-service.py
+++ b/server/ntp/comar/ntpdate-service.py
@@ -52,7 +52,7 @@ def start():
# Eventhough the ntpdate is a oneshot process, the pidfile hack is used to
# work around COMAR's silly status() check in startService()
startService(command="/usr/sbin/ntpdate",
- args="%s %s" % (config.get("OPTIONS", "-q -n -g -u ntp -s -b"), tickers),
+ args="%s %s" % (config.get("OPTIONS", "-u ntp -s -b"), tickers),
makepid=True,
pidfile=PIDFILE,
donotify=True)
diff --git a/server/ntp/files/fedora/ntpdate.sysconfig b/server/ntp/files/fedora/ntpdate.sysconfig
index 34a5c093be..73fc8ac717 100644
--- a/server/ntp/files/fedora/ntpdate.sysconfig
+++ b/server/ntp/files/fedora/ntpdate.sysconfig
@@ -1,5 +1,5 @@
# Options for ntpdate
-OPTIONS="-u ntp -s -b"
+OPTIONS="-q -u ntp -s -b"
# Set to 'yes' to sync hw clock after successful ntpdate
SYNC_HWCLOCK=no
diff --git a/server/ntp/files/gentoo/ntp-4.2.8-ipc-caps.patch b/server/ntp/files/gentoo/ntp-4.2.8-ipc-caps.patch
new file mode 100644
index 0000000000..a1e558052d
--- /dev/null
+++ b/server/ntp/files/gentoo/ntp-4.2.8-ipc-caps.patch
@@ -0,0 +1,16 @@
+http://bugs.ntp.org/show_bug.cgi?id=2646
+https://bugs.gentoo.org/533966
+
+--- a/ntpd/ntpd.c
++++ a/ntpd/ntpd.c
+@@ -971,8 +971,8 @@ getgroup:
+ char *captext;
+
+ captext = (0 != interface_interval)
+- ? "cap_sys_time,cap_net_bind_service=pe"
+- : "cap_sys_time=pe";
++ ? "cap_ipc_lock,cap_sys_time,cap_net_bind_service=pe"
++ : "cap_ipc_lock,cap_sys_time=pe";
+ caps = cap_from_text(captext);
+ if (!caps) {
+ msyslog(LOG_ERR,
diff --git a/server/ntp/files/gentoo/ntp-4.2.8-sntp-test-pthreads.patch b/server/ntp/files/gentoo/ntp-4.2.8-sntp-test-pthreads.patch
new file mode 100644
index 0000000000..4f8d15ff85
--- /dev/null
+++ b/server/ntp/files/gentoo/ntp-4.2.8-sntp-test-pthreads.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/563922
+http://bugs.ntp.org/show_bug.cgi?id=2906
+
+--- a/sntp/tests/Makefile.in
++++ b/sntp/tests/Makefile.in
+@@ -783,6 +783,7 @@ base_LDADD = \
+ $(LIBOPTS_LDADD) \
+ $(LDADD_LIBEVENT) \
+ $(top_builddir)/../libntp/libntp.a \
++ $(PTHREAD_LIBS) \
+ $(LDADD_LIBNTP) \
+ $(LDADD_NTP) \
+ $(NULL)
diff --git a/server/ntp/files/gentoo/ntp-4.2.8_p14-add_cap_ipc_lock.patch b/server/ntp/files/gentoo/ntp-4.2.8_p14-add_cap_ipc_lock.patch
new file mode 100644
index 0000000000..183b6d8d47
--- /dev/null
+++ b/server/ntp/files/gentoo/ntp-4.2.8_p14-add_cap_ipc_lock.patch
@@ -0,0 +1,13 @@
+https://bugs.gentoo.org/711530
+
+--- ntp-4.2.8p14/ntpd/ntpd.c
++++ ntp-4.2.8p14/ntpd/ntpd.c
+@@ -1189,7 +1189,7 @@
+ * drop privileges in this case.
+ */
+ cap_t caps;
+- caps = cap_from_text("cap_sys_time,cap_setuid,cap_setgid,cap_sys_chroot,cap_net_bind_service=pe");
++ caps = cap_from_text("cap_ipc_lock,cap_sys_time,cap_setuid,cap_setgid,cap_sys_chroot,cap_net_bind_service=pe");
+ if ( ! caps) {
+ msyslog( LOG_ERR, "cap_from_text() failed: %m" );
+ exit(-1);
diff --git a/server/ntp/files/gentoo/ntp-4.2.8_p15-gcc10.patch b/server/ntp/files/gentoo/ntp-4.2.8_p15-gcc10.patch
new file mode 100644
index 0000000000..619ea07558
--- /dev/null
+++ b/server/ntp/files/gentoo/ntp-4.2.8_p15-gcc10.patch
@@ -0,0 +1,75 @@
+
+Source:
+https://bugs.ntp.org/show_bug.cgi?id=3688
+
+Juergen Perlinger 2020-12-24 07:10:49 UTC
+Created attachment 1760 [details]
+ultimate patch, v00
+
+--- a/sntp/log.c 2020-12-24 08:02:05.206004072 +0100
++++ a/sntp/log.c 2020-12-24 08:02:05.206004072 +0100
+@@ -2,7 +2,7 @@
+
+ #include "log.h"
+
+-const char *progname; /* for msyslog use too */
++extern const char *progname; /* for msyslog use too */
+
+ static int counter = 0;
+
+--- a/sntp/main.c 2020-12-24 08:02:05.210003956 +0100
++++ a/sntp/main.c 2020-12-24 08:02:05.210003956 +0100
+@@ -20,7 +20,6 @@
+ #include "log.h"
+ #include "libntp.h"
+
+-
+ int shutting_down;
+ int time_derived;
+ int time_adjusted;
+--- a/sntp/main.h 2020-12-24 08:02:05.210003956 +0100
++++ a/sntp/main.h 2020-12-24 08:02:05.210003956 +0100
+@@ -16,6 +16,14 @@
+
+ #include "crypto.h"
+
++/* !Attention! 'progname' must de instantiated in any program that wants
++ * to use this library. Putting it into the library breaks a lot of
++ * things, since many programs define it itself and then the symbol
++ * might end up twice in the linker.
++ */
++extern const char * progname;
++
++
+ void set_li_vn_mode(struct pkt *spkt, char leap, char version, char mode);
+ extern int sntp_main(int argc, char **argv, const char *);
+ int generate_pkt(struct pkt *x_pkt, const struct timeval *tv_xmt,
+--- a/sntp/sntp.c 2020-12-24 08:02:05.210003956 +0100
++++ a/sntp/sntp.c 2020-12-24 08:02:05.210003956 +0100
+@@ -2,6 +2,8 @@
+
+ #include "main.h"
+
++const char * progname;
++
+ int
+ main (
+ int argc,
+--- a/sntp/tests/t-log.c 2020-12-24 08:02:05.210003956 +0100
++++ a/sntp/tests/t-log.c 2020-12-24 08:02:05.210003956 +0100
+@@ -3,7 +3,6 @@
+ #include "ntp_types.h"
+
+
+-//#include "log.h"
+ #include "log.c"
+
+ void setUp(void);
+--- a/tests/libntp/test-libntp.h 2020-12-24 08:02:05.210003956 +0100
++++ a/tests/libntp/test-libntp.h 2020-12-24 08:02:05.210003956 +0100
+@@ -5,4 +5,4 @@
+
+ time_t timefunc(time_t *ptr);
+ void settime(int y, int m, int d, int H, int M, int S);
+-time_t nowtime;
++extern time_t nowtime;
diff --git a/server/ntp/pspec.xml b/server/ntp/pspec.xml
index c74d7b5855..e97fe7ddbd 100644
--- a/server/ntp/pspec.xml
+++ b/server/ntp/pspec.xml
@@ -30,27 +30,12 @@
libevent-devel
-
-
0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch
-
+ gentoo/ntp-4.2.8-ipc-caps.patch
+ gentoo/ntp-4.2.8-sntp-test-pthreads.patch
+ gentoo/ntp-4.2.8_p14-add_cap_ipc_lock.patch
+ gentoo/ntp-4.2.8_p15-gcc10.patch
+
@@ -128,7 +113,7 @@
- 2022-07-31
+ 2022-07-30
4.2.8_p15
Rebuild.
Mustafa Cinasal