Allow F1 to be used in do-ra
This is preparatory work to allow NSA-like modes to be used over F1 in the future. Notably, it fills the F1 message for UE context setup with GTP TEID, and fills additional information to "make the F1 encoder happy" (fill in QFI etc). Also, provide some F1 fixes to make this work. Remove stale UE connections, if relevant.
This commit is contained in:
committed by
francescomani
parent
b9edba2186
commit
b4a7a1a194
@@ -262,11 +262,13 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(sctp_assoc_t assoc_id, f1ap_ue_context_setu
|
||||
if (f1ap_ue_context_setup_req->cu_to_du_rrc_information!=NULL) {
|
||||
/* optional */
|
||||
/* 6.1 cG_ConfigInfo */
|
||||
if(f1ap_ue_context_setup_req->cu_to_du_rrc_information->cG_ConfigInfo!=NULL){
|
||||
if(f1ap_ue_context_setup_req->cu_to_du_rrc_information->cG_ConfigInfo_length > 0) {
|
||||
DevAssert(f1ap_ue_context_setup_req->cu_to_du_rrc_information->cG_ConfigInfo != NULL);
|
||||
asn1cCalloc(ie6->value.choice.CUtoDURRCInformation.cG_ConfigInfo, cG_ConfigInfo);
|
||||
OCTET_STRING_fromBuf(cG_ConfigInfo, (const char *)f1ap_ue_context_setup_req->cu_to_du_rrc_information->cG_ConfigInfo,
|
||||
f1ap_ue_context_setup_req->cu_to_du_rrc_information->cG_ConfigInfo_length);
|
||||
}
|
||||
|
||||
/* optional */
|
||||
/* 6.2 uE_CapabilityRAT_ContainerList */
|
||||
if(f1ap_ue_context_setup_req->cu_to_du_rrc_information->uE_CapabilityRAT_ContainerList!=NULL){
|
||||
|
||||
@@ -178,6 +178,11 @@ int DU_handle_UE_CONTEXT_SETUP_REQUEST(instance_t instance, sctp_assoc_t assoc_i
|
||||
f1ap_ue_context_setup_req->cu_to_du_rrc_information = (cu_to_du_rrc_information_t *)calloc(1,sizeof(cu_to_du_rrc_information_t));
|
||||
cu_to_du_rrc_information_t *cu2du = f1ap_ue_context_setup_req->cu_to_du_rrc_information;
|
||||
const F1AP_CUtoDURRCInformation_t *cu2duie = &ieCuRrcInfo->value.choice.CUtoDURRCInformation;
|
||||
if (cu2duie->cG_ConfigInfo != NULL) {
|
||||
cu2du->cG_ConfigInfo = malloc_or_fail(cu2duie->cG_ConfigInfo->size);
|
||||
cu2du->cG_ConfigInfo_length = cu2duie->cG_ConfigInfo->size;
|
||||
memcpy(cu2du->cG_ConfigInfo, cu2duie->cG_ConfigInfo->buf, cu2du->cG_ConfigInfo_length);
|
||||
}
|
||||
if(cu2duie->uE_CapabilityRAT_ContainerList!=NULL){
|
||||
cu2du->uE_CapabilityRAT_ContainerList = calloc(1, cu2duie->uE_CapabilityRAT_ContainerList->size);
|
||||
memcpy(cu2du->uE_CapabilityRAT_ContainerList,
|
||||
|
||||
Reference in New Issue
Block a user