aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2022-01-13 21:39:58 +0100
committerneels <nhofmeyr@sysmocom.de>2023-03-14 22:41:52 +0000
commit2d57d6eaa92429d56a8a7b45e4ad4a6ee7d59849 (patch)
treec0afbca198c3a243c4fb7b97febdc165d6aee97d
parent8159c9563744fe6acccfaa05c2b087272b4de93c (diff)
[codecs filter] apply BSS codecs from Assignment Complete
Codec List (BSS Supported) is received once in Complete Layer 3 and again in Assignment Complete messages. Use the most recent one, i.e. the one from Assignment Complete, when it occurs. Related: SYS#5066 Change-Id: I5e66ecc7987fa926f39d8be8eaf5799b931ab20a
-rw-r--r--src/libmsc/msc_a.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libmsc/msc_a.c b/src/libmsc/msc_a.c
index d9a73410b..4c7f763c7 100644
--- a/src/libmsc/msc_a.c
+++ b/src/libmsc/msc_a.c
@@ -47,6 +47,7 @@
#include <osmocom/msc/rtp_stream.h>
#include <osmocom/msc/msc_ho.h>
#include <osmocom/msc/codec_mapping.h>
+#include <osmocom/msc/codec_filter.h>
#define MSC_A_USE_WAIT_CLEAR_COMPLETE "wait-Clear-Complete"
@@ -1353,6 +1354,10 @@ static void msc_a_up_call_assignment_complete(struct msc_a *msc_a, const struct
rtp_stream_commit(rtps_to_ran);
+ /* Remember the Codec List (BSS Supported) */
+ if (ac->assignment_complete.codec_list_bss_supported)
+ codec_filter_set_bss(&cc_trans->cc.codecs, ac->assignment_complete.codec_list_bss_supported);
+
/* Setup CN side endpoint CI:
* Now that
* - the first CI has been created and a definitive endpoint name is assigned to the call_leg's MGW