Richard Fuchs
4f6f5fdf4e
MT#55283 update config settings to bool type
... for _ARG_NONE settings
Change-Id: I3ccad3eb997d2215ee87cebd1fd8a37cf4563441
2 years ago
Richard Fuchs
4b2dff1528
MT#55283 fix warnings for older/non-gcc compilers
... which don't know about __attribute__((access))
Change-Id: I30a31d03ab492e0e9cd2f7e59a292ad7ba9b184e
2 years ago
Richard Fuchs
5cd489d0a8
MT#55283 fix libncurses dependency for stretch
Change-Id: I3f009bff3b15af8dfaaf9e71c7d858c9617257f4
2 years ago
Richard Fuchs
7200c7af64
MT#55283 actually grant the capabilities
Capabilities listed in the ambient set must also be included in the
bounding set.
Change-Id: I172bd30c9fbe488574e9cc015ba552e805c95fe6
2 years ago
Donat Zenichev
d9f12ce27b
TT#136952 fix `cw_printf()` in `cli_list_tag_info()`
Use `->subscribers.head` instead of `->subscriptions.head`
for the second logging.
Change-Id: Iaaff61aebbe8bcd421a0159f5490903c0ea9c4ea
2 years ago
Richard Fuchs
cbd217d5b1
MT#55283 fix for NULL selected_sfd
Fixes possible NULL dereference as selected_sfd can be NULL.
Fixes #1710
Change-Id: Ie9208d41e32278c52bec8c820435539c82343c28
2 years ago
Richard Fuchs
028eacde17
MT#55283 fix AMR tests mem leaks
... reported by asan
Change-Id: I36d909af873362160b0e914686b8ff15d381c156
2 years ago
Richard Fuchs
d6928c74f8
MT#56374 add gettid() wrapper
... for older glibc which doesn't support it
Change-Id: I82cd49e6a10fd48861ae00c4eda06613f930fca7
2 years ago
Richard Fuchs
125657e108
MT#56374 move glib helper to auxlib
Needed by perf-tester
Change-Id: I9fcb68e48938a2060498bf30ff7ffbdd38c6d94b
2 years ago
Richard Fuchs
4c7809999f
MT#56374 replace test fixtures
... with content licensed under CC
Change-Id: Ief82fd2a0e96431acbc0461632ce913175b7f21b
2 years ago
Richard Fuchs
673caaecfe
MT#55283 fix compilation for older ffmpeg
Change-Id: Ic0c6eb2249bf4f9d2fca6ee5a3a133ce813c7ba9
2 years ago
Richard Fuchs
e5cb0018eb
MT#56374 add perf-tester
Change-Id: I9863b4e97238dcc6759f21d9685aa101dae75fa1
2 years ago
Richard Fuchs
4cbc35e0f2
MT#55283 fix RTCP/MOS reporting
We always need to (re)set the ssrc_map_out SSRC, even for the input
context, as this SSRC is used to look up the receiving SSRC context,
where the appropriate RX stats are stored, including the payload type in
use.
Change-Id: I434c6df4761bf56e36c7267dd3a44b0bb9c9b852
2 years ago
Richard Fuchs
5f345ec54b
MT#55283 pass flags to subscribe answer
... when setting up the codec handlers. This is needed to set the
inject-DTMF flag for example.
Change-Id: Iec83cdb2f9671efd9437fbf4511b38d7c847b189
2 years ago
Richard Fuchs
410e9d4e3c
MT#55283 test-transcode -> dynamic monologues
Change-Id: I3d65889d2f7cb2d08336886333b194138cf202b2
2 years ago
Richard Fuchs
d9131bf9b7
MT#55283 introduce __monologue_free
Change-Id: I5273abebba5b73b281c6f02b34d2bd39d5b40d1d
2 years ago
Richard Fuchs
19a0b93850
MT#55283 rename rtp_payload_type_fmt_eq
... to _cmp as it better matches its return value.
Also annotate these functions with nonnull.
Change-Id: Iebc725e011bab60ecf089407f16efce0accaf133
2 years ago
Richard Fuchs
2364464fc7
MT#55283 split up codec_offer/answer
... and annotate with nonnull
Change-Id: I89e5ff39b2f94e4c4efd9bcdab153e1feac2eb2b
2 years ago
Richard Fuchs
6038711bdf
MT#55283 update var to bool
Change-Id: Ifc9917d9160777d672475fbe674af0cec26aebd9
2 years ago
Richard Fuchs
5c5ad6d830
MT#55283 use fancy "named args" syntax
... for codec_handlers_update
Change-Id: Ie53aab9c5c1ab9a3d8e79325757a068c2e446540
2 years ago
Richard Fuchs
c83a0e8999
MT#55283 fix compilation for older kernels
Older kernels (3.x) have ktime_t defined as a union, which means we
can't just treat it as a number and must wrap it inside {}. This still
also works for later kernels which have it typedef'd as an int.
closes #1708
Change-Id: I6195e45eb80f6e430e97247f62cd5f6696450b09
2 years ago
Richard Fuchs
8893281e3d
MT#55283 switch to anonymous unions
Change-Id: If80137ba4955013bb2b919c5bec9172a9776374e
2 years ago
Richard Fuchs
20db645d14
MT#55283 add cmsg_pktinfo family
These fill in the cmsg structs for sendmsg() to set the local source
address to use.
Change-Id: I58a67c6e93cf4ef57eb1afd76f55c76f5b3612e1
2 years ago
Richard Fuchs
f2f825dccc
MT#55283 enable PKTINFO for UDP listeners
These may be bound to ANY so we want to know which local address each
packet was sent to.
Change-Id: I91e40e0b8000e44859255286e13b8f4c5d63b59f
2 years ago
Richard Fuchs
8328c0b606
MT#55283 add recvfrom_to family
Similar to recvfrom_ts, this return the local (destination) address of
the received packet, extracted from the PKTINFO struct.
Change-Id: Icfed12eb7d9bf6c9d707318e85363fcff8d9aca6
2 years ago
Richard Fuchs
16dde52776
MT#55283 add function to enable PKTINFO delivery
Change-Id: I9aaedb54d19aa4fc2cf4996b630272dc44e26b55
2 years ago
Richard Fuchs
50a91aa9fb
MT#55283 refactor to inline __ip_recvfrom_options
This makes it possible for the compiler to omit unneeded code from
__ip_recvfrom().
Change-Id: I06aca0c4b88b42a29d21ebde0be031d45f5a5955
2 years ago
Richard Fuchs
f66df0340a
MT#55283 add missing "duration" option
Change-Id: I6306965e58839ee21620002b7123887caa082322
2 years ago
Richard Fuchs
61ce4ca5db
MT#55283 annotate codec_store functions
Change-Id: If0690f5ddba23c6e1c4e7a2dd72bd25d8557e114
2 years ago
Richard Fuchs
c42887a2cd
MT#55283 use fancy "named args" syntax
... for codec_store functions
Change-Id: I593291daa97a5364000e455262018903cd958a4f
2 years ago
Richard Fuchs
9b6cc05bd0
MT#55283 annotate some signalling functions
These are always called with non-NULL arguments.
Change-Id: I0d7c7d58cc111a19da2116641550b689bac829ff
2 years ago
Richard Fuchs
2d2c98787e
MT#55283 restore AMR unit tests
These had unintentionally been disabled and so have fallen derelict.
Replace the makefile `with_amr_tests` conditional with
`RTPENGINE_EXTENDED_TESTS`. The previous `with_amr_tests` was not
actually set anywhere and so these tests never ran. The new
`RTPENGINE_EXTENDED_TESTS` is used as switch for other tests already.
Bring the tests up to date so that they compile and run.
Allow for alternative AMR bit encodings as different versions of the
codec produce different outputs.
Use an inline `struct cb_args` to pass these expected strings to the
callback functions.
Update `int` to `size_t` where appropriate.
Make a copy of the format string in `__sdp_pt_fmt` as the parsing
function temporarily writes into the string, which means a readonly
string literal doesn't work.
Update the AMR tests in test-transcode to the new API and new expected
values.
Change-Id: Ic3332e696522a28595ea06be9996001d3ab7686e
2 years ago
Richard Fuchs
9081d39066
MT#55283 move codec_handler_lookup
... into header file so it can be used from a unit test etc
Change-Id: If9e1feea9925611f1dab369b293991a1dfc458bc
2 years ago
Richard Fuchs
baf339fb60
MT#55283 update to C11
Change-Id: I966a3698a66eda0ab5485eed2841b4a2044efd73
2 years ago
Richard Fuchs
3a2e0485bd
MT#55283 add missing static
Change-Id: I8c0f12057054efd305076cbadeba727c65622d58
2 years ago
Richard Fuchs
267f965098
MT#55283 unify constructor signatures
All functions that create listener objects take a read-only endpoint, so
make them as const.
Remove the extra TOS argument to make all signatures the same.
Change-Id: I722c7665b192476d90dbf0ece200d0bfd34cb9eb
2 years ago
Дилян Палаузов
3a9409352d
docs/usage.md: typo
2 years ago
Alex Hermann
d4d93332a4
MT#55283 Don't log an error on success when sending DTMF event
closes #1701
Change-Id: I1bc894bf7cc1b716ec847045dcf1bf4a676e81f7
2 years ago
Richard Fuchs
40d3765f93
MT#55283 fix CLI description
CLI ports are TCP, not UDP.
Also remove port reservation as this is also UDP-specific.
Change-Id: I51d18896dc8ccc2f7c0cd1f8547a596889d01ad7
2 years ago
Richard Fuchs
309b69772d
MT#55283 annotate str functions
Change-Id: I896dc74ced7df96d4f5fd06061a20fae2ab98274
2 years ago
Richard Fuchs
85b8a765d1
MT#55283 add modprobe.d fragment
If the kernel module is loaded automatically/implicitly through
insertion of an iptables rule, it gets loaded with only the default
module parameters. Add a modprobe.d fragment to handle this case.
Change-Id: I08659e2f0db8fed401cbcce6edee51e942da1f3e
3 years ago
Richard Fuchs
6e05fe3ac6
MT#55283 check for NULL flags
Can be NULL for legacy protocols
Change-Id: I19ad39840060d7927b89f6ef7300f6df807915db
Warned-by: Coverity
2 years ago
Richard Fuchs
e82c4ada1a
MT#56374 delay thread creation until after forking
Forking to background kills already created threads, so forking must
happen first and thread creation after.
closes #1695
Change-Id: I743b890b83903d9e0b3248b032844e7e357d2307
2 years ago
Richard Fuchs
d9e682b7db
MT#56374 add convenience macros for string creation
... and use them in a few places where it makes sense
Change-Id: I849f2841990808de6f697c92e2760645286dacca
2 years ago
Richard Fuchs
1de9aee92d
MT#55283 limit cname length
Thread comm names are limited in length. Make sure not to try to set
names that are too long.
Change-Id: I5e41e1d0d4b65af41fc0b356ad54df86df6f0b82
2 years ago
Richard Fuchs
0be5b73887
MT#56374 add `poller-size` config var
Change-Id: Ibd6a42f5cc5b261ce95fe0231ec78e55bd66ac31
2 years ago
Richard Fuchs
196249ee00
MT#56374 refactor asan pthread cleanup hack
... in terms of macros that can be reused.
Change-Id: I394dece8ec22ce4eff4deefe5ddd6315bb35a6fb
2 years ago
Richard Fuchs
e58d36fb84
MT#56374 update glib dependency to >= 2.40
and remove related version test macros.
Change-Id: I4eca21f4bf146ad8d13e775a5cd512ab1a190999
2 years ago
Richard Fuchs
f7c4eabaae
MT#56374 convert poller->items to GPtrArray
Makes for easier bookkeeping.
Change-Id: I29a2a78e85e0a71a9d6b5221baf8233f2a0d43b2
2 years ago
Richard Fuchs
fe9d1f5ae3
MT#56374 avoid aborting in poller
Either return error or ignore unhandled conditions.
Change-Id: I36883bd8323e89399ef139cd54fef494bb411a28
2 years ago