linphone-desktop
linphone-desktop copied to clipboard
SIGSEGV: No auth info found
Describe the bug I try make a call and get Linphone crash
Expected behavior Linphone does not crash.
Desktop (please complete the following information):
- OS: [Fedora 33]
- Version [e.g. fressh snapshot image dated by Oct 21 2021]
SDK logs linphone.log
Additional context BGP backtrace
(gdb) bt
#0 linphone::Address::getUsername[abi:cxx11]() const (this=0x0) at src/linphone++.cc:4147
#1 0x0000000000585e4b in CoreHandlers::onAuthenticationRequested (this=<optimized out>, core=..., authInfo=..., method=<optimized out>) at /builds/BC/public/linphone-desktop/linphone-app/src/components/core/CoreHandlers.cpp:63
#2 0x00007ffff790c5a2 in linphone_core_listener_on_authentication_requested_cb (core=<optimized out>, auth_info=<optimized out>, method=<optimized out>) at src/linphone++.cc:5127
#3 0x00007ffff74a95ad in linphone_core_notify_authentication_requested (lc=<optimized out>, ai=<optimized out>, method=<optimized out>) at ../../../../../../../linphone-sdk/liblinphone/coreapi/vtables.c:163
#4 0x00007ffff71a84fc in LinphonePrivate::AuthStack::processAuthRequested (this=<optimized out>) at ../../../../../../../linphone-sdk/liblinphone/src/auth-info/auth-stack.cpp:103
#5 0x00007ffff71a7f46 in LinphonePrivate::AuthStack::onTimeout (data=0x7fffffffd090, events=0) at ../../../../../../../linphone-sdk/liblinphone/src/auth-info/auth-stack.cpp:121
#6 0x00007ffff3380269 in belle_sip_main_loop_iterate (ml=<optimized out>) at ../../../../../../../linphone-sdk/belle-sip/src/belle_sip_loop.c:697
#7 belle_sip_main_loop_run (ml=<optimized out>) at ../../../../../../../linphone-sdk/belle-sip/src/belle_sip_loop.c:753
#8 0x00007ffff338052f in belle_sip_main_loop_sleep (ml=0x1645a20, milliseconds=0) at ../../../../../../../linphone-sdk/belle-sip/src/belle_sip_loop.c:766
#9 0x00007ffff747aae2 in LinphonePrivate::Sal::iterate (this=0x7fffffffd080) at ../../../../../../../linphone-sdk/liblinphone/src/sal/sal.h:137
#10 linphone_core_iterate (lc=0x15ee220) at ../../../../../../../linphone-sdk/liblinphone/coreapi/linphonecore.c:4022
#11 0x000000000058c734 in CoreManager::iterate (this=0x1232020) at /builds/BC/public/linphone-desktop/linphone-app/src/components/core/CoreManager.cpp:362
#12 0x00007ffff498e6bb in QMetaObject::activate(QObject*, int, int, void**) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#13 0x00007ffff499b017 in QTimer::timeout(QTimer::QPrivateSignal) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#14 0x00007ffff499b308 in QTimer::timerEvent(QTimerEvent*) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#15 0x00007ffff498f28b in QObject::event(QEvent*) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#16 0x00007ffff56f0e7c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Widgets.so.5
#17 0x00007ffff56f7fd4 in QApplication::notify(QObject*, QEvent*) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Widgets.so.5
#18 0x00007ffff49619d8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#19 0x00007ffff49b8d09 in QTimerInfoList::activateTimers() () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#20 0x00007ffff49b94e9 in ?? () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#21 0x00007fffec656a9f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#22 0x00007fffec6a8a98 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#23 0x00007fffec653e73 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#24 0x00007ffff49b982f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#25 0x00007ffff496027a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#26 0x00007ffff4968ce0 in QCoreApplication::exec() () from /tmp/.mount_Linphob46XKm/usr/bin/../lib/libQt5Core.so.5
#27 0x00000000004c2afd in main (argc=<optimized out>, argv=<optimized out>) at /builds/BC/public/linphone-desktop/linphone-app/src/app/main.cpp:46
Full backtrace in the log above.
Contact: <sip:192.168.1.6:5860;transport=udp>;+sip.instance="urn:uuid:0af7a5b2-bbfa-00cb-88d0-1c1066be51e9" What is that? This is not a sip address.
Why?
sip:192.168.1.6:5860;transport=udp
192.168.1.6 - my local IP 5860 - port listened by Linphone
[20:00:07:791][Info]Core:linphone: Creating listening point [0x182bc50] on [sip:0.0.0.0:5860;transport=UDP]
[20:00:07:791][Info]Core:linphone: Creating listening point [0x182b440] on [sip:0.0.0.0:5860;transport=TCP]
transport=udp - Linphone want to use UDP socket to peer communication
What is wrong????
oops I guess I was too quickly to answer ;) If it crashes on getUsername(), I think that this is not robust on contact/config without username.
I do not understand Linphone internal structures and cannot comment about what is wrong. For me, it looks like a NULL value dereferencing here. And required to add NULL value check here. If NULL, then output some addition log with error level. And exit from the function with error code.
This will allow making additional troubleshooting in the future.