Source: bind9-libs
Version: 1:9.11.19+dfsg-1
Severity: important
tags: patch

Hello, I tried to setup a balanced dhcp server and the service got crashing 
after some seconds (both primary and secondary)

this patch, from Ubuntu fixes the issue
(I asked to forward upstream too)

diff -Nru bind9-libs-9.11.19+dfsg/debian/changelog 
bind9-libs-9.11.19+dfsg/debian/changelog
--- bind9-libs-9.11.19+dfsg/debian/changelog    2020-05-19 22:19:50.000000000 
+0200
+++ bind9-libs-9.11.19+dfsg/debian/changelog    2020-08-11 15:25:14.000000000 
+0200
@@ -1,3 +1,11 @@
+bind9-libs (1:9.11.19+dfsg-2) unstable; urgency=medium
+
+  [ Jorge Niedbalski <jorge.niedbal...@canonical.com> ]
+  * debian/patches/0010-fix-1872118.patch: Check if pending_send
+    if set before calling dispatch_send. Fixes LP: #1872118.
+
+ -- Gianfranco Costamagna <locutusofb...@debian.org>  Tue, 11 Aug 2020 
15:25:14 +0200
+
 bind9-libs (1:9.11.19+dfsg-1) unstable; urgency=medium

   * New upstream version 9.11.19+dfsg
diff -Nru bind9-libs-9.11.19+dfsg/debian/patches/0010-fix-1872118.patch 
bind9-libs-9.11.19+dfsg/debian/patches/0010-fix-1872118.patch
--- bind9-libs-9.11.19+dfsg/debian/patches/0010-fix-1872118.patch       
1970-01-01 01:00:00.000000000 +0100
+++ bind9-libs-9.11.19+dfsg/debian/patches/0010-fix-1872118.patch       
2020-08-11 15:25:08.000000000 +0200
@@ -0,0 +1,22 @@
+Description: Check if sock->pending_send is set
+before calling dispatch_send(). This would prevent
+the assertion failure in cases where a socket is not dead (closed)
+and its still pending to send data and the process_fd
+event gets triggered due a wakeup.
+
+Author: Jorge Niedbalski <jorge.niedbal...@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1872118
+Forwarded: no
+Last-Update: 2020-08-03
+
+--- bind9-libs-9.11.16+dfsg.orig/lib/isc/unix/socket.c
++++ bind9-libs-9.11.16+dfsg/lib/isc/unix/socket.c
+@@ -4050,7 +4050,7 @@ check_write:
+               if (!SOCK_DEAD(sock)) {
+                       if (sock->connecting)
+                               dispatch_connect(sock);
+-                      else
++                      else if (!sock->pending_send)
+                               dispatch_send(sock);
+               }
+               unwatch_write = true;
diff -Nru bind9-libs-9.11.19+dfsg/debian/patches/series 
bind9-libs-9.11.19+dfsg/debian/patches/series
--- bind9-libs-9.11.19+dfsg/debian/patches/series       2020-05-19 
22:19:50.000000000 +0200
+++ bind9-libs-9.11.19+dfsg/debian/patches/series       2020-08-11 
15:25:14.000000000 +0200
@@ -7,3 +7,4 @@
 0007-skip-rtld-deepbind-for-dyndb.diff
 0008-Use-absolute-srcdir-path-to-protoc-c-invocation.patch
 0009-python-fix-for-dist-packages.patch
+0010-fix-1872118.patch


please apply if possible!

G.

Reply via email to