There is a generated file left behind (codeclib.strhash.c) that needs to
be cleaned up by `make clean`
Ref: https://bugs.debian.org/1101804
Change-Id: I22eef1124a84107478ef6058abb127eb65fc9aa5
(cherry picked from commit 2c636fd1c1)
(cherry picked from commit ef917c014f)
We don't have this available before kernel 5.1
Ref: https://bugs.debian.org/1101804
Change-Id: I4f2f768738d0f53fec28ed3f8e8f577cbc13431e
Reported-by: Andreas Beckmann <anbe@debian.org>
(cherry picked from commit afc5ac96c2)
(cherry picked from commit b18aec837a)
With reuse-codecs, we still need to place the codec from the SDP into
our prefs list, even if it's already present, as the format options may
have changed. Update one affected test case.
Closes#1921
Change-Id: I688c57a8c45ec4c3bf159fe2193a0e00bbceeda2
(cherry picked from commit 65bfe22d40)
(cherry picked from commit 789971d929)
in a container
- the daemon is not started by rtpengine-kernel-dkms.postinst
- do not attempt to unload a module from the host kernel
Ref: https://bugs.debian.org/1101804
Change-Id: Id9b9184c52e1be82d47a6b89780bf594d4d5a5a9
(cherry picked from commit 4f716cf2bf)
(cherry picked from commit 07edb53d3e)
This triggers an initial "no carrier" indication if the sender is slow
to start PCM.
Change-Id: I3513efafae06f992b3c9abd58b8ec797320c3b56
(cherry picked from commit dafb68ef80)
(cherry picked from commit d0c557a7dc)
0x40000000 was already used by SHARED_FLAG_END_OF_CANDIDATES. Move
MEDIA_FLAG_REORDER_FORCED to unused slot 0x00800000 instead.
Change-Id: I0aa33854f814757869c7a98ba209d9aeb94d3d91
(cherry picked from commit 443a07a58d)
(cherry picked from commit 064561db23)
Solves a race condition when deleting a stream, as the fd might get
closed just as another thread tries to read from it, leading to EBADF
read error.
Change-Id: I8ea3ff72c2788ce3051a86a0bbd1650b03965376
(cherry picked from commit 64eba103e3)
(cherry picked from commit 1d97823318)
Changes to a hard-coded sample format (clock rate, channels) and
directly modifies dec->pts.
Change-Id: I1b9f71af4a252cdc0f795ca91e525ff19f6cc580
(cherry picked from commit 6a5d3412f8)
(cherry picked from commit 2a15824b33)
A call that gets created but then doesn't get initialised would have its
Redis DB left at zero. At destruction it would then try to switch to DB
zero. Fix this by using an appropriate initial value.
Closes#1905
Change-Id: I852e48c5a06b732b37d2ccd5c478de4760aacd4e
(cherry picked from commit add46f265a)
(cherry picked from commit 127540cefa)
These are potentially computed from inside each subdir, and in addition
due to what appears to be a regression in GNU make 4.4, where it is
reevaluating variables that contain $(shell) functions, many times (in
the order of thousands, this was slowing down the build, were on the
Debian amd64 build daemons it went from 5m with GNU make 4.3 to 2h40m
with GNU make 4.4. Although the bulk of the slow down has been fixed
with previous commits, the remaining optimizations are only to avoid
this potentially happening again in the future, and to reduce useless
duplicate work.
Instead of trying to cache the values from within make itself, where
programming this there is extremely painful, and does not seem to be
able to greatly reduce the number of calls, because the build system
is going to be called multiple times for different targets. Simply
externalize the generation into several shell scripts, that we call
to generate a make fragment that then we include from the various
Makefiles.
For a Debian build with GNU make 4.3, this reduces the amount of total
pkg-config calls from around ~1600 to 128, for dpkg-buildflags from
~1100 down to 6, and for dpkg-parsechangelog from ~56 to 17, but the
slow down is not as significant there anyway.
For a Debian build with GNU make 4.4, this reduces the amount of total
pkg-config calls from around ~2600 to 128, for dpkg-buildflags from
~2800 down to 6, and for dpkg-parsechangelog from ~350 to 21.
For a Debian build with GNU make 4.4, this reduces the build time
on this system from 2m10s to ~ 1m30s.
Change-Id: I427d0ea5106dc6ed1ff9e664ccdba2fa0725b7d0
(cherry picked from commit 7dbe24e4e5)
(cherry picked from commit 1e1075bf38)
This variable is unknown to dpkg-buildflags. This also reduces the
amount of global calls generated with GNU make 4.4 (which has a
regression causing massive amounts of shell calls to be generated).
Change-Id: Ia9d7099228bf5e181df4725939ed4f76f1e63dc9
(cherry picked from commit bb2bf3a702)
(cherry picked from commit 9397dbb7ff)
This makes sure the target is the default, regardless of the place where
it gets declared, so that we do not get surprises due to targets
declared in includes that might happened to be performed before the
default target.
Change-Id: I2fab47ccb46d68dc56332acef966e369c5183c07
(cherry picked from commit 5cb1002949)
(cherry picked from commit 290a0d2b99)
Starting with GNU make 4.4, build time have massively regressed
where before they would take 5m on amd64 now can take 2h40m. While this
seems clearly broken, the release notes are filled with notices for
breaking changes, and in particular the one for passing all make
variables down to the invoked programs executed via the «shell» GNU make
function, so it is not clear what is expected breakage and what is not.
This has been reported in Debian, but not yet upstream, and while it
seems like a clear regression, it's not clear what will be the upstream
take on it. For now apply workarounds that do not change semantics, and
which do not regress with older GNU make versions.
Use the GNU make «origin» function instead of «?=» which defaults to
defining a variable as a recursive one. Coerce already defined variables
into simple ones to avoid GNU make re-evaluating these variables for
each «shell» function invocation.
Ref: https://bugs.debian.org/1092051
Change-Id: I076fc05dd616918473a22e7e942fecfdc9851d47
(cherry picked from commit 887fb40f3f)
(cherry picked from commit 67a2b222c7)
Make sure we properly return a failure if no supported payload type is
present.
Change-Id: Ia483e0819b2d8ca0c2c5184c929dfe3d05c96ca1
(cherry picked from commit 5f6609de5d)
(cherry picked from commit 357c4f1e4d)
Make sure a codec is not only known to us, but that it can actually be
used, in places where it makes sense. This is partially redundant
because ensure_codec_def_type already takes care of this, but a codec
definition may come from a different source, so it doesn't help to
double check.
Change-Id: I91af84afc2477840f1400674b2538ad8fb7746ee
(cherry picked from commit 7b60e85970)
(cherry picked from commit ea3cfdbd38)
If the receiver of a previously passthrough T.30 stream gets switched to
a generated PCM stream from a T.38 gateway, continue the sequencing of
the previous SSRC. Technically this is not necessary as the generated
PCM stream gets a new SSRC, but at least Asterisk seems to ignore this
and expect sequencing to continue, and will ignore PCM if the sequence
jump is too large.
Change-Id: Ia4656770db11f5fa1a1e9bf5bd71a0398deb1e00
(cherry picked from commit 18579227a9)
(cherry picked from commit bca98ab764)
Just add the make target. Don't run it as part of the test suite as it's
quite extensive. Update the script a bit as well.
Change-Id: I192e90413bd7ffde842571324c816e4271367b42
(cherry picked from commit 0f55781a58)
(cherry picked from commit 3fd9b90b0a)
Add a simple function that acts as an encryption callback to just update
the ext_seq (index) of the egress SSRC context. The kernel module
already does this, but the daemon only did it when SRTP was involved.
This now tracks egress packet indexes in all cases.
Change-Id: I9460744de55ead4b05aceb322fd8482442ff2b41
(cherry picked from commit 0da49000ba)
(cherry picked from commit 3e8a35511b)
Some components (the timer thread used by the codec handlers in
particular) may hold references to components owned by the codeclib (the
.so handles in particular). Move codeclib cleanup towards the end.
Change-Id: Ic581588c27b69c025576c14a69e999c9ca5d1597
(cherry picked from commit 43cc9cc06d)
(cherry picked from commit 6e49850351)
Fixes a corner case that happens when trying to delete a call created with
ng offer and no-redis-update flag and for which no ng answer was received.
In such cases, one would receive warning messages from Redis
"ERR DB index is out of range".
What happens is that on call creation redis_hosted_db defaults to -1. This
value is changed when writing to Redis, but the writing is not done for a
ng offer with no-redis-update.
Kudos go to Pawel Kuzak.
Closes#1910
Change-Id: Iad19ec8ac69b169e6352662697b17eb23e6970fb
(cherry picked from commit bba9625b25)
(cherry picked from commit c177d06b33)
NGCP-Flow: mr12.5.1
Only meant for mr12.5+ branches.
Add a support of session level connection replacement by default,
avoiding flag.
This is due to the fact: we've managed to deprecate
the replace-session-connection functionality, but the switch
to the SDP create approach hadn't been done that time around,
when branching the master to the mr12.5 branch.
Change-Id: Ic5230180e3ba83cda59e62c567414c71b2d2f1aa
A matching payload type number in an answer might not be enough to
establish compatible codecs. Also check the format parameters. Reject
and ignore answer codecs that are not compatible.
Change-Id: I12a1287216886926ec4b3c704029c923f815b429
(cherry picked from commit 9c00f30475)
(cherry picked from commit 71ff9210ce)
(cherry picked from commit 76bfb0e707)
We don't parse these out and formats should be compatible.
Change-Id: Ie106591f3d12539eb1101793b50df9db97637625
(cherry picked from commit 68ad1dc8df)
(cherry picked from commit 91b5479117)
(cherry picked from commit 8d34d4c4dd)