Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

call: magic check in sipsess_desc_handler() #1664

Merged
merged 1 commit into from Nov 23, 2021

Conversation

cspiel1
Copy link
Collaborator

@cspiel1 cspiel1 commented Nov 22, 2021

No description provided.

@cspiel1
Copy link
Collaborator Author

cspiel1 commented Nov 22, 2021

@juha-h Please try to reproduce the crash! Maybe you get the MAGIC_CHECK warning.
Which steps lead to this crash?

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021

I have now applied this PR in my two test devices, but don't know how to reproduce the crash

Is it so that magic check just prints a log message, but execution of the code continues and the crash will happen like before?

If there are no negative consequences of the check, it would be good idea to merge the PR.

@sreimers
Copy link
Member

With RELEASE=1 https://github.com/juha-h/libbaresip-android/blob/master/Makefile#L114 MAGIC_CHECK is disabled. without it prints a warning and calls BREAKPOINT which is helpfull in debugger.

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021 via email

@sreimers
Copy link
Member

You have to set RELEASE=

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021

OK, now I have RELEASE=

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021

I got the same crash again:

          sipsess_desc_handler
                                                                                                                                     /usr/src/libbaresip-android/baresip/src/call.c:2102:18
#01 0x00000000001deea0 /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!libbaresip.so (offset 0x2a7000) (BuildId: 784a70d39d02cab3a613c9f6856df84441b819ca)

Line 2102 is same as as before:

	if (!call->acc->mnat)

MAGIC_CHECK gave:

11-22 17:49:10.685 17601 17698 D Baresip+ Lib: sipsess_desc_handler: wrong magic struct=0x786d998a98 (magic=0x00000000)
11-22 17:49:11.385 23080 23080 F DEBUG   :       #12 pc 000000000017acb8  /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!libbaresip.so (offset 0x2a7000) (Java_com_tutpro_baresip_plus_BaresipService_baresipStart+2932) (BuildId: 784a70d39d02cab3a613c9f6856df84441b819ca)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #20 pc 0000000000019b44  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService.onStartCommand$lambda-2+52)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #23 pc 0000000000018b58  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService.$r8$lambda$NKEUbIq1EO7RcC2chrxxrr9A-EQ)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #26 pc 0000000000016ce0  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService$$ExternalSyntheticLambda2.run+8)

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021

From logs I see the events that lead to the crash:

The log is below.

