Package init
This commit is contained in:
commit
bea88ec6ff
13
bugfix-fix-autokey-condition-error.patch
Normal file
13
bugfix-fix-autokey-condition-error.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff -Nur ntp-4.2.8p12.bak/ntpd/ntp_crypto.c ntp-4.2.8p12/ntpd/ntp_crypto.c
|
||||||
|
--- ntp-4.2.8p12.bak/ntpd/ntp_crypto.c 2019-01-22 20:41:39.485000000 -0500
|
||||||
|
+++ ntp-4.2.8p12/ntpd/ntp_crypto.c 2019-01-22 20:42:07.748000000 -0500
|
||||||
|
@@ -3387,9 +3387,6 @@
|
||||||
|
*/
|
||||||
|
peer->crypto |= CRYPTO_FLAG_CERT;
|
||||||
|
peer->grpkey = yp->grpkey;
|
||||||
|
- if (peer->ident == NULL || !(peer->crypto &
|
||||||
|
- CRYPTO_FLAG_MASK))
|
||||||
|
- peer->crypto |= CRYPTO_FLAG_VRFY;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
61
bugfix-fix-bind-port-in-debug-mode.patch
Normal file
61
bugfix-fix-bind-port-in-debug-mode.patch
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
diff -Nur ntp-4.2.8p12.bak/ntpdate/ntpdate.c ntp-4.2.8p12/ntpdate/ntpdate.c
|
||||||
|
--- ntp-4.2.8p12.bak/ntpdate/ntpdate.c 2018-08-14 07:51:07.000000000 -0400
|
||||||
|
+++ ntp-4.2.8p12/ntpdate/ntpdate.c 2019-01-22 20:20:02.484000000 -0500
|
||||||
|
@@ -172,6 +172,7 @@
|
||||||
|
* Counter for keeping track of completed servers
|
||||||
|
*/
|
||||||
|
int complete_servers = 0;
|
||||||
|
+int bind_port = 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* File of encryption keys
|
||||||
|
@@ -346,7 +347,7 @@
|
||||||
|
/*
|
||||||
|
* Decode argument list
|
||||||
|
*/
|
||||||
|
- while ((c = ntp_getopt(argc, argv, "46a:bBde:k:o:p:qst:uv")) != EOF)
|
||||||
|
+ while ((c = ntp_getopt(argc, argv, "46a:bBdr:e:k:o:p:qst:uv")) != EOF)
|
||||||
|
switch (c)
|
||||||
|
{
|
||||||
|
case '4':
|
||||||
|
@@ -371,6 +372,9 @@
|
||||||
|
case 'd':
|
||||||
|
++debug;
|
||||||
|
break;
|
||||||
|
+ case 'r':
|
||||||
|
+ bind_port = atoi(ntp_optarg);
|
||||||
|
+ break;
|
||||||
|
case 'e':
|
||||||
|
if (!atolfp(ntp_optarg, &tmp)
|
||||||
|
|| tmp.l_ui != 0) {
|
||||||
|
@@ -432,7 +436,7 @@
|
||||||
|
|
||||||
|
if (errflg) {
|
||||||
|
(void) fprintf(stderr,
|
||||||
|
- "usage: %s [-46bBdqsuv] [-a key#] [-e delay] [-k file] [-p samples] [-o version#] [-t timeo] server ...\n",
|
||||||
|
+ "usage: %s [-46bBdqsuv] [-a key#] [-e delay] [-k file] [-p samples] [-o version#] [-t timeo] [-r port] server ...\n",
|
||||||
|
progname);
|
||||||
|
exit(2);
|
||||||
|
}
|
||||||
|
@@ -1774,6 +1778,21 @@
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
+ else if (debug && bind_port > 0) {
|
||||||
|
+ ((struct sockaddr_in *)(res->ai_addr))->sin_port = htons(bind_port);
|
||||||
|
+ if (bind(fd[nbsock], res->ai_addr,
|
||||||
|
+ SOCKLEN((sockaddr_u *)res->ai_addr)) < 0) {
|
||||||
|
+#ifndef SYS_WINNT
|
||||||
|
+ if (errno == EADDRINUSE)
|
||||||
|
+#else
|
||||||
|
+ if (WSAGetLastError() == WSAEADDRINUSE)
|
||||||
|
+#endif /* SYS_WINNT */
|
||||||
|
+ msyslog(LOG_ERR, "the NTP socket is in use, exiting");
|
||||||
|
+ else
|
||||||
|
+ msyslog(LOG_ERR, "bind() fails: %m");
|
||||||
|
+ exit(1);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
|
||||||
|
#ifdef HAVE_POLL_H
|
||||||
|
fdmask[nbsock].fd = fd[nbsock];
|
||||||
11
bugfix-fix-ifindex-length.patch
Normal file
11
bugfix-fix-ifindex-length.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- ntp-4.2.6p5/lib/isc/unix/interfaceiter.c.orig 2018-10-15 15:16:00.414796346 +0800
|
||||||
|
+++ ntp-4.2.6p5/lib/isc/unix/interfaceiter.c 2018-10-15 15:16:26.605794341 +0800
|
||||||
|
@@ -151,7 +151,7 @@ get_addr(unsigned int family, isc_netadd
|
||||||
|
|
||||||
|
#ifdef __linux
|
||||||
|
#define ISC_IF_INET6_SZ \
|
||||||
|
- sizeof("00000000000000000000000000000001 01 80 10 80 XXXXXXloXXXXXXXX\n")
|
||||||
|
+ sizeof("00000000000000000000000000000001 00000001 80 10 80 XXXXXXloXXXXXXXX\n")
|
||||||
|
static isc_result_t linux_if_inet6_next(isc_interfaceiter_t *);
|
||||||
|
static isc_result_t linux_if_inet6_current(isc_interfaceiter_t *);
|
||||||
|
static void linux_if_inet6_first(isc_interfaceiter_t *iter);
|
||||||
BIN
ntp-4.2.8p13.tar.gz
Normal file
BIN
ntp-4.2.8p13.tar.gz
Normal file
Binary file not shown.
14
ntp-sntp-sysexits.patch
Normal file
14
ntp-sntp-sysexits.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff -up ntp-4.2.8p8/sntp/main.c.orig ntp-4.2.8p8/sntp/main.c
|
||||||
|
--- ntp-4.2.8p8/sntp/main.c.orig 2016-10-19 10:18:41.690800420 +0200
|
||||||
|
+++ ntp-4.2.8p8/sntp/main.c 2016-10-19 10:19:31.900966925 +0200
|
||||||
|
@@ -8,6 +8,10 @@
|
||||||
|
# include <event2/thread.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+#ifdef HAVE_SYSEXITS_H
|
||||||
|
+#include <sysexits.h>
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#include "main.h"
|
||||||
|
#include "ntp_libopts.h"
|
||||||
|
#include "kod_management.h"
|
||||||
24
ntp-ssl-libs.patch
Normal file
24
ntp-ssl-libs.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
diff -up ntp-4.2.8p13/configure.ssl-libs ntp-4.2.8p13/configure
|
||||||
|
--- ntp-4.2.8p13/configure.ssl-libs 2019-02-20 18:56:00.000000000 +0100
|
||||||
|
+++ ntp-4.2.8p13/configure 2019-05-20 10:20:54.700427323 +0200
|
||||||
|
@@ -30257,7 +30257,7 @@ $as_echo_n "checking pkg-config for $pkg
|
||||||
|
CPPFLAGS_NTP="$CPPFLAGS_NTP `$PKG_CONFIG --cflags-only-I $pkg`"
|
||||||
|
CFLAGS_NTP="$CFLAGS_NTP `$PKG_CONFIG --cflags-only-other $pkg`"
|
||||||
|
LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-L $pkg`"
|
||||||
|
- LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-l --static $pkg`"
|
||||||
|
+ LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-l $pkg`"
|
||||||
|
LDFLAGS_NTP="$LDFLAGS_NTP `$PKG_CONFIG --libs-only-other $pkg`"
|
||||||
|
VER_SUFFIX=o
|
||||||
|
ntp_openssl=yes
|
||||||
|
diff -up ntp-4.2.8p13/sntp/configure.ssl-libs ntp-4.2.8p13/sntp/configure
|
||||||
|
--- ntp-4.2.8p13/sntp/configure.ssl-libs 2019-02-20 18:55:31.000000000 +0100
|
||||||
|
+++ ntp-4.2.8p13/sntp/configure 2019-05-20 10:20:43.575400947 +0200
|
||||||
|
@@ -25185,7 +25185,7 @@ $as_echo_n "checking pkg-config for $pkg
|
||||||
|
CPPFLAGS_NTP="$CPPFLAGS_NTP `$PKG_CONFIG --cflags-only-I $pkg`"
|
||||||
|
CFLAGS_NTP="$CFLAGS_NTP `$PKG_CONFIG --cflags-only-other $pkg`"
|
||||||
|
LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-L $pkg`"
|
||||||
|
- LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-l --static $pkg`"
|
||||||
|
+ LDADD_NTP="$LDADD_NTP `$PKG_CONFIG --libs-only-l $pkg`"
|
||||||
|
LDFLAGS_NTP="$LDFLAGS_NTP `$PKG_CONFIG --libs-only-other $pkg`"
|
||||||
|
VER_SUFFIX=o
|
||||||
|
ntp_openssl=yes
|
||||||
14
ntp-wait.service
Normal file
14
ntp-wait.service
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Wait for ntpd to synchronize system clock
|
||||||
|
After=ntpd.service
|
||||||
|
Requires=ntpd.service
|
||||||
|
Before=time-sync.target
|
||||||
|
Wants=time-sync.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/usr/sbin/ntp-wait
|
||||||
|
RemainAfterExit=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
48
ntp.conf
Normal file
48
ntp.conf
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
# For more information about this file, see the ntp.conf(5) man page.
|
||||||
|
|
||||||
|
# Record the frequency of the system clock.
|
||||||
|
driftfile VARNTP/drift
|
||||||
|
|
||||||
|
# Permit time synchronization with our time source, but do not
|
||||||
|
# permit the source to query or modify the service on this system.
|
||||||
|
restrict default nomodify notrap nopeer noepeer noquery
|
||||||
|
|
||||||
|
# Permit association with pool servers.
|
||||||
|
restrict source nomodify notrap noepeer noquery
|
||||||
|
|
||||||
|
# Permit all access over the loopback interface. This could
|
||||||
|
# be tightened as well, but to do so would effect some of
|
||||||
|
# the administrative functions.
|
||||||
|
restrict 127.0.0.1
|
||||||
|
restrict ::1
|
||||||
|
|
||||||
|
# Hosts on local network are less restricted.
|
||||||
|
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
|
||||||
|
|
||||||
|
# Use public servers from the pool.ntp.org project.
|
||||||
|
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
|
||||||
|
pool 2.VENDORZONE.pool.ntp.org iburst
|
||||||
|
|
||||||
|
# Reduce the maximum number of servers used from the pool.
|
||||||
|
tos maxclock 5
|
||||||
|
|
||||||
|
# Enable public key cryptography.
|
||||||
|
#crypto
|
||||||
|
|
||||||
|
includefile ETCNTP/crypto/pw
|
||||||
|
|
||||||
|
# Key file containing the keys and key identifiers used when operating
|
||||||
|
# with symmetric key cryptography.
|
||||||
|
keys ETCNTP/keys
|
||||||
|
|
||||||
|
# Specify the key identifiers which are trusted.
|
||||||
|
#trustedkey 4 8 42
|
||||||
|
|
||||||
|
# Specify the key identifier to use with the ntpdc utility.
|
||||||
|
#requestkey 8
|
||||||
|
|
||||||
|
# Specify the key identifier to use with the ntpq utility.
|
||||||
|
#controlkey 8
|
||||||
|
|
||||||
|
# Enable writing of statistics records.
|
||||||
|
#statistics clockstats cryptostats loopstats peerstats
|
||||||
5
ntp.cryptopw
Normal file
5
ntp.cryptopw
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# This file is included from /etc/ntp.conf. It specifies the password used to
|
||||||
|
# decrypt files containing private keys and identity parameters. The password
|
||||||
|
# is required only if the files have been encrypted.
|
||||||
|
#
|
||||||
|
#crypto pw apassword
|
||||||
63
ntp.dhclient
Normal file
63
ntp.dhclient
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# ntp.sh: dhclient-script plugin for NTP settings,
|
||||||
|
# place in /etc/dhcp/dhclient.d and 'chmod +x ntp.sh' to enable
|
||||||
|
#
|
||||||
|
# Copyright (C) 2008 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# This program 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
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# 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, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# Author(s): David Cantrell <dcantrell@redhat.com>
|
||||||
|
# Miroslav Lichvar <mlichvar@redhat.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
CONF=/etc/ntp.conf
|
||||||
|
SAVECONF=${SAVEDIR}/${CONF##*/}.predhclient.${interface}
|
||||||
|
|
||||||
|
ntp_replace_conf() {
|
||||||
|
echo "$1" | diff -q ${CONF} - > /dev/null 2>&1
|
||||||
|
if [ $? -eq 1 ]; then
|
||||||
|
echo "$1" > ${CONF}
|
||||||
|
restorecon ${CONF} >/dev/null 2>&1
|
||||||
|
systemctl try-restart ntpd.service > /dev/null 2>&1 ||
|
||||||
|
service ntpd condrestart > /dev/null 2>&1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
ntp_config() {
|
||||||
|
if [ ! "${PEERNTP}" = "no" ] && [ -n "${new_ntp_servers}" ] &&
|
||||||
|
[ -e ${CONF} ] && [ -d ${SAVEDIR} ]; then
|
||||||
|
local conf=$(grep -v '^server .* # added by /sbin/dhclient-script$' < ${CONF})
|
||||||
|
local unique_servers=$(comm -23 \
|
||||||
|
<(for s in ${new_ntp_servers}; do echo $s; done | sort -u) \
|
||||||
|
<(echo "$conf" | awk '$1=="peer"||$1=="server"{print $2}' | sort -u))
|
||||||
|
|
||||||
|
conf=$(echo "$conf"
|
||||||
|
for s in ${unique_servers}; do
|
||||||
|
echo "server ${s} ${NTPSERVERARGS} # added by /sbin/dhclient-script"
|
||||||
|
done)
|
||||||
|
|
||||||
|
[ -f ${SAVECONF} ] || touch ${SAVECONF}
|
||||||
|
ntp_replace_conf "$conf"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
ntp_restore() {
|
||||||
|
if [ -e ${CONF} ] && [ -f ${SAVECONF} ]; then
|
||||||
|
local conf=$(grep -v '^server .* # added by /sbin/dhclient-script$' < ${CONF})
|
||||||
|
|
||||||
|
ntp_replace_conf "$conf"
|
||||||
|
rm -f ${SAVECONF}
|
||||||
|
fi
|
||||||
|
}
|
||||||
3
ntp.keys
Normal file
3
ntp.keys
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# For more information about this file, see the man page ntp_auth(5).
|
||||||
|
#
|
||||||
|
# id type key
|
||||||
218
ntp.spec
Normal file
218
ntp.spec
Normal file
@ -0,0 +1,218 @@
|
|||||||
|
%global _hardened_build 1
|
||||||
|
|
||||||
|
Name: ntp
|
||||||
|
Version: 4.2.8p13
|
||||||
|
Release: 1
|
||||||
|
Summary: A protocol designed to synchronize the clocks of computers over a network
|
||||||
|
License: MIT and BSD and BSD with advertising
|
||||||
|
URL: https://www.ntp.org/
|
||||||
|
Source0: https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-%{version}.tar.gz
|
||||||
|
Source1: ntp.conf
|
||||||
|
Source2: ntp.keys
|
||||||
|
Source4: ntpd.sysconfig
|
||||||
|
Source6: ntp.step-tickers
|
||||||
|
Source7: ntpdate.wrapper
|
||||||
|
Source8: ntp.cryptopw
|
||||||
|
Source9: ntpdate.sysconfig
|
||||||
|
#source file ntp.dhclient comes from redhat
|
||||||
|
Source10: ntp.dhclient
|
||||||
|
Source12: ntpd.service
|
||||||
|
Source13: ntpdate.service
|
||||||
|
Source14: ntp-wait.service
|
||||||
|
Source15: sntp.service
|
||||||
|
Source16: sntp.sysconfig
|
||||||
|
#Patch0001 comes from fedora
|
||||||
|
Patch1: ntp-sntp-sysexits.patch
|
||||||
|
#patch0002 comes from fedora
|
||||||
|
Patch2: ntp-ssl-libs.patch
|
||||||
|
|
||||||
|
Patch9000: bugfix-fix-bind-port-in-debug-mode.patch
|
||||||
|
Patch9001: bugfix-fix-autokey-condition-error.patch
|
||||||
|
Patch9002: bugfix-fix-ifindex-length.patch
|
||||||
|
Patch9003: revert-ntpd-fix-autokey-condition-error.patch
|
||||||
|
|
||||||
|
BuildRequires: libcap-devel openssl-devel libedit-devel libevent-devel pps-tools-devel
|
||||||
|
BuildRequires: autogen autogen-libopts-devel systemd gcc perl-generators perl-HTML-Parser
|
||||||
|
Requires(pre): shadow-utils
|
||||||
|
%{?systemd_requires}
|
||||||
|
Recommends: ntpstat timedatex
|
||||||
|
Provides: ntpdate sntp
|
||||||
|
Obsoletes: ntpdate sntp
|
||||||
|
|
||||||
|
%description
|
||||||
|
NTP is a protocol designed to synchronize the clocks of computers over a network, \
|
||||||
|
NTP version 4, a significant revision of the previous NTP standard, is the current \
|
||||||
|
development version. It is formalized by RFCs released by the IETF.
|
||||||
|
|
||||||
|
%package perl
|
||||||
|
Summary: NTP utilities present with Perl
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
%{?systemd_requires}
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description perl
|
||||||
|
Provides Perl scripts calc_tickadj, ntp-wait and ntptrace.
|
||||||
|
|
||||||
|
%package_help
|
||||||
|
|
||||||
|
%global ntpdocdir %{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}
|
||||||
|
|
||||||
|
%if 0%{!?vendorzone:1}
|
||||||
|
%global vendorzone %(source /etc/os-release && echo ${ID}.)
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{name}-%{version} -p1
|
||||||
|
|
||||||
|
sed -i 's|\r||g' html/scripts/{footer.txt,style.css}
|
||||||
|
for f in COPYRIGHT; do
|
||||||
|
iconv -f iso8859-1 -t utf8 -o ${f}{_,} && touch -r ${f}{,_} && mv -f ${f}{_,}
|
||||||
|
done
|
||||||
|
|
||||||
|
%build
|
||||||
|
sed -i 's|$CFLAGS -Wstrict-overflow|$CFLAGS|' configure sntp/configure
|
||||||
|
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fno-strict-overflow"
|
||||||
|
%configure \
|
||||||
|
--sysconfdir=%{_sysconfdir}/ntp/crypto --with-locfile=redhat \
|
||||||
|
--without-ntpsnmpd --enable-all-clocks --enable-parse-clocks \
|
||||||
|
--enable-ntp-signd=%{_localstatedir}/run/ntp_signd --disable-local-libopts
|
||||||
|
|
||||||
|
sed -i 's|/var/db/ntp-kod|%{_localstatedir}/lib/sntp/kod|' sntp/sntp{-opts.c,.1*}
|
||||||
|
sed -i 's|/etc/ntp/drift|%{_localstatedir}/lib/ntp/drift|' \
|
||||||
|
scripts/calc_tickadj/calc_tickadj{,.m*.in}
|
||||||
|
echo '#define KEYFILE "%{_sysconfdir}/ntp/keys"' >> ntpdate/ntpdate.h
|
||||||
|
echo '#define NTP_VAR "%{_localstatedir}/log/ntpstats/"' >> config.h
|
||||||
|
|
||||||
|
%make_build
|
||||||
|
|
||||||
|
sed -e 's|@PATH_PERL@|%{_bindir}/perl|' -e 's|@[^@]*_MS@|8|g' \
|
||||||
|
< scripts/deprecated/html2man.in \
|
||||||
|
> scripts/deprecated/html2man
|
||||||
|
pushd html
|
||||||
|
perl ../scripts/deprecated/html2man
|
||||||
|
sed -i 's/^[\t\ ]*$//;/./,/^$/!d' man/man*/*.[58]
|
||||||
|
popd
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install
|
||||||
|
|
||||||
|
cp -r html/man/man8/{ntpdate,ntptime,tickadj}* $RPM_BUILD_ROOT%{_mandir}/man8
|
||||||
|
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{_docdir}
|
||||||
|
install -d $RPM_BUILD_ROOT%{ntpdocdir}
|
||||||
|
cp -p COPYRIGHT ChangeLog NEWS $RPM_BUILD_ROOT%{ntpdocdir}
|
||||||
|
|
||||||
|
find html | grep -E '\.(html|css|txt|jpg|gif)$' | grep -v '/build/\|sntp' | \
|
||||||
|
cpio -pmd $RPM_BUILD_ROOT%{ntpdocdir}
|
||||||
|
find $RPM_BUILD_ROOT%{ntpdocdir} -type f | xargs chmod 644
|
||||||
|
find $RPM_BUILD_ROOT%{ntpdocdir} -type d | xargs chmod 755
|
||||||
|
|
||||||
|
pushd $RPM_BUILD_ROOT
|
||||||
|
install -d .%{_sysconfdir}/{ntp/crypto,sysconfig,dhcp/dhclient.d} .%{_libexecdir}
|
||||||
|
install -d .%{_localstatedir}/{lib/{s,}ntp,log/ntpstats} .%{_unitdir}
|
||||||
|
touch .%{_localstatedir}/lib/{ntp/drift,sntp/kod}
|
||||||
|
sed -e 's|VENDORZONE\.|%{vendorzone}|' \
|
||||||
|
-e 's|ETCNTP|%{_sysconfdir}/ntp|' \
|
||||||
|
-e 's|VARNTP|%{_localstatedir}/lib/ntp|' \
|
||||||
|
< %{SOURCE1} > .%{_sysconfdir}/ntp.conf
|
||||||
|
touch -r %{SOURCE1} .%{_sysconfdir}/ntp.conf
|
||||||
|
install -p -m600 %{SOURCE2} .%{_sysconfdir}/ntp/keys
|
||||||
|
install -p -m755 %{SOURCE7} .%{_libexecdir}/ntpdate-wrapper
|
||||||
|
install -p -m644 %{SOURCE4} .%{_sysconfdir}/sysconfig/ntpd
|
||||||
|
install -p -m644 %{SOURCE9} .%{_sysconfdir}/sysconfig/ntpdate
|
||||||
|
sed -e 's|VENDORZONE\.|%{vendorzone}|' \
|
||||||
|
< %{SOURCE6} > .%{_sysconfdir}/ntp/step-tickers
|
||||||
|
touch -r %{SOURCE6} .%{_sysconfdir}/ntp/step-tickers
|
||||||
|
sed -e 's|VENDORZONE\.|%{vendorzone}|' \
|
||||||
|
< %{SOURCE16} > .%{_sysconfdir}/sysconfig/sntp
|
||||||
|
touch -r %{SOURCE16} .%{_sysconfdir}/sysconfig/sntp
|
||||||
|
install -p -m600 %{SOURCE8} .%{_sysconfdir}/ntp/crypto/pw
|
||||||
|
install -p -m755 %{SOURCE10} .%{_sysconfdir}/dhcp/dhclient.d/ntp.sh
|
||||||
|
install -p -m644 %{SOURCE12} .%{_unitdir}/ntpd.service
|
||||||
|
install -p -m644 %{SOURCE13} .%{_unitdir}/ntpdate.service
|
||||||
|
install -p -m644 %{SOURCE14} .%{_unitdir}/ntp-wait.service
|
||||||
|
install -p -m644 %{SOURCE15} .%{_unitdir}/sntp.service
|
||||||
|
|
||||||
|
mkdir .%{_prefix}/lib/systemd/ntp-units.d
|
||||||
|
echo 'ntpd.service' > .%{_prefix}/lib/systemd/ntp-units.d/60-ntpd.list
|
||||||
|
|
||||||
|
popd
|
||||||
|
|
||||||
|
%pre
|
||||||
|
/usr/sbin/groupadd -g 38 ntp 2> /dev/null || :
|
||||||
|
/usr/sbin/useradd -u 38 -g 38 -s /sbin/nologin -M -r -d %{_sysconfdir}/ntp ntp 2>/dev/null || :
|
||||||
|
|
||||||
|
%post
|
||||||
|
%systemd_post ntpd.service ntpdate.service sntp.service
|
||||||
|
|
||||||
|
%post perl
|
||||||
|
%systemd_post ntp-wait.service
|
||||||
|
|
||||||
|
%preun
|
||||||
|
%systemd_preun ntpd.service ntpdate.service sntp.service
|
||||||
|
|
||||||
|
%preun perl
|
||||||
|
%systemd_preun ntp-wait.service
|
||||||
|
|
||||||
|
%postun
|
||||||
|
%systemd_postun_with_restart ntpd.service ntpdate.service sntp.service
|
||||||
|
|
||||||
|
%postun perl
|
||||||
|
%systemd_postun ntp-wait.service
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc COPYRIGHT ChangeLog NEWS
|
||||||
|
%dir %attr(-,ntp,ntp) %{_localstatedir}/lib/ntp
|
||||||
|
%dir %attr(-,ntp,ntp) %{_localstatedir}/log/ntpstats
|
||||||
|
%dir %{_localstatedir}/lib/sntp
|
||||||
|
%dir %{_sysconfdir}/ntp
|
||||||
|
%dir %attr(750,root,ntp) %{_sysconfdir}/ntp/crypto
|
||||||
|
%dir %{_sysconfdir}/dhcp/dhclient.d
|
||||||
|
%config(noreplace) %{_sysconfdir}/sysconfig/ntpd
|
||||||
|
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ntp.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/sysconfig/ntpdate
|
||||||
|
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ntp/step-tickers
|
||||||
|
%config(noreplace) %{_sysconfdir}/ntp/keys
|
||||||
|
%config(noreplace) %{_sysconfdir}/ntp/crypto/pw
|
||||||
|
%config(noreplace) %{_sysconfdir}/sysconfig/sntp
|
||||||
|
%{_sysconfdir}/dhcp/dhclient.d/ntp.sh
|
||||||
|
%{_sbindir}/ntp-keygen
|
||||||
|
%{_sbindir}/ntpd
|
||||||
|
%{_sbindir}/ntpdc
|
||||||
|
%{_sbindir}/ntpq
|
||||||
|
%{_sbindir}/ntptime
|
||||||
|
%{_sbindir}/tickadj
|
||||||
|
%{_sbindir}/ntpdate
|
||||||
|
%{_sbindir}/sntp
|
||||||
|
%ghost %attr(644,ntp,ntp) %{_localstatedir}/lib/ntp/drift
|
||||||
|
%ghost %{_localstatedir}/lib/sntp/kod
|
||||||
|
|
||||||
|
%{_unitdir}/*.service
|
||||||
|
%{_prefix}/lib/systemd/ntp-units.d/*.list
|
||||||
|
%{_libexecdir}/ntpdate-wrapper
|
||||||
|
|
||||||
|
%files perl
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_sbindir}/calc_tickadj
|
||||||
|
%{_sbindir}/ntp-wait
|
||||||
|
%{_sbindir}/ntptrace
|
||||||
|
%{_unitdir}/ntp-wait.service
|
||||||
|
%{_datadir}/ntp
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%dir %{ntpdocdir}
|
||||||
|
%{ntpdocdir}/html
|
||||||
|
%{_mandir}/man5/*.5*
|
||||||
|
%{_mandir}/man8/*.8*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Sep 16 2019 openEuler Buildteam <buildteam@openeuler.org> - 1.12.0-1
|
||||||
|
- Type:enhancement
|
||||||
|
- Id:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:Fix building without zlib-devel
|
||||||
|
|
||||||
|
* Tue Sep 3 2019 liyongqiang<liyongqiang10@huawei.com> - 4.2.8p12-2
|
||||||
|
- Package init
|
||||||
3
ntp.step-tickers
Normal file
3
ntp.step-tickers
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
# List of NTP servers used by the ntpdate service.
|
||||||
|
|
||||||
|
0.VENDORZONE.pool.ntp.org
|
||||||
13
ntpd.service
Normal file
13
ntpd.service
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Network Time Service
|
||||||
|
After=syslog.target ntpdate.service sntp.service
|
||||||
|
Conflicts=systemd-timesyncd.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
EnvironmentFile=-/etc/sysconfig/ntpd
|
||||||
|
ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS
|
||||||
|
PrivateTmp=true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
2
ntpd.sysconfig
Normal file
2
ntpd.sysconfig
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Command line options for ntpd
|
||||||
|
OPTIONS="-g"
|
||||||
13
ntpdate.service
Normal file
13
ntpdate.service
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Set time via NTP
|
||||||
|
After=network-online.target nss-lookup.target
|
||||||
|
Before=time-sync.target
|
||||||
|
Wants=time-sync.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=/usr/libexec/ntpdate-wrapper
|
||||||
|
RemainAfterExit=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
5
ntpdate.sysconfig
Normal file
5
ntpdate.sysconfig
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# Options for ntpdate
|
||||||
|
OPTIONS="-p 2"
|
||||||
|
|
||||||
|
# Set to 'yes' to sync hw clock after successful ntpdate
|
||||||
|
SYNC_HWCLOCK=no
|
||||||
29
ntpdate.wrapper
Normal file
29
ntpdate.wrapper
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
ntpconf=/etc/ntp.conf
|
||||||
|
ntpstep=/etc/ntp/step-tickers
|
||||||
|
|
||||||
|
[ "$EUID" != "0" ] && exit 4
|
||||||
|
[ -x /usr/sbin/ntpdate ] || exit 5
|
||||||
|
[ -f /etc/sysconfig/ntpdate ] || exit 6
|
||||||
|
. /etc/sysconfig/ntpdate
|
||||||
|
|
||||||
|
[ -f $ntpstep ] && tickers=$(sed 's/#.*//' $ntpstep) || tickers=
|
||||||
|
|
||||||
|
if ! echo "$tickers" | grep -qi '[a-z0-9]' && [ -f $ntpconf ]; then
|
||||||
|
# the step-tickers file doesn't specify a server,
|
||||||
|
# use servers from ntp.conf instead
|
||||||
|
tickers=$(awk '$1=="peer"||$1=="server"{print $2}' $ntpconf | \
|
||||||
|
grep -Ev '127\.127\.[0-9]+\.[0-9]+')
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! echo "$tickers" | grep -qi '[a-z0-9]'; then
|
||||||
|
echo "NTP server not specified in $ntpstep or $ntpconf"
|
||||||
|
exit 6
|
||||||
|
fi
|
||||||
|
|
||||||
|
/usr/sbin/ntpdate -s -b $OPTIONS $tickers &> /dev/null
|
||||||
|
RETVAL=$?
|
||||||
|
|
||||||
|
[ $RETVAL -eq 0 ] && [ "$SYNC_HWCLOCK" = "yes" ] && /sbin/hwclock --systohc
|
||||||
|
exit $RETVAL
|
||||||
27
revert-ntpd-fix-autokey-condition-error.patch
Normal file
27
revert-ntpd-fix-autokey-condition-error.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From 302cec597f3ab4e522dacc3563953d10c0f7e656 Mon Sep 17 00:00:00 2001
|
||||||
|
From: zhangyao <zhangyao65@huawei.com>
|
||||||
|
Date: Thu, 25 Jul 2019 16:42:51 +0000
|
||||||
|
Subject: [PATCH] revert-ntpd-fix-autokey-condition-error
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
ntpd/ntp_crypto.c | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/ntpd/ntp_crypto.c b/ntpd/ntp_crypto.c
|
||||||
|
index 53f3253..62ea72c 100644
|
||||||
|
--- a/ntpd/ntp_crypto.c
|
||||||
|
+++ b/ntpd/ntp_crypto.c
|
||||||
|
@@ -3387,6 +3387,9 @@ cert_hike(
|
||||||
|
*/
|
||||||
|
peer->crypto |= CRYPTO_FLAG_CERT;
|
||||||
|
peer->grpkey = yp->grpkey;
|
||||||
|
+ if (peer->ident == NULL || !(peer->crypto &
|
||||||
|
+ CRYPTO_FLAG_MASK))
|
||||||
|
+ peer->crypto |= CRYPTO_FLAG_VRFY;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
||||||
14
sntp.service
Normal file
14
sntp.service
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Set time via SNTP
|
||||||
|
After=network-online.target
|
||||||
|
Before=time-sync.target
|
||||||
|
Wants=time-sync.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
EnvironmentFile=/etc/sysconfig/sntp
|
||||||
|
ExecStart=/usr/sbin/sntp $OPTIONS
|
||||||
|
RemainAfterExit=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
2
sntp.sysconfig
Normal file
2
sntp.sysconfig
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
# Options for sntp
|
||||||
|
OPTIONS="-s 0.VENDORZONE.pool.ntp.org"
|
||||||
Loading…
x
Reference in New Issue
Block a user