Skip adding of second LCID1
Our initial CellGroupConfig always contains LCID1, because in normal connection setup, the DU has to automatically set it up anyway. In handover/UE Context Setup, the CU requests to set up SRB1 (which we assume to be LCID1), but we reuse the initial CellGroupConfig. To not have SRB1 added twice, skip in this case.
This commit is contained in:
@@ -238,8 +238,16 @@ static int handle_ue_context_srbs_setup(NR_UE_info_t *UE,
|
||||
(*resp_srbs)[i].srb_id = srb->srb_id;
|
||||
(*resp_srbs)[i].lcid = c.lcid;
|
||||
|
||||
int ret = ASN_SEQUENCE_ADD(&cellGroupConfig->rlc_BearerToAddModList->list, rlc_BearerConfig);
|
||||
DevAssert(ret == 0);
|
||||
if (rlc_BearerConfig->logicalChannelIdentity == 1) {
|
||||
// CU asks to add SRB1: when creating a cellGroupConfig, we always add it
|
||||
// (see get_initial_cellGroupConfig())
|
||||
const struct NR_CellGroupConfig__rlc_BearerToAddModList *addmod = cellGroupConfig->rlc_BearerToAddModList;
|
||||
DevAssert(addmod->list.count >= 1 && addmod->list.array[0]->logicalChannelIdentity == 1);
|
||||
ASN_STRUCT_FREE(asn_DEF_NR_RLC_BearerConfig, rlc_BearerConfig);
|
||||
} else {
|
||||
int ret = ASN_SEQUENCE_ADD(&cellGroupConfig->rlc_BearerToAddModList->list, rlc_BearerConfig);
|
||||
DevAssert(ret == 0);
|
||||
}
|
||||
}
|
||||
return srbs_len;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user