diff options
author | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2024-02-06 16:58:28 +0700 |
---|---|---|
committer | fixeria <vyanitskiy@sysmocom.de> | 2024-03-01 07:11:47 +0000 |
commit | b03001199a99a67f72846b6eba169eb4064a932c (patch) | |
tree | 35f86249ef13228baf7b5110bd651f1da8c7954a | |
parent | f09832a395946ed524f2668195430de6f2804ba8 (diff) |
Change-Id: I92f7ab11ebc2e53700b27c38e91679c2c6f72050
-rw-r--r-- | src/libmsc/msc_a.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/libmsc/msc_a.c b/src/libmsc/msc_a.c index 38f05a6d4..4fb30c46c 100644 --- a/src/libmsc/msc_a.c +++ b/src/libmsc/msc_a.c @@ -1465,12 +1465,18 @@ static void msc_a_up_call_assignment_complete(struct msc_a *msc_a, const struct const struct codec_mapping *codec_assigned; /* Check for unexpected codec with CSD */ - if (cc_trans->bearer_cap.transfer == GSM48_BCAP_ITCAP_UNR_DIG_INF && - codec_if_known->type != GSM0808_SCT_CSD) { + switch (cc_trans->bearer_cap.transfer) { + case GSM48_BCAP_ITCAP_FAX_G3: + case GSM48_BCAP_ITCAP_3k1_AUDIO: + case GSM48_BCAP_ITCAP_UNR_DIG_INF: + if (codec_if_known->type == GSM0808_SCT_CSD) + break; /* we're good */ LOG_TRANS(cc_trans, LOGL_ERROR, "Unexpected codec in Assignment Complete for CSD: %s\n", gsm0808_speech_codec_type_name(codec_if_known->type)); call_leg_release(msc_a->cc.call_leg); return; + default: + break; } /* For 2G: |