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
Add a semicolon only for the last switch statement
going in a row.
Fixes this Coverity Scan detected defect:
*** CID 1621493: Control flow issues (MISSING_BREAK)
/daemon/call_interfaces.c: 1063 in call_ng_flags_flags()
1057 out->allow_no_codec_media = 1;
1058 break;
1059 case CSH_LOOKUP("allow-transcoding"):
1060 case CSH_LOOKUP("allow transcoding"):
1061 out->allow_transcoding = 1;
1062 break;
>>> CID 1621493: Control flow issues (MISSING_BREAK)
>>> The case for value "15" is not terminated by a "break" statement.
1063 case CSH_LOOKUP("always-transcode"):;
1064 case CSH_LOOKUP("always transcode"):;
1065 static const str str_all = STR_CONST("all");
1066 call_ng_flags_esc_str_list((str *) &str_all, 0, &out->codec_accept);
1067 break;
1068 case CSH_LOOKUP("asymmetric"):
Change-Id: I4d6bc56d8149acd2d0d69f122e420c5a8c6ae2e1
Deleting a call can have the side effect of changing the active Redis DB
on the writing instance. Restore the correct DB afterwards if needed.
Fixes#1905
Change-Id: I12dae767ffa5d25703e024d2ec59aa21ba9da101
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
If keyspace notifications are used at all, the respective objects and
threads must be created during startup. This requires at least some
keyspace to be configured. To support usage without any keyspaces
initially (and add them during runtime), add a special case (set
keyspace to -1).
Convert all keyspace variables to signed ints. Ignore negative keyspace
numbers where appropriate. Support Redis endpoint addresses without
database number.
Fixes#1902
Change-Id: I45a3c87bc515f9b14e64ec1ec0906dde271b5f8d
If keyspace notifications are not configured at all, bail with an error
when there is an attempt to add a new keyspace or remove one. We get a
segfault otherwise.
Closes#1902
Change-Id: Ie47cf5f7762792aabe38476739f0dcf9927787ce
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
Teach rtpengine to distinguish between G.729 with and without annex B,
which are incompatible to each other.
Change-Id: I09b66a097007ba3283546880f06f81b4f89e126d
Instead of lumping all strings of a file into a single hash function,
split them up into their respective sections, as there is no point in
matching against strings that aren't part of the switch statement. This
should give a bit of a performance boost.
Nested hash sections require special handling as the wrapper script
isn't smart enough to hande them automaticaly.
Change-Id: I74863dfe6ca412d58101d37f9c9c85078826f1a4
Make entry tree simpler and give
links to commonly used things like
NG control protocol.
This simplifies usage of documentation.
Change-Id: I1283bf8a88c7c6e4ff7ab9451610bc6e224c0119
Secondary titles have to be smaller:
- to embed it easier into the toctree of index file
- to have better readability for users (github,RTD)
Change-Id: If8f97f97b1d64b7593228eeda16c794e66453c27
Remove the intro information from index,
because already mentioned in the overview.
Also change a greeting title.
Change-Id: I5c232fa033eac8e3097ad5adb351e8940a33a4ee
HTTP/WS init creates worker threads, which would be terminated by a fork
to background. Reverse the order.
Closes#1896
Possibly also relevant to #1895
Change-Id: I30b61e07ad3bed41b6b241e8943ed479277c1474