If DTLS is rejected in an answer via `DTLS=off` we must forget that DTLS
was previously offered, as otherwise a re-invite would detect the
fingerprint as changed if the re-invite doesn't offer DTLS again. We
also make sure DTLS is shut down if during stream init DTLS is not
given, when it was present before.
Change-Id: I48ee6f0ec5ec02f558a6799951552ea2272d0e96
The macro PDA_DATA() has been replaced by the inline function pda_data()
closes#1448
Change-Id: I0d611011879a470a58a4339f05f05981428793bb
(cherry picked from commit d172f20bf1)
* produces the non-NGCP debian dir
* It will be called by a jenkins job
Change-Id: I7e5eaabfc39a2ef3985a8a908998299c79d864a8
(cherry picked from commit bc09e94d61)
* pkg/deb/debian should be the only source
* pkg/deb/debian/backports: scripts to generate differences
This way is quite easy to maintain different versions, the
differences are managed via scripts
Change-Id: I0ac3a35fe3facf005564141563e2fb11b73cbefc
(cherry picked from commit d482d4053b571f77be7d845525a2316029574735)
For this initial version, these are mostly copies of the existing
/debian tree, with `ngcp-rtpengine` renamed to `rtpengine`, added
"conflicts" with the `ngcp-rtpengine` packages, and NGCP-specific
"suggests" removed.
Change-Id: I64289f9907ec09d003a96b8ac81f83c79d413747
(cherry picked from commit bbfe168b72)
The aliases created by systemd under Install/Alias are created and
removed as the service is enabled and disabled, and don't serve as
generic alias names. Furthermore they seem to linger behind when the
package is removed or replaced, which leads to collisions and
installation failures when the NGCP-specific package is replaced by the
non-NGCP version.
Change-Id: I2313ffffb1fa4fb1d570b23113b0618744c58e26
(cherry picked from commit 30c124ff05)
This package name is not used anywhere as a dependency, therefore it
makes no sense to list as a "provides"
Change-Id: I20db5308328b1c911495bf31417e4996a9824c3c
(cherry picked from commit 5ed13a130e)
SSRC entries might be present for the same SSRC in multiple contexts,
but only one of them will hold the actual stats. Don't create output
SSRC entries unless we know they won't be empty, as otherwise we won't
be able to create the actual SSRC entries (with stats) later on as they
dict key will already exist.
Change-Id: I54e263a17e14869ebb98456963f8ca75d11e9a89
(cherry picked from commit 9c2b53b3ed)
Flag a socket with an error strike when packets are received too fast,
and refuse processing once too many strikes have occurred. This should
prevent forwarding loops from taking down the system.
Change-Id: Idc574f2f1dbbcb156efc37a80e903dc4e60ef1b1
AVPF extended (non-compound) RTCP packets don't satisy the same RTP-like
header rules as regular RTCP compound packets, therefore we move the
RTCP mux test ahead of the RTP header parsing test.
Change-Id: Iecb3895d16796095f572c2eda2efa0a7a0dc69e7
(cherry picked from commit 4fa48df952)
Bullseye doesn't install iptables by default any more, but the included
startup script uses iptables to set up the kernel forwarding by default.
Add an explicit dependency.
closes#1343
Change-Id: I6c222c290e51177f92136f9df59fa769c05ec266
(cherry picked from commit 9376204498)
If a keyspace notification SET is received and the call already exists
as a foreign call, the call is first destroyed before being re-restored.
The call destruction involves a DEL from Redis on the "hosted DB"
number, which points to the foreign DB. This makes it impossible to then
restore the call because it's just been deleted.
closes#1308closes#1334
Change-Id: Ie895b021441b2d299f8ebb5bde1824b01e12633c
The `str` objects are owned by the SDP parser, so we need to duplicate
those as well as the string content itself.
closes#1303
Change-Id: I329893812b3d0a5ac7961e1895f7e0ef21f016fd
(cherry picked from commit 3f0020274a)
Also add a safeguard against filling the remote peer address with an
address from the wrong family
closes#1305
Change-Id: Iac18212b4d526a2f7d49a06ddcd724aa89b06060
(cherry picked from commit 124d89ade0)
This restores backwards compatibility with existing code parsing the
output, e.g. Kamailio to report MOS stats.
Change-Id: Ibafb2a7a3cf118166ffe1cca9a62a06b63252944
(cherry picked from commit c06c51ded4)
If encoder_config errors out for some reason, avpkt may end up
uninitialised. Make sure there is an avpkt when flushing/closing the
encoder. Also make the encoder input more resilient against
half-initialised encoders for the same reason.
closes#1312
Change-Id: I44ebcf6e35f1c383aa5c8202b5d9bbf968b0d5f1
(cherry picked from commit 6e160da497)