Bug 25772 - libjingle-call segfaults multiple times per second when using kopete
Summary: libjingle-call segfaults multiple times per second when using kopete
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 7
Hardware: x86_64 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA7-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2019-11-27 22:14 CET by Dan Fandrich
Modified: 2019-12-13 19:26 CET (History)
4 users (show)

See Also:
Source RPM: kopete-19.04.0-1.mga7.src.rpm
CVE:
Status comment:


Attachments

Description Dan Fandrich 2019-11-27 22:14:11 CET
Description of problem:
libjingle-call segfaults multiple times per second when Kopete is configured for an XMPP connection. The stack trace looks like this:

Thread 1 "libjingle-call" received signal SIGSEGV, Segmentation fault.
0x00007f584ebac9c8 in BIO_new () from /lib64/libcrypto.so.1.1
(gdb) bt
#0  0x00007f584ebac9c8 in BIO_new () from /lib64/libcrypto.so.1.1
#1  0x000000000041529d in BIO_new_socket(talk_base::AsyncSocket*) ()
#2  0x0000000000415ba3 in talk_base::OpenSSLAdapter::BeginSSL() ()
#3  0x0000000000415d02 in talk_base::OpenSSLAdapter::StartSSL(char const*, bool) ()
#4  0x0000000000575d83 in XmppSocket::StartTls(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#5  0x00000000005523b3 in buzz::XmppEngineImpl::StartTls(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()
#6  0x00000000005553f4 in buzz::XmppLoginTask::Advance() [clone .part.67] ()
#7  0x0000000000555ba0 in buzz::XmppLoginTask::IncomingStanza(buzz::XmlElement const*, bool) ()
#8  0x000000000055269e in buzz::XmppEngineImpl::IncomingStanza(buzz::XmlElement const*) [clone .part.69] ()
#9  0x0000000000555d3f in buzz::XmppStanzaParser::IncomingEndElement(buzz::XmlParseContext*, char const*)
    ()
#10 0x00007f584ef3232f in doContent () from /lib64/libexpat.so.1
#11 0x00007f584ef333ec in contentProcessor () from /lib64/libexpat.so.1
#12 0x00007f584ef35878 in XML_ParseBuffer () from /lib64/libexpat.so.1
#13 0x000000000052f5e3 in buzz::XmlParser::Parse(char const*, unsigned long, bool) [clone .part.10] ()
#14 0x0000000000552fb8 in buzz::XmppEngineImpl::HandleInput(char const*, unsigned long) ()
#15 0x000000000054e62c in buzz::XmppClient::Private::OnSocketRead() ()
#16 0x0000000000576145 in XmppSocket::OnReadEvent(talk_base::AsyncSocket*) ()
#17 0x0000000000415a58 in talk_base::OpenSSLAdapter::OnReadEvent(talk_base::AsyncSocket*) ()
#18 0x0000000000452960 in talk_base::SocketDispatcher::OnEvent(unsigned int, int) ()
#19 0x0000000000450d44 in talk_base::PhysicalSocketServer::Wait(int, bool) ()
#20 0x0000000000442a15 in talk_base::MessageQueue::Get(talk_base::Message*, int, bool) ()
#21 0x000000000046e791 in talk_base::Thread::ProcessMessages(int) ()
#22 0x000000000040d878 in main ()
(gdb) 

The process was started like this: /usr/bin/libjingle-call --s <xmppserver>:5222

I'm not sure what this does, because I'm able to use the XMPP account, although Kopete is pretty sluggish.

This looks the same issue as https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=913679  The Mageia patch kopete-17.08.3-openssl-1.1.patch appears to have the problem mentioned in that bug.

Version-Release number of selected component (if applicable):
19.04.0

How reproducible:
It happens every time I go online with Kopete now.

