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
Avoid repeated calls to the memory allocated for port pool list
management by picking out the list elements without freeing them,
storing them in the stream_fd object, and then returning them to the
list when the port is released.
Change-Id: I67cd5039e62e4d2965e85d7ba7f0454f08f40494
The parser currently relies on the appropriate parsing functions
(dict_iter, list_iter) to be called to advance into and back out of any
sub-objects containd within the flags string. However, if an unknown key
is encountered, no parsing functions would be invoked, resulting in the
parser not skipping over the sub-object and subsequently a stray error
message in the log. Work around this by detecting unparsed objects and
then using a dummy list_iter to return to a good parsing position.
Change-Id: I908aff8b9be8d12644a9faea0dcf3bf3535faf32
Split up the function into one part that parses out the string, and
another part that handles the individual pieces of information. Switch
to bool types and const arguments where appropriate.
Change-Id: If3ec8a048dbe1141dfc0b1150b69eb445216aad1
Add a callback type to read config groups and their contents based on a
group prefix.
Unused at this point.
Change-Id: I7d9e043e96f48e599bc4da2d8ef4079559cb8b47
Switch from specialised handling of config sections (used to load
signalling templates) to a more general approach using a callback
mechanism. This allows us to add more information to the config file
while keeping the details of the underlying GKeyFile hidden. Use a typed
hash table for type safety.
Change-Id: I71ddfda0202b47df363bcc5acf1725078774f8f1
The codec `strip` option used to remove codecs not only from the
destination (offer to) monologue, but also from the source (offered by)
monologue. Change this to only affect codecs on the destination
(offering to) side. This fixes a problem of not being able to have
different `strip` options set for different branches.
As a side effect, this breaks existing use cases of using `strip` to
ignore codecs on the source monologue side. This functionality is
restored by adding `codec-ignore` in the following commit.
Change-Id: I022748fffc29caa3a8c96f514b2021f152e43686