jami-daemon issues
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues
2021-07-09T19:25:49Z
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/451
Plugins: code deduplication
2021-07-09T19:25:49Z
Aline Gondim Santos
Plugins: code deduplication
CallServicesManager and ChatServicesManager have lots of similar code that can be deduplicated
by using a superclass.
CallServicesManager and ChatServicesManager have lots of similar code that can be deduplicated
by using a superclass.
Aline Gondim Santos
Aline Gondim Santos
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/450
ASAN crash in plugins
2021-07-09T20:49:01Z
Sébastien Blin
ASAN crash in plugins
```
2 ] Using hardware decoding for h264 with vaapi
[1613742998.197|61788|media_decoder.cpp :481 ] Decoding video using H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (h264)
[1613742998.197|61788|sinkclient.cpp :191 ] ShmHolder[Jami Dae...
```
2 ] Using hardware decoding for h264 with vaapi
[1613742998.197|61788|media_decoder.cpp :481 ] Decoding video using H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (h264)
[1613742998.197|61788|sinkclient.cpp :191 ] ShmHolder[Jami Daemon_shm_46818_0]: new sizes: f=0, a=103
[1613742998.197|61788|sinkclient.cpp :158 ] ShmHolder: new holder 'Jami Daemon_shm_46818_0'
[1613742998.197|61788|accel.cpp :151 ] Found compatible hardware format for h264 decoder with vaapi
[h264 @ 0x619000233780] Failed setup for format vaapi_vld: hwaccel initialisation returned error.
[h264 @ 0x619000233780] decode_slice_header error
[h264 @ 0x619000233780] no frame!
[1613742998.197|61788|media_decoder.cpp :551 ] Decoding error falling back to software
[1613742998.198|61788|media_decoder.cpp :481 ] Decoding video using H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (h264)
[1613742998.198|61788|media_decoder.cpp :491 ] Not using hardware decoding for h264
[1613742998.199|46819|observer.h :225 ] PublishMapSubject: detaching observers
[1613742998.205|46819|observer.h :237 ] ~PublishMapSubject()
[1613742998.205|46819|observer.h :225 ] PublishMapSubject: detaching observers
[1613742998.205|46819|observer.h :237 ] ~PublishMapSubject()
[1613742998.205|46819|observer.h :225 ] PublishMapSubject: detaching observers
[1613742998.205|46819|observer.h :237 ] ~PublishMapSubject()
[1613742998.205|46819|observer.h :225 ] PublishMapSubject: detaching observers
=================================================================
[1613742998.206|46819|sipcall.cpp :893 ] [call:5072620612984597] peerHungup: no invite session for this call
[1613742998.206|46819|call.cpp :234 ] [call:5072620612984597] state change 2/2, cnx 4/0, code 103
[1613742998.206|46819|call.cpp :264 ] [call:5072620612984597] emit client call state change HUNGUP, code 103
[1613742998.206|46819|manager.cpp :1683 ] [call:5072620612984597] Remove local audio
[1613742998.206|46819|ringbufferpool.cpp:263 ] Unbind call 5072620612984597 from all bound calls
[1613742998.206|46819|sipcall.cpp :971 ] [call:5072620612984597] removeCall()
[1613742998.206|46819|call_factory.cpp :39 ] Removing call 5072620612984597
[1613742998.206|46819|call_factory.cpp :43 ] Remaining 0 SIP call(s)
[1613742998.206|46819|call.cpp :234 ] [call:5072620612984597] state change 2/6, cnx 0/0, code 0
[1613742998.206|46819|call.cpp :264 ] [call:5072620612984597] emit client call state change OVER, code 0
[1613742998.206|46857|ice_transport.cpp :452 ] [ice:0x6270000e0100] destroying
[1613742998.206|46819|sipcall.cpp :406 ] Sending video keyframe request via SIP INFO
==46818==ERROR: AddressSanitizer: heap-use-after-free on address 0x60b0001a04c0 at pc 0x55fce8fe5db5 bp 0x7fff08066890 sp 0x7fff08066880
[1613742998.206|46819|sipcall.cpp :410 ] Error sending video keyframe request: VoipLinkException occurred: Couldn't get invite dialog
READ of size 8 at 0x60b0001a04c0 thread T0
#0 0x55fce8fe5db4 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_clear() /usr/include/c++/9/bits/list.tcc:74
#1 0x55fce8fe5777 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::~_List_base() (/home/sblin/ring-project/daemon/bin/dring+0x931777)
#2 0x55fce8fe4b93 in std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::~list() (/home/sblin/ring-project/daemon/bin/dring+0x930b93)
#3 0x55fce8fe4bb7 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >::~pair() (/home/sblin/ring-project/daemon/bin/dring+0x930bb7)
#4 0x55fce8fe4be7 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x930be7)
#5 0x55fce8fe3ec6 in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >*) /usr/include/c++/9/bits/alloc_traits.h:497
#6 0x55fce8fe0304 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x92c304)
#7 0x55fce8fdb450 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x927450)
#8 0x55fce8fd89f5 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x9249f5)
#9 0x55fce8fe1eeb in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::clear() /usr/include/c++/9/bits/stl_tree.h:1266
#10 0x55fce8fddf4a in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >) /usr/include/c++/9/bits/stl_tree.h:2522
#11 0x55fce8fd9afc in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/include/c++/9/bits/stl_tree.h:2536
#12 0x55fce8fd774e in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/home/sblin/ring-project/daemon/bin/dring+0x92374e)
#13 0x55fce8fcea7e in jami::CallServicesManager::clearAVSubject(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/plugin/callservicesmanager.cpp:70
#14 0x55fce929ec1b in jami::SIPCall::stopAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1328
#15 0x55fce92985d4 in jami::SIPCall::hold() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:782
#16 0x55fce9298566 in jami::SIPCall::onhold(std::function<void (bool)>&&) /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:768
#17 0x55fce9105ab8 in jami::Manager::onHoldCall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/manager.cpp:1099
#18 0x55fce8c3d691 in DRing::hold(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/client/callmanager.cpp:99
#19 0x55fce8bbc821 in DBusCallManager::hold(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/bin/dbus/dbuscallmanager.cpp:62
#20 0x55fce8bc4097 in cx::ring::Ring::CallManager_adaptor::_hold_stub(DBus::CallMessage const&) /home/sblin/ring-project/daemon/bin/dbus/dbuscallmanager.adaptor.h:885
#21 0x55fce8bce899 in DBus::Callback<cx::ring::Ring::CallManager_adaptor, DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const /home/sblin/ring-project/daemon/contrib/x86_64-linux-gnu/include/dbus-c++-1/dbus-c++/util.h:283
#22 0x55fce8c13ab9 in DBus::InterfaceAdaptor::dispatch_method(DBus::CallMessage const&) (/home/sblin/ring-project/daemon/bin/dring+0x55fab9)
#23 0x55fce8c1b79c in DBus::ObjectAdaptor::handle_message(DBus::Message const&) (/home/sblin/ring-project/daemon/bin/dring+0x56779c)
#24 0x55fce8c190d5 in DBus::ObjectAdaptor::Private::message_function_stub(DBusConnection*, DBusMessage*, void*) (/home/sblin/ring-project/daemon/bin/dring+0x5650d5)
#25 0x7f34be32e44c (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x2444c)
#26 0x7f34be31eb03 in dbus_connection_dispatch (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x14b03)
#27 0x55fce8c0ee6f in DBus::Connection::Private::do_dispatch() (/home/sblin/ring-project/daemon/bin/dring+0x55ae6f)
#28 0x55fce8c11011 in DBus::Dispatcher::dispatch_pending(std::__cxx11::list<DBus::Connection::Private*, std::allocator<DBus::Connection::Private*> >&) (/home/sblin/ring-project/daemon/bin/dring+0x55d011)
#29 0x55fce8c1110b in DBus::Dispatcher::dispatch_pending() (/home/sblin/ring-project/daemon/bin/dring+0x55d10b)
#30 0x55fce8c1267e in DBus::BusDispatcher::enter() (/home/sblin/ring-project/daemon/bin/dring+0x55e67e)
#31 0x55fce8b14f1c in DBusClient::event_loop() /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:272
#32 0x55fce8b01f31 in main /home/sblin/ring-project/daemon/bin/main.cpp:222
#33 0x7f34bd36a0b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
#34 0x55fce8b00d7d in _start (/home/sblin/ring-project/daemon/bin/dring+0x44cd7d)
0x60b0001a04c0 is located 0 bytes inside of 104-byte region [0x60b0001a04c0,0x60b0001a0528)
freed by thread T1 here:
#0 0x7f34be46b8df in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1108df)
#1 0x55fce8fe4fd5 in __gnu_cxx::new_allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::deallocate(std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > >*, unsigned long) /usr/include/c++/9/ext/new_allocator.h:128
#2 0x55fce8fe4174 in std::allocator_traits<std::allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >::deallocate(std::allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >&, std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > >*, unsigned long) /usr/include/c++/9/bits/alloc_traits.h:470
#3 0x55fce8fe6249 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_put_node(std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > >*) /usr/include/c++/9/bits/stl_list.h:442
#4 0x55fce8fe5e00 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_clear() /usr/include/c++/9/bits/list.tcc:81
#5 0x55fce8fe5777 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::~_List_base() (/home/sblin/ring-project/daemon/bin/dring+0x931777)
#6 0x55fce8fe4b93 in std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::~list() (/home/sblin/ring-project/daemon/bin/dring+0x930b93)
#7 0x55fce8fe4bb7 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >::~pair() (/home/sblin/ring-project/daemon/bin/dring+0x930bb7)
#8 0x55fce8fe4be7 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x930be7)
#9 0x55fce8fe3ec6 in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >*) /usr/include/c++/9/bits/alloc_traits.h:497
#10 0x55fce8fe0304 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x92c304)
#11 0x55fce8fdb450 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x927450)
#12 0x55fce8fd89f5 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >*) (/home/sblin/ring-project/daemon/bin/dring+0x9249f5)
#13 0x55fce8fe1eeb in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::clear() /usr/include/c++/9/bits/stl_tree.h:1266
#14 0x55fce8fddf4a in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >) /usr/include/c++/9/bits/stl_tree.h:2522
#15 0x55fce8fd9afc in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/include/c++/9/bits/stl_tree.h:2536
#16 0x55fce8fd774e in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/home/sblin/ring-project/daemon/bin/dring+0x92374e)
#17 0x55fce8fcea7e in jami::CallServicesManager::clearAVSubject(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/plugin/callservicesmanager.cpp:70
#18 0x55fce929ec1b in jami::SIPCall::stopAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1328
#19 0x55fce92991b9 in jami::SIPCall::peerHungup() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:888
#20 0x55fce91142de in jami::Manager::peerHungupCall(jami::Call&) /home/sblin/ring-project/daemon/src/manager.cpp:2089
#21 0x55fce929ab5e in operator() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1021
#22 0x55fce92a79dc in operator() /home/sblin/ring-project/daemon/src/manager.h:975
#23 0x55fce92aee24 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
#24 0x55fce8c0e4db in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
#25 0x55fce9214f43 in jami::ScheduledExecutor::loop() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:124
#26 0x55fce921345a in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:28
#27 0x55fce9217b83 in __invoke_impl<void, jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:60
#28 0x55fce9217b38 in __invoke<jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:95
#29 0x55fce9217ae5 in _M_invoke<0> /usr/include/c++/9/thread:244
previously allocated by thread T1 here:
#0 0x7f34be46a947 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x10f947)
#1 0x55fce8fe4fae in __gnu_cxx::new_allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::allocate(unsigned long, void const*) /usr/include/c++/9/ext/new_allocator.h:114
#2 0x55fce8fe4131 in std::allocator_traits<std::allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > > >::allocate(std::allocator<std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >&, unsigned long) /usr/include/c++/9/bits/alloc_traits.h:444
#3 0x55fce8fe0f70 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_get_node() /usr/include/c++/9/bits/stl_list.h:438
#4 0x55fce8fdc68c in std::_List_node<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > >* std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_create_node<StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&>(StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&) /usr/include/c++/9/bits/stl_list.h:630
#5 0x55fce8fd907a in void std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_insert<StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&>(std::_List_iterator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > >, StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&) /usr/include/c++/9/bits/stl_list.h:1907
#6 0x55fce8fd6b95 in std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >& std::__cxx11::list<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::emplace_back<StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&>(StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >&) (/home/sblin/ring-project/daemon/bin/dring+0x922b95)
#7 0x55fce8fce14c in jami::CallServicesManager::createAVSubject(StreamData const&, std::weak_ptr<jami::Observable<AVFrame*> >) /home/sblin/ring-project/daemon/src/plugin/callservicesmanager.cpp:45
#8 0x55fce929194a in jami::SIPCall::createCallAVStream(StreamData const&, jami::Observable<std::shared_ptr<DRing::MediaFrame> >&, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > const&) /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:195
#9 0x55fce9290947 in jami::SIPCall::createCallAVStreams() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:144
#10 0x55fce929e19b in jami::SIPCall::startAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1294
#11 0x55fce92a03ab in jami::SIPCall::onIceNegoSucceed() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1448
#12 0x55fce92a2d68 in operator() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1671
#13 0x55fce92a9e46 in operator() /home/sblin/ring-project/daemon/src/manager.h:975
#14 0x55fce92b0db0 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
#15 0x55fce8c0e4db in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
#16 0x55fce9214f43 in jami::ScheduledExecutor::loop() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:124
#17 0x55fce921345a in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:28
#18 0x55fce9217b83 in __invoke_impl<void, jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:60
#19 0x55fce9217b38 in __invoke<jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:95
#20 0x55fce9217ae5 in _M_invoke<0> /usr/include/c++/9/thread:244
#21 0x55fce9217abb in operator() /usr/include/c++/9/thread:251
#22 0x55fce9217a9f in _M_run /usr/include/c++/9/thread:195
#23 0x7f34bd777d83 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd6d83)
Thread T1 created by T0 here:
#0 0x7f34be395805 in pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x3a805)
#1 0x7f34bd778048 in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd7048)
#2 0x55fce92136c2 in jami::ScheduledExecutor::ScheduledExecutor() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:29
#3 0x55fce90fe0c2 in jami::Manager::ManagerPimpl::ManagerPimpl(jami::Manager&) /home/sblin/ring-project/daemon/src/manager.cpp:451
#4 0x55fce9101852 in jami::Manager::Manager() /home/sblin/ring-project/daemon/src/manager.cpp:730
#5 0x55fce9101619 in jami::Manager::instance() /home/sblin/ring-project/daemon/src/manager.cpp:706
#6 0x55fce8c3c56d in DRing::init(DRing::InitFlag) /home/sblin/ring-project/daemon/src/ring_api.cpp:57
#7 0x55fce8b11fbf in DBusClient::initLibrary(int) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:245
#8 0x55fce8b06b41 in DBusClient::DBusClient(int, bool) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:108
#9 0x55fce8b0624f in void __gnu_cxx::new_allocator<DBusClient>::construct<DBusClient, int&, bool&>(DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x45224f)
#10 0x55fce8b06013 in void std::allocator_traits<std::allocator<DBusClient> >::construct<DBusClient, int&, bool&>(std::allocator<DBusClient>&, DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x452013)
#11 0x55fce8b05c44 in std::_Sp_counted_ptr_inplace<DBusClient, std::allocator<DBusClient>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<int&, bool&>(std::allocator<DBusClient>, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x451c44)
#12 0x55fce8b0560a in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<DBusClient, std::allocator<DBusClient>, int&, bool&>(DBusClient*&, std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x45160a)
#13 0x55fce8b0515d in std::__shared_ptr<DBusClient, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x45115d)
#14 0x55fce8b0461e in std::shared_ptr<DBusClient>::shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x45061e)
#15 0x55fce8b03b4e in std::shared_ptr<DBusClient> std::allocate_shared<DBusClient, std::allocator<DBusClient>, int&, bool&>(std::allocator<DBusClient> const&, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44fb4e)
#16 0x55fce8b0317e in std::shared_ptr<DBusClient> std::make_shared<DBusClient, int&, bool&>(int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44f17e)
#17 0x55fce8b01ef1 in main /home/sblin/ring-project/daemon/bin/main.cpp:218
#18 0x7f34bd36a0b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
SUMMARY: AddressSanitizer: heap-use-after-free /usr/include/c++/9/bits/list.tcc:74 in std::__cxx11::_List_base<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > >, std::allocator<std::pair<StreamData const, std::weak_ptr<jami::Observable<AVFrame*> > > > >::_M_clear()
Shadow bytes around the buggy address:
0x0c168002c040: 00 00 00 00 00 00 00 00 00 00 00 00 00 fa fa fa
0x0c168002c050: fa fa fa fa fa fa 00 00 00 00 00 00 00 00 00 00
0x0c168002c060: 00 00 00 fa fa fa fa fa fa fa fa fa 00 00 00 00
0x0c168002c070: 00 00 00 00 00 00 00 00 00 fa fa fa fa fa fa fa
0x0c168002c080: fa fa fd fd fd fd fd fd fd fd fd fd fd fd fd fd
=>0x0c168002c090: fa fa fa fa fa fa fa fa[fd]fd fd fd fd fd fd fd
0x0c168002c0a0: fd fd fd fd fd fa fa fa fa fa fa fa fa fa fd fd
0x0c168002c0b0: fd fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa
0x0c168002c0c0: fa fa fa fa 00 00 00 00 00 00 00 00 00 00 00 00
0x0c168002c0d0: 00 00 fa fa fa fa fa fa fa fa 00 00 00 00 00 00
0x0c168002c0e0: 00 00 00 00 00 00 00 00 fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
Shadow gap: cc
==46818==ABORTING
✘ sblin@sblin-pbody ~/ring-project/daemon ➦ ead4ca981
✘ sblin@sblin-pbody ~/ring-project/daemon ➦ ead4ca981
✘ sblin@sblin-pbody ~/ring-project/daemon ➦ ead4ca981
✘ sblin@sblin-pbody ~/ring-project/daemon ➦ ead4ca981
```
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/449
Transmit moderator commands to remote host
2021-04-13T13:38:02Z
Pierre Lespagnol
Transmit moderator commands to remote host
Pierre Lespagnol
Pierre Lespagnol
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/448
[To test]Swarm: weird clone failure on sync
2021-03-02T15:48:36Z
Sébastien Blin
[To test]Swarm: weird clone failure on sync
```
gheller@pc-gheller:~/.local/share/jami/457c1d61f7710c64/conversations/7ac13b2d77f9ed337618db340a9d1cb0f9f2a2cd$ git log
commit 401c9afc98aa2d4deebe6b989749169c96c6e0e1 (HEAD -> main, origin/main, origin/HEAD)
Author: 698fe6e10ae1f472...
```
gheller@pc-gheller:~/.local/share/jami/457c1d61f7710c64/conversations/7ac13b2d77f9ed337618db340a9d1cb0f9f2a2cd$ git log
commit 401c9afc98aa2d4deebe6b989749169c96c6e0e1 (HEAD -> main, origin/main, origin/HEAD)
Author: 698fe6e10ae1f4722dabe32ad5e885a464085db5 <698fe6e10ae1f4722dabe32ad5e885a464085db5>
Date: Thu Feb 18 21:12:42 2021 +0000
{"body":"\u2728","type":"text/plain"}
commit 92092c07f827171c289e60a44e9bf7e7c93242b9
Author: 7c38177a10d618bc30f93f0284d82d6ef246c459 <7c38177a10d618bc30f93f0284d82d6ef246c459>
Date: Thu Feb 18 21:11:59 2021 +0000
{"displayName":"img_20210218_161153_411016185718028660.jpg","sha3sum":"b7d5c6e752a4b29537dae244f429f38446ab4f2d34b09ed477a9428dcad9e8bf4decc5213d409d0b140d95d5a58517b718f56c6ed0691cdcc4e32b01b18f5d8a","tid":"8783314023060598","totalSize":"5024115","type":"application/data-transfer+json"}
commit 9687b46bee5159e19690ea7b7db07533fc5a9c57
Author: 7c38177a10d618bc30f93f0284d82d6ef246c459 <7c38177a10d618bc30f93f0284d82d6ef246c459>
Date: Thu Feb 18 21:11:42 2021 +0000
{"body":"Non je re\u00e7ois que sur Android","type":"text/plain"}
error: Could not read 095ced7a8debd31058c1dc68099809b64a9fb5bf
fatal: Failed to traverse parents of commit b6f09dc7e13f3c791b7e226890717100af38a282
```
Swarm-chat
Sébastien Blin
Sébastien Blin
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/447
When the resolution change the receive thread is not updated
2021-03-08T22:03:48Z
Pierre Lespagnol
When the resolution change the receive thread is not updated
Pierre Lespagnol
Pierre Lespagnol
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/446
Recorder: concat recording if for same call but with switch inputs?
2023-03-23T15:27:00Z
Sébastien Blin
Recorder: concat recording if for same call but with switch inputs?
# Scenario
+ Alice starts to record a call
+ Alice switch her input
+ Alice stop the record
# Current result
+ 2 recording are saved
# Expected
+ Only one recording with both video mixed?
# Scenario
+ Alice starts to record a call
+ Alice switch her input
+ Alice stop the record
# Current result
+ 2 recording are saved
# Expected
+ Only one recording with both video mixed?
Backlog
Aline Gondim Santos
Aline Gondim Santos
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/445
Report an incoming call with all included media
2021-06-11T16:11:08Z
François Naggar-Tremblay
Report an incoming call with all included media
Currently, when the daemon reports an incoming call it does not include the list of media included in the offer. Thus, the client can not select which media to accept. For example, allows the client/user to accept only audio for an audio...
Currently, when the daemon reports an incoming call it does not include the list of media included in the offer. Thus, the client can not select which media to accept. For example, allows the client/user to accept only audio for an audio+video incoming call.
In this feature, the list of media in the offer will be reported and the client can chose which media to accept.
Mohamed Chibani
Ming Rui Zhang
Mohamed Chibani
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/444
ASAN crash in video pipeline
2021-07-09T20:48:25Z
Sébastien Blin
ASAN crash in video pipeline
via irc
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|audiostream.c...
via irc
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|audiostream.cpp :147 ] Destroying stream with device alsa_output.pci-0000_00_1b.0.analog-stereo.echo-cancel
[1613570498.246|27869|sipcall.cpp :444 ] [call:4730700885720014] Terminate SIP session
[1613570498.251|27869|sip_utils.cpp :210 ] Add header to SIP message: "User-Agent: Jami Daemon 9.9.0 (linux)"
[1613570498.254|27869|sipcall.cpp :1298 ] [call:4730700885720014] stopping all medias
AddressSanitizer:DEADLYSIGNAL
=================================================================
==27869==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000038 (pc 0x5644c790eadf bp 0x7fffa6e501f0 sp 0x7fffa6e50170 T0)
==27869==The signal is caused by a READ memory access.
==27869==Hint: address points to the zero page.
Dropped 54 packets with high delay
Dropped 28 packets with high delay
Dropped 62 packets with high delay
[1613570514.887|27870|upnp_context.cpp :506 ] Protocol status [PUPNP] has valid IGD(s) YES
[1613570514.889|27870|upnp_context.cpp :541 ] Mapping status [TCP] - overall 4: 4 open (4 ready + 0 in use), 0 pending, 0 in-progress, 0 failed
[1613570514.891|27870|upnp_context.cpp :541 ] Mapping status [UDP] - overall 9: 9 open (8 ready + 1 in use), 0 pending, 0 in-progress, 0 failed
#0 0x5644c790eade in jami::MediaDecoder::getStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const daemon/src/media/media_decoder.cpp:731
#1 0x5644c7ae1eaf in jami::video::VideoReceiveThread::getInfo() const daemon/src/media/video/video_receive_thread.cpp:265
#2 0x5644c7a1cd82 in jami::video::VideoRtpSession::deinitRecorder(std::shared_ptr<jami::MediaRecorder>&) daemon/src/media/video/video_rtp_session.cpp:672
#3 0x5644c78d036f in jami::SIPCall::stopAllMedia() daemon/src/sip/sipcall.cpp:1300
#4 0x5644c78d05fb in jami::SIPCall::hangup(int) daemon/src/sip/sipcall.cpp:564
#5 0x5644c78678d5 in jami::Manager::hangupCall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/src/manager.cpp:1063
#6 0x5644c7825d57 in DBusCallManager::hangUp(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/bin/dbus/dbuscallmanager.cpp:56
#7 0x5644c7825d57 in cx::ring::Ring::CallManager_adaptor::_hangUp_stub(DBus::CallMessage const&) daemon/bin/dbus/dbuscallmanager.adaptor.h:863
#8 0x5644c7822ada in DBus::Callback<cx::ring::Ring::CallManager_adaptor, DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const daemon/contrib/x86_64-linux-gnu/include/dbus-c++-1/dbus-c++/util.h:283
#9 0x5644c7847274 in DBus::Slot<DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const ../include/dbus-c++/util.h:252
#10 0x5644c7847274 in DBus::InterfaceAdaptor::dispatch_method(DBus::CallMessage const&) daemon/contrib/native/dbus-cpp/src/interface.cpp:64
#11 0x5644c784ee04 in DBus::ObjectAdaptor::handle_message(DBus::Message const&) daemon/contrib/native/dbus-cpp/src/object.cpp:220
#12 0x5644c784c6e5 in DBus::ObjectAdaptor::Private::message_function_stub(DBusConnection*, DBusMessage*, void*) daemon/contrib/native/dbus-cpp/src/object.cpp:92
#13 0x7fbac08b4bac (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x26bac)
#14 0x7fbac08a5713 in dbus_connection_dispatch (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x17713)
#15 0x5644c7842aaf in DBus::Connection::Private::do_dispatch() daemon/contrib/native/dbus-cpp/src/connection.cpp:132
#16 0x5644c7844b59 in DBus::Dispatcher::dispatch_pending(std::__cxx11::list<DBus::Connection::Private*, std::allocator<DBus::Connection::Private*> >&) daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:236
#17 0x5644c7844c5c in DBus::Dispatcher::dispatch_pending() daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:198
#18 0x5644c784612e in DBus::BusDispatcher::do_iteration() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:147
#19 0x5644c784612e in DBus::BusDispatcher::enter() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:99
#20 0x5644c77f9c8e in DBusClient::event_loop() daemon/bin/dbus/dbusclient.cpp:272
#21 0x5644c77ec76e in main daemon/bin/main.cpp:222
#22 0x7fbabf28c09a in __libc_start_main ../csu/libc-start.c:308
#23 0x5644c77f9479 (/usr/lib/ring/dring+0x158479)
```
Backlog
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/443
ConferenceInfos: do not include black bands for video coordinates
2021-05-06T21:20:34Z
Sébastien Blin
ConferenceInfos: do not include black bands for video coordinates
While in a conference, the coordinates given by the ConferenceInfo includes black bands around the actual video (for example for phones). Should be removed and the client will be able to use the given coordinates to cut correctly the par...
While in a conference, the coordinates given by the ConferenceInfo includes black bands around the actual video (for example for phones). Should be removed and the client will be able to use the given coordinates to cut correctly the participants
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/442
To investigate - Conference: recent lag in video when 10 people
2021-02-25T21:54:12Z
Sébastien Blin
To investigate - Conference: recent lag in video when 10 people
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/441
ASAN: segv in video_rtp
2021-05-28T21:09:24Z
Sébastien Blin
ASAN: segv in video_rtp
Via IRC
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|a...
Via IRC
```
[1613570498.245|27869|manager.cpp :1683 ] [call:4730700885720014] Remove local audio
[1613570498.246|27869|ringbufferpool.cpp:263 ] Unbind call 4730700885720014 from all bound calls
[1613570498.246|27869|audiostream.cpp :147 ] Destroying stream with device alsa_output.pci-0000_00_1b.0.analog-stereo.echo-cancel
[1613570498.246|27869|sipcall.cpp :444 ] [call:4730700885720014] Terminate SIP session
[1613570498.251|27869|sip_utils.cpp :210 ] Add header to SIP message: "User-Agent: Jami Daemon 9.9.0 (linux)"
[1613570498.254|27869|sipcall.cpp :1298 ] [call:4730700885720014] stopping all medias
AddressSanitizer:DEADLYSIGNAL
=================================================================
==27869==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000038 (pc 0x5644c790eadf bp 0x7fffa6e501f0 sp 0x7fffa6e50170 T0)
==27869==The signal is caused by a READ memory access.
==27869==Hint: address points to the zero page.
Dropped 54 packets with high delay
Dropped 28 packets with high delay
Dropped 62 packets with high delay
[1613570514.887|27870|upnp_context.cpp :506 ] Protocol status [PUPNP] has valid IGD(s) YES
[1613570514.889|27870|upnp_context.cpp :541 ] Mapping status [TCP] - overall 4: 4 open (4 ready + 0 in use), 0 pending, 0 in-progress, 0 failed
[1613570514.891|27870|upnp_context.cpp :541 ] Mapping status [UDP] - overall 9: 9 open (8 ready + 1 in use), 0 pending, 0 in-progress, 0 failed
#0 0x5644c790eade in jami::MediaDecoder::getStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const daemon/src/media/media_decoder.cpp:731
#1 0x5644c7ae1eaf in jami::video::VideoReceiveThread::getInfo() const daemon/src/media/video/video_receive_thread.cpp:265
#2 0x5644c7a1cd82 in jami::video::VideoRtpSession::deinitRecorder(std::shared_ptr<jami::MediaRecorder>&) daemon/src/media/video/video_rtp_session.cpp:672
#3 0x5644c78d036f in jami::SIPCall::stopAllMedia() daemon/src/sip/sipcall.cpp:1300
#4 0x5644c78d05fb in jami::SIPCall::hangup(int) daemon/src/sip/sipcall.cpp:564
#5 0x5644c78678d5 in jami::Manager::hangupCall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/src/manager.cpp:1063
#6 0x5644c7825d57 in DBusCallManager::hangUp(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) daemon/bin/dbus/dbuscallmanager.cpp:56
#7 0x5644c7825d57 in cx::ring::Ring::CallManager_adaptor::_hangUp_stub(DBus::CallMessage const&) daemon/bin/dbus/dbuscallmanager.adaptor.h:863
#8 0x5644c7822ada in DBus::Callback<cx::ring::Ring::CallManager_adaptor, DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const daemon/contrib/x86_64-linux-gnu/include/dbus-c++-1/dbus-c++/util.h:283
#9 0x5644c7847274 in DBus::Slot<DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const ../include/dbus-c++/util.h:252
#10 0x5644c7847274 in DBus::InterfaceAdaptor::dispatch_method(DBus::CallMessage const&) daemon/contrib/native/dbus-cpp/src/interface.cpp:64
#11 0x5644c784ee04 in DBus::ObjectAdaptor::handle_message(DBus::Message const&) daemon/contrib/native/dbus-cpp/src/object.cpp:220
#12 0x5644c784c6e5 in DBus::ObjectAdaptor::Private::message_function_stub(DBusConnection*, DBusMessage*, void*) daemon/contrib/native/dbus-cpp/src/object.cpp:92
#13 0x7fbac08b4bac (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x26bac)
#14 0x7fbac08a5713 in dbus_connection_dispatch (/lib/x86_64-linux-gnu/libdbus-1.so.3+0x17713)
#15 0x5644c7842aaf in DBus::Connection::Private::do_dispatch() daemon/contrib/native/dbus-cpp/src/connection.cpp:132
#16 0x5644c7844b59 in DBus::Dispatcher::dispatch_pending(std::__cxx11::list<DBus::Connection::Private*, std::allocator<DBus::Connection::Private*> >&) daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:236
#17 0x5644c7844c5c in DBus::Dispatcher::dispatch_pending() daemon/contrib/native/dbus-cpp/src/dispatcher.cpp:198
#18 0x5644c784612e in DBus::BusDispatcher::do_iteration() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:147
#19 0x5644c784612e in DBus::BusDispatcher::enter() daemon/contrib/native/dbus-cpp/src/eventloop-integration.cpp:99
#20 0x5644c77f9c8e in DBusClient::event_loop() daemon/bin/dbus/dbusclient.cpp:272
#21 0x5644c77ec76e in main daemon/bin/main.cpp:222
#22 0x7fbabf28c09a in __libc_start_main ../csu/libc-start.c:308
#23 0x5644c77f9479 (/usr/lib/ring/dring+0x158479)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV daemon/src/media/media_decoder.cpp:731 in jami::MediaDecoder::getStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const
==27869==ABORTING
```
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/440
ASAN crash on double-free in NameDirectory
2021-02-19T23:09:21Z
Sébastien Blin
ASAN crash on double-free in NameDirectory
# Scenario
+ Search a username
+ while the search is in progress, cut the client (will finish the daemon)
# Current result
```
[1613568185.981|27014|sipvoiplink.cpp :709 ] Shutdown SIPVoIPLink@0x61900000f080...
[1613568185.981|2701...
# Scenario
+ Search a username
+ while the search is in progress, cut the client (will finish the daemon)
# Current result
```
[1613568185.981|27014|sipvoiplink.cpp :709 ] Shutdown SIPVoIPLink@0x61900000f080...
[1613568185.981|27014|siptransport.cpp :196 ] ~SipTransportBroker@0x60d0000002b0
[1613568185.981|27014|siptransport.cpp :203 ] destroying SipTransportBroker@0x60d0000002b0
[1613568186.445|27014|sipvoiplink.cpp :726 ] SIPVoIPLink@0x61900000f080 is shutdown
[1613568186.449|27014|smartools.cpp :67 ] Stop SmartInfo
[1613568186.452|27014|namedirectory.cpp :166 ] Address lookup for XXXXXX failed with code=0
=================================================================
==27014==ERROR: AddressSanitizer: attempting double-free on 0x60600010da20 in thread T0:
[1613568187.609|27015|pupnp.cpp :1268 ] PUPnP: Found 0 allocated mappings on IGD 192.168.122.1
[1613568187.609|27015|upnp_context.cpp :741 ] Send request for pending mapping JAMI-UDP:21867 to IGD 192.168.122.1:0
[1613568187.609|27015|upnp_context.cpp :370 ] Request mapping JAMI-UDP:21867 using protocol [UPNP]
[1613568187.609|27015|mapping.cpp :155 ] Changed mapping JAMI-UDP:21867 state from PENDING to IN_PROGRESS
[1613568187.609|27015|pupnp.cpp :446 ] PUPnP: Attempting to open port JAMI-UDP:21867
[1613568187.610|27015|pupnp.cpp :516 ] PUPnP: Sent request to open port JAMI-UDP:21867
[1613568187.610|27015|upnp_context.cpp :506 ] Protocol status [PUPNP] has valid IGD(s) YES
[1613568187.610|27015|upnp_context.cpp :541 ] Mapping status [TCP] - overall 0: 0 open (0 ready + 0 in use), 0 pending, 0 in-progress, 0 failed
[1613568187.610|27015|upnp_context.cpp :418 ] Provision 4 new mappings of type [TCP]
[1613568187.610|27015|upnp_context.cpp :370 ] Request mapping JAMI-TCP:13587 using protocol [UPNP]
[1613568187.610|27015|mapping.cpp :155 ] Changed mapping JAMI-TCP:13587 state from PENDING to IN_PROGRESS
[1613568187.610|27015|pupnp.cpp :446 ] PUPnP: Attempting to open port JAMI-TCP:13587
#0 0x7f663f5c7aa0 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0)
#1 0x55f876b1055d in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::deallocate(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*, unsigned long) /usr/include/c++/8/ext/new_allocator.h:125
#2 0x55f876b1055d in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > > >::deallocate(std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >&, std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:462
#3 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_put_node(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:603
#4 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_drop_node(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:670
#5 0x55f876b1055d in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1874
#6 0x55f876b1053e in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1872
#7 0x55f876b1053e in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_erase(std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >*) /usr/include/c++/8/bits/stl_tree.h:1872
#8 0x55f876b10779 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::~_Rb_tree() /usr/include/c++/8/bits/stl_tree.h:1872
#9 0x55f876b10779 in std::map<unsigned int, std::shared_ptr<dht::http::Request>, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::~map() /usr/include/c++/8/bits/stl_map.h:300
#10 0x55f876b10779 in jami::NameDirectory::~NameDirectory() daemon/src/jamidht/namedirectory.h:49
#11 0x55f876b10779 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>::~pair() /usr/include/c++/8/bits/stl_pair.h:208
#12 0x55f876b10779 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>*) /usr/include/c++/8/ext/new_allocator.h:140
#13 0x55f876b10779 in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>*) /usr/include/c++/8/bits/alloc_traits.h:487
#14 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:661
#15 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:669
#16 0x55f876b10779 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, jami::NameDirectory> >*) /usr/include/c++/8/bits/stl_tree.h:1874
#17 0x7f663de31d8b in __run_exit_handlers /build/glibc-vjB4T1/glibc-2.28/stdlib/exit.c:108
#18 0x7f663de31eb9 in __GI_exit /build/glibc-vjB4T1/glibc-2.28/stdlib/exit.c:139
#19 0x7f663de1c0a1 in __libc_start_main ../csu/libc-start.c:342
#20 0x55f87694d479 (/usr/lib/ring/dring+0x158479)
0x60600010da20 is located 0 bytes inside of 56-byte region [0x60600010da20,0x60600010da58)
freed by thread T0 here:
#0 0x7f663f5c7aa0 in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0)
#1 0x55f876b10bf7 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::erase(unsigned int const&) /usr/include/c++/8/ext/new_allocator.h:125
previously allocated by thread T0 here:
#0 0x7f663f5c6d30 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xead30)
#1 0x55f876b11876 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::allocate(unsigned long, void const*) /usr/include/c++/8/ext/new_allocator.h:111
#2 0x55f876b11876 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >&, unsigned long) /usr/include/c++/8/bits/alloc_traits.h:436
#3 0x55f876b11876 in std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_get_node() /usr/include/c++/8/bits/stl_tree.h:599
#4 0x55f876b11876 in std::_Rb_tree_node<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >* std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<unsigned int const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<unsigned int const&>&&, std::tuple<>&&) /usr/include/c++/8/bits/stl_tree.h:653
#5 0x55f876b11876 in std::_Rb_tree_iterator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > std::_Rb_tree<unsigned int, std::pair<unsigned int const, std::shared_ptr<dht::http::Request> >, std::_Select1st<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<unsigned int const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > >, std::piecewise_construct_t const&, std::tuple<unsigned int const&>&&, std::tuple<>&&) /usr/include/c++/8/bits/stl_tree.h:2414
#6 0x55f876b11876 in std::map<unsigned int, std::shared_ptr<dht::http::Request>, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, std::shared_ptr<dht::http::Request> > > >::operator[](unsigned int const&) /usr/include/c++/8/bits/stl_map.h:499
#7 0x61500002330f (<unknown module>)
SUMMARY: AddressSanitizer: double-free (/usr/lib/x86_64-linux-gnu/libasan.so.5+0xebaa0) in operator delete(void*)
==27014==ABORTING
```
Sébastien Blin
Sébastien Blin
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/439
Conference: Show remote recording indication for non-host in a conference
2021-12-29T19:11:48Z
Sébastien Blin
Conference: Show remote recording indication for non-host in a conference
# Scenario
+ Start a conf A(host),B,C
+ B start to record
# Current result
only A,B have the remote recording indication
# Expected
C show the remote recording
# Scenario
+ Start a conf A(host),B,C
+ B start to record
# Current result
only A,B have the remote recording indication
# Expected
C show the remote recording
Backlog
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/437
[To test]Swarm: Still some "could not fetch commit..."
2021-03-02T15:48:33Z
Sébastien Blin
[To test]Swarm: Still some "could not fetch commit..."
Sometimes, when android sends a message, the message is not received by the other peer, with "could not fetch commit..". This needs some investigation. all messages should pass directly
Sometimes, when android sends a message, the message is not received by the other peer, with "could not fetch commit..". This needs some investigation. all messages should pass directly
Swarm-chat
Sébastien Blin
Sébastien Blin
2021-03-03
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/436
Crash in PUPnP and UPnPContext classes
2021-05-25T20:52:40Z
Mohamed Chibani
Crash in PUPnP and UPnPContext classes
Occurs when closing Jami. See callstack:
```
[Thread 0x7fffa7fff640 (LWP 85247) exited]
[1613437562.277|19688|pupnp.cpp :165 ] PUPnP: Destroying instance 0x7fffac0010f0
malloc_consolidate(): unaligned fastbin chunk detected
--T...
Occurs when closing Jami. See callstack:
```
[Thread 0x7fffa7fff640 (LWP 85247) exited]
[1613437562.277|19688|pupnp.cpp :165 ] PUPnP: Destroying instance 0x7fffac0010f0
malloc_consolidate(): unaligned fastbin chunk detected
--Type <RET> for more, q to quit, c to continue without paging--
Thread 1 "dring" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
49 ../sysdeps/unix/sysv/linux/raise.c: Aucun fichier ou dossier de ce type.
(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
#1 0x00007ffff6e40864 in __GI_abort () at abort.c:79
#2 0x00007ffff6ea3af6 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff6fcb128 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#3 0x00007ffff6eac46c in malloc_printerr (str=str@entry=0x7ffff6fcd4b8 "malloc_consolidate(): unaligned fastbin chunk detected") at malloc.c:5389
#4 0x00007ffff6eadb4c in malloc_consolidate (av=av@entry=0x7ffff6ffdba0 <main_arena>) at malloc.c:4509
#5 0x00007ffff6eaf023 in _int_malloc (av=av@entry=0x7ffff6ffdba0 <main_arena>, bytes=bytes@entry=2000) at malloc.c:3727
#6 0x00007ffff6eb1721 in GI_libc_malloc (bytes=2000) at malloc.c:3086
#7 0x00007ffff7d7dbef in ?? () from /lib/x86_64-linux-gnu/libupnp.so.13
#8 0x0000555555b04d85 in jami::upnp::PUPnP::actionDeletePortMappingsByDesc (this=0x7fffac0010f0, igd=..., description="JAMI") at pupnp.cpp:1304
#9 0x0000555555b00eee in jami::upnp::PUPnP::removeAllLocalMappings (this=0x7fffac0010f0,
igd=std::shared_ptr<class jami::upnp::IGD> (use count 2, weak count 0) = {...}) at pupnp.cpp:608
#10 0x0000555555afe4e7 in jami::upnp::PUPnP::~PUPnP (this=0x7fffac0010f0, __in_chrg=<optimized out>) at pupnp.cpp:171
#11 0x00005555557ada9f in gnu_cxx::new_allocator<jami::upnp::PUPnP>::destroy<jami::upnp::PUPnP> (this=0x7fffac0010f0, p=0x7fffac0010f0)
at /usr/include/c++/10/ext/new_allocator.h:156
#12 0x00005555557ad99d in std::allocator_traits<std::allocator<jami::upnp::PUPnP> >::destroy<jami::upnp::PUPnP> (a=..., p=0x7fffac0010f0)
at /usr/include/c++/10/bits/alloc_traits.h:531
#13 0x00005555557ad4c1 in std::_Sp_counted_ptr_inplace<jami::upnp::PUPnP, std::allocator<jami::upnp::PUPnP>, (__gnu_cxx::_Lock_policy)2>::Mdispose
(this=0x7fffac0010e0) at /usr/include/c++/10/bits/shared_ptr_base.h:560
#14 0x00005555556986fb in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::Mrelease (this=0x7fffac0010e0)
at /usr/include/c++/10/bits/shared_ptr_base.h:158
#15 0x0000555555698283 in std::shared_count<(gnu_cxx::_Lock_policy)2>::~shared_count (this=0x7fffac002550, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:733
#16 0x000055555579d6fc in std::shared_ptr<jami::upnp::UPnPProtocol, (gnu_cxx::_Lock_policy)2>::~shared_ptr (this=0x7fffac002548,
in_chrg=<optimized out>) at /usr/include/c++/10/bits/shared_ptr_base.h:1183
#17 0x000055555579d71c in std::shared_ptr<jami::upnp::UPnPProtocol>::~shared_ptr (this=0x7fffac002548, __in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr.h:121
#18 0x00005555557ab022 in std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >::~pair (this=0x7fffac002540,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_pair.h:211
#19 0x00005555557ab046 in gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::destroy<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > (this=0x7fffd80064c0,
p=0x7fffac002540) at /usr/include/c++/10/ext/new_allocator.h:156
#20 0x00005555557a9a87 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > > >::destroy<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > (a=...,
p=0x7fffac002540) at /usr/include/c++/10/bits/alloc_traits.h:531
#21 0x00005555557a6eb9 in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Mdestroy_node (
this=0x7fffd80064c0, __p=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:646
#22 0x00005555557a3645 in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Mdrop_node (
this=0x7fffd80064c0, __p=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:654
#23 0x00005555557a08fa in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocol--Type <RET> for more, q to quit, c to continue without paging--
Type>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::Merase (this=0x7fffd80064c0,
__x=0x7fffac002520) at /usr/include/c++/10/bits/stl_tree.h:1921
#24 0x000055555579e65c in std::_Rb_tree<jami::upnp::NatProtocolType, std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> >, std::_Select1st<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > >, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::~_Rb_tree (this=0x7fffd80064c0,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_tree.h:991
#25 0x000055555579da1a in std::map<jami::upnp::NatProtocolType, std::shared_ptr<jami::upnp::UPnPProtocol>, std::less<jami::upnp::NatProtocolType>, std::allocator<std::pair<jami::upnp::NatProtocolType const, std::shared_ptr<jami::upnp::UPnPProtocol> > > >::~map (this=0x7fffd80064c0,
__in_chrg=<optimized out>) at /usr/include/c++/10/bits/stl_map.h:302
#26 0x00005555557901c1 in jami::upnp::UPnPContext::~UPnPContext (this=0x7fffd8006460, __in_chrg=<optimized out>) at upnp_context.cpp:47
#27 0x00005555557adb17 in gnu_cxx::new_allocator<jami::upnp::UPnPContext>::destroy<jami::upnp::UPnPContext> (this=0x7fffd8006460,
p=0x7fffd8006460) at /usr/include/c++/10/ext/new_allocator.h:156
#28 0x00005555557ada2d in std::allocator_traits<std::allocator<jami::upnp::UPnPContext> >::destroy<jami::upnp::UPnPContext> (a=...,
p=0x7fffd8006460) at /usr/include/c++/10/bits/alloc_traits.h:531
#29 0x00005555557ad811 in std::_Sp_counted_ptr_inplace<jami::upnp::UPnPContext, std::allocator<jami::upnp::UPnPContext>, (__gnu_cxx::_Lock_policy)2>::Mdispose (this=0x7fffd8006450) at /usr/include/c++/10/bits/shared_ptr_base.h:560
#30 0x00005555556986fb in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::Mrelease (this=0x7fffd8006450)
at /usr/include/c++/10/bits/shared_ptr_base.h:158
#31 0x0000555555698283 in std::shared_count<(gnu_cxx::_Lock_policy)2>::~shared_count (
this=0x555556c31bf8 <jami::upnp::UPnPContext::getUPnPContext()::context+8>, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:733
#32 0x000055555574413c in std::shared_ptr<jami::upnp::UPnPContext, (gnu_cxx::_Lock_policy)2>::~shared_ptr (
this=0x555556c31bf0 <jami::upnp::UPnPContext::getUPnPContext()::context>, in_chrg=<optimized out>)
at /usr/include/c++/10/bits/shared_ptr_base.h:1183
#33 0x000055555574415c in std::shared_ptr<jami::upnp::UPnPContext>::~shared_ptr (
this=0x555556c31bf0 <jami::upnp::UPnPContext::getUPnPContext()::context>, __in_chrg=<optimized out>) at /usr/include/c++/10/bits/shared_ptr.h:121
#34 0x00007ffff6e5ea57 in run_exit_handlers (status=0, listp=0x7ffff6ffd738 <exit_funcs>, run_list_atexit=run_list_atexit@entry=true,
run_dtors=run_dtors@entry=true) at exit.c:108
#35 0x00007ffff6e5ec00 in __GI_exit (status=<optimized out>) at exit.c:139
#36 0x00007ffff6e42cb9 in __libc_start_main (main=0x555555697bc3 <main(int, char**)>, argc=2, argv=0x7fffffffe038, init=<optimized out>,
```
Mohamed Chibani
Mohamed Chibani
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/435
Crash in PUNP/IGD - from Google Play Store
2021-02-24T20:52:31Z
Mohamed Chibani
Crash in PUNP/IGD - from Google Play Store
The crash occurred on a Huawei Mate 10 lite, Android 8.0 device.
Provided BT:
```
/ring-project/client-android/../daemon/src/upnp/upnp_context.cpp:840)
#00 pc 00000000003bdfac /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/lib...
The crash occurred on a Huawei Mate 10 lite, Android 8.0 device.
Provided BT:
```
/ring-project/client-android/../daemon/src/upnp/upnp_context.cpp:840)
#00 pc 00000000003bdfac /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (jami::upnp::UPnPContext::onRequestTimeOut(std::__ndk1::shared_ptr<jami::upnp::IGD> const&, std::__ndk1::shared_ptr<jami::upnp::Mapping> const&)) (SourceCode: /var/lib/jenkins/workspace/packaging-deploy-android-pipeline/ring-project/client-android/../daemon/src/upnp/upnp_context.cpp:1224)
#00 pc 00000000004ebcb4 /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (std::__ndk1::__function::__value_func<void ()>::operator()() const) (SourceCode: /opt/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/include/c++/v1/functional:1867)
#00 pc 00000000004ebcb4 /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (std::__ndk1::function<void ()>::operator()() const) (SourceCode: /opt/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/include/c++/v1/functional:2473)
#00 pc 00000000004ebcb4 /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (jami::ScheduledExecutor::loop()) (SourceCode: /var/lib/jenkins/workspace/packaging-deploy-android-pipeline/ring-project/client-android/../daemon/src/scheduled_executor.cpp:124)
#00 pc 00000000004ebe4c /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (jami::ScheduledExecutor::ScheduledExecutor()::$_0::operator()() const) (SourceCode: /var/lib/jenkins/workspace/packaging-deploy-android-pipeline/ring-project/client-android/../daemon/src/scheduled_executor.cpp:28)
#00 pc 00000000004ebe4c /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (decltype(std::__ndk1::forward<jami::ScheduledExecutor::ScheduledExecutor()::$_0>(fp)()) std::__ndk1::__invoke<jami::ScheduledExecutor::ScheduledExecutor()::$_0>(jami::ScheduledExecutor::ScheduledExecutor()::$_0&&)) (SourceCode: /opt/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/include/c++/v1/type_traits:3501)
#00 pc 00000000004ebe4c /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (void std::__ndk1::__thread_execute<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, jami::ScheduledExecutor::ScheduledExecutor()::$_0>(std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, jami::ScheduledExecutor::ScheduledExecutor()::$_0>&, std::__ndk1::__tuple_indices<>)) (SourceCode: /opt/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/include/c++/v1/thread:273)
#00 pc 00000000004ebe4c /data/app/cx.ring-fYiPHgXqCFheTgkGXo7xxg==/lib/arm64/libring.so (void* std::__ndk1::__thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, jami::ScheduledExecutor::ScheduledExecutor()::$_0> >(void*)) (SourceCode: /opt/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/../sysroot/usr/include/c++/v1/thread:283)
#00 pc 00000000000671b8 /system/lib64/libc.so (__pthread_start(void*)+36)
#00 pc 000000000001eee4 /system/lib64/libc.so (__start_thread+68)`
```
Mohamed Chibani
Mohamed Chibani
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/434
UPNP/NAT-PMP - Enable NAT-PMP on Android
2023-09-29T09:59:34Z
Mohamed Chibani
UPNP/NAT-PMP - Enable NAT-PMP on Android
Backlog
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/433
x264 contrib doesn't build on Debian 9
2021-02-09T17:54:38Z
Maxim Cournoyer
x264 contrib doesn't build on Debian 9
The nasm version is too old on Debian 9 for our current version of x264, whose build fails with:
```
Found no assembler
Minimum version is nasm-2.13
If you really want to compile without asm, configure with --disable-asm.
```
The nasm version is too old on Debian 9 for our current version of x264, whose build fails with:
```
Found no assembler
Minimum version is nasm-2.13
If you really want to compile without asm, configure with --disable-asm.
```
Maxim Cournoyer
Maxim Cournoyer
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/432
UPNP/ICE/TCP - ICE/TCP connection using relay should be reset if a UPNP/NAT-P...
2021-12-29T19:21:54Z
Mohamed Chibani
UPNP/ICE/TCP - ICE/TCP connection using relay should be reset if a UPNP/NAT-PMP is available
Backlog
https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/431
ASAN crash in tls_session
2021-02-11T00:20:24Z
Sébastien Blin
ASAN crash in tls_session
```
[1612800089.886|61512|ice_transport.cpp :763 ] [ice:0x627000261100]: Setup default candidates
[1612800089.886|61512|ice_transport.cpp :753 ] [ice:0x627000261100] added host stun config for TCP transport
[1612800089.886|61512|ice_tr...
```
[1612800089.886|61512|ice_transport.cpp :763 ] [ice:0x627000261100]: Setup default candidates
[1612800089.886|61512|ice_transport.cpp :753 ] [ice:0x627000261100] added host stun config for TCP transport
[1612800089.886|61512|ice_transport.cpp :753 ] [ice:0x627000261100] added host stun config for TCP transport
[1612800089.886|61512|ice_transport.cpp :888 ] [ice:0x627000261100]: Add generic local reflexive candidates [172.16.21.46:9 : 208.88.110.46:9] for comp 1
[1612800089.886|61512|ice_transport.cpp :753 ] [ice:0x627000261100] added host stun config for TCP transport
[1612800089.886|61512|ice_transport.cpp :289 ] [ice (TCP)] added turn server '158.69.203.11', port 3478
[1612800089.895|62703|sip_utils.cpp :252 ] Registered thread 0x7f6dd193c4f8 (0x3F01D)
[1612800089.928|61471|ice_transport.cpp :1467 ] [ice:0x627000081900] ice send failed: Ignored (PJ_EIGNORED)
[1612800089.928|62270|tls_session.cpp :1675 ] [TLS] fatal error in recv: The TLS connection was non-properly terminated.
[1612800089.928|62262|tls_session.cpp :1532 ] [TLS] shutdown
[1612800089.928|62262|ice_transport.cpp :1467 ] [ice:0x627000081900] ice send failed: Ignored (PJ_EIGNORED)
[1612800089.928|62262|tls_session.cpp :903 ] [TLS] transport failure on tx: errno = 5
AddressSanitizer:DEADLYSIGNAL
=================================================================
==258077==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000694 (pc 0x7f6e3292ce44 bp 0x7f6e2d9f9090 sp 0x7f6e2d9f8a08 T1)
==258077==The signal is caused by a WRITE memory access.
==258077==Hint: address points to the zero page.
#0 0x7f6e3292ce43 in gnutls_transport_set_errno (/usr/lib/x86_64-linux-gnu/libgnutls.so.30+0x76e43)
#1 0x557f564ef0e3 in jami::tls::TlsSession::TlsSessionImpl::sendRaw(void const*, unsigned long) /home/sblin/ring-project/daemon/src/security/tls_session.cpp:902
#2 0x557f564ef41a in jami::tls::TlsSession::TlsSessionImpl::sendRawVec(iovec const*, int) /home/sblin/ring-project/daemon/src/security/tls_session.cpp:915
#3 0x557f564e9a8e in operator() /home/sblin/ring-project/daemon/src/security/tls_session.cpp:607
#4 0x557f564e9abf in _FUN /home/sblin/ring-project/daemon/src/security/tls_session.cpp:608
#5 0x7f6e328f0ea8 (/usr/lib/x86_64-linux-gnu/libgnutls.so.30+0x3aea8)
#6 0x7f6e328e7240 (/usr/lib/x86_64-linux-gnu/libgnutls.so.30+0x31240)
#7 0x7f6e328ea68f in gnutls_record_send2 (/usr/lib/x86_64-linux-gnu/libgnutls.so.30+0x3468f)
#8 0x557f564ee6a3 in jami::tls::TlsSession::TlsSessionImpl::send(unsigned char const*, unsigned long, std::error_code&) /home/sblin/ring-project/daemon/src/security/tls_session.cpp:854
#9 0x557f564f6ce7 in jami::tls::TlsSession::write(unsigned char const*, unsigned long, std::error_code&) /home/sblin/ring-project/daemon/src/security/tls_session.cpp:1632
#10 0x557f5628b2da in jami::TlsSocketEndpoint::write(unsigned char const*, unsigned long, std::error_code&) /home/sblin/ring-project/daemon/src/peer_connection.cpp:366
#11 0x557f55fc3bd7 in jami::MultiplexedSocket::write(unsigned short const&, unsigned char const*, unsigned long, std::error_code&) /home/sblin/ring-project/daemon/src/jamidht/multiplexed_socket.cpp:471
#12 0x557f55fc5ec6 in jami::ChannelSocket::write(unsigned char const*, unsigned long, std::error_code&) /home/sblin/ring-project/daemon/src/jamidht/multiplexed_socket.cpp:679
#13 0x557f565e08e6 in jami::tls::ChanneledSIPTransport::send(pjsip_tx_data*, void const*, int, void*, void (*)(pjsip_transport*, void*, long)) /home/sblin/ring-project/daemon/src/jamidht/channeled_transport.cpp:298
#14 0x557f565dc2e3 in operator() /home/sblin/ring-project/daemon/src/jamidht/channeled_transport.cpp:103
#15 0x557f565dc335 in _FUN /home/sblin/ring-project/daemon/src/jamidht/channeled_transport.cpp:104
#16 0x557f566f81b2 in pjsip_transport_send (/home/sblin/ring-project/daemon/bin/dring+0xf781b2)
#17 0x557f566f24d8 in stateless_send_transport_cb (/home/sblin/ring-project/daemon/bin/dring+0xf724d8)
#18 0x557f566f2839 in stateless_send_resolver_callback (/home/sblin/ring-project/daemon/bin/dring+0xf72839)
#19 0x557f566f6087 in pjsip_resolve (/home/sblin/ring-project/daemon/bin/dring+0xf76087)
#20 0x557f566f4525 in pjsip_endpt_send_request_stateless (/home/sblin/ring-project/daemon/bin/dring+0xf74525)
#21 0x557f56704600 in tsx_send_msg (/home/sblin/ring-project/daemon/bin/dring+0xf84600)
#22 0x557f56704911 in tsx_on_state_null (/home/sblin/ring-project/daemon/bin/dring+0xf84911)
#23 0x557f56707d2e in pjsip_tsx_send_msg (/home/sblin/ring-project/daemon/bin/dring+0xf87d2e)
#24 0x557f5670a327 in pjsip_dlg_send_request (/home/sblin/ring-project/daemon/bin/dring+0xf8a327)
#25 0x557f560808a8 in jami::im::sendSipMessage(pjsip_inv_session*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) /home/sblin/ring-project/daemon/src/im/instant_messaging.cpp:167
[1612800090.220|62703|ice_transport.cpp :561 ] [ice:0x627000261100] TCP initialization success
[1612800090.220|62703|ice_transport.cpp :623 ] [ice:0x627000261100] as master
[1612800090.220|62703|ice_transport.cpp :729 ] [ice:0x627000261100] (local) ufrag=1ca60700, pwd=549c8e553e8b102d45c70f4a
[1612800090.220|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Hc0a80252 1 TCP 2130706431 192.168.2.82 65301 typ host tcptype passive
[1612800090.220|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Hc0a80252 1 TCP 2130706175 192.168.2.82 9 typ host tcptype active
[1612800090.220|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Hd0b6f662 1 TCP 2130706431 fe80::aede:48ff:fe00:1122 65302 typ host tcptype passive
[1612800090.220|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Hd0b6f662 1 TCP 2130706175 fe80::aede:48ff:fe00:1122 9 typ host tcptype active
[1612800090.221|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Sc0a80252 1 TCP 1694498303 184.144.159.132 9 typ srflx tcptype active
[1612800090.221|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Hc0a80252 1 TCP 2130706431 192.168.2.82 9 typ host tcptype active
[1612800090.221|62201|ice_transport.cpp :1572 ] Add remote ICE candidate: Rc0fc8cec 1 TCP 16777215 192.252.140.236 10452 typ relay tcptype passive
[1612800090.221|62201|ice_transport.cpp :1075 ] [ice:0x627000261100] negotiation starting (7 remote candidates)
[1612800090.221|62201|connectionmanager.cpp:585 ] [Account e77342fdc0671835] [CNX] connection accepted, DHT reply to d5e472a00e9bce0e716054efda72f46fb3092817
#26 0x557f56342ec7 in jami::SIPCall::sendTextMessage(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:943
#27 0x557f56160688 in operator() /home/sblin/ring-project/daemon/src/conference.cpp:293
#28 0x557f5616a676 in operator() /home/sblin/ring-project/daemon/src/manager.h:975
#29 0x557f5616c070 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
#30 0x557f55cd7c3b in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
#31 0x557f562be79d in jami::ScheduledExecutor::loop() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:124
#32 0x557f562bccb4 in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:28
#33 0x557f562c13dd in __invoke_impl<void, jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:60
#34 0x557f562c1392 in __invoke<jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:95
#35 0x557f562c133f in _M_invoke<0> /usr/include/c++/9/thread:244
#36 0x557f562c1315 in operator() /usr/include/c++/9/thread:251
#37 0x557f562c12f9 in _M_run /usr/include/c++/9/thread:195
#38 0x7f6e320f8d83 (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd6d83)
#39 0x7f6e3271b608 in start_thread /build/glibc-eX1tMB/glibc-2.31/nptl/pthread_create.c:477
#40 0x7f6e31de6292 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x122292)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/usr/lib/x86_64-linux-gnu/libgnutls.so.30+0x76e43) in gnutls_transport_set_errno
Thread T1 created by T0 here:
#0 0x7f6e32d16805 in pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x3a805)
#1 0x7f6e320f9048 in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd7048)
#2 0x557f562bcf1c in jami::ScheduledExecutor::ScheduledExecutor() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:29
#3 0x557f561a69ae in jami::Manager::ManagerPimpl::ManagerPimpl(jami::Manager&) /home/sblin/ring-project/daemon/src/manager.cpp:451
#4 0x557f561aa13e in jami::Manager::Manager() /home/sblin/ring-project/daemon/src/manager.cpp:730
#5 0x557f561a9f05 in jami::Manager::instance() /home/sblin/ring-project/daemon/src/manager.cpp:706
#6 0x557f55d05ccd in DRing::init(DRing::InitFlag) /home/sblin/ring-project/daemon/src/ring_api.cpp:57
#7 0x557f55bdb71f in DBusClient::initLibrary(int) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:245
#8 0x557f55bd02a1 in DBusClient::DBusClient(int, bool) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:108
#9 0x557f55bcf9af in void __gnu_cxx::new_allocator<DBusClient>::construct<DBusClient, int&, bool&>(DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44f9af)
#10 0x557f55bcf773 in void std::allocator_traits<std::allocator<DBusClient> >::construct<DBusClient, int&, bool&>(std::allocator<DBusClient>&, DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44f773)
#11 0x557f55bcf3a4 in std::_Sp_counted_ptr_inplace<DBusClient, std::allocator<DBusClient>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<int&, bool&>(std::allocator<DBusClient>, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44f3a4)
#12 0x557f55bced6a in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<DBusClient, std::allocator<DBusClient>, int&, bool&>(DBusClient*&, std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44ed6a)
#13 0x557f55bce8bd in std::__shared_ptr<DBusClient, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44e8bd)
#14 0x557f55bcdd7e in std::shared_ptr<DBusClient>::shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44dd7e)
#15 0x557f55bcd2ae in std::shared_ptr<DBusClient> std::allocate_shared<DBusClient, std::allocator<DBusClient>, int&, bool&>(std::allocator<DBusClient> const&, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44d2ae)
#16 0x557f55bcc8de in std::shared_ptr<DBusClient> std::make_shared<DBusClient, int&, bool&>(int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x44c8de)
#17 0x557f55bcb651 in main /home/sblin/ring-project/daemon/bin/main.cpp:218
#18 0x7f6e31ceb0b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)
==258077==ABORTING
✘ sblin@sblin-pbody ~/ring-project/daemon master
```