All notable changes to libre will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- types: remove old BREAKPOINT macro by @alfredh in #1194
- dnsc: Fallback to getaddrinfo without any DNS servers by @weili-jiang in #1195
- dns/client: return ENOTSUP if no server or not getaddrinfo by @sreimers in #1196
- conf: add conf_get_float by @juha-h in #1198
- ci/run-on-arch: use ubuntu 22.04 by @sreimers in #1204
- thread: fix thrd_equal win32 handle by @sreimers in #1203
- test: add pktsize to test_h264_packet_base() by @alfredh in #1205
- tls: make tls_verify_handler() static by @alfredh in #1201
- types: fix clang-tidy warning (gcc bit fields workaround) by @sreimers in #1206
- @weili-jiang made their first contribution in #1195
Full Changelog: https://github.com/baresip/re/compare/v3.16.0...v3.17.0
- thread: fix pthread_setname_np NetBSD by @leleliu008 in #1182
- ice: AI_V4MAPPED macro is missing on some BSD systems by @leleliu008 in #1181
- rtp/rtcp: add RTCP Generic NACK packet send (RFC 4585 6.2.1) by @sreimers in #1186
- main/fd_listen: return EMFILE if maxfds is reached by @sreimers in #1185
- ci: build retest for android by @alfredh in #1187
- test: minor cmake cleanup by @alfredh in #1188
- test: fix re_printf format string for multithread test by @alfredh in #1190
- ci: run retest on Fedora by @alfredh in #1191
- @leleliu008 made their first contribution in #1182
Full Changelog: https://github.com/baresip/re/compare/v3.15.0...v3.16.0
- misc: remove HAVE_INET6 by @sreimers in #1159
- dns/rr: fix dns_rr_print underflow by @sreimers in #1162
- test/async: remove AI_ADDRCONFIG by @sreimers in #1165
- retest: update usage message by @robert-scheck in #1166
- add filter_registrar option by @maximilianfridrich in #1160
- sa: add utility function to check if address is multicast by @cmfitch1 in #1168
- tls/sni: skip SNI check if we are client or server_name absent by @maximilianfridrich in #1169
- tls/sni: do not enable client verification when SNI matching is done by @maximilianfridrich in #1172
- dd: Dependency Descriptor RTP header extension by @alfredh in #1170
- aubuf: add AUBUF_TRACE mode with id by @sreimers in #1174
- sip/transp: add client certificate to all TLS transports by @maximilianfridrich in #1173
- tmr: add TMR_INIT by @sreimers in #1177
- sipsess/reply: fix heap-use-after-free bug by @sreimers in #1179
- version 3.15.0 by @alfredh in #1180
- @cmfitch1 made their first contribution in #1168
Full Changelog: https://github.com/baresip/re/compare/v3.14.0...v3.15.0
- aumix: use mutex_alloc() by @alfredh in #1142
- sipreg/reg.c: stop retrying registers early after 401/407 by @maximilianfridrich in #1143
- aumix: add locking in aumix_source_count() by @alfredh in #1145
- test: init err in test_sip_auth_encode() by @alfredh in #1146
- sipreg: refactor response_handler else optimization by @sreimers in #1147
- vidmix: improve mutex usage by @alfredh in #1148
- udp/mcast: use group scopeid as interface for IPv6 by @maximilianfridrich in #1149
- .clangd: suppress -Wgnu-zero-variadic-macro-arguments by @maximilianfridrich in #1150
- ci/build: use only macos-latest by @sreimers in #1153
- cmake: fix resolv on FreeBSD by @sreimers in #1152
- test: use h264_stap_decode_annexb() by @alfredh in #1151
- sipsess/reply: terminate session if no (PR)ACK received after 64*T1 by @maximilianfridrich in #1155
- rtcp: send BYE manually by @alfredh in #1154
- cmake: check accept4 only on linux by @sreimers in #1157
- cmake: fix iOS HAVE_ROUTE_LIST and darwin dns by @sreimers in #1158
- test: check if header and payload is set by @alfredh in #1161
Full Changelog: https://github.com/baresip/re/compare/v3.13.0...v3.14.0
- http/client: use dynamically sized buffers for PEM setters by @maximilianfridrich in #1117
- tls: allow secure TLS renegotiation by @maximilianfridrich in #1121
- tls: always enable USE_OPENSSL_SRTP by @alfredh in #1122
- main: remove call to openssl init by @alfredh in #1120
- sip/transp: Allow ACK w/o Max-Forwards header by @juha-h in #1124
- net: remove NET_ADDRSTRLEN by @alfredh in #1123
- ci/ios: increase min deployment target by @sreimers in #1126
- tls/http: add certificate chain setters by @maximilianfridrich in #1125
- sipsess/connect: set sess->established immediately on 200 receival by @maximilianfridrich in #1128
- test/cmake: add crypt32 linking for WIN32 by @sreimers in #1130
- ci/sanitizers: use clang-17 by @sreimers in #1131
- ci/sanitizer: add undefined behavior sanitizer by @sreimers in #1132
- sip: verify call-id, to-tag, cseq of INVITE response by @maximilianfridrich in #1129
- ci: remove one unneeded directory change by @alfredh in #1134
- test: change GENERATOR_SSRC from define to type by @alfredh in #1133
- tls: refactoring SNI ctx usage for libressl support by @sreimers in #1136
- test: add test_rtcp_loop() by @alfredh in #1137
- ci/coverage: increase min coverage by @sreimers in #1138
- ci/coverage: use json summary and upload html details by @sreimers in #1139
- sip: add host param to sip_send_conn by @sreimers in #1141
Full Changelog: https://github.com/baresip/re/compare/v3.12.0...v3.13.0
- cmake: fix static library build (vcpkg) by @alfredh in #1096
- h264: add STAP-A decode with long startcodes by @alfredh in #1101
- sess,request: deref request and ctrans immediately by @maximilianfridrich in #1099
- ua: enforce magic cookie in Via branch by @maximilianfridrich in #1102
- sip/auth: SHA-256 digest algorithm support by @sreimers in #1103
- ci/coverage: increase min. coverage by @sreimers in #1106
- rtp: fix correct logging text by @alfredh in #1109
- types: fix RE_ARG_SIZE gcc bit fields by @sreimers in #1110
- fmt: use re_fprintf instead of DEBUG_WARNING to avoid deadlock by @alfredh in #1112
- dbg: remove support for logfile by @alfredh in #1111
- test: add usage of rtcp_msg_print() by @alfredh in #1105
- http/client: add setter to disable tls server verification by @maximilianfridrich in #1114
- dbg: mutex should be unlocked while calling print handler by @alfredh in #1113
- Update README.md by @alfredh in #1115
- http/request: reset body mbuf pos on re-sending by @maximilianfridrich in #1116
- bump version by @alfredh in #1118
- cmake: bump soversion by @alfredh in #1119
Full Changelog: https://github.com/baresip/re/compare/v3.11.0...v3.12.0
- ci/clang-analyze: bump clang version and fix status-bugs by @sreimers in #1079
- main: Flush list of deleted fhs on
fd_poll
errors by @Lastique in #1081 - main: Use slist for fhs delete list. by @Lastique in #1082
- http/server: fix wrong sizeof in verify_msg by @akscf in #1083
- ci/sanitizers: add mmap rnd_bits workaround by @sreimers in #1086
- rtcp: add printing of TWCC packet by @alfredh in #1084
- include: add re_h264.h to re.h by @alfredh in #1087
- sdp: add sdp media lattr apply function the same way as for rattr by @cHuberCoffee in #1089
- av1: improve packetizer by @alfredh in #1088
- test: minor H.264 improvements by @alfredh in #1090
- tls: add session resumption setter by @maximilianfridrich in #1091
- thread/posix: optimize handler and fix gcc arm32 warning by @sreimers in #1093
- h264: fix for Annex-B bitstreams with 4-byte startcode by @alfredh in #1092
- ci/arch: add armv7 check by @sreimers in #1085
- main,httpauth: fix different from the declaration by @jobo-zt in #1095
- httpauth: fix doxygen comment by @alfredh in #1097
- @akscf made their first contribution in #1083
Full Changelog: https://github.com/baresip/re/compare/v3.10.0...v3.11.0
- transp: deref qent only if qentp is not set by @maximilianfridrich in #1061
- sipsess: fix doxygen comments by @alfredh in #1062
- aufile: fix doxygen comment by @alfredh in #1063
- ci/codeql: bump action v3 by @sreimers in #1064
- misc: text2pcap helpers (RTP/RTCP capturing) by @sreimers in #1065
- ci/mingw: bump upload/download-artifact and cache versions by @sreimers in #1066
- transp,tls: add TLS client verification by @maximilianfridrich in #1059
- fmt/text2pcap: cleanup by @sreimers in #1067
- ci/android: cache openssl build by @sreimers in #1068
- ci/misc: fix double push/pull runs by @sreimers in #1069
- fmt/text2pcap: fix coverity return value warning by @sreimers in #1070
- sipsess/listen: improve glare handling by @maximilianfridrich in #1071
- conf: add conf_get_i32 by @sreimers in #1072
Full Changelog: https://github.com/baresip/re/compare/v3.9.0...v3.10.0
- http: fix doxygen by @cspiel1 in #1033
- types: remove old ARRAY_SIZE macro by @alfredh in #1034
- cmake: bump minimum to version 3.14 by @alfredh in #1030
- test: use re_is_aligned() by @alfredh in #1035
- sipsess: refactor and simplify SDP negotiation state by @maximilianfridrich in #1016
- bump year by @sreimers in #1038
- cmake,pc: fix static library build by @alfredh in #1036
- rx thread activate by @cspiel1 in #1037
- test: fix cppcheck warnings by @alfredh in #1040
- test: move test_rtcp_decode_badmsg() to separate testcase by @alfredh in #1041
- rtp: lock more fields from rtcp_sess by @cspiel1 in #1039
- rtp: lock rtcp_set_srate() by @cspiel1 in #1043
- test: HAVE_INET6 is always defined by @alfredh in #1046
- ci: add run-on-arch for ARM64 linux by @alfredh in #1045
- httpauth: digest verification rfc 7616 by @cHuberCoffee in #1044
- tmr: prevent race condition on cancel by @sreimers in #1048
- aubuf: fix coverity defect by @alfredh in #1051
- btrace: fix coverity warning by @alfredh in #1049
- ci/win: downgrade openssl by @sreimers in #1054
- docs: update README by @alfredh in #1053
- http: client - set scopeid fixes HTTP requests for IPv6ll by @cspiel1 in #1055
- rtp: add rtp_source_ prefix to RTP source api by @alfredh in #1052
- rtp: make struct rtp_source public by @alfredh in #1057
- rtp: sess - fix coverity warning by @cspiel1 in #1058
- mk: bump version to 3.9.0 by @alfredh in #1060
Full Changelog: https://github.com/baresip/re/compare/v3.8.0...v3.9.0
- Update README.md by @alfredh in #1013
- rem/aufile: aufile_get_length use aufmt_sample_size by @larsimmisch in #1011
- rem/aufile: test and fix aufile_set_position nread by @larsimmisch in #1010
- ci/ssl: bump assets release by @sreimers in #1014
- readme: update supported openssl versions by @sreimers in #1015
- ci: upgrade android to openssl 3.2.0 by @alfredh in #1017
- sipsess/connect: don't create a dialog for 100 responses by @maximilianfridrich in #1018
- aubuf: fix build with re_trace_event by @cspiel1 in #1019
- trace: fix coverity warnings by @alfredh in #1024
- aumix: fix coverity defect in destructor by @alfredh in #1025
- main: fix doxygen comment by @alfredh in #1026
- connect: do not enforce Contact header in 1XX responses with To tag by @maximilianfridrich in #1028
- test/sipsess: test re-INVITE with wait for ACK by @cspiel1 in #1027
- dialog: fix rtags of forking INVITE by @maximilianfridrich in #1023
- cmake: add RE_LIBS config and add atomic check by @sreimers in #1029
- ci: use actions/checkout@v4 by @robert-scheck in #1031
Full Changelog: https://github.com/baresip/re/compare/v3.7.0...v3.8.0
- trace: add id handling by @sreimers in #981
- fmt/pl: add pl_alloc_str by @sreimers in #983
- ci/freebsd: limit runtime to 20 mins by @sreimers in #985
- Httpauth digest response by @cHuberCoffee in #944
- dialog: REVERT fix rtags of forking INVITE with 100rel (#947) by @juha-h in #986
- ice: AI_V4MAPPED doesn't exist on OpenBSD by @landryb in #989
- test: call - add call on-hold/resume test by @cspiel1 in #990
- async: fix re_async_cancel mqueue handling by @sreimers in #995
- async: clear callback function pointer after use (#992) by @cspiel1 in #993
- Update README.md: Fix link in section Examples. by @Wolf-SO in #991
- ci/abi: bump version by @sreimers in #1000
- rtp: make flag rtcp_mux atomic by @cspiel1 in #997
- cmake,udp: improve QOS_FLOWID and PQOS_FLOWID detection by @sreimers in #1002
- types: extend RE_ARG to 32 by @sreimers in #1003
- sip/transp: add win32 local transport addr fallback by @sreimers in #1001
- cmake/config: set HAVE_THREADS only if threads.h by @sreimers in #1005
- ci/freebsd: update vmactions/freebsd-vm@v1 by @sreimers in #1006
- Coverity httpauth fixes by @sreimers in #1007
- rem/aufile: fix aufile_get_length calculations by @larsimmisch in #1008
- @Wolf-SO made their first contribution in #991
Full Changelog: https://github.com/baresip/re/compare/v3.6.0...v3.7.0
sip/transp: add win32 local transport addr fallback (fixes TCP/TLS register)
ice: AI_V4MAPPED doesn't exist on OpenBSD #989 dialog: REVERT fix rtags of forking INVITE with 100rel (#947) #986 debian: fix version number
- ci/coverage: increase min. coverage by @sreimers in #958
- Implement aufile_set_position by @larsimmisch in #943
- dialog: fix rtags of forking INVITE with 100rel by @maximilianfridrich in #947
- tls/alloc: set default min proto TLS 1.2 by @sreimers in #948
- test: init err to 0 in sdp test (cppcheck) by @alfredh in #959
- main: fd_listen fhs alloc rewrite by @sreimers in #805
- Expand RE_BREAKPOINT macro on ARM64 by @larsimmisch in #961
- jbuf: trace data for plot by @cspiel1 in #964
- trace: use global trace log by @sreimers in #965
- main: use ifdef for RE_TRACE_ENABLED by @sreimers in #966
- test/hexdump: hide output by @sreimers in #968
- trace: remove global default trace json by @sreimers in #969
- ci/ssl: use tools repo and new assets by @sreimers in #972
- fmt: doxygen correction in print.c by @cspiel1 in #973
- trace: use only explicit RE_TRACE_ENABLED by cmake by @sreimers in #974
- cmake: enable C11 for Windows (not MINGW) by @alfredh in #970
- ci/coverage: lower min. coverage by @sreimers in #975
- jbuf: move jbuf to baresip by @cspiel1 in #971
- ci/coverage: improve coverage (enable trace) by @sreimers in #976
- ci: bump pr-dependency-action@v0.6 by @sreimers in #977
- ice: mDNS refactoring by @sreimers in #934
- trace: add flush worker and optimize memory usage by @sreimers in #967
- rtp: fix video jitter calculation and add arrival time rtp header by @sreimers in #978
- ci: remove DARWIN compile flag from iOS build by @alfredh in #979
- thread: add trace thread name logging by @sreimers in #980
- ci/coverage: reduce min. coverage by @sreimers in #982
Full Changelog: https://github.com/baresip/re/compare/v3.5.1...v3.6.0
- cmake: fix RELEASE definition for older cmake releases by @sreimers in #953
- ci/build: add release build check by @sreimers in #954
- cmake: fix definitions for older cmake by @sreimers in #955
Full Changelog: https://github.com/baresip/re/compare/v3.5.0...v3.5.1
- ci/sonar: update scanner and java version by @sreimers in #895
- ci/sonar: fix java distribution by @sreimers in #897
- udp: add doxygen comments by @alfredh in #896
- tls: fix some doxygen warnings by @alfredh in #894
- mk: add release target by @sreimers in #901
- types: add re_assert and re_assert_se definition by @sreimers in #900
- btrace improvements by @sreimers in #902
- Safe RE_VA_ARG helpers by @sreimers in #758
- mbuf: add safe mbuf_printf by @sreimers in #899
- auth: cast time_t timestamp by @sreimers in #903
- mbuf: add mbuf_write_ptr and mbuf_read_ptr by @sreimers in #898
- ci/mingw: remove cmake workaround by @sreimers in #906
- tls: assume OpenSSL version 1.1.1 or later by @alfredh in #907
- cmake: cleanup, remove unused define USE_OPENSSL_DTLS by @alfredh in #908
- test/turn: use mutex instead atomic by @sreimers in #909
- stun: remove unused struct members by @alfredh in #910
- stun: complete doxygen for struct by @alfredh in #912
- tcp,udp: full IPv6 dual-stack socket support by @sreimers in #911
- aufile: add methods to get size in bytes/length in ms by @larsimmisch in #913
- async: signal ESHUTDOWN to all open worker callbacks by @sreimers in #915
- dns/client: fix async getaddr query abort (not thread safe) by @sreimers in #914
- async,dns/client: replace ESHUTDOWN with ECANCELED and optimize err handling by @sreimers in #918
- sip: remove unused local variable by @cspiel1 in #920
- dns/client: optimize udp timeout by @sreimers in #916
- ice: add candidate sdp mdns support by @sreimers in #917
- ice/icesdp: fix freeaddrinfo by @sreimers in #923
- retest: fix format string in test_listcases for size_t argument by @cHuberCoffee in #922
- httpauth: http digest challenge request using RFC 7616 by @cHuberCoffee in #919
- types: fix RE_ARG_SIZE default argument promotions by @sreimers in #924
- sip: fix TCP source port by @cspiel1 in #921
- fmt/print: add 64-bit length modifier %Li, %Ld and %Lu by @sreimers in #905
- fmt/print: improve print RE_VA_ARG debugging by @sreimers in #925
- sip/request: fix check return code (found by coverity) by @sreimers in #926
- httpauth/digest: use %L instead of PRI*64 macros by @sreimers in #927
- types: add RE_ARG_SIZE struct pl (avoids wrong print fmt %r usage) by @sreimers in #928
- dns/client: fix getaddrinfo err handling and mem_ref dnsc by @sreimers in #929
- rtp/rtp_debug: fix printf size format by @sreimers in #933
- main: optimize re_lock and re_unlock by @alfredh in #935
- hexdump: fix format and add test by @alfredh in #936
- test: fix bug in performance test format by @alfredh in #937
- types: remove some duplicated error codes by @alfredh in #939
- test: minor improvements in remain test by @alfredh in #931
- dbg: remove unused functions by @sreimers in #941
- cmake/re-config: add default CMAKE_BUILD_TYPE and fix RELEASE definition by @sreimers in #945
- @larsimmisch made their first contribution in #913
Full Changelog: https://github.com/baresip/re/compare/v3.4.0...v3.5.0
- rtpext: uniform parameter name fixes doxygen warning by @cspiel1 in #868
- mk: add rem to doxygen inputs by @cspiel1 in #869
- vidmix: allow different pixel format by @sreimers in #864
- ajb doxygen by @cspiel1 in #870
- aes: correct parameters for stub by @cspiel1 in #872
- ci/build: fail on cmake and compile warnings by @sreimers in #873
- fmt: fix format string in fmt_timestamp() by @alfredh in #874
- hmac,md5,sha: add mbedtls backend by @cspiel1 in #871
- test: no need to rewind freshly allocated mbuf by @alfredh in #876
- httpauth: basic challenge creation and verification functions by @cHuberCoffee in #875
- Fix include of re_thread.h in re_tmr.h by @nielsavonds in #879
- btrace: fix WIN32_LEAN_AND_MEAN macro redefine by @jobo-zt in #880
- aumix: add record sum handler by @sreimers in #877
- ci/win: disable x86 testing by @sreimers in #883
- sipsess: allow UPDATE and INFO in early dialog by @maximilianfridrich in #878
- prefix macro VERSION by @cspiel1 in #882
- main: use HAVE_SIGNAL in init.c by @cspiel1 in #881
- test: change to ASSERT_XXX macros, remove EXPECT_XXX macros by @alfredh in #885
- fmt: handy functions for pointer-length objects by @cHuberCoffee in #884
- test: add TWCC test from Chrome 114 packet by @alfredh in #886
- sipsess/listen: Fix target_refresh_handler by @maximilianfridrich in #888
- ci/mingw: downgrade cmake by @sreimers in #890
- cmake: fix target include path for subdir projects by @sreimers in #891
Full Changelog: https://github.com/baresip/re/compare/v3.3.0...v3.4.0
- jbuf: use float ratio by @sreimers in #817
- src: fix some typos by @alfredh in #828
- jbuf: constant jbuf_put() by @cspiel1 in #821
- ci/coverity: split up prepare and make steps by @sreimers in #832
- vidmix: coverity fix by @alfredh in #830
- sys/fs: fix fs_stdio_hide resource leak by @sreimers in #833
- http: coverity fix by @alfredh in #834
- avc: fix coverity by @alfredh in #835
- sys: fix return value by @alfredh in #836
- Do not automatically make new call when 3xx response is received by @juha-h in #829
- sipreg: supports PNS custom contact URI by @codyit in #837
- ci: add iOS platform by @alfredh in #838
- ci/mingw: use cv2pdb for debug info conversion by @sreimers in #839
- main: fix warning on Windows by @alfredh in #842
- http: add compile-time check for USE_TLS by @alfredh in #841
- test: check if USE_TLS is defined by @alfredh in #843
- thread: fix WIN32 mingw warning by @sreimers in #844
- src: fix doxygen warnings by @alfredh in #847
- rtpext: add doxygen comments by @alfredh in #846
- jbuf: enable old frame drop warnings by @sreimers in #848
- md5: add support for native Windows Wincrypt API by @alfredh in #850
- rtpext: add support for Two-Byte headers by @alfredh in #849
- sha: add support for Windows native API by @alfredh in #851
- cmake: change '-lm' to 'm' in LINKLIBS by @alfredh in #854
- hmac: add support for native Windows API by @alfredh in #853
- CI: Add support for building Windows ARM by @alfredh in #855
- async: add work mutex handling by @sreimers in #857
- SIP/TCP use source port for Via header by @cspiel1 in #824
- sip: use TCP source port for Contact header by @cspiel1 in #858
- cmake: remove obsolete $<INSTALL_INTERFACE:include for re-objs by @alfredh in #860
- vidmix: always clear frames (avoid artifacts) by @sreimers in #861
- http: use correct formatting %zu for size_t by @alfredh in #866
- @codyit made their first contribution in #837
Full Changelog: https://github.com/baresip/re/compare/v3.2.0...v3.3.0
- btrace: add win32 support by @sreimers in #767
- cmake,thread: OpenBSD support by @landryb in #773
- main/init: add exception signal handlers by @sreimers in #765
- ua: unescape incoming Refer-To header by @maximilianfridrich in #770
- main: add debug boolean to re_thread_check() by @sreimers in #775
- btrace: add addr2line handling by @sreimers in #764
- cmake: add optional static and shared build options by @sreimers in #778
- main/init: enable win32 signal handler by @sreimers in #779
- uric/contact: fix display name and contact header uri escaping by @maximilianfridrich in #762
- ci/analyze: update clang and use analyze-build by @sreimers in #781
- main: use mtx_recursive by @sreimers in #782
- test: fix printf formating by @alfredh in #783
- main: add re_thread_enter/leave polling check by @sreimers in #784
- main/init: remove ContextRecord->Rip (not available on all platforms) by @sreimers in #790
- sipsess: fix RSeq header and rel_seq numbering by @maximilianfridrich in #796
- websock: add proto support by @sreimers in #798
- sip/transp: fix websock_accept proto by @sreimers in #800
- sip/transp: remove unneeded websocket tcp tmr by @sreimers in #801
- aubuf: activate overrun/underrun statistics by @cspiel1 in #803
- cmake: add libre namespace export by @sreimers in #786
- revert uri escaping commits by @maximilianfridrich in #802
- jbuf: refactor frame calculation by @sreimers in #788
- jbuf: frame fixes by @sreimers in #806
- sip: add missing WS and WSS transport decoder for VIA headers by @pitti98 in #809
- ice: Fix conncheck callback called multiple times by @pitti98 in #807
- jbuf: JBUF_FIXED should also keep min wish size by @sreimers in #813
- ci: compile choco openssl with --x86 for 32-bits by @alfredh in #814
- jbuf: fix possible division by zero by @sreimers in #815
- fix some cppcheck warnings by @alfredh in #816
- test/ice: fix cppcheck by @sreimers in #818
- tls/openssl: fix cppcheck warnings by @sreimers in #820
- base64: fix cppcheck warnings by @sreimers in #819
- main/init: fix upper signal handling by @sreimers in #822
- include: fix some typos by @alfredh in #825
Full Changelog: https://github.com/baresip/re/compare/v3.1.0...v3.2.0
- ci: bump mingw openssl to 3.1.0 by @alfredh in #738
- thread: add cnd_timedwait() by @sreimers in #736
- Add tls and http apis for post handshake by @fAuernigg in #713
- ci/sanitizers: add multi thread testing by @sreimers in #741
- ci/win: use separate retest step by @sreimers in #742
- thread: fix pthread_setname_np thread pointer deref by @sreimers in #744
- ci: add FreeBSD test by @sreimers in #745
- cmake: bump minimum version of OpenSSL to 1.1.1 by @alfredh in #746
- ci: avoid hardcoded OpenSSL path on macOS by @robert-scheck in #747
- sip,uri,test: Escape SIP URIs by @maximilianfridrich in #740
- udp: add a lock for the helpers list by @cspiel1 in #732
- rem/vidmix: add position index handling by @sreimers in #749
- aubuf: set auframe fields correct in read_auframe loop by @cspiel1 in #750
- list: refactor/optimize list_insert_sorted by @sreimers in #748
- ci/freebsd: remove openssl-devel by @sreimers in #755
- tmr: add tmr_continue() by @vanrein in #754
- ci,cmake: replace C99 check by strict C99 and C11 checks by @sreimers in #759
- atomic: Fix missing memory order arguments in MSVC atomic functions by @Lastique in #766
- thread: remove win32 SetThreadDescription by @sreimers in #768
Full Changelog: https://github.com/baresip/re/compare/v3.0.0...v3.1.0
- main: allow poll_method change only before setup by @sreimers in #681
- main: add more details to re_debug() by @alfredh in #689
- merge rem into re by @alfredh in #683
- tmr,main: thread safe tmr handling by @sreimers in #690
- tmr,main: add tmrl_count by @sreimers in #694
- main: add re_thread_async_main_id and re_thread_async_main_cancel by @sreimers in #697
- merge retest into re by @alfredh in #695
- tls: add doxygen comment to dtls_recv_packet() by @alfredh in #699
- test: use TEST_ERR by @sreimers in #700
- test: use TEST_ERR by @sreimers in #701
- hmac: remove unused SHA_BLOCKSIZE by @alfredh in #703
- async: fix cancel memory leaks by @sreimers in #705
- ci: windows Debug/Release by @alfredh in #704
- cmake: add extra source files for aes and hmac by @alfredh in #708
- test: remove libpthread from LINKLIBS by @alfredh in #710
- hmac: add stateless HMAC-SHA256 wrapper by @alfredh in #706
- thread: add thread name handling by @sreimers in #709
- ci: add support for Android by @alfredh in #707
- test: fix convert C99 by @sreimers in #717
- dbg: remove pre-C99 fallbacks by @sreimers in #718
- test: remove CMAKE_C_STANDARD by @alfredh in #714
- sdp/media: fix ccheck list_unlink warning by @sreimers in #715
- jbuf: allocate mutex and lock also jbuf_debug() by @cspiel1 in #693
- sys/fs: fix fs_fopen read only mode (should not create file) by @sreimers in #719
- ci/ssl: update OpenSSL/LibreSSL by @sreimers in #720
- http: fix read_file on win32 (wrong filesize) and use mbuf by @fAuernigg in #711
- sys: add sys_getenv() by @sreimers in #721
- rtp: Don't check RTCP socket if rtcp-mux is enabled by @Lastique in #723
- tls: remove return statement that is not needed by @alfredh in #724
- sha: add sha256_printf() by @alfredh in #725
- cmake: add rem headers to install by @sreimers in #727
- cmake: merge REM_HEADERS by @sreimers in #728
- tls: set mbuf pos and end at the same time by @alfredh in #729
- misc: add Makefile helpers and exclude retest from all target by @sreimers in #726
- sa: add sa_struct_get_size() to check size by @alfredh in #730
- rtcp: make rtcp_calc_rtt() public by @alfredh in #731
- test: add HAVE_UNIXSOCK=0 support by @sreimers in #734
- aubuf: set sample format when frame is read by @cspiel1 in #737
Full Changelog: https://github.com/baresip/re/compare/v2.12.0...v3.0.0
- tls: remove ifdef DTLS_CTRL_HANDLE_TIMEOUT by @alfredh in #634
- cmake: increment required version by @cspiel1 in #642
- dtls: add logging of DTLS packet content-type by @alfredh in #641
- dtls: add single connection mode by @alfredh in #643
- ice: reduce conncheck start timer by @alfredh in #640
- async,main: make re_thread_async itself thread safe by @sreimers in #644
- av1: remove old packetizer by @alfredh in #645
- av1: fix chrome interop by @alfredh in #646
- av1: minor cleanups by @alfredh in #649
- trace: fix new json start by @sreimers in #648
- make rtcp interval configureable by @sreimers in #650
- sa: proposal to always enable struct sockaddr_in6 by @alfredh in #651
- ci: rename ccheck to lint by @alfredh in #653
- ci: extend coverage test with retest+select by @alfredh in #652
- main: remove poll support by @sreimers in #654
- ci: use Ninja as CMake generator by @alfredh in #656
- ci/abi: fix abidiff paths by @sreimers in #657
- PRACK refactoring by @maximilianfridrich in #630
- types: add RE_ prefix to ARRAY_SIZE() by @alfredh in #658
- cmake: add USE_TRACE option (default OFF) by @sreimers in #660
- add re prefix by @alfredh in #659
- tcp: add RE_TCP_BACKLOG by @sreimers in #661
- Fix doxygen warnings by @alfredh in #662
- mbuf: docs and setters/getters by @alfredh in #663
- tcp,cmake: use accept4 if supported by @sreimers in #665
- tcp: remove SO_LINGER socket option by @sreimers in #664
- rtcp: update documentation by @alfredh in #666
- tcp: check SO_ERROR only for active connections by @sreimers in #667
- cmake: add HAVE_RESOLV by @sreimers in #668
- hash: add hash_debug by @sreimers in #670
- list: improve list_apply performance by @sreimers in #669
- rtp: add doxygen comments by @alfredh in #671
- rtp: extra dox for rtcp_encode by @alfredh in #672
- ci: add thread and address sanitizer by @sreimers in #673
- Do not change glibc feature selection macros in unsupported ways by @fweimer-rh in #674
- auth: replace ETIME with ETIMEDOUT by @sreimers in #675
- cmake: add min. OpenSSL 1.1.0 version requirement by @sreimers in #680
- ci: fix flaky azure mirrors by @sreimers in #682
- tls: remove obsolete openssl version check and fix libressl build by @cspiel1 in #679
- ci/ssl: fix openssl root dir by @sreimers in #677
- main: add re_thread_async_main for re_global only by @sreimers in #685
- atomic: fix win32 atomic load const warnings by @sreimers in #688
- atomic: fix __iso_volatile_load64 deref by @sreimers in #691
- bump version numbers to 2.12.0 by @alfredh in #692
- @fweimer-rh made their first contribution in #674
Full Changelog: https://github.com/baresip/re/compare/v2.11.0...v2.12.0
- net/types: move socket helpers and rename RE_ERRNO_SOCK and RE_BAD_SOCK by @sreimers in #608
- sys: fix fileno warning by @alfredh in #612
- tls: clear session callbacks in destructor by @cspiel1 in #611
- tls: use long SSL state strings for logging by @cspiel1 in #613
- tls: Set session only once before Client Hello by @cspiel1 in #607
- udp: add optional send/recv handler by @alfredh in #602
- tls: remove deprecated tls_set_selfsigned() by @alfredh in #614
- main: allow for init twice by @alfredh in #615
- cmake: add check_c_compiler_flag for atomic-implicit-seq-cst warning by @sreimers in #617
- http,tcp: add http_listen_fd and tcp_sock_alloc_fd by @sreimers in #618
- tcp_sock_alloc_fd: fix fdc initializing by @sreimers in #619
- sa,unixsock: add unix domain socket support by @sreimers in #600
- mk: remove makefiles by @sreimers in #620
- RTP Resend by @sreimers in #626
- TLS server support SNI based certificate selection by @cspiel1 in #596
- sipsess/request.c: return error code in sipsess_request_alloc by @maximilianfridrich in #631
- ice: add ANSI output with Green and Red colors by @alfredh in #632
- docs: update reference to TLS 1.2 by @alfredh in #633
- cmake, sa: enable unix sockets, if HAVE_UNIXSOCK is undefined by @fAuernigg in #636
- trice: refresh doxygen comments by @alfredh in #635
- tls: add error handling for BIO_reset by @cspiel1 in #638
- dns/client: fix rrlv reference cache handling by @sreimers in #637
Full Changelog: https://github.com/baresip/re/compare/v2.10.0...v2.11.0
- h264: add STAP-A by @alfredh in #584
- tls: SSL_get_peer_certificate is deprecated by @sreimers in #585
- sipreg fix contact handler
expires
evaluation by @cspiel1 in #581 - ice: local candidate policy config by @sreimers in #589
- h265: add missing NAL types by @alfredh in #590
- rtpext: move from baresip to re by @alfredh in #591
- mk: add rtpext to Makefile build by @cspiel1 in #594
- mk: add makefile deprecation warning by @sreimers in #595
- fs: use dup/dup2 for stdio hide and restore by @sreimers in #597
- dns: fix dnsc_conf_set memory leak by @alfredh in #598
- cmake: add TRACE_SSL compile definition by @cspiel1 in #599
- cmake: add ZLIB_INCLUDE_DIRS by @sreimers in #601
- cmake/pkgconfig: fix prefix variable by @cspiel1 in #603
- ci/valgrind: use ubuntu-20.04 by @sreimers in #606
Full Changelog: https://github.com/baresip/re/compare/v2.9.0...v2.10.0
- cmake,make: bump version and set dev identifier by @cspiel1 in #553
- udp: remove udp_send_anon() by @alfredh in #550
- cmake: enable export symbols for backtrace by @sreimers in #554
- README.md: Update build instructions for cmake by @robert-scheck in #556
- cmake: improve kqueue and epoll detection by @sreimers in #558
- fs: add fs_stdio_hide() and fs_stdio_restore() helpers by @sreimers in #559
- json: remove unknown type warning by @alfredh in #560
- http: fix warning arguments by @alfredh in #561
- net_if_getlinklocal: use AF from input parameter by @alfredh in #565
- fmt: add str_itoa by @sreimers in #569
- SDP support for udp by @vanrein in #538
- tls: remove some warnings by @alfredh in #567
- fmt: add pl_trim functions by @cspiel1 in #557
- aes/openssl: remove obsolete version check by @alfredh in #572
- http: use str_dup() instead of unsafe strcpy() by @alfredh in #574
- doxygen: update comments by @alfredh in #577
- reg: remove obsolete void cast by @cspiel1 in #576
- Tls connect debug by @alfredh in #573
- mk: update doxygen file by @alfredh in #578
- ci: use actions/checkout@v3 by @sreimers in #579
- tls: remove ifdef from public API by @alfredh in #580
- sip: sip_conncfg_set pass by reference by @alfredh in #582
- dnsc get conf and skip hash alloc without hash size changes by @fAuernigg in #575
- sdp/media: fix reorder codecs (restore old behavior) by @juha-h in #583
- list: fix list_flush head and tail by @sreimers in #586
- prepare 2.9.0 by @alfredh in #587
- @vanrein made their first contribution in #538
Full Changelog: https://github.com/baresip/re/compare/v2.8.0...v2.9.0
- Update README.md by @alfredh in #503
- thread: fix win32 thrd_create return values by @sreimers in #506
- cmake: bump min. version 3.10 by @sreimers in #504
- cmake: add USE_JBUF option by @alfredh in #507
- http/https requests with large body by @fAuernigg in #485
- http/client: fix possible null pointer dereference by @sreimers in #509
- ci: test choco install no-progress by @alfredh in #510
- bitv: remove deprecated module by @alfredh in #513
- types,fmt: use re_restrict by @sreimers in #514
- refer out of dialog by @cspiel1 in #508
- UPDATE bugfix by @maximilianfridrich in #516
- sip/auth: fix mem_zalloc return check by @sreimers in #518
- Update media fixes by @cspiel1 in #515
- dns, http: add dnsc_getaddrinfo_enabled. prevent reset of getaddrinfo enabled by @fAuernigg in #519
- rtp: Improve media synchronization by @Lastique in #418
- conf: check if returned size is larger than buffer by @alfredh in #523
- udp: remove very old iOS hack by @alfredh in #524
- tcp: remove very old iOS hack by @alfredh in #525
- Use CMake for debian packages by @sreimers in #522
- crc32: add re wrapper by @alfredh in #526
- ci: convert valgrind to cmake by @alfredh in #529
- ci: convert ssl build to cmake by @alfredh in #530
- ci: convert fedora to cmake by @alfredh in #531
- ci: convert coverage to cmake by @alfredh in #532
- ci: migrate to cmake by @alfredh in #533
- cmake: add LINKLIBS and make backtrace and zlib optional by @sreimers in #534
- C99 compatibility by @sreimers in #536
- pcp: fix cppcheck warning by @alfredh in #540
- fmt/print: fix cppcheck overflow warning by @sreimers in #542
- tls: remove SHA1 fingerprint (deprecated) by @alfredh in #527
- send DTMF via hidden call by @cspiel1 in #537
- sipreg: avoid sending un-REGISTER periodically by @cspiel1 in #543
- cmake,mk: bump the tentative next release with pre-release identifier by @sreimers in #546
- sipsess/update: Add Contact header to UPDATE by @maximilianfridrich in #545
- cmake: fix shared API soversion (aligned with make) by @sreimers in #549
v2.7.0 - 2022-09-01
- async: add re_thread_async by @sreimers in #462
- atomic: Add support for gcc __sync intrinsics by @Lastique in #467
- btrace: fix gcc 4.3.5 warnings by @cspiel1 in #468
- h264: fix gcc 4.3.5 warnings by @cspiel1 in #469
- async: add guard by @sreimers in #474
- dns/client: add async getaddrinfo usage by @sreimers in #470
- async: make work handler and callback optional by @sreimers in #481
- BareSip. Add a state update action to the main loop to unblock pollin… by @viordash in #480
- dns,net: fix build of asyn_getaddrinfo on gcc 4.3.5 (#482) by @cspiel1 in #483
- dns/client: fix getaddrinfo duplicates by @sreimers in #486
- http/client: fix dnsc_conf initialization by @sreimers in #487
- tmr: tmr_start_dbg use const char for file arg by @sreimers in #488
- base64: Encoding/Decoding with URL and Filename Safe Alphabet by @sreimers in #471
- misc: fix c11 err handling by @sreimers in #476
- cmake: move definitions to re-config.cmake by @sreimers in #491
- ci/mingw: fix make retest by @sreimers in #492
- cmake: add pkgconfig by @sreimers in #493
- Fix error: ‘NI_MAXSERV’ undeclared by @widgetii in #495
- Fix error: storage size of ‘ifrr’ isn’t known by @widgetii in #496
- ci/musl: add alpine/musl build by @sreimers in #499
- Correctly update local media format ids to match those in the offer by @juha-h in #498
- debian: fix prefix by @juha-h in #501
v2.6.0 - 2022-08-01
- ice: change one warning to notice by @alfredh in #421
- Fix compilation error on musl: __GNUC_PREREQ macro defined only for libc library by @widgetii in #422
- sip: add RFC 3262 support by @maximilianfridrich in #419
- bfcp: Add support for TCP transport for BFCP by @Lastique in #411
- strans/accept: fix cancel/rejection by @maximilianfridrich in #423
- hash: add hash_list_idx() by @sreimers in #427
- tls: Add a method to set OpenSSL certificate by @Lastique in #426
- sipsess: fix PRACK offer/answer behavior by @maximilianfridrich in #430
- thread: thrd_error fixes by @sreimers in #431
- sipsess: fix coverity warnings by @maximilianfridrich in #433
- main: add re_nfds() and poll_method_get() getters by @sreimers in #435
- fmt/print: fix local_itoa casting by @sreimers in #437
- leb128: switch to uint64_t by @alfredh in #436
- types,mk: remove HAVE_STDBOOL_H by @sreimers in #439
- fmt/print: snprintf restrict declarations by @sreimers in #438
- net: minor cleanup in linux route code by @alfredh in #440
- sip: add RFC 3311 support by @maximilianfridrich in #425
- rtmp: check upper bound for amf array by @alfredh in #441
- rtcp: check TWCC count range (Coverity fix) by @alfredh in #442
- mem: Align data to natural alignment by @Lastique in #416
- ci/misc: bump pr-dependency-action@v0.5 by @sreimers in #444
- net: linux/rt: init gw to correct af by @alfredh in #447
- rtp: Add
rtcp_send
declaration to the public header by @Lastique in #448 - Main method best by @alfredh in #449
- cmake: add explicit /volatile:ms (required for arm) by @sreimers in #451
- mem: Make nrefs atomic by @Lastique in #446
- atomic: add some short atomic alias helpers by @sreimers in #452
- ci/build: replace deprecated macos-10.15 by @sreimers in #454
- Improve RFC 3262 by @maximilianfridrich in #450
- atomic: rename helpers by @sreimers in #455
- cmake,make: add clang atomic-implicit-seq-cst warning by @sreimers in #453
- cmake: add missing includes to install by @paresy in #456
- Fix prack handling by @maximilianfridrich in #457
- mem: Correct memory clobbering size by @Lastique in #458
- mem: Correct calculation of total mem size in mem_status by @Lastique in #459
- tls: Securely clear memory from private key material by @Lastique in #460
- fmt/str_error: always print error number by @sreimers in #461
- thread: add cnd_broadcast posix/win32 fallbacks by @sreimers in #463
- list: add list_move() helper by @sreimers in #464
- thread: fix thread_create_name ENOMEM by @sreimers in #465
v2.5.0 - 2022-07-01
- av1: add doxygen comments by @alfredh in #384
- rtp: add function to calc sequence number diff by @alfredh in #385
- CI fixes by @sreimers in #387
- trace: C11 mutex by @alfredh in #390
- trace: init refactor by @sreimers in #391
- jbuf: use C11 mutex by @alfredh in #392
- av1: define and make AV1_AGGR_HDR_SIZE public by @alfredh in #393
- main: add re_thread_check() for NON-RE thread calls by @sreimers in #389
- cmake: add HAVE_SIGNAL on UNIX by @sreimers in #394
- av1: add av1_obu_count() by @alfredh in #395
- thread: add mtx_alloc by @sreimers in #396
- rtp: C11 mutex by @alfredh in #397
- lock: remove deprecated module by @alfredh in #398
- Added sippreg_unregister API function by @juha-h in #400
- av1 work by @alfredh in #402
- rtp: add rtp_is_rtcp_packet() by @alfredh in #405
- Fix mutex alloc destroy by @sreimers in #406
- av1: minor fixes and doxygen comments by @alfredh in #407
- rtp: Add support for RFC5104 PSFB FIR by @Lastique in #408
- jbuf: Add drain method by @Lastique in #409
- uag: add timestamps to SIP trace by @cspiel1 in #412
- fmt/fmt_timestamp: some cleanup by @sreimers in #413
- main: refactor libre_init and re_global handling by @sreimers in #404
- main: Add support for external threads attaching/detaching re context by @Lastique in #414
- mem: Fix formatting for nrefs and size. by @Lastique in #415
v2.4.0 - 2022-06-01
- ci: test centos -> fedora by @alfredh in #340
- Tls bio opaque by @alfredh in #341
- main: remove usage of crypto_set_id_callback() by @alfredh in #342
- jbuf: in adaptive mode do not manipulate min buffer size by @cspiel1 in #343
- av1 obu by @alfredh in #345
- jbuf: improve adaptive mode by @cspiel1 in #344
- av1 packetizer by @alfredh in #346
- av1: depacketizer by @alfredh in #347
- h265: move from rem to re by @alfredh in #348
- jbuf: avoid reducing of wish size too early by @cspiel1 in #349
- ci/build: add ubuntu 22.04 (beta) by @sreimers in #351
- h264: move from rem to re by @alfredh in #350
- add C11 thread, mutex and condition API by @sreimers in #249
- thread: use pthread as default fallback by @sreimers in #354
- mem: use new C11 mutex locking by @sreimers in #352
- dbg: use C11 thread mutex by @sreimers in #356
- thread: add thread-local storage functions by @sreimers in #355
- main/openssl: cleanup by @sreimers in #358
- cmake: sort warning flags by @alfredh in #359
- doxygen: update comments by @alfredh in #360
- main: use C11 thread mutex by @sreimers in #357
- make: disable warning flag -Wdeclaration-after-statement by @alfredh in #363
- cleanup pthread by @sreimers in #362
- update doxygen comments by @alfredh in #366
- ci/coverage: downgrade gcovr by @sreimers in #365
- tls: print openssl error queue if accept failed by @alfredh in #367
- main: fd_setsize -1 for RLIMIT_NOFILE value by @sreimers in #368
- jbuf: flush on RTP timeout by @cspiel1 in #370
- thread: add mtx_destroy by @sreimers in #371
- dns: add query cache by @sreimers in #369
- mem,btrace: fix struct alignment by @sreimers in #372
- av1: change start flag to continuation flag (inverse) by @alfredh in #375
- tmr: add tmr_start_dbg by @sreimers in #373
- ice: rename to local pref by @alfredh in #376
- tls: Switch from EVP_sha1() to EVP_sha256() when using it for X509_sign() by @robert-scheck in #377
v2.3.0 - 2022-05-01
- cmake: use static build as default target (improves subdirectory usage) by @sreimers in #311
- jbuf: fix RELEASE build with DEBUG_LEVEL 6 by @cspiel1 in #313
- fmt/pl: use unsigned type before negation by @sreimers in #312
- fmt/pl: rewrite negative handling (avoid undefined behavior) by @sreimers in #314
- http/request: fix possbile null pointer dereference by @sreimers in #316
- sdp: check sdp_bandwidth lower bound by @sreimers in #317
- main: use re_sock_t by @sreimers in #315
- ccheck: check all CMakeLists.txt files by @sreimers in #320
- list: O(1) sorted insert if we expect append in most cases by @cspiel1 in #318
- add pcp protocol by @alfredh in #321
- cmake: define RELEASE for release builds by @alfredh in #323
- Mem lock win32 by @alfredh in #324
- pcp: fix win32 warning by @alfredh in #325
- ci/msvc: treat all compiler warnings as errors by @sreimers in #326
- cmake: add MSVC /W3 compile option by @sreimers in #327
- cmake: add FreeBSD and OpenBSD by @sreimers in #329
- md5: remove fallback implementation by @sreimers in #328
- cmake: add runtime and development install components by @sreimers in #330
- mem: remove low/high block size stats by @alfredh in #331
- mem: add error about missing locking by @alfredh in #332
- set TCP source port in Via and Contact header by @cspiel1 in #334
- remove sys_rel_get and epoll_check by @alfredh in #335
- support tls session reuse by @fAuernigg in #333
- rand: init only needed for libc rand by @alfredh in #336
- tls: fix crash in debug warn msg by @fAuernigg in #337
- mem: init g_memLock directly by @alfredh in #339
- prepare for version 2.3.0 by @alfredh in #338
v2.2.2 - 2022-04-09
- sha256: add wrapper by @alfredh in #306
- workflow: upgrade to openssl 3.0.2 by @alfredh in #305
- aubuf adaptive jitter buffer by @cspiel1 in #303
- Improve WIN32 UDP socket handling by @sreimers in #296
- tcp: remove tcp_conn_fd by @alfredh in #308
- tcp: improve win32 socket and error handling by @sreimers in #309
v2.2.1 - 2022-04-01
- cmake: add packaging by @sreimers in #299
- sha: add sha 256 and 512 digest length OpenSSL compats by @sreimers in #300
- main: use Winsock2.h by @sreimers in #302
- cmake: for Android platform dont enable ifaddrs/getifaddrs by @alfredh in #304
- sa/sa_is_loopback: check full IPv4 loopback range (127.0.0.0/8) by @sreimers in #301
v2.2.0 - 2022-03-28
- tls: fix coverity defect by @alfredh in #270
- http/client: read_file check ftell return value by @sreimers in #272
- udp: fix coverity defect by @alfredh in #271
- cmake: add detection of HAVE_ARC4RANDOM by @alfredh in #269
- Fix coverity issues by @sreimers in #273
- Support adding CRLs by @fAuernigg in #274
- json/decode: fix possible out of bound access, if code changes by @sreimers in #275
- tls/tls_add_crlpem: use const by @sreimers in #276
- udp: fix coverity defect by @alfredh in #279
- dns: fix Coverity Defect by @alfredh in #278
- tls: use const pointer for tls_add_capem() by @cspiel1 in #277
- srtp/srtcp: add sanity check for rtcp->tag_len by @sreimers in #280
- shim: new module from rew by @alfredh in #282
- Trice module by @alfredh in #283
- retest trice by @alfredh in #284
- Add try_into conversion helper and drop gcc 4.8 support by @sreimers in #286
- rtp: fix signed/unsigned warning on WIN32 by @alfredh in #287
- fix build error on openbsd arm64 (raspberry pi) by @jimying in #290
- cmake: disable C extensions (like make) by @sreimers in #292
- fmt: add bool decode from struct pl by @cspiel1 in #293
- sdp: a utility function for decoding SDP direction by @cspiel1 in #294
- sa/sa_ntop: check inet_ntop() return value by @sreimers in #295
- sa_pton: use sa_addrinfo for interface suffix by @alfredh in #297
- @jimying made their first contribution in #290
v2.1.1 - 2022-03-12
- mk: fix ABI versioning #268
v2.1.0 - 2022-03-11
- Tls sipcert per acc by @cHuberCoffee in #96
- ToS for video and sip by @cspiel1 in #98
- sdp: in media_decode() reset rdir if port is zero by @cspiel1 in #99
- mk/re: add variable length array (-Wvla) compiler warning by @sreimers in #100
- Macos openssl by @sreimers in #105
- pkg-config version check by @sreimers in #107
- sa: add setter and getter for scope id by @cspiel1 in #108
- net: in net_dst_source_addr_get() make parameter dst const by @cspiel1 in #109
- Avoid 'ISO C90 forbids mixed declarations and code' warnings by @juha-h in #112
- SIP redirect callbackfunction by @cHuberCoffee in #111
- add secure websocket tls context by @sreimers in #113
- fmt: add string to bool function by @cspiel1 in #115
- fix clang analyze warnings by @sreimers in #114
- fmt: support different separators for parameter parsing by @cspiel1 in #117
- Refactor inet_ntop and inet_pton by @sreimers in #118
- add essential fields check by @I-mpossible in #119
- sa: add support for interface suffix for IPv6ll by @cspiel1 in #116
- net: fix net_if_getname IPv6 support by @sreimers in #120
- udp: add udp_recv_helper by @alfredh in #122
- sa: fix build for old systems by @cspiel1 in #121
- sa/addrinfo: fix openbsd (drop AI_V4MAPPED flag) by @sreimers in #125
- ci/codeql: add scan-build by @sreimers in #128
- Fixed debian changelog version by @juha-h in #129
- IPv6 link local support by @cspiel1 in #106
- sip: add fallback transport for transp_find() by @cspiel1 in #132
- SIP default protocol by @cspiel1 in #131
- remove orphaned files by @viordash in #136
- outgoing calls early callid by @cspiel1 in #135
- sip: fix possible "???" dns srv queries by skipping lines without srvid by @cHuberCoffee in #133
- odict: hide struct odict_entry by @sreimers in #130
- tls: add keylogger callback function by @cHuberCoffee in #140
- http/client: support other auth token types besides bearer by @fAuernigg in #142
- tls: fix client certificate replacement by @cHuberCoffee in #145
- http/client: support dns ipv6 by @fAuernigg in #141
- rtp: add payload-type helper by @alfredh in #148
- sip: check consistency between CSeq method and that of request line by @I-mpossible in #146
- Fix win32 by @viordash in #149
- fix warnings from PVS-Studio C++ static analyzer by @viordash in #150
- RTP inbound telephone events should not lead to packet loss by @cspiel1 in #151
- support inet6 by default in Win32 project by @viordash in #154
- sdp: differentiate between media line disabled or rejected by @cHuberCoffee in #134
- move network check to module by @cspiel1 in #152
- odict: move odict_compare from retest to re by @fAuernigg in #153
- sip: reuse transport protocol of first request in dialog (#143) by @cspiel1 in #144
- json: fix parsing json containing only single value by @fAuernigg in #155
- ice: fix checklist by @alfredh in #156
- mk: add compile_commands.json (clang only) by @sreimers in #157
- sdp: debug print session and media direction by @cspiel1 in #158
- add btrace module (linux/unix only) by @sreimers in #160
- mk: add CC_TEST header check by @sreimers in #162
- init dst address by @cspiel1 in #164
- ice: check if candpair exist before adding by @alfredh in #165
- mk: add CC_TEST cache by @sreimers in #163
- btrace: use HAVE_EXECINFO by @sreimers in #166
- Coverity by @sreimers in #170
- icem: remove dead code (found by coverity 240639) by @sreimers in #171
- hash: switch to simpler "fast algorithm" by @ydroneaud in #173
- dns: fix dnsc_alloc with IPv6 disabled by @sreimers in #174
- mk: deprecate HAVE_INET6 by @sreimers in #175
- Fix for btrace print for memory leaks by @cspiel1 in #177
- set sdp laddr to SIP src address by @cspiel1 in #172
- sdp: include all media formats in SDP offer by @cHuberCoffee in #176
- ci: add centos 7 build test by @sreimers in #179
- sip: move sip_auth_encode to public api for easier testing by @sreimers in #181
- sipsess: do not call desc handler on shutdown by @cspiel1 in #182
- stream flush rtp socket by @cspiel1 in #185
- ci: fix macos openssl build by @sreimers in #188
- http: HTTP Host header conform to RFC for IPv6 addresses by @cspiel1 in #189
- Increased debian compatibility level from 9 to 10 by @juha-h in #192
- mk: move darwin dns LFLAGS to re.mk (fixes static builds) by @sreimers in #193
- build infrastructure: silent and verbose modes by @abrodkin in #194
- mk: use posix regex for sed CC major version detection by @sreimers in #195
- dns: fix parse_resolv_conf for OpenBSD by @sreimers in #196
- sip: add optional TCP source port by @cspiel1 in #198
- ci: add mingw build and test by @sreimers in #199
- net: remove net_hostaddr by @sreimers in #200
- ci/centos7: add openssl by @sreimers in #203
- hmac: use HMAC() api (fixes OpenSSL 3.0 deprecations) by @sreimers in #202
- md5: use EVP_Digest for newer openssl versions by @sreimers in #204
- sha: add new sha1() api by @sreimers in #205
- OpenSSL 3.0 by @sreimers in #206
- udp: add win32 qos support by @sreimers in #186
- ci/mingw: fix dependency checkout by @sreimers in #207
- ice: remove ice_mode by @alfredh in #147
- Codeql security by @sreimers in #208
- aubuf insert auframes sorted by @cspiel1 in #209
- ci: add valgrind by @sreimers in #214
- tls: remove code for openssl 0.9.5 by @alfredh in #215
- ice: remove unused file by @alfredh in #217
- main: remove obsolete OPENWRT epoll check by @alfredh in #218
- dns,http,sa: fix HAVE_INET6 off warnings by @sreimers in #219
- preliminary support for cmake by @alfredh in #220
- make,cmake: set SOVERSION to major version by @sreimers in #221
- mk: remove MSVC project files, use cmake instead by @alfredh in #223
- natbd: remove module (deprecated) by @alfredh in #225
- sha: remove backup implementation by @alfredh in #224
- sha,hmac: use Apple CommonCrypto if defined by @alfredh in #226
- stun: add stun_generate_tid by @alfredh in #227
- add cmakelint by @sreimers in #228
- Cmake version by @alfredh in #229
- cmake: add option to enable/disable rtmp module by @alfredh in #230
- lock: use rwlock by default by @sreimers in #232
- cmake: fixes for MSVC 16 by @alfredh in #233
- json: fix win32 warnings by @alfredh in #234
- ci: add cmake build by @sreimers in #222
- mqueue: fix win32 warnings by @alfredh in #235
- tcp: fix win32 warnings by @alfredh in #236
- cmake: fix target_link_libraries for win32 by @alfredh in #238
- stun: fix win32 warnings by @alfredh in #237
- udp: fix win32 warnings by @alfredh in #239
- tls: fix win32 warnings by @alfredh in #241
- remove HAVE_INTTYPES_H by @alfredh in #231
- udp: fix win32 warnings by @alfredh in #242
- cmake: minor fixes by @alfredh in #244
- cmake: fix MSVC ninja by @sreimers in #243
- tcp: fix win32 warnings by @alfredh in #245
- udp: fix win32 msvc warnings by @sreimers in #246
- rtmp: fix win32 warning by @sreimers in #247
- bfcp: fix win32 warning by @sreimers in #248
- tls: fix libressl 3.5 by @sreimers in #250
- fix coverity scan warnings by @sreimers in #251
- Allow hanging up call that has not been ACKed yet by @juha-h in #252
- mk,cmake: add backtrace support and fix linking on OpenBSD by @sreimers in #254
- github: add CMake and Windows workflow by @alfredh in #255
- Windows (VS 2022/Ninja) by @sreimers in #257
- cmake: fixes for Android by @alfredh in #258
- tmr: reuse tmr_jiffies_usec by @alfredh in #259
- trace: use gettid as thread_id on linux by @sreimers in #213
- tmr: use CLOCK_MONOTONIC_RAW if defined by @alfredh in #260
- add atomic support by @sreimers in #261
- Sonarcloud by @sreimers in #262
- sip: fix gcc 6.3.0 warning for logical expression (#256) by @cspiel1 in #263
- add transport-cc rtcp feedback support by @fippo in #264
- @I-mpossible made their first contribution in #119
- @viordash made their first contribution in #136
- @ydroneaud made their first contribution in #173
- @abrodkin made their first contribution in #194
v2.0.1 - 2021-04-22
- tmr: fix FreeBSD and OpenBSD #97
- mk: fix clang analyze CFLAGS
- tls: different return values for tls_get_ca_chain_field() #94
v2.0.0 - 2021-04-10
- .gitignore: add ctags and vim swp files to gitignore #31
- tls: add tls_add_capem() for adding CA cert as PEM string #33
- httpauth: Add digest support for http clients #33
- httpauth: Add basic authentication for HTTP clients #33
- dns: add set function for DNS config #33
- http/client: support IPv6 #33
- http/client: use const parameter for set laddr(6) functions #33
- http/client: add set function for timeout #33
- http/client: add http_client_add_capem() #33
- http/client: add set functions for client certificate and private key #33
- http: add HTTP request connection with authorization #33
- http: setting of timeouts for http client #35
- http: set default path for http requests #35
- tls: set selfsigned Elliptic Curve (EC) function #17
- tls: extend server verification by host name check (SNI) #45
- jbuf: adapative jitter buffer #41
- tmr: add tmr_jiffies_usec() - get accurate microseconds #52
- fmt: add pl_i32() that converts pl to int32_t #60
- fmt: add pl_i64() that converts pl to int64_t #60
- mk/re: add C11 and Atomic detection #61
- ci: add abi check #39
- trace: add re_trace api #48
- Add function that resets the timeout timer for a connection of the HTTP server. #88
- add error trace helpers #87
- sip/auth: add algorithm=MD5 #86
- sys: filesystem isdir function
- tls: use ENOENT in tls_add_cafile_path as error code
- tls: more generic function to set cafile and capath
- mk: add .so name versioning, resolves #32
- mk/re: add clang shorten-64-to-32 warning
- mk/re: document new library/header prioritised order with custom SYSROOT
- mk/re: info double colon rule (#64) #64
- udp: Add function udp_open for socket without bind
- rtp: Add rtp_open which creates an RTP object only for sending. #77
- sip: add decode function for SIP transport
- sip: SIP/TLS Server Name Indication (#67) #67
- transp: add flag to disable SIP TLS server verification #76
- openssl: remove obsolete function tls_set_hostname() #33
- mk/re: remove gcc 2.x/3.x support #58
- ci: drop ubuntu 16.04 support - end of life
- http/client: cleanup doxygen #33
- http/client: use host of http_req for the host name validation #37
- main: disable MAIN_DEBUG, TMR_DEBUG and increase MAX_BLOCKING to 500ms #43
- sipreg: dont't force digest challenge for register #49
- mk/re: do not override LIBRE_INC, LIBRE_SO and LIBRE_PATH #62
- readme: update supported systems and add tiers #81
- tls: use ENOTDIR in tls_add_cafile_path if capath is not a dir #84
- tls: check capath is directory
- net: get default source addr from udp local test socket #66
- Update chklist.c #70
- Update icesdp.c #69
- mk: cross build changes (#63) #63
- sip: use sip_transp_decode() #71
- tls: tls_get_issuer/subject return the info of the first loaded ca #80
- dns/client: fix HAVE_INET6 and win32/vcxproj: updates #28
- http: fix segfault in response.c #35
- http/request: parameter NULL check for http_reqconn_send() #37
- http/client: fix conn_idle #46
- http/httpreq: mem leak fix #47
- sip/request: fix msg->scode null pointer dereference
- rtmp/conn: initialize err
- mk/re: fix LIBRE_SO static detection
- dns/res: Properly process IPV4 and IPV6 addresses (DARWIN) #56
- sip/keepalive: fix codeql cpp/integer-multiplication-cast-to-long
- fmt/time: fix codeql gmtime warning
- mk/re: fix gcc 4.x and newer compiler warnings
- sys: add _BSD_SOURCE 1 for compatibility reasons #92
- fix weak self-signed certificates #68
- net/tls: fixing shorten-64-to-32 warnings #65
- http: add missing newline to warning #78
- http: fix file read for client certificates
- mk/re: do not override LIBRE_INC, LIBRE_SO and LIBRE_PATH #62
- tls: safety NULL pointer check in tls_add_ca() #79
v1.1.0 - 2020-10-04
- tls: functions to get the certificate issuer and subject #18
- uri: Added path field to struct uri and its decode to uri_decode #22
- tcp: add tcp_connect_bind #24
- http: support bind to laddr in http_request #24
- sipreg: support Cisco REGISTER keep-alives #19
- sip: websocket support #26
- tls/openssl: fix X509_NAME win32/wincrypt.h conflict
- dns: listen on IPv4 and IPv6 socket #27
- main: fix/optimize windows file descriptors #25
- Alfred E. Heggestad
- Christian Spielberger
- Christoph Huber
- Franz Auernigg
- Juha Heinanen
- johnjuuljensen
- Sebastian Reimers
v1.0.0 - 2020-09-08
- sip: add trace
- sdp: sdp_media_disabled API function #2
- tls: add tls_set_selfsigned_rsa #6
- tls: add functions to verify server cert, purpose and hostname #10
- http: client should set SNI #10
- http: client should use tls functions to verify server certs, purpose and hostname #10
- sipreg: add proxy expires field and get function #13
- sipreg: make re-register interval configurable #13
- debian: Automatic cleanup after building debian package
- Set SDK path (SYSROOT) using xcrun (fix building on macOS 10.14)
- tcp: close socket on windows if connection is aborted or reset #1
- rtmp: Fix URL path parsing (creytiv#245)
- ice: various fixes [baresip/baresip#925]
- openssl/tls: replace deprecated openssl 1.1.0 functions #5
- Alfred E. Heggestad
- Christian Spielberger
- Christoph Huber
- Franz Auernigg
- juha-h
- Juha Heinanen
- Richard Aas
- Sebastian Reimers