mirror of
git://slackware.nl/current.git
synced 2024-12-27 09:59:16 +01:00
0f44897071
Thanks for the Slackiversary wishes! a/bcachefs-tools-1.9.4-x86_64-1.txz: Upgraded. a/sysklogd-2.6.0-x86_64-1.txz: Upgraded. l/dbus-python-1.3.2-x86_64-3.txz: Rebuilt. Build with meson, which fixes pulseaudio's qpaeq. Thanks to gmgf and USUARIONUEVO. l/nodejs-20.15.1-x86_64-2.txz: Rebuilt. Recompiled using --shared-nghttp3. l/python-sphinx-7.4.4-x86_64-1.txz: Upgraded. n/c-ares-1.32.2-x86_64-1.txz: Upgraded. n/curl-8.8.0-x86_64-2.txz: Rebuilt. Recompiled using --with-nghttp2=/usr and --with-nghttp3=/usr. n/libnftnl-1.2.7-x86_64-1.txz: Upgraded. n/nghttp3-1.4.0-x86_64-1.txz: Added. Thanks to pbslxw and Lockywolf. n/ntp-4.2.8p18-x86_64-5.txz: Rebuilt. This is a bugfix release to fix a regression in ntp-4.2.8p18: If the IPv6 link-local interface was not ready for binding on the first attempt, ntpd would segfault in update_interfaces(). Thanks to Jonathan Woithe for the bug report and fix.
37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
This patch fixes a regression introduced in ntpd revision 1.4040.1.4[1].
|
|
The first ntpd release to be affected was 4.2.8p18.
|
|
|
|
If the IPv6 link-local interface was not ready for binding on the first
|
|
attempt, ntpd would segfault in update_interfaces(). The cause was the
|
|
inadvertent referencing of the endpoint returned by create_interface() (ep,
|
|
which is NULL on error) rather than the endpoint which contained the address
|
|
information (ep2).
|
|
|
|
In the patch author's experience, the segfault would only occur when ntpd
|
|
was started as part of the boot sequence. Most - but not all - boots were
|
|
affected. Evidently it could happen that the timing of ntpd's start up was
|
|
delayed enough that the IPv6 link-local interface was ready for the bind()
|
|
call when it was first issued by open_socket() via create_interface().
|
|
|
|
No segfaults were observed by the patch's author when starting ntpd manually
|
|
after logging in.
|
|
|
|
[1] [Bug 3913] Avoid duplicate IPv6 link-local manycast associations.
|
|
Complete the switch from struct interface to endpt.
|
|
|
|
--- a/ntp-4.2.8p18/ntpd/ntp_io.c 2024-05-07 20:51:17.000000000 +0930
|
|
+++ b/ntp-4.2.8p18/ntpd/ntp_io.c 2024-07-16 22:06:48.873953452 +0930
|
|
@@ -1921,11 +1921,11 @@
|
|
}
|
|
else {
|
|
DPRINT_INTERFACE(3,
|
|
- (ep, "updating ", " new - FAILED"));
|
|
+ (ep2, "updating ", " new - FAILED"));
|
|
|
|
msyslog(LOG_ERR,
|
|
"cannot bind address %s",
|
|
- stoa(&ep->sin));
|
|
+ stoa(&ep2->sin));
|
|
}
|
|
free(ep2);
|
|
}
|