Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package chrony for openSUSE:Factory checked 
in at 2021-07-04 22:10:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chrony (Old)
 and      /work/SRC/openSUSE:Factory/.chrony.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "chrony"

Sun Jul  4 22:10:30 2021 rev:31 rq:903544 version:4.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/chrony/chrony.changes    2021-07-01 
07:05:26.807565033 +0200
+++ /work/SRC/openSUSE:Factory/.chrony.new.2625/chrony.changes  2021-07-04 
22:10:31.469330410 +0200
@@ -1,0 +2,10 @@
+Thu Jul  1 12:38:13 UTC 2021 - Reinhard Max <m...@suse.com>
+
+- boo#1187906: Consolidate all references to the helper script.
+- bsc#1173760: MD5 is not available from mozilla-nss in FIPS mode,
+  but needed for calculating refids from IPv6 addresses as part of
+  the NTP protocol (rfc5905). As this is a non-cryptographic use of
+  MD5 we can use our own implementation without violating FIPS
+  rules: chrony-refid-internal-md5.patch .
+
+-------------------------------------------------------------------

New:
----
  chrony-refid-internal-md5.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ chrony.spec ++++++
--- /var/tmp/diff_new_pack.mVz4hT/_old  2021-07-04 22:10:32.129325305 +0200
+++ /var/tmp/diff_new_pack.mVz4hT/_new  2021-07-04 22:10:32.129325305 +0200
@@ -25,6 +25,7 @@
 %if ! %{defined _fillupdir}
   %define _fillupdir %{_localstatedir}/adm/fillup-templates
 %endif
+%define chrony_helper %{_libexecdir}/chrony/helper
 Name:           chrony
 Version:        4.1
 Release:        0
@@ -53,6 +54,7 @@
 Patch1:         chrony-service-helper.patch
 Patch2:         chrony-logrotate.patch
 Patch3:         chrony-service-ordering.patch
+Patch4:         chrony-refid-internal-md5.patch
 BuildRequires:  NetworkManager-devel
 BuildRequires:  bison
 BuildRequires:  gcc-c++
@@ -63,10 +65,10 @@
 BuildRequires:  pps-tools-devel
 # The timezone package is needed for the "make check" tests. It can be
 # removed if the call to make check is ever deleted.
+BuildRequires:  sysuser-tools
 BuildRequires:  timezone
 BuildRequires:  pkgconfig(systemd)
 BuildRequires:  rubygem(asciidoctor)
-BuildRequires:  sysuser-tools
 Recommends:     logrotate
 Requires(post): %fillup_prereq
 %sysusers_requires
@@ -147,11 +149,12 @@
 
 %prep
 %setup -q -a 10
+sed -e 's-@CHRONY_HELPER@-%{chrony_helper}-g' -i %{PATCH1} %{SOURCE3} 
%{SOURCE5}
 %patch0 -p1
-sed -e 's-@LIBEXECDIR@-%{_libexecdir}-g' -i %{PATCH1}
 %patch1 -p1
 %patch2 -p1
 %patch3
+%patch4
 
 # Remove pool statements from the default /etc/chrony.conf. They will
 # be provided by branding packages in /etc/chrony.d/pool.conf .
@@ -203,7 +206,6 @@
   %{buildroot}%{_unitdir}/chronyd.service
 install -Dpm 0644 examples/chrony-wait.service \
   %{buildroot}%{_unitdir}/chrony-wait.service
-sed -e 's-@LIBEXECDIR@-%{_libexecdir}-g' -i %{SOURCE5}
 install -Dpm 0644 %{SOURCE5} \
   %{buildroot}%{_unitdir}/chrony-dnssrv@.service
 install -Dpm 0644 %{SOURCE6} \
@@ -221,8 +223,7 @@
 
 install -Dpm 0644 %{SOURCE2} \
   %{buildroot}%{_fillupdir}/sysconfig.chronyd
-install -Dpm 755 %{SOURCE4} \
-  %{buildroot}%{_libexecdir}/%name/helper
+install -Dpm 755 %{SOURCE4} %{buildroot}%{chrony_helper}
 
 install -d %{buildroot}%{_localstatedir}/log/chrony
 touch %{buildroot}%{_localstatedir}/lib/chrony/{drift,rtc}


