Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Ondřej Surý
Control: reassign -1 libdns-export1110

I think I see the problem:

(sid-amd64)root@calcifer:/home/ondrej# ldd /usr/sbin/dhcpd
linux-vdso.so.1 (0x7ffe5236a000)
libeatmydata.so => /usr/lib/x86_64-linux-gnu/libeatmydata.so 
(0x7efc93c96000)
libdns-export.so.1109 => /lib/x86_64-linux-gnu/libdns-export.so.1109 
(0x7efc93a64000)
^^^
libisc-export.so.1105 => /lib/x86_64-linux-gnu/libisc-export.so.1105 
(0x7efc939eb000)
libirs-export.so.161 => /lib/x86_64-linux-gnu/libirs-export.so.161 
(0x7efc939dd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7efc9381a000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7efc93815000)
libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 
(0x7efc93527000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 
(0x7efc93506000)
libdns-export.so.1110 => /lib/x86_64-linux-gnu/libdns-export.so.1110 
(0x7efc932cb000)
^^^
libisccfg-export.so.163 => 
/lib/x86_64-linux-gnu/libisccfg-export.so.163 (0x7efc9329c000)
/lib64/ld-linux-x86-64.so.2 (0x7efc93da)

So, dhcpd links with libdns-export.so.1109, but libisccfg-export.so.163 links 
with libdns-export.so.1110.

The symbols in libdns-export.so are not versioned, hence the crash, because 
dns_g_mctx gets initialized
in one library, but the symbol in other library gets used (and not initialized).

A isc-dhcpd binNMU should help right away.  I can also bump the 
libisccfg-export.so.163 SOVERSION,
but it will take longer.

Ondrej
--
Ondřej Surý
ond...@sury.org



> On 22 Mar 2020, at 20:43, Sven Hartge  wrote:
> 
> On 22.03.20 20:38, Ondřej Surý wrote:
> 
>> could you try in isolated environment try installing isc-dhcp and bind
>> 9.16 and check the libraries that the crashing process links (using ldd)
>> and perhaps generate a strace?
>> 
>> That is if you have time right now, I won’t have time to sit at computer
>> until tomorrow morning (CET).
> 
> Same for me. It will take until tomorrow CET morning before I can do that.
> 
> I took a look at the ldd output while debugging this, but failed to make
> a note of it and it already scrolled outside of my screen buffer
> unfortunately.
> 
> 
> Grüße,
> Sven.
> 



signature.asc
Description: Message signed with OpenPGP


Processed: Re: Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Debian Bug Tracking System
Processing control commands:

> reassign -1 libdns-export1110
Bug #954736 [bind9] Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT
Bug reassigned from package 'bind9' to 'libdns-export1110'.
No longer marked as found in versions bind9/1:9.16.1-2.
Ignoring request to alter fixed versions of bug #954736 to the same values 
previously set

-- 
954736: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=954736
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Ondřej Surý
The src:bind9 package doesn’t even provide -dev package, so you are still 
compiling against 9.11.

Ondrej
--
Ondřej Surý 

> On 22 Mar 2020, at 20:09, Sven Hartge  wrote:
> 
> On 22.03.20 19:07, Sven Hartge wrote:
> 
>> Interestingly, isc-dhcp-server 4.4.1 does not even compile against the
>> current 9.16 libs from Sid right now. Something is very broken here.
> 
> I have to correct that part. It seems my checkout from Salsa was wrong,
> as recompiling the source package works.
> 
> Grüße,
> Sven.
> 



Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Ondřej Surý


> On 22 Mar 2020, at 19:39, Sven Hartge  wrote:
> 
> Interestingly, isc-dhcp-server 4.4.1 does not even compile against the
> current 9.16 libs from Sid right now. Something is very broken here.

It should not. There’s bind9-libs compatibility package for isc-dhcp and 
others. Let’s keep the bug open till we find the cause. I might do a second 
upload with “Breaks:” to prevent people installing it.

Ondrej
--
Ondřej Surý 



Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Sven Hartge
On 22.03.20 19:07, Sven Hartge wrote:

> Interestingly, isc-dhcp-server 4.4.1 does not even compile against the
> current 9.16 libs from Sid right now. Something is very broken here.

I have to correct that part. It seems my checkout from Salsa was wrong,
as recompiling the source package works.

Grüße,
Sven.



signature.asc
Description: OpenPGP digital signature


Bug#954736: Upgrade to 9.16.1-1 causes dhcpd to die with SIGABRT

2020-03-22 Thread Sven Hartge
Package: bind9
Version: 1:9.16.1-2
Severity: critical
Justification: breaks unrelated packages

Hi!

The recent upgrade from 1:9.11.16+dfsg-2 to 1:9.16.1-1 causes
isc-dhcp-server to die upon start with SIGABRT, creating the following
backtrace:

8<
GNU gdb (Debian 9.1-2) 9.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
.
Find the GDB manual and other documentation resources online at:
.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/sbin/dhcpd...
Reading symbols from 
/usr/lib/debug/.build-id/ed/444f0630db7a22e134b6492994fb9e5481c253.debug...
[New LWP 3946312]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `dhcpd -t'.
Program terminated with signal SIGABRT, Aborted.
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50  ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt full
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
set = {__val = {0, 4, 223338299409, 0, 0, 139816691506048, 262160, 
139816690240512, 0, 15, 257, 5501063141756457984, 1, 44, 4294967295, 
4294967295}}
pid = 
tid = 
ret = 
#1  0x7f299c21a55b in __GI_abort () at abort.c:79
save_stage = 1
act = {__sigaction_handler = {sa_handler = 0x30, sa_sigaction = 0x30}, 
sa_mask = {__val = {139816691747131, 139816692083696, 4398046511104, 17, 
139816692083456, 
  94694505873952, 139816693949594, 924, 48, 0, 139816691767231, 
94694505873952, 5501063141756457984, 94694505873952, 1, 0}}, sa_flags = 0, 
  sa_restorer = 0x561fc7fa88e0 }
sigs = {__val = {32, 0 }}
#2  0x7f299c3da3ff in isc_assertion_failed (file=file@entry=0x7f299c421e9b 
"../../../lib/isc/hash.c", line=line@entry=217, 
type=type@entry=isc_assertiontype_require, 
cond=cond@entry=0x7f299c42047a "mctx != ((void *)0)") at 
../../../lib/isc/assertions.c:52
No locals.
#3  0x7f299c3df6fa in isc_hash_create (mctx=, 
entropy=entropy@entry=0x0, limit=limit@entry=255) at ../../../lib/isc/hash.c:225
result = 0
#4  0x7f299c4b36bf in initialize () at ../../../lib/dns/lib.c:91
result = 
result = 
#5  dns_lib_init () at ../../../lib/dns/lib.c:127
result = 
#6  0x561fc7f3b498 in dhcp_context_create (flags=1, local4=0x0, local6=0x0) 
at isclib.c:171
result = 
#7  0x561fc7eb6f17 in main (argc=2, argv=0x7ffd9f040a18) at dhcpd.c:404
fd = 
i = 
status = 
ent = 
s = 
cftest = 0
lftest = 0
pid = 
pbuf = 
"\006\t\004\237\375\177\000\000\265\311)\234)\177\000\000\000\000\000"
daemon = 
dfd = {-1, -1}
quiet = 0
server = 0x0
result = 
seed = 
ip = 
parse = 0xc2
lose = 0
have_dhcpd_conf = 0
have_dhcpd_db = 0
have_dhcpd_pid = 0
local_family_set = 0
traceinfile = 0x0
traceoutfile = 0x0
set_user = 0x0
set_group = 0x0
set_chroot = 0x0
8<

I needed to downgrade quite many library packages out of the whole ISC
library ecosystem back down to the ones in testing to be able to start
dhcpd again:

2020-03-22 18:52:14 upgrade libbind9-161:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:52:15 upgrade libisccfg163:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:52:16 upgrade libirs161:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:52:46 upgrade bind9-libs:amd64 1:9.16.1-2 1:9.16.1-1
2020-03-22 18:52:50 upgrade libisccc161:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:52:51 upgrade libisc1105:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:54:10 upgrade liblwres161:amd64 1:9.11.17+dfsg-2 1:9.11.16+dfsg-2
2020-03-22 18:57:05 upgrade libirs-export161:amd64 1:9.11.17+dfsg-2 
1:9.11.16+dfsg-2
2020-03-22 18:58:18 upgrade libisc-export1105:amd64 1:9.11.17+dfsg-2 
1:9.11.16+dfsg-2
2020-03-22 19:02:22 upgrade libisccfg-export163-dbgsym:amd64 1:9.11.17+dfsg-2 
1:9.11.16+dfsg-2
2020-03-22 19:02:26 upgrade libisccfg-export163:amd64 1:9.11.17+dfsg-2 
1:9.11.16+dfsg-2

Interestingly, isc-dhcp-server 4.4.1 does not even compile against the
current 9.16 libs from Sid right now. Something is very broken here.

Grüße,
Sven.

-- System Information:
Debian