gsm48_cc_tx_setup: set trans->bearer_cap.transfer early
Prepare to use trans->bearer_cap.transfer in trans_cc_filter_run() to
differentiate between speech and data (CSD).
Related: OS#4394
Change-Id: Id0476a4882bcb27413d033f2de2c5288954f0b95
diff --git a/src/libmsc/gsm_04_08_cc.c b/src/libmsc/gsm_04_08_cc.c
index 4fbf929..4bc87af 100644
--- a/src/libmsc/gsm_04_08_cc.c
+++ b/src/libmsc/gsm_04_08_cc.c
@@ -806,6 +806,8 @@
trans_cc_filter_init(trans);
trans_cc_filter_set_ran(trans, trans->msc_a->c.ran->type);
trans_cc_filter_set_bss(trans, trans->msc_a);
+ if (setup->fields & MNCC_F_BEARER_CAP)
+ trans->bearer_cap.transfer = setup->bearer_cap.transfer;
/* sdp.remote: if SDP is included in the MNCC, take that as definitive list of remote audio codecs. */
rx_mncc_sdp(trans, setup->msg_type, setup->sdp);
/* sdp.remote: if there is no SDP information or we failed to parse it, try using the Bearer Capability from