Beginning from the 25th Sep 2023, usage of the
configuration file v2 is required. This commit
introduces it.
Change-Id: Ib6d154195621e5939e7d0bd2d6ca9ec62e487077
(cherry picked from commit ec55ccf5fc)
Due to improper linking some of the subjects
used to be no clickable. This commit fixes it.
Change-Id: I408b148ec7441ac6632666d43b0e96ced63cc760
(cherry picked from commit de492bb02c)
It's been noticed the previous default (static)
binding has been broken, hence explicitely define
usage of `sphinx_rtd_theme` and set appropriate
versioning requirements.
Change-Id: I847f7f3d0128fc2269449b7487524c8cd57e36b3
(cherry picked from commit 2737a6dad7)
With the "foreign" flag now stored in call_flags, restoring a call from
Redis restores this flag as well, overwriting the desired flag as we had
set it through call_get_or_create().
Reverse the flag setting by taking it out of call_get_or_create() (where
it's always false anyway, except when coming from Redis) and setting it
explicitly with call_make_own_foreign() after restorting call and its
flags.
Change-Id: Ib68be2aeedfa988b7555e426fa337657e1062245
(cherry picked from commit dbae76c3b6)
*) Remove packaging for -gpu packages
*) Remove build profile restrictions, except for the build dependency
itself
*) Remove script to generate dh fragments for -gpu packages
*) Convert --cudecs switch to a path argument pointing to the .so
*) Don't link against libcudecs during build
*) Only include the single types.h header needed for usage as a plugin
*) Resolve all symbols during startup after loading the .so
Change-Id: Ide99eec2156d5d3be8c40594391cb1603add4b16
(cherry picked from commit b82b31ec2b)
Consider errors from dlopen() or dlsym() as hard errors. Don't just log
an error message and continue startup. If we were instructed to load a
plugin, make sure that we could actually load it.
Change-Id: I1fcfa149a0eae277ef528fd3cef249ea7882e781
(cherry picked from commit f991930260)
Evaluating the __VA_ARGS__ twice for printing a critical error can have
side effects. Avoid these by using an intermediate buffer.
Change-Id: I8ddace6ad06f47d6827f3f3ba3c5b882cbfb0140
(cherry picked from commit 7235d906ff)
Older glibc uses a strange (and seemingly broken) approach to verifying
the cmsg structures by inspecting the *next* cmsg header and using its
length to see if there is enough space in the buffer. Since we're
constructing the cmsg list, at this point there is no next cmsg yet,
therefore causing spurious failures of CMSG_NXTHDR.
Work around this by initialising the entire buffer first.
See 9c443ac455closes#1720
Change-Id: I00ce9bc5686ab0c1612aff51f1b3e75d8cbd8a69
(cherry picked from commit 1e4efc60db)
Some gcc targets report ifunc as a supported attribute, while at the
same time actually trying to build the object fails with "ifunc not
supported on this target". Be more prejudicial with ifunc usage.
Change-Id: I5820338476938bf581d6d9e38fe0e6fd48f0b874
(cherry picked from commit 80014423c3)
Turns out `bool` and `gboolean` are not safely interchangeable as
they're different sizes. Doh.
Change-Id: I3cfda6584ce3f6cb142fef4a9ee9743ee4eebbe0
(cherry picked from commit 91a8f4be04)
UDP packets sent in response to a UDP request should have the same
source address as the request's destination address.
This can be achieved with sockets bound to a specific address, but in
the case of ANY-bound sockets, we can use the PKTINFO mechanism to do
this.
Extend control_ng_process() to accept an extra socket address
corresponding to the local address to use. Extend the signature of the
callback function (to do the actual sending) accordingly.
Extend socket_sendiov() to be able to set the PKTINFO cmsg when sending
a packet.
Add socket_sendto_from() as a convenience wrapper.
Extend control_udp_incoming() to pass the address from
udp_buf->local_addr back to socket_sendiov().
Change-Id: Idd019fdcfd796098e7807427e6686d4b05de35d1
(cherry picked from commit 8684a1933a)
Convert each listener entity into a list.
Support a list of values for each option so that multiple
ports/addresses can be listed.
Keep previous behaviour unchanged: If ANY address is given, open
listeners for IPv4 and IPv6.
Change-Id: Ic54f28d1262f60d5e5c9d824a95e7c33ebc2aba9
(cherry picked from commit ddc3565bfe)
The ng-client script uses the JSON module, so list it as dependency.
Change-Id: I87cb28e1bf25e7afa9eb0ea750eb8e5ccb605262
(cherry picked from commit 14dbc561a7)
as per RFC 8839
We're liberal and also accept it as a media-level attribute.
closes#1721
Change-Id: If0cd853f3661ff9e183fbd9dab3f4ca634823c87
(cherry picked from commit f05a8e4b4d)
previously, dtmf_inject wouldn't add the events as the dtmf_payload_type
was set to -1 as part of the delay buffer handling. However, as we
know we want this DTMF, this change updates the function to check for
and use the real_dtmf_payload_type value
Then, in codec_add_dtmf_event, we can check the injected bool and
if set, use the real_dtmf_payload_type again to decide whether to
push the event onto the queue
closes#1722
Change-Id: I34e35f92e014f4aed9e045737df7400155b86602
(cherry picked from commit e40e6c5cd0)
Capabilities listed in the ambient set must also be included in the
bounding set.
Change-Id: Iac8a97f6ba4f5446430ec2678092f768aeb8bb25
Related-to: I172bd30c9fbe488574e9cc015ba552e805c95fe6
Looks like glib at some point started resetting an existing string array
that a config option is pointing to if that config option isn't present
at all. Work around this by explicitly resetting the pointed-to variable
to NULL, and then fixing up the contents on the second pass: either use
the setting from the config file or the one from the command line, and
free the other one.
Change-Id: Ida89d71e54fc30b4cce3277107e2185737f54a51