pespin has submitted this change. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34573?usp=email )
Change subject: bsc: Use different CIC in concurrent calls from same MSC
......................................................................
bsc: Use different CIC in concurrent calls from same MSC
The MSC (our TTCN3 emulation) expects to assign unique CIC for each
concurrent call, so that the BSC can properly differentiate and do the
proper connection setup.
Change-Id: Iac09590693bf39ccc90bf2b0645ca672a4787c95
---
M bsc/BSC_Tests.ttcn
M bsc/MSC_ConnectionHandler.ttcn
2 files changed, 21 insertions(+), 6 deletions(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, but someone else must approve
fixeria: Looks good to me, approved
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index f2844e1..b4d6e02 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -1726,9 +1726,9 @@
}
/* generate an assignment request for either AoIP or SCCPlite */
-function f_gen_ass_req(boolean osmux_enabled := false, integer bssap_idx := 0, charstring
aoip_tla := "1.2.3.4") return PDU_BSSAP {
+function f_gen_ass_req(boolean osmux_enabled := false, uint8_t ass_cid := 0, integer
bssap_idx := 0, charstring aoip_tla := "1.2.3.4") return PDU_BSSAP {
var PDU_BSSAP ass_cmd;
- var BSSMAP_IE_Osmo_OsmuxCID osmux_cid := valueof(ts_OsmuxCID(0));
+ var BSSMAP_IE_Osmo_OsmuxCID osmux_cid := valueof(ts_OsmuxCID(ass_cid));
if (mp_bssap_cfg[bssap_idx].transport == BSSAP_TRANSPORT_AoIP) {
var BSSMAP_IE_AoIP_TransportLayerAddress tla :=
valueof(f_ts_BSSMAP_IE_AoIP_TLA(aoip_tla, 2342));
@@ -1738,7 +1738,9 @@
ass_cmd := valueof(ts_BSSMAP_AssignmentReq(omit, tla));
}
} else {
- var BSSMAP_IE_CircuitIdentityCode cic := valueof(ts_BSSMAP_IE_CIC(0,1));
+ var BIT8 ass_cid_bit := int2bit(ass_cid, 8);
+ var BSSMAP_IE_CircuitIdentityCode cic := valueof(ts_BSSMAP_IE_CIC(bit2int(ass_cid_bit
>> 5),
+ bit2int(ass_cid_bit and4b '00011111'B)));
ass_cmd := valueof(ts_BSSMAP_AssignmentReq(cic, omit));
}
return ass_cmd;
@@ -12194,7 +12196,7 @@
private const charstring COORD_CMD_ESTABLISHED := "COORD_CMD_ESTABLISHED";
private function f_TC_mgwpool_call_seq_1(charstring id) runs on MSC_ConnHdlr {
var template PDU_BSSAP exp_compl := f_gen_exp_compl();
- var PDU_BSSAP ass_cmd := f_gen_ass_req();
+ var PDU_BSSAP ass_cmd := f_gen_ass_req(ass_cid := 0);
ass_cmd.pdu.bssmap.assignmentRequest.channelType := valueof(ts_BSSMAP_IE_ChannelType);
ass_cmd.pdu.bssmap.assignmentRequest.codecList :=
valueof(ts_BSSMAP_IE_CodecList({ts_CodecFR}));
@@ -12207,7 +12209,7 @@
}
private function f_TC_mgwpool_call_seq_2(charstring id) runs on MSC_ConnHdlr {
var template PDU_BSSAP exp_compl := f_gen_exp_compl();
- var PDU_BSSAP ass_cmd := f_gen_ass_req();
+ var PDU_BSSAP ass_cmd := f_gen_ass_req(ass_cid := 1);
ass_cmd.pdu.bssmap.assignmentRequest.channelType := valueof(ts_BSSMAP_IE_ChannelType);
ass_cmd.pdu.bssmap.assignmentRequest.codecList :=
valueof(ts_BSSMAP_IE_CodecList({ts_CodecFR}));
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index 269fb79..7a5e55e 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -1652,7 +1652,7 @@
var template MgcpCommand cmd;
var template MgcpResponse resp;
var integer cic :=
f_bssmap_ie_cic_2_int(ass_cmd.pdu.bssmap.assignmentRequest.circuitIdentityCode);
- var MgcpEndpoint ep := int2str(cic) & "@mgw"; /* 1: matches value
configured in BSC_Tests.ttcn pass in AssignReq */
+ var MgcpEndpoint ep := int2str(cic) & "@mgw"; /* matches value configured
in BSC_Tests.ttcn pass in AssignReq */
var MgcpCallId call_id := '51234'H;
var SDP_attribute_list attributes := { valueof(ts_SDP_ptime(20)) };
if (g_pars.use_osmux_cn) {
--
To view, visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/34573?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Iac09590693bf39ccc90bf2b0645ca672a4787c95
Gerrit-Change-Number: 34573
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged