aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2023-05-23 17:29:57 +0200
committerOliver Smith <osmith@sysmocom.de>2023-06-15 15:06:46 +0200
commita35abb761c52e645c871de5c1d7b1d3eb95e4613 (patch)
tree02ae317a803a5e873a0ad9af903ae49d972a858f
parent0b70b20a8937d0d5795fd2ddc08f630e5c5579d9 (diff)
codec_filter_init: prepare for CSD
-rw-r--r--include/osmocom/msc/codec_filter.h1
-rw-r--r--include/osmocom/msc/transaction_cc.h1
-rw-r--r--src/libmsc/codec_filter.c5
-rw-r--r--src/libmsc/gsm_04_08_cc.c4
-rw-r--r--src/libmsc/transaction_cc.c5
5 files changed, 8 insertions, 8 deletions
diff --git a/include/osmocom/msc/codec_filter.h b/include/osmocom/msc/codec_filter.h
index c90388dcc..ca32e3c5d 100644
--- a/include/osmocom/msc/codec_filter.h
+++ b/include/osmocom/msc/codec_filter.h
@@ -52,7 +52,6 @@ struct codec_filter {
struct sdp_msg result;
};
-void codec_filter_init(struct codec_filter *codec_filter);
void codec_filter_set_ran(struct codec_filter *codec_filter, enum osmo_rat_type ran_type);
void codec_filter_set_bss(struct codec_filter *codec_filter,
const struct gsm0808_speech_codec_list *codec_list_bss_supported);
diff --git a/include/osmocom/msc/transaction_cc.h b/include/osmocom/msc/transaction_cc.h
index df0f9d841..c2550f6bf 100644
--- a/include/osmocom/msc/transaction_cc.h
+++ b/include/osmocom/msc/transaction_cc.h
@@ -30,4 +30,5 @@
#include <osmocom/msc/transaction.h>
#include <osmocom/msc/vlr.h>
+void trans_cc_filter_init(struct gsm_trans *trans);
void trans_cc_filter_set_ms_from_bc(struct gsm_trans *trans, const struct gsm_mncc_bearer_cap *bcap);
diff --git a/src/libmsc/codec_filter.c b/src/libmsc/codec_filter.c
index e93ebaf2c..99ae7b26a 100644
--- a/src/libmsc/codec_filter.c
+++ b/src/libmsc/codec_filter.c
@@ -60,11 +60,6 @@ static void sdp_add_all_utran_codecs(struct sdp_audio_codecs *ac)
sdp_audio_codecs_add_speech_ver(ac, utran_codecs[i]);
}
-void codec_filter_init(struct codec_filter *codec_filter)
-{
- *codec_filter = (struct codec_filter){};
-}
-
void codec_filter_set_ran(struct codec_filter *codec_filter, enum osmo_rat_type ran_type)
{
codec_filter->ran = (struct sdp_audio_codecs){};
diff --git a/src/libmsc/gsm_04_08_cc.c b/src/libmsc/gsm_04_08_cc.c
index 773ee3d8b..fff7c3f19 100644
--- a/src/libmsc/gsm_04_08_cc.c
+++ b/src/libmsc/gsm_04_08_cc.c
@@ -671,7 +671,7 @@ static int gsm48_cc_rx_setup(struct gsm_trans *trans, struct msgb *msg)
}
/* MO call leg starting, gather all codec information so far known: */
- codec_filter_init(&trans->cc.codecs);
+ trans_cc_filter_init(trans);
codec_filter_set_ran(&trans->cc.codecs, trans->msc_a->c.ran->type);
codec_filter_set_bss(&trans->cc.codecs, &trans->msc_a->cc.compl_l3_codec_list_bss_supported);
if (setup.fields & MNCC_F_BEARER_CAP)
@@ -804,7 +804,7 @@ static int gsm48_cc_tx_setup(struct gsm_trans *trans, void *arg)
* Initialize the codecs filter with this side's BSS' codec list, received at Complete Layer 3.
* We haven't received the MT MS's Bearer Capabilities yet; the Bearer Capabilities handled here are
* actually the remote call leg's Bearer Capabilities. */
- codec_filter_init(&trans->cc.codecs);
+ trans_cc_filter_init(trans);
codec_filter_set_ran(&trans->cc.codecs, trans->msc_a->c.ran->type);
codec_filter_set_bss(&trans->cc.codecs, &trans->msc_a->cc.compl_l3_codec_list_bss_supported);
/* sdp.remote: if SDP is included in the MNCC, take that as definitive list of remote audio codecs. */
diff --git a/src/libmsc/transaction_cc.c b/src/libmsc/transaction_cc.c
index 3a0db2cf7..4946d3fbc 100644
--- a/src/libmsc/transaction_cc.c
+++ b/src/libmsc/transaction_cc.c
@@ -24,6 +24,11 @@
#include <osmocom/msc/transaction_cc.h>
+void trans_cc_filter_init(struct gsm_trans *trans)
+{
+ trans->cc.codecs = (struct codec_filter){};
+}
+
void trans_cc_filter_set_ms_from_bc(struct gsm_trans *trans, const struct gsm_mncc_bearer_cap *bcap)
{
trans->cc.codecs.ms = (struct sdp_audio_codecs){0};