11-22 17:49:00.162 17601 17601 D Baresip+ Lib: connecting ua 517514741400 to sip:test@test.tutpro.com with vmode 1, adir: 3, vdir: 0
11-22 17:49:00.162 17601 17698 D Baresip+ Lib: call: alloc with params laddr=10.174.60.68, af=AF_INET, use_rtp=1
11-22 17:49:00.163 17601 17698 D Baresip+ Lib:  [   zrtp main]: START SESSION INITIALIZATION. sID=14.
... more zrtp related lines
11-22 17:49:00.168 17601 17698 D Baresip+ Lib:  [   zrtp main]: ATTACH NEW STREAM - DONE.
11-22 17:49:00.168 17601 17698 D Baresip+ Lib: call: connecting to 'sip:test@test.tutpro.com'..
11-22 17:49:00.168 17601 17601 D Baresip+ Lib: sending ua/call 517514741400/518930800024 event call outgoing
11-22 17:49:00.168 17601 17601 D Baresip+: got uaEvent call outgoing/sip:jh@test.tutpro.com/518930800024
11-22 17:49:00.451 17601 17601 D Baresip+ Lib: ua event (CALL_LOCAL_SDP) offer
11-22 17:49:06.360 17601 17601 D Baresip+: AoR sip:jh@test.tutpro.com hanging up call 518930800024 with test
11-22 17:49:06.360 17601 17601 D Baresip+ Lib: hanging up call 517514741400/518930800024 with 0 
11-22 17:49:06.360 17601 17698 D Baresip+ Lib: call: terminate call 'a64eeaa78ef06b77' with sip:test@test.tutpro.com
11-22 17:49:06.362 17601 17698 D Baresip+ Lib: video: stopping video source ..
11-22 17:49:06.362 17601 17698 D Baresip+ Lib: video: stopping video display ..
11-22 17:49:06.362 17601 17601 D Baresip+ Lib: ua event (CALL_CLOSED) Connection reset by user
11-22 17:49:06.364 17601 17601 D Baresip+: AoR sip:jh@test.tutpro.com call 518930800024 is closed
11-22 17:49:06.627 17601 17698 D Baresip+ Lib: video: stopping video source ..
11-22 17:49:06.627 17601 17698 D Baresip+ Lib: video: stopping video display ..
11-22 17:49:06.628 17601 17698 D Baresip+ Lib: audio: destroyed (started=0)
11-22 17:49:06.628 17601 17698 D Baresip+ Lib:  [ zrtp engine]: STOP STREAM ID=28 mode=CLEAR state=ACTIVE.
11-22 17:49:06.628 17601 17698 D Baresip+ Lib:  [        zrtp]: 	Stream ID=0 UNKNOWN switching <NONE> ---> <NONE>.
11-22 17:49:06.628 17601 17698 D Baresip+ Lib:  [ zrtp engine]: STOP STREAM ID=29 mode=CLEAR state=ACTIVE.
11-22 17:49:06.628 17601 17698 D Baresip+ Lib:  [        zrtp]: 	Stream ID=0 UNKNOWN switching <NONE> ---> <NONE>.
11-22 17:49:06.630 17601 17698 D Baresip+ Lib:  [ zrtp engine]: STOP STREAM ID=0 mode=UNKNOWN state=NONE.
11-22 17:49:06.630 17601 17698 D Baresip+ Lib:  [ zrtp engine]: STOP STREAM ID=0 mode=UNKNOWN state=NONE.
11-22 17:49:07.627 17601 17698 D Baresip+ Lib: ua: ua_register sip:jh@test.tutpro.com
11-22 17:49:07.627 17601 17601 D Baresip+ Lib: ua event (REGISTERING) 
11-22 17:49:09.573 17601 17601 D Baresip+: quitRestart Restart = true
11-22 17:49:09.580 17601 17601 D Baresip+: Seconds remaining: 4
11-22 17:49:09.618 17601 17601 D Baresip+ Lib: ua_stop_all upon baresipStop
11-22 17:49:09.618 17601 17697 D Baresip+ Lib: calling ua_stop_all with force 0
11-22 17:49:09.618 17601 17697 D Baresip+ Lib: ua event (SHUTDOWN) 
11-22 17:49:09.618 17601 17698 D Baresip+ Lib: ua: stop all (forced=0)
11-22 17:49:09.620 17601 17697 D Baresip+ Lib: ua event (SHUTDOWN) 
11-22 17:49:09.620 17601 17697 D Baresip+ Lib: ua event (UNREGISTERING) 
11-22 17:49:09.621 17601 17697 D Baresip+ Lib: ua event (SHUTDOWN) 
11-22 17:49:09.622 17601 17697 D Baresip+ Lib: ua event (SHUTDOWN) 
11-22 17:49:09.632 17601 17698 D Baresip+ Lib: ua: in use (2) by app module
11-22 17:49:09.623 17601 17698 D Baresip+ Lib: mwi: shutdown of sip:bar@test.tutpro.com
11-22 17:49:10.121 17601 17697 D Baresip+ Lib: ua event (UNREGISTERING) 
11-22 17:49:10.132 17601 17697 D Baresip+ Lib: ua event (UNREGISTERING) 
11-22 17:49:10.581 17601 17601 D Baresip+: Seconds remaining: 3
11-22 17:49:10.685 17601 17698 D Baresip+ Lib: sipsess_desc_handler: wrong magic struct=0x786d998a98 (magic=0x00000000)
11-22 17:49:11.385 23080 23080 F DEBUG   :       #12 pc 000000000017acb8  /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!libbaresip.so (offset 0x2a7000) (Java_com_tutpro_baresip_plus_BaresipService_baresipStart+2932) (BuildId: 784a70d39d02cab3a613c9f6856df84441b819ca)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #20 pc 0000000000019b44  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService.onStartCommand$lambda-2+52)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #23 pc 0000000000018b58  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService.$r8$lambda$NKEUbIq1EO7RcC2chrxxrr9A-EQ)
11-22 17:49:11.386 23080 23080 F DEBUG   :       #26 pc 0000000000016ce0  [anon:dalvik-classes3.dex extracted in memory from /data/app/~~cF2KMkQKhKyJglo6ONuENA==/com.tutpro.baresip.plus-9KkP7Aq4CjeMvY3tC45osA==/base.apk!classes3.dex] (com.tutpro.baresip.plus.BaresipService$$ExternalSyntheticLambda2.run+8)
11-22 1

@juha-h
Copy link
Collaborator

juha-h commented Nov 22, 2021

So it is weird that 7 seconds after the calls is closed, sipsess_desc_handler() gets called. No wonder that the call does not exist anymore.

Edit: I had SIP packet trace on, and saw that when the call was made, no INVITE request was sent out. So baresip was stuck at something. No medianat is enabled. No network issues exist, because mwi un-SUBSCRIBE went fine.

@alfredh alfredh merged commit f179a19 into baresip:master Nov 23, 2021
@cspiel1 cspiel1 deleted the call_magic_check branch November 29, 2021 14:50
@cspiel1
Copy link
Collaborator Author

cspiel1 commented Nov 29, 2021

I had an idea. This might be the solution:
baresip/re#182

@juha-h
Copy link
Collaborator

juha-h commented Nov 29, 2021

I may have difficulties to reproduce the events that lead to the crash, but should be OK anyway to set sess->desch = null when session waits to be terminated.

@cspiel1
Copy link
Collaborator Author

cspiel1 commented Nov 30, 2021

Yes, I think that it has to be set NULL. The other function pointers are also set to NULL or the internal callback functions. This was missing in the PR baresip/re#172.

wip-sync pushed a commit to NetBSD/pkgsrc-wip that referenced this pull request Jul 18, 2022
Still needs more testing for all the different options and plugins.

Changelog:

== 2.5.0 - 2022-07-01

