Review at  https://gerrit.osmocom.org/6380

MT Calls: Copy bearer capabilities from NNCC primitive to trans

When we receive a MNCC_SETUP_REQ primitive from the external MNCC
handler, we must not only encode it into the TS 04.08 CC SETUP, but
also keep it around in the "trans" structure representing this voice
call, as it is needed e.g. at BSSMAP ASSIGNMENT time.

Change-Id: Ib6919d148ff6687112e8166dbde947be19e70a76
Related: OS#2322
Closes: OS#2929
---
M src/libmsc/gsm_04_08.c
1 file changed, 5 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/80/6380/1

diff --git a/src/libmsc/gsm_04_08.c b/src/libmsc/gsm_04_08.c
index 7b6e94a..6c95488 100644
--- a/src/libmsc/gsm_04_08.c
+++ b/src/libmsc/gsm_04_08.c
@@ -1767,8 +1767,12 @@
        gsm48_start_cc_timer(trans, 0x303, GSM48_T303);
 
        /* bearer capability */
-       if (setup->fields & MNCC_F_BEARER_CAP)
+       if (setup->fields & MNCC_F_BEARER_CAP) {
+               /* Create a copy of the bearer capability in the transaction 
struct, so we
+                * can use this information later */
+               memcpy(&trans->bearer_cap, &setup->bearer_cap, 
sizeof(trans->bearer_cap));
                gsm48_encode_bearer_cap(msg, 0, &setup->bearer_cap);
+       }
        /* facility */
        if (setup->fields & MNCC_F_FACILITY)
                gsm48_encode_facility(msg, 0, &setup->facility);

-- 
To view, visit https://gerrit.osmocom.org/6380
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib6919d148ff6687112e8166dbde947be19e70a76
Gerrit-PatchSet: 1
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <lafo...@gnumonks.org>

Reply via email to