Steps to Reproduce:
1. Start Kopete
2. Configure an XMPP account
3. Watch dmesg -w fill your screen with segfaults :-(
Comment 1 Lewis Smith 2019-11-28 12:08:43 CET
Thank you for the report and the valuable pointer - which has a patch to kopete.

I cannot find any package name containing 'jingle', although libjingle is in the pkg maintainers list.
 $ urpmq --requires-recursive kopete | grep jingle
 $
There is an association with openssl, same void:
 $ urpmq --requires-recursive openssl | grep jingle
 $

Assigning to KDE group, CC neoclust for kopete. The enigmatic libjingle has no maintainer.

Summary: libjingle-call segfaults multiple times per second => libjingle segfaults multiple times per second when using kopete
Source RPM: kopete-19.04.0-1.mga7 => kopete-19.04.0-1.mga7.src.rpm
CC: (none) => mageia
Assignee: bugsquad => kde

Dan Fandrich 2019-11-28 12:54:27 CET

Summary: libjingle segfaults multiple times per second when using kopete => libjingle-call segfaults multiple times per second when using kopete

Comment 2 Dan Fandrich 2019-11-28 12:55:02 CET
I've updated the description to more accurately specify the source of the crash. The libjingle-call binary is part of kopete and it's not linked to anything called libjingle.
Comment 3 David GEIGER 2019-11-28 17:01:52 CET
@ Dan Fandrich:

Have you a Cauldron to test? I have perhaps fixes this segfault:

http://svnweb.mageia.org/packages?view=revision&revision=1463262

CC: (none) => geiger.david68210

Comment 4 David GEIGER 2019-12-06 17:39:29 CET
You will be able to test with the upcoming kopete-19.04.0-1.1.mga7 in Core/Updates_testing repo!

Thanks in advance.
Comment 5 Dan Fandrich 2019-12-06 19:19:56 CET
I've found an easy way to reproduce the problem. This is with kopete-19.04.0-1.mga7:

$ printf "testtest\n\n" | libjingle-call -s talk.google.com:5222
JID: Password: 
Logging in to talk.google.com:5222 as testtest@localhost
logging in...
Segmentation fault (core dumped)
Comment 6 Dan Fandrich 2019-12-07 00:51:11 CET
kopete-19.04.0-1.1.mga7 seems to have fixed the problem on x86_64 mga7. The printf test in comment #5 no longer segfaults, and running the program as I did before shows no indication of crashing, either. Thanks!
Comment 7 David GEIGER 2019-12-07 08:18:45 CET
Assigning to QA,


Advisory:
========================

libjingle-call in kopete segfaults due to an upstream incompatibility with openssl 1.1.x. So this update fixes this issue.

========================

Packages in 7/core/updates_testing:
========================
kopete-19.04.0-1.1.mga7.i586.rpm
kopete-handbook-19.04.0-1.1.mga7.noarch.rpm
libkopetecontactlist1-19.04.0-1.1.mga7.i586.rpm
libkopete_videodevice1-19.04.0-1.1.mga7.i586.rpm
libkopeteaddaccountwizard1-19.04.0-1.1.mga7.i586.rpm
libkopete1-19.04.0-1.1.mga7.i586.rpm
libkopeteprivacy1-19.04.0-1.1.mga7.i586.rpm
libkopetechatwindow_shared1-19.04.0-1.1.mga7.i586.rpm
libkopete_otr_shared1-19.04.0-1.1.mga7.i586.rpm
libkopetestatusmenu1-19.04.0-1.1.mga7.i586.rpm
libkopete_oscar1-19.04.0-1.1.mga7.i586.rpm
liboscar1-19.04.0-1.1.mga7.i586.rpm
libkopeteidentity1-19.04.0-1.1.mga7.i586.rpm
libkopete-devel-19.04.0-1.1.mga7.i586.rpm

kopete-19.04.0-1.1.mga7.x86_64.rpm
lib64kopetecontactlist1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopete_videodevice1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopeteaddaccountwizard1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopete1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopeteprivacy1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopetechatwindow_shared1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopete_otr_shared1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopetestatusmenu1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopete_oscar1-19.04.0-1.1.mga7.x86_64.rpm
lib64oscar1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopeteidentity1-19.04.0-1.1.mga7.x86_64.rpm
lib64kopete-devel-19.04.0-1.1.mga7.x86_64.rpm


Source RPM: 
========================
kopete-19.04.0-1.1.mga7.src.rpm

Assignee: kde => qa-bugs

Comment 8 Thomas Andrews 2019-12-12 23:57:58 CET
Since the reporter says his issue is fixed, testing for clean install only.

Installed Kopete on a 64-bit Plasma system. All packages installed cleanly. Then I used qarepo to get the 64-bit update packages:

The following 12 packages are going to be installed:

- kopete-19.04.0-1.1.mga7.x86_64
- lib64kopete1-19.04.0-1.1.mga7.x86_64
- lib64kopeteaddaccountwizard1-19.04.0-1.1.mga7.x86_64
- lib64kopetechatwindow_shared1-19.04.0-1.1.mga7.x86_64
- lib64kopetecontactlist1-19.04.0-1.1.mga7.x86_64
- lib64kopeteidentity1-19.04.0-1.1.mga7.x86_64
- lib64kopeteprivacy1-19.04.0-1.1.mga7.x86_64
- lib64kopetestatusmenu1-19.04.0-1.1.mga7.x86_64
- lib64kopete_oscar1-19.04.0-1.1.mga7.x86_64
- lib64kopete_otr_shared1-19.04.0-1.1.mga7.x86_64
- lib64kopete_videodevice1-19.04.0-1.1.mga7.x86_64
- lib64oscar1-19.04.0-1.1.mga7.x86_64

Again, all packages installed cleanly.

OK for 64-bit. Validating. Advisory in Comment 7.

Whiteboard: (none) => MGA7-64-OK
Keywords: (none) => validated_update
CC: (none) => andrewsfarm, sysadmin-bugs

Comment 9 Rémi Verschelde 2019-12-13 16:41:54 CET
Advisory uploaded.

Keywords: (none) => advisory

Comment 10 Mageia Robot 2019-12-13 19:26:55 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2019-0228.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.