++++++ chrony-dnssrv@.service ++++++
--- /var/tmp/diff_new_pack.mVz4hT/_old  2021-07-04 22:10:32.189324841 +0200
+++ /var/tmp/diff_new_pack.mVz4hT/_new  2021-07-04 22:10:32.189324841 +0200
@@ -5,4 +5,4 @@
 
 [Service]
 Type=oneshot
-ExecStart=@LIBEXECDIR@/chrony/helper update-dnssrv-servers %I
+ExecStart=@CHRONY_HELPER@ update-dnssrv-servers %I

++++++ chrony-refid-internal-md5.patch ++++++
--- util.c.orig
+++ util.c
@@ -32,7 +32,13 @@
 #include "logging.h"
 #include "memory.h"
 #include "util.h"
-#include "hash.h"
+/*
+ * We use the internal MD5 implementation here to avoid trouble with
+ * FIPS. This is OK, because MD5 is only being used for the non-crypto
+ * purpose of hashing 128 bit IPv6 addresses to 32 bit referenc IDs,
+ * as required by RFC 5905.
+ */
+#include "md5.c"
 
 #define NSEC_PER_SEC 1000000000
 
@@ -392,21 +398,17 @@ UTI_IsIPReal(const IPAddr *ip)
 uint32_t
 UTI_IPToRefid(const IPAddr *ip)
 {
-  static int MD5_hash = -1;
-  unsigned char buf[16];
+  MD5_CTX ctx;
+  unsigned char *buf = &ctx.digest;
 
   switch (ip->family) {
     case IPADDR_INET4:
       return ip->addr.in4;
     case IPADDR_INET6:
-      if (MD5_hash < 0)
-        MD5_hash = HSH_GetHashId(HSH_MD5);
-
-      if (MD5_hash < 0 ||
-          HSH_Hash(MD5_hash, (const unsigned char *)ip->addr.in6, sizeof 
(ip->addr.in6),
-                   NULL, 0, buf, sizeof (buf)) != sizeof (buf))
-        LOG_FATAL("Could not get MD5");
-
+      MD5Init(&ctx);
+      MD5Update(&ctx, (unsigned const char *)ip->addr.in6,
+                     sizeof(ip->addr.in6));
+      MD5Final(&ctx);
       return (uint32_t)buf[0] << 24 | buf[1] << 16 | buf[2] << 8 | buf[3];
   }
   return 0;
++++++ chrony-service-helper.patch ++++++
--- /var/tmp/diff_new_pack.mVz4hT/_old  2021-07-04 22:10:32.225324563 +0200
+++ /var/tmp/diff_new_pack.mVz4hT/_new  2021-07-04 22:10:32.229324532 +0200
@@ -5,7 +5,7 @@
  PIDFile=/run/chrony/chronyd.pid
  EnvironmentFile=-/etc/sysconfig/chronyd
  ExecStart=/usr/sbin/chronyd $OPTIONS
-+ExecStartPost=@LIBEXECDIR@/chrony/helper update-daemon
++ExecStartPost=@CHRONY_HELPER@ update-daemon
  PrivateTmp=yes
  ProtectHome=yes
  ProtectSystem=full

++++++ chrony.dhclient ++++++
--- /var/tmp/diff_new_pack.mVz4hT/_old  2021-07-04 22:10:32.257324315 +0200
+++ /var/tmp/diff_new_pack.mVz4hT/_new  2021-07-04 22:10:32.257324315 +0200
@@ -8,13 +8,13 @@
                for server in $new_ntp_servers; do
                        echo "$server ${NTPSERVERARGS:-iburst}" >> $SERVERFILE
                done
-               /usr/share/chrony-helper update-daemon || :
+               @CHRONY_HELPER@ update-daemon || :
        fi
 }
 
 chrony_restore() {
        if [ -f $SERVERFILE ]; then
                rm -f $SERVERFILE
-               /usr/share/chrony-helper update-daemon || :
+               @CHRONY_HELPER@ update-daemon || :
        fi
 }

Reply via email to