Bug#1051972: jami-daemon: Fails to start with libopendht2 2.6.0.4-1
Sebastian Ramacher
sramacher at debian.org
Fri Sep 15 06:59:44 BST 2023
Control: reassign -1 libopendht2 2.6.0.4-1
Control: retitle -1 libopendht2: broke ABI without SONAME bump
Control: affects -1 jami-daemon
On 2023-09-15 03:07:58 +0000, Asher Gordon wrote:
> Package: jami-daemon
> Version: 20230206.0~ds2-1.3
> Severity: grave
> X-Debbugs-Cc: none, Asher Gordon <AsDaGo at posteo.net>
>
> Dear Maintainer,
>
> After upgrading libopendht2, jami-daemon fails to start, making Jami
> unusable. Downgrading libopendht2 fixes the problem.
>
> $ apt-cache policy libopendht2 | grep Installed:
> Installed: 2.6.0.4-1
> $ jami
> Using Qt runtime version: 6.4.2
> "notify server name: dunst, vendor: knopwob, version: 1.9.2 (2023-04-20), spec: 1.2"
> "Using locale: en_US"
> "Error : jamid is not available, make sure it is running"
> terminate called after throwing an instance of 'char const*'
> Aborted
> $ /usr/libexec/jamid
> /usr/libexec/jamid: symbol lookup error: /usr/libexec/jamid: undefined symbol: _ZN3dht4http8ResolverC1ERN4asio10io_contextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt10shared_ptrINS_6LoggerEE
So libopendht2 broke its ABI without a transition. This needs to be
fixed in opendht.
Cheers
>
> Downgrading:
>
> $ sudo sed -i~ s/trixie/bookworm/g /etc/apt/sources.list
> $ sudo apt-get update
> Get:1 tor+https://deb.debian.org/debian bookworm InRelease [151 kB]
> [...]
> Fetched 88.2 MB in 42s (2,120 kB/s)
> Reading package lists... Done
> $ sudo apt-get install libopendht2=2.4.12-7
> Reading package lists... Done
> Building dependency tree... Done
> Reading state information... Done
> The following packages will be DOWNGRADED:
> libopendht2
> 0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
> Need to get 806 kB of archives.
> After this operation, 377 kB disk space will be freed.
> Do you want to continue? [Y/n] y
> Get:1 tor+https://deb.debian.org/debian bookworm/main amd64 libopendht2 amd64 2.4.12-7 [806 kB]
> Fetched 806 kB in 2s (335 kB/s)
> debconf: unable to initialize frontend: Dialog
> debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.)
> debconf: falling back to frontend: Readline
> dpkg: warning: downgrading libopendht2:amd64 from 2.6.0.4-1 to 2.4.12-7
> (Reading database ... 586843 files and directories currently installed.)
> Preparing to unpack .../libopendht2_2.4.12-7_amd64.deb ...
> Unpacking libopendht2:amd64 (2.4.12-7) over (2.6.0.4-1) ...
> Setting up libopendht2:amd64 (2.4.12-7) ...
> Processing triggers for libc-bin (2.37-8) ...
> $ apt-cache policy libopendht2 | grep Installed:
> Installed: 2.4.12-7
> $ jami
> Using Qt runtime version: 6.4.2
> "notify server name: dunst, vendor: knopwob, version: 1.9.2 (2023-04-20), spec: 1.2"
> "Using locale: en_US"
> No migration required
> [...]
> $ /usr/libexec/jamid
> Jami Daemon 13.7.0, by Savoir-faire Linux Inc. 2004-2023
> https://jami.net/
> [Video support enabled]
> [Plugins support enabled]
>
> 22:56:59.121 os_core_unix.c !pjlib 2.12.1 for POSIX initialized
> C-c C-cCaught signal Interrupt, terminating...
>
> Jami runs as expected.
>
> It looks like jamid references an undefined symbol,
> _ZN3dht4http8ResolverC1ERN4asio10io_contextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt10shared_ptrINS_6LoggerEE,
> which is likely present in the old version of libopendht2. I don't know
> a whole lot about C++ and name mangling, but I would guess that Jami had
> been using a deprecated or undocumented symbol, which has been removed
> or renamed in libopendht2. It's also possible that the new libopendht2
> was compiled with a newer compiler, which mangled the name differently,
> but as far as I know, name mangling is supposed to be fairly stable
> (again, I don't know a whole lot about this).
>
> Also, the name unmangled:
>
> $ echo _ZN3dht4http8ResolverC1ERN4asio10io_contextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt10shared_ptrINS_6LoggerEE | c++filt
> dht::http::Resolver::Resolver(asio::io_context&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<dht::Logger>)
>
> Thanks,
> Asher
>
> -- System Information:
> Debian Release: trixie/sid
> APT prefers testing-debug
> APT policy: (500, 'testing-debug'), (500, 'testing')
> Architecture: amd64 (x86_64)
>
> Kernel: Linux 6.4.0-4-amd64 (SMP w/12 CPU threads; PREEMPT)
> Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
> Shell: /bin/sh linked to /usr/bin/dash
> Init: systemd (via /run/systemd/system)
> LSM: AppArmor: enabled
>
> Versions of packages jami-daemon depends on:
> ii libarchive13 3.6.2-1
> ii libasound2 1.2.9-2
> ii libavcodec60 7:6.0-6
> ii libavdevice60 7:6.0-6
> ii libavfilter9 7:6.0-6
> ii libavformat60 7:6.0-6
> ii libavutil58 7:6.0-6
> ii libc6 2.37-8
> ii libdbus-c++-1-0v5 0.9.0-12
> ii libfmt9 9.1.0+ds1-2
> ii libgcc-s1 13.2.0-3
> ii libgit2-1.5 1.5.1+ds-1
> ii libgnutls30 3.8.1-4+b1
> ii libixml11 1:1.14.18-1
> ii libjsoncpp25 1.9.5-6
> ii libnettle8 3.9.1-2
> ii libopendht2 2.6.0.4-1
> ii libpulse0 16.1+dfsg1-2+b1
> ii libsecp256k1-1 0.2.0-2
> ii libspeexdsp1 1.2.1-1
> ii libssl3 3.0.10-1
> ii libstdc++6 13.2.0-3
> ii libswresample4 7:6.0-6
> ii libswscale7 7:6.0-6
> ii libudev1 254.1-3
> ii libupnp17 1:1.14.18-1
> ii libuuid1 2.39.2-1
> ii libwebrtc-audio-processing1 0.3-1+b1
> ii libyaml-cpp0.8 0.8.0+dfsg-3
> ii zlib1g 1:1.2.13.dfsg-3
>
> jami-daemon recommends no packages.
>
> jami-daemon suggests no packages.
>
> -- no debconf information
>
> --
> ...very few phenomena can pull someone out of Deep Hack Mode, with two
> noted exceptions: being struck by lightning, or worse, your *computer*
> being struck by lightning.
> -- Matt Welsh
> --------
> I prefer to send and receive mail encrypted. Please send me your
> public key, and if you do not have my public key, please let me
> know. Thanks.
>
> GPG fingerprint: 38F3 975C D173 4037 B397 8095 D4C9 C4FC 5460 8E68
--
Sebastian Ramacher
More information about the Pkg-voip-maintainers
mailing list