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