== What's Changed
* audio: add optional decoding buffer by @cspiel1 in baresip/baresip#1842
* audio: RX filter thread needs separate sampv buffer by @cspiel1 in baresip/baresip#1879
* aufile: fix possible data race warning by @cspiel1 in baresip/baresip#1880
* audiounit,coreaudio: fix kAudioObjectPropertyElementMaster deprecation by @sreimers in baresip/baresip#1881
* av1: explicitly check for supported OBU types by @alfredh in baresip/baresip#1882
* audiounit/coreaudio: fix kAudioObjectPropertyElementMain by @sreimers in baresip/baresip#1885
* ci/build: bump macos min. sdk to 10.12 by @sreimers in baresip/baresip#1883
* ci: run only for pull requests and main branch by @sreimers in baresip/baresip#1887
* multicast: C11 mutex by @alfredh in baresip/baresip#1892
* dtls_srtp: enable ECC by default, remove RSA by @alfredh in baresip/baresip#1891
* ci/build: add ubuntu 22.04 by @sreimers in baresip/baresip#1890
* test: add check for memory leaks by @sreimers in baresip/baresip#1896
* stream,metric: RX real-time - make metric thread-safe by @cspiel1 in baresip/baresip#1895
* Cmake findre by @alfredh in baresip/baresip#1893
* test: wait for both audio and video to be established by @alfredh in baresip/baresip#1903
* docs: remove old TODO file by @alfredh in baresip/baresip#1902
* audio: fixed check for aubuf started flag by @cspiel1 in baresip/baresip#1904
* use new mutex interface by @cspiel1 in baresip/baresip#1905
* audio: make rx.filtl thread-safe by @cspiel1 in baresip/baresip#1897
* audio: allocate correct buffer size for static auplay srate by @cspiel1 in baresip/baresip#1906
* Pulseaudio Async Interface Module by @cHuberCoffee in baresip/baresip#1907
* Do not destroy register client when it is unregistered by @juha-h in baresip/baresip#1908
* Two spaces are required after email address by @juha-h in baresip/baresip#1909
* cmake: add alsa module by @alfredh in baresip/baresip#1910
* cmake: fix static openssl and thread linking by @sreimers in baresip/baresip#1911
* In start_registering, create register clients if reg list is empty by @juha-h in baresip/baresip#1913
* ctrl_dbus: use new thread and mtx interface by @cspiel1 in baresip/baresip#1916
* cmake: add pulse and pulse_async module by @cHuberCoffee in baresip/baresip#1919
* Un-subscribe mwi at un-register by @juha-h in baresip/baresip#1918
* call: update media on session progress. by @RobertMi21 in baresip/baresip#1922
* ctrl_dbus send event in main thread by @cspiel1 in baresip/baresip#1921
* uag: add timestamps to SIP trace by @cspiel1 in baresip/baresip#1914
* main: fix open timers check by @sreimers in baresip/baresip#1925
* cmake: add account module by @alfredh in baresip/baresip#1926

---

== 2.4.0 - 2022-06-01

