Bugfix: Fill QFI for N3 GTP messages

Instead of hardcoding to 0, instruct the GTP module to send N3 GTP
packets with the right GTP.

We currently only support one QoS Flow, so check that it is really only
one.
This commit is contained in:
Robert Schmidt
2024-10-24 10:42:45 +02:00
parent 2c07f0081e
commit 7c13c790d7
+2 -1
View File
@@ -157,6 +157,7 @@ void e1_bearer_context_setup(const e1ap_bearer_setup_req_t *req)
AssertFatal(req_pdu->numDRB2Setup == 1, "can only handle one DRB per PDU session\n");
resp_pdu->numDRBSetup = req_pdu->numDRB2Setup;
const DRB_nGRAN_to_setup_t *req_drb = &req_pdu->DRBnGRanList[0];
AssertFatal(req_drb->numQosFlow2Setup == 1, "can only handle one QoS Flow per DRB\n");
DRB_nGRAN_setup_t *resp_drb = &resp_pdu->DRBnGRanList[0];
resp_drb->id = req_drb->id;
resp_drb->numQosFlowSetup = req_drb->numQosFlow2Setup;
@@ -168,7 +169,7 @@ void e1_bearer_context_setup(const e1ap_bearer_setup_req_t *req)
// GTP tunnel for N3/to core
gtpv1u_gnb_create_tunnel_resp_t resp_n3 = {0};
int qfi = 0; // put PDU session marker
int qfi = req_drb->qosFlows[0].qfi;
int ret = drb_gtpu_create(n3inst,
cu_up_ue_id,
req_drb->id,