== What's Changed
* mulitcast unmute bad quality by @cspiel1 in baresip/baresip#1821
* menu ringback for parallel call by @cspiel1 in baresip/baresip#1827
* multicast: support error code EAGAIN of jbuf_get() by @cspiel1 in baresip/baresip#1832
* use RTP clock rate for timestamp calculation by @cspiel1 in baresip/baresip#1834
* av1 obu by @alfredh in baresip/baresip#1835
* av1 packetizer by @alfredh in baresip/baresip#1836
* av1: depacketizer by @alfredh in baresip/baresip#1837
* Disabled debug statement by @juha-h in baresip/baresip#1838
* h264: move from rem to re by @sreimers in baresip/baresip#1839
* ua: send new event UA_EVENT_CREATE at successful ua allocation by @cHuberCoffee in baresip/baresip#1840
* evdev: fix wrong ioctl size by @sreimers in baresip/baresip#1843
* aufile: ausrc_prm has to be copied when source is allocated by @cspiel1 in baresip/baresip#1844
* conf: missing pointer initialization found by clang analyzer by @cspiel1 in baresip/baresip#1845
* mk/modules: fix omx RPI detection by @sreimers in baresip/baresip#1847
* auconv: add auconv_to_float (fixes #1833) by @alfredh in baresip/baresip#1849
* avfilter: migrate to C11 mutex by @alfredh in baresip/baresip#1850
* avformat: C11 mutex by @alfredh in baresip/baresip#1851
* selfview: C11 mutex by @alfredh in baresip/baresip#1852
* audio: C11 mutex by @alfredh in baresip/baresip#1853
* metric: C11 mutex by @alfredh in baresip/baresip#1854
* play: C11 mutex by @alfredh in baresip/baresip#1855
* dns: add query cache by @sreimers in baresip/baresip#1848
* video: C11 mutex by @alfredh in baresip/baresip#1856
* aufile: C11 threads by @alfredh in baresip/baresip#1858
* audio: add more locking by @alfredh in baresip/baresip#1857
* aufile/play: fix run data race by @sreimers in baresip/baresip#1859
* mc: multicast receiver enable state fix by @cHuberCoffee in baresip/baresip#1861
* audio: C11 thread by @alfredh in baresip/baresip#1860
* av1: add packetize handler by @alfredh in baresip/baresip#1865
* net/net_debug: add default route hint by @sreimers in baresip/baresip#1864
* ice: fix local prio calculation by @sreimers in baresip/baresip#1863
* avformat: open codec if not passthrough by @alfredh in baresip/baresip#1866
* dtls_srtp: Minor whitespace fix by @robert-scheck in baresip/baresip#1870
* vp8: add packetize handler by @alfredh in baresip/baresip#1868
* vp9: add packetizer by @alfredh in baresip/baresip#1871
* debug_cmd: support absolute path for command aufileinfo by @cspiel1 in baresip/baresip#1875
* event: add diverter URI to UA event by @cspiel1 in baresip/baresip#1876
* aufileinfo with synchronous response by @cspiel1 in baresip/baresip#1877

**Full Changelog**: baresip/baresip@v2.3.0...v2.4.0

---

== [2.3.0] - 2022-05-01

== What's Changed
* mc: multicast mute function by @cHuberCoffee in baresip/baresip#1805
* mc: reject incoming call if high prio multicast is received by @cHuberCoffee in baresip/baresip#1804
* mc: mcplayer stream fade-out and fade-in by @cHuberCoffee in baresip/baresip#1802
* clean_number now will remove all non-digit chars by @mbattista in baresip/baresip#1806
* Workflows cmakelint by @alfredh in baresip/baresip#1808
* ccheck: check all CMakeLists.txt files by @sreimers in baresip/baresip#1810
* mk: remove win32 MSVC project files by @alfredh in baresip/baresip#1811
* cmake: add modules by @sreimers in baresip/baresip#1812
* ajb,aubuf: timestamp is given in [us] by @cspiel1 in baresip/baresip#1809
* call: allow optional leading space in SIP INFO for dtmf-relay by @thomas-karl in baresip/baresip#1814
* conf: add fs_file_extension() by @alfredh in baresip/baresip#1816
* Updated debian version by @juha-h in baresip/baresip#1817
* pulse: fix timestamp integer overrun for arm by @cspiel1 in baresip/baresip#1818
* fix audio multicast artefacts by @cspiel1 in baresip/baresip#1819
* audio: flush aubuf if ssrc changes by @cspiel1 in baresip/baresip#1822
* Debian control dependency update by @juha-h in baresip/baresip#1823
* pulse: support restart of pulseaudio during stream by @cspiel1 in baresip/baresip#1824
* version 2.3.0 by @alfredh in baresip/baresip#1826

== New Contributors
* @thomas-karl made their first contribution in baresip/baresip#1814

---

== [2.0.2] - 2022-04-09

== What's Changed
* Added API function call_diverteruri by @juha-h in baresip/baresip#1780
* Avoid undeclared 'CLOCK_REALTIME' on RHEL/CentOS 7 (fixes #1781) by @robert-scheck in baresip/baresip#1782
* audio: add lock in audio_send_digit by @GGGO in baresip/baresip#1786
* vumeter: use new auframe_level() by @sreimers in baresip/baresip#1788
* reg.c: use already declared acc by @GGGO in baresip/baresip#1789
* aubuf adaptive jitter buffer by @cspiel1 in baresip/baresip#1784
* multicast set aubuf silence by @cspiel1 in baresip/baresip#1791
* ccheck: fix line number in error print by @cspiel1 in baresip/baresip#1793
* test: check the correct stream in UA_EVENT_CALL_MENC by @alfredh in baresip/baresip#1794
* audio: missing lock around stream_send by @GGGO in baresip/baresip#1796
* docs: remove obsolete jitter_buffer_wish from config example by @cspiel1 in baresip/baresip#1798
* Multicast jbuf and aubuf changes by @cHuberCoffee in baresip/baresip#1797
* uag: uag_hold_resume() should not return err if there is no call to hold by @cspiel1 in baresip/baresip#1799
* stream: remove mbuf_get_left check in rtp_handler by @GGGO in baresip/baresip#1801
* cmake: preliminary support by @alfredh in baresip/baresip#1800

== New Contributors
* @GGGO made their first contribution in baresip/baresip#1786

---

== [2.0.1] - 2022-03-27

=== What's Changed
* audio: fix rx_thread (adaptive jitter buffer) by @sreimers in baresip/baresip#1769
* test: init fixture by @alfredh in baresip/baresip#1772
* test: refactoring of test_account_uri_complete by @alfredh in baresip/baresip#1773
* mk: check also if extensions/XShm.h is present by @cspiel1 in baresip/baresip#1774
* menu: support custom SIP headers by @cspiel1 in baresip/baresip#1775
* menu: use new sdp_dir_decode by @cspiel1 in baresip/baresip#1776
* menu: avoid multiple hash entries with same key by @cspiel1 in baresip/baresip#1777
* menu: support audio file config value "none" by @cspiel1 in baresip/baresip#1778
* intercom: add video preview call by @cspiel1 in baresip/baresip#1779

---

== [2.0.0] - 2022-03-11

=== What's Changed
* debug_cmd: use module_event() for aufileinfo events by @cspiel1 in baresip/baresip#1345
* multicast: use module_event() for sending events by @cspiel1 in baresip/baresip#1346
* ctrl_dbus: use module_event() to send exported event by @cspiel1 in baresip/baresip#1347
* ua,call: add CALL_EVENT_OUTGOING by @cspiel1 in baresip/baresip#1348
* GTK caller history by @mbattista in baresip/baresip#1350
* Convert FRITZ!Box XML phone book into Baresip contacts by @robert-scheck in baresip/baresip#1382
* menu: play ringtone on audio_alert device by @cspiel1 in baresip/baresip#1396
* menu: use str_isset() for command parameter by @cspiel1 in baresip/baresip#1397
* dtls_srtp: use elliptic curve cryptography by @cHuberCoffee in baresip/baresip#1385
* Support for s16 playback in jack. Needed for play tones by @srperens in baresip/baresip#1399
* Check that account ;sipnat param has valid value by @juha-h in baresip/baresip#1401
* Tls sipcert per acc by @cHuberCoffee in baresip/baresip#1376
* Vidsrc add packet handler by @alfredh in baresip/baresip#1402
* ToS for video and sip by @cspiel1 in baresip/baresip#1393
* account: add accounts parameter to force media address family by @cspiel1 in baresip/baresip#1395
* Selective early media by @cspiel1 in baresip/baresip#1398
* ua,uag: split ua.c and uag.c by @cspiel1 in baresip/baresip#1349
* Account media af template by @cspiel1 in baresip/baresip#1406
* account: add missing client certificate parameter to template by @cHuberCoffee in baresip/baresip#1408
* account: update answermode values in template by @cspiel1 in baresip/baresip#1405
* menu: command uafind raises UA to head by @cspiel1 in baresip/baresip#1407
* ctrl_dbus: fix possible memleak on failed initialization by @cspiel1 in baresip/baresip#1410
* video passthrough by @alfredh in baresip/baresip#1418
* menu: enable auto answer calls also for command dialdir by @cspiel1 in baresip/baresip#1412
* menu: add command for settings media local direction by @cspiel1 in baresip/baresip#1413
* Accounts addr params by @cspiel1 in baresip/baresip#1414
* Accounts example cleanup by @cspiel1 in baresip/baresip#1415
* menu,call: fix hangup for outgoing call by @cspiel1 in baresip/baresip#1417
* multicast: add source and player API calls by @cHuberCoffee in baresip/baresip#1403
* menu: add command /uareg by @alfredh in baresip/baresip#1421
* menu: return complete URI for commands dial,dialdir by @cspiel1 in baresip/baresip#1424
* menu: in command dialdir call uag_find_requri() with uri by @cspiel1 in baresip/baresip#1425
* gst: replace variable length array (buf) with mem_zalloc by @sreimers in baresip/baresip#1426
* menu: avoid possible memleaks for dial/dialdir commands by @cspiel1 in baresip/baresip#1430
* uag: use local cuser for selecting user-agent (#1433) by @cspiel1 in baresip/baresip#1434
* Work on Intercom module by @cspiel1 in baresip/baresip#1432
* Attended Transfer on GTK by @mbattista in baresip/baresip#1435
* Update README.md with configuration suggestion by @webstean in baresip/baresip#1438
* README fixes by @juha-h in baresip/baresip#1440
* Accounts examples and template by @cspiel1 in baresip/baresip#1441
* serreg: use a timer for registration restart by @cspiel1 in baresip/baresip#1445
* gst: audio playback not correct for some WAV files. by @RobertMi21 in baresip/baresip#1442
* Working on intercom (ringtone override) by @cspiel1 in baresip/baresip#1436
* Use line number 0 if user did not provide any line number by @negbie in baresip/baresip#1451
* AMR Bandwidth Efficient mode support by @srperens in baresip/baresip#1423
* Working on Intercom (menu: allow other modules to reject a call) by @cspiel1 in baresip/baresip#1437
* auframe: add samplerate and channels by @sreimers in baresip/baresip#1452
* account: comment out very basic example in template by @cspiel1 in baresip/baresip#1458
* call answer media dir by @cspiel1 in baresip/baresip#1449
* Account auto answer beep by @cspiel1 in baresip/baresip#1461
* serreg: unregister correct User-Agents on registration failure by @cspiel1 in baresip/baresip#1462
* mk: enable auto-detect of av1 module by @alfredh in baresip/baresip#1463
* ctrl dbus makefile depends by @cspiel1 in baresip/baresip#1457
* stream: check if media is present before enabling the RTP timeout by @cspiel1 in baresip/baresip#1465
* ctrl_dbus: generate dbus code and documentation in makefile by @cspiel1 in baresip/baresip#1456
* auframe: always set srate and ch by @janh in baresip/baresip#1468
* auto answer beep per alert info URI by @cspiel1 in baresip/baresip#1466
* auframe: move to rem by @sreimers in baresip/baresip#1470
* mixminus: add conference feature by @sreimers in baresip/baresip#1411
* vidbridge: check vidbridge_disp_display args fixes segfault by @sreimers in baresip/baresip#1471
* gst: fixed some memory leaks by @RobertMi21 in baresip/baresip#1476
* ua, menu: move auto answer delay handling to menu (#1474) by @cspiel1 in baresip/baresip#1475
* ua,menu: move handling of ANSWERMODE_AUTO to menu (#1474) by @cspiel1 in baresip/baresip#1478
* ausine: support for multiple samplerates by @alfredh in baresip/baresip#1479
* account: fix IPv6 only URI for account_uri_complete() by @cspiel1 in baresip/baresip#1472
* ilbc: remove deprecated module by @alfredh in baresip/baresip#1483
* aubridge/device: remove unused sampv_out (old resample code) by @sreimers in baresip/baresip#1484
* pkg-config version check by @sreimers in baresip/baresip#1481
* mk: support more locations for libre.pc and librem.pc by @cspiel1 in baresip/baresip#1486
* net: remove unused domain by @alfredh in baresip/baresip#1489
* audio: fix aufilt_setup update handling by @sreimers in baresip/baresip#1498
* SIP redirect callbackfunction by @cHuberCoffee in baresip/baresip#1495
* add secure websocket tls context by @sreimers in baresip/baresip#1499
* test: add stunuri by @alfredh in baresip/baresip#1503
* turn: refactoring, add compv by @alfredh in baresip/baresip#1505
* fmt: add string to bool function by @cspiel1 in baresip/baresip#1501
* mk: check glib-2.0 at least like in ubuntu 18.04 by @cspiel1 in baresip/baresip#1507
* registration fixes by @cspiel1 in baresip/baresip#1510
* uag,menu: add commands to enable/disable UDP/TCP/TLS by @cspiel1 in baresip/baresip#1502
* config,audio: add setting audio.telev_pt by @cspiel1 in baresip/baresip#1509
* stream: fix telephone event (#1494) by @cspiel1 in baresip/baresip#1506
* Fix I2S compile error, use auframe by @andreaswatch in baresip/baresip#1512
* ci/tools: fix pylint by @sreimers in baresip/baresip#1515
* config: not all audio config was printed by @cspiel1 in baresip/baresip#1516
* net: replace network_if_getname with net_if_getname by @sreimers in baresip/baresip#1518
* account: add setting audio payload type for telephone-event by @cspiel1 in baresip/baresip#1517
* uag,menu: simplify transport enable/disable and support also ws/wss by @cspiel1 in baresip/baresip#1514
* rst: remove deprecated module by @alfredh in baresip/baresip#1519
* turn: add TCP and TLS transports by @alfredh in baresip/baresip#1520
* speex_pp: remove deprecated module by @alfredh in baresip/baresip#1521
* call: allow video calls by only rejecting a call without any common codecs by @cHuberCoffee in baresip/baresip#1523
* multicast: add missing join for multicast addresses by @cHuberCoffee in baresip/baresip#1524
* confg,uag: rework on sip_transports setting by @cspiel1 in baresip/baresip#1525
* ua: check if peer is capable of video for early video by @cHuberCoffee in baresip/baresip#1526
* mqtt/subscribe: replace fixed command buf and increase response size by @sreimers in baresip/baresip#1527
* mqtt: add reconnect handling (lost broker connection) by @sreimers in baresip/baresip#1528
* event: increase module_event buffer size by @sreimers in baresip/baresip#1532
* mqtt/subscribe: use safe odict_string to prevent crashes by @sreimers in baresip/baresip#1534
* stream: add stream_set_label by @alfredh in baresip/baresip#1537
* Makefile dependency check improvements by @sreimers in baresip/baresip#1531
* account: add enable/disable flag for video by @cspiel1 in baresip/baresip#1536
* audio: use account specific audio telev pt correctly by @cspiel1 in baresip/baresip#1542
* net: add missing HAVE_INET6 by @cspiel1 in baresip/baresip#1543
* account: remove unused API function for video enable by @cspiel1 in baresip/baresip#1544
* gst: changed log level for end of file message by @RobertMi21 in baresip/baresip#1548
* multicast: add new configurable multicast TTL config parameter by @cHuberCoffee in baresip/baresip#1545
* call: fix early video capability check (wrong SDP direction checked) by @cHuberCoffee in baresip/baresip#1549
* audio: catch end of file message in ausrc error handler (#1539) by @RobertMi21 in baresip/baresip#1550
* menu: added stopringing command by @RobertMi21 in baresip/baresip#1551
* stream: remove obsolete rx.jbuf_started by @cspiel1 in baresip/baresip#1552
* ua: downgrade level of message "ua: using best effort AF" by @viordash in baresip/baresip#1553
* outgoing calls early callid by @cspiel1 in baresip/baresip#1547
* audio: changed log level for ausrc error handler messages by @RobertMi21 in baresip/baresip#1554
* SIP default protocol by @cspiel1 in baresip/baresip#1538
* serreg: fix server selection in case all server were unavailable by @cHuberCoffee in baresip/baresip#1557
* multicast: fix missing unlock by @alfredh in baresip/baresip#1559
* config: replace strcpy by saver re_snprintf (#1558) by @cspiel1 in baresip/baresip#1560
* multicast: fix coverity scan by @alfredh in baresip/baresip#1561
* odict: hide struct odict_entry by @sreimers in baresip/baresip#1562
* ctrl_dbus: use mqueue to trigger processing of command in remain thread by @cspiel1 in baresip/baresip#1565
* multicast,config: add separate jitter buffer configuration by @cspiel1 in baresip/baresip#1566
* ua: emit CALL_CLOSED event when user agent is deleted by @cspiel1 in baresip/baresip#1564
* core: move stream_enable_rtp_timeout to api by @sreimers in baresip/baresip#1569
* stream: add mid sdp attribute by @alfredh in baresip/baresip#1570
* rtpext: change length type to size_t by @alfredh in baresip/baresip#1573
* avcodec: remove old backwards compat wrapper by @alfredh in baresip/baresip#1575
* main: Added option (-a) to set the ua agent string. by @RobertMi21 in baresip/baresip#1576
* menu fix tones for parallel outgoing calls by @cspiel1 in baresip/baresip#1577
* Fix win32 by @viordash in baresip/baresip#1579
* Fix static analyzer warnings by @viordash in baresip/baresip#1580
* call: added auto dtmf mode by @RobertMi21 in baresip/baresip#1583
* RTP inbound telephone events should not lead to packet loss by @cspiel1 in baresip/baresip#1581
* Running tests in a win32 project  by @viordash in baresip/baresip#1585
* stream: wrong media direction after setting stream to hold by @RobertMi21 in baresip/baresip#1587
* move network check to module by @cspiel1 in baresip/baresip#1584
* serreg: do not ignore returned errors of ua_register() by @cspiel1 in baresip/baresip#1589
* Bundle media mux by @alfredh in baresip/baresip#1588
* mixausrc: no warnings flood when sampc changes by @cspiel1 in baresip/baresip#1595
* ua: select laddr with route to SDP offer address by @cspiel1 in baresip/baresip#1590
* net,uag: allow incoming peer-to-peer calls with user@domain by @cspiel1 in baresip/baresip#1591
* uag: in uag_reset_transp() select laddr with route to SDP raddr by @cspiel1 in baresip/baresip#1592
* uag: exit if transport could not be added by @cspiel1 in baresip/baresip#1593
* avcodec: use const AVCodec by @alfredh in baresip/baresip#1602
* module: deprecate module_tmp by @alfredh in baresip/baresip#1600
* test: use ausine as audio source by @alfredh in baresip/baresip#1601
* Selftest fakevideo by @alfredh in baresip/baresip#1604
* When adding local address, check that it has not been added already by @juha-h in baresip/baresip#1606
* start without network by @cspiel1 in baresip/baresip#1607
* config: add netroam module by @sreimers in baresip/baresip#1608
* multicast: allow any port number for sender and receiver by @cHuberCoffee in baresip/baresip#1609
* netroam: add netlink immediate network change detection by @cspiel1 in baresip/baresip#1612
* remove uag transp rm (#1611) by @cspiel1 in baresip/baresip#1616
* net dns srv get by @cspiel1 in baresip/baresip#1615
* move calls to stream_start_rtcp to call.c by @alfredh in baresip/baresip#1617
* video: null pointer check for the display handler by @cspiel1 in baresip/baresip#1621
* audio: add lock by @alfredh in baresip/baresip#1619
* ua: select proper af and laddr for outgoing IP calls by @cspiel1 in baresip/baresip#1618
* audio: lock stream by @alfredh in baresip/baresip#1622
* test: replace mock ausrc with ausine by @alfredh in baresip/baresip#1623
* menu ringback session progress by @cspiel1 in baresip/baresip#1625
* New module providing webrtc aec mobile mode filter by @juha-h in baresip/baresip#1626
* uag: respect setting sip_listen (#1627) by @cspiel1 in baresip/baresip#1628
* select laddr for SDP with respect to net_interface by @cspiel1 in baresip/baresip#1630
* stream: do not start audio during early-video by @cspiel1 in baresip/baresip#1629
* remove struct media_ctx by @alfredh in baresip/baresip#1632
* ci: add libwebrtc-audio-processing-dev (module webrtc_aec) by @sreimers in baresip/baresip#1635
* auconv: new module for audio format conversion by @alfredh in baresip/baresip#1634
* Support for IPv6 link local address for streams by @cspiel1 in baresip/baresip#1624
* call: check if address family is valid also for video stream by @cspiel1 in baresip/baresip#1636
* audio: pass pointer to tx->ausrc_prm instead of local variable by @cspiel1 in baresip/baresip#1637
* menu: add an event for call transfer by @cspiel1 in baresip/baresip#1641
* netroam: error handling for reset transport by @cspiel1 in baresip/baresip#1642
* mk: use CC_TEST for auto detect modules by @sreimers in baresip/baresip#1647
* test: use dtls_srtp.so module instead of mock by @alfredh in baresip/baresip#1646
* stream: create jbuf only if use_rtp is set by @cspiel1 in baresip/baresip#1648
* multicast: fix memleak in player destructor by @cspiel1 in baresip/baresip#1653
* stream: split up sender/receiver by @alfredh in baresip/baresip#1654
* set sdp laddr to SIP src address by @cspiel1 in baresip/baresip#1645
* serreg fix fallback accounts by @cspiel1 in baresip/baresip#1660
* ctrl_dbus: print command with the warning by @cspiel1 in baresip/baresip#1662
* call: new transfer call state to handle transfered calls correctly by @cHuberCoffee in baresip/baresip#1658
* serreg: prevent fast register retries if offline by @cspiel1 in baresip/baresip#1663
* av1: update packetization code by @alfredh in baresip/baresip#1657
* call: magic check in sipsess_desc_handler() by @cspiel1 in baresip/baresip#1664
* alsa: use snd_pcm_drop instead of snd_pcm_drain by @sreimers in baresip/baresip#1669
* Increased debian compat level to 10 by @juha-h in baresip/baresip#1667
* conf: fix conf_configure_buf() config parse by @sreimers in baresip/baresip#1666
* stream flush rtp socket by @cspiel1 in baresip/baresip#1671
* Transfer like rfc5589 by @cHuberCoffee in baresip/baresip#1678
* GTK: mem_derefer call earlier by @mbattista in baresip/baresip#1682
* netroam: add fail counter and event by @cspiel1 in baresip/baresip#1685
* Added API functions stream_metric_get_(tx|rx)_bitrate by @juha-h in baresip/baresip#1686
* Multicast new functions by @cHuberCoffee in baresip/baresip#1687
* avcodec: Enable pass-through for more codecs by @abrodkin in baresip/baresip#1692
* menu: filter for the correct call state in menu_selcall by @cHuberCoffee in baresip/baresip#1693
* test: fix warning on mingw32 by @alfredh in baresip/baresip#1696
* menu: Play ringback in play device by @myrkr in baresip/baresip#1698
* sip: add optional TCP source port by @cspiel1 in baresip/baresip#1695
* rtpext: change id unsigned -> uint8_t by @alfredh in baresip/baresip#1701
* ci: add mingw build test by @sreimers in baresip/baresip#1700
* test: use mediaenc srtp instead of mock by @alfredh in baresip/baresip#1702
* test: remove mock mediaenc by @alfredh in baresip/baresip#1704
* descr: add session_description by @alfredh in baresip/baresip#1706
* use fs_isfile() by @alfredh in baresip/baresip#1709
* stream: only call rtp_clear for audio by @alfredh in baresip/baresip#1710
* checks if call is available before calling call, closes #1708 by @mbattista in baresip/baresip#1712
* conf: add conf_loadfile by @alfredh in baresip/baresip#1713
* ice: remove ice_mode by @sreimers in baresip/baresip#1714
* audio: use auframe in encode_rtp_send, ref #1699 by @alfredh in baresip/baresip#1715
* Increased account's max video codec count from four to eight by @juha-h in baresip/baresip#1717
* gtk: Avoid duplicate call_timer registration by @myrkr in baresip/baresip#1719
* Attended call transfer by @cHuberCoffee in baresip/baresip#1718
* menu: exclude given call when searching for active call by @cspiel1 in baresip/baresip#1721
* menu: play call waiting tone on audio_player device by @cspiel1 in baresip/baresip#1722
* ci/build/macos: link ffmpeg@4 by @sreimers in baresip/baresip#1725
* module auresamp by @cspiel1 in baresip/baresip#1705
* test: remove h264 testcode, already in retest by @alfredh in baresip/baresip#1726
* h265: move from avcodec to rem by @alfredh in baresip/baresip#1728
* mc: send more details at receiver - timeout event by @cHuberCoffee in baresip/baresip#1731
* h265: move packetizer from avcodec to rem by @alfredh in baresip/baresip#1732
* FFmpeg 5 by @sreimers in baresip/baresip#1734
* Fixing clang ThreadSanitizer warnings by @sreimers in baresip/baresip#1730
* auresamp: replace anonymous union for pre C11 compilers by @cspiel1 in baresip/baresip#1738
* aufile: align naming of alloc handlers by @sreimers in baresip/baresip#1739
* auresamp fixes by @cspiel1 in baresip/baresip#1741
* mc: new priority handling with multicast state by @cHuberCoffee in baresip/baresip#1740
* remove support for Solaris platform by @alfredh in baresip/baresip#1745
* Allow hanging up call that has not been ACKed yet by @juha-h in baresip/baresip#1747
* Multicast identical condition and fmt string fix by @cHuberCoffee in baresip/baresip#1751
* audio: allocate aubuf before ausrc_alloc (fixes data race) by @sreimers in baresip/baresip#1748
* call: send supported header for 200 answering/ok by @cHuberCoffee in baresip/baresip#1752
* event: check if media line is present for encoding audio/video dir by @cspiel1 in baresip/baresip#1754
* Removed unused variable in modules/webrtc_aec/aec.cpp by @juha-h in baresip/baresip#1756
* audio use module auconv by @cspiel1 in baresip/baresip#1742
* test: use aufile module by @alfredh in baresip/baresip#1757
* x11grab: remove module, use avformat.so instead by @alfredh in baresip/baresip#1758
* audio: declare iterator inside for-loop (C99) by @alfredh in baresip/baresip#1759
* aufile: set run=true before write thread starts (#1727) by @cspiel1 in baresip/baresip#1762
* Added new API function call_supported() and used it in menu module by @juha-h in baresip/baresip#1761
* aufile: separate aufile_src.c from aufile.c by @cspiel1 in baresip/baresip#1765
* ctrl_dbus: fix possible data race (#1727) by @cspiel1 in baresip/baresip#1764
* menu select other call on hangup by @cspiel1 in baresip/baresip#1763
* event: encode also combined media direction by @cspiel1 in baresip/baresip#1766

== New Contributors
* @srperens made their first contribution in baresip/baresip#1399
* @negbie made their first contribution in baresip/baresip#1451
* @andreaswatch made their first contribution in baresip/baresip#1512
* @viordash made their first contribution in baresip/baresip#1553
* @abrodkin made their first contribution in baresip/baresip#1692
* @myrkr made their first contribution in baresip/baresip#1698

---
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants