Commit e65bcd40 authored by Jerome Peraldi's avatar Jerome Peraldi

Merge branch 'private/bugz125253_NR5GC_AS_UP_Security_segment' into...

Merge branch 'private/bugz125253_NR5GC_AS_UP_Security_segment' into 'private/bugz125253_NR5GC_AS_UP_Security'

bug #129170 [L3 SIMU] support of AS security@DRB impacts L3less tests...

See merge request sequans/system/ttcn/openairinterface5g!27
parents be4eec2c 3f3b9f05
...@@ -161,7 +161,8 @@ void mac_rlc_data_ind ( ...@@ -161,7 +161,8 @@ void mac_rlc_data_ind (
LOG_UDUMPMSG(RLC, buffer_pP, tb_sizeP, LOG_DUMP_CHAR, "%s: ", __FUNCTION__); LOG_UDUMPMSG(RLC, buffer_pP, tb_sizeP, LOG_DUMP_CHAR, "%s: ", __FUNCTION__);
if (RC.ss.mode >= SS_SOFTMODEM) { if (RC.ss.mode >= SS_SOFTMODEM) {
if ((tb_sizeP != 0) && (true == enb_flagP) && (channel_idP >= 4) && (RC.nr_drb_data_type == DRB_RlcPdu)) { LOG_D(RLC, "Packet received over RLC layer, DRB data type == %d\n", RC.nr_drb_data_type);
if ((tb_sizeP != 0) && (true == enb_flagP) && (channel_idP >= 4) && ((RC.nr_drb_data_type == DRB_RlcPdu) || (RC.nr_drb_data_type == DRB_RlcSdu))) {
int drb_id = channel_idP - 3; int drb_id = channel_idP - 3;
int result; int result;
LOG_A(RLC, "Sending packet to SS, Calling SS_DRB_PDU_IND ue %x drb id %d size %u\n", rntiP, drb_id, tb_sizeP); LOG_A(RLC, "Sending packet to SS, Calling SS_DRB_PDU_IND ue %x drb id %d size %u\n", rntiP, drb_id, tb_sizeP);
...@@ -181,7 +182,10 @@ void mac_rlc_data_ind ( ...@@ -181,7 +182,10 @@ void mac_rlc_data_ind (
} }
} }
RC.nr_drb_data_type = DRB_data_type_qty; //if RLC packet is segmented, we shall not "reset" RLC packet in progress
if (RC.nr_drb_data_type == DRB_RlcPdu) {
RC.nr_drb_data_type = DRB_data_type_qty;
}
return; return;
} }
} }
......
...@@ -268,6 +268,8 @@ static void ss_task_handle_drb_pdu_req(struct NR_DRB_COMMON_REQ *req) ...@@ -268,6 +268,8 @@ static void ss_task_handle_drb_pdu_req(struct NR_DRB_COMMON_REQ *req)
{ {
pdu_header_size += 2; pdu_header_size += 2;
bits_copy_from_array((char *)SS_DRB_PDU_REQ(message_p).sdu, 8, (const char *)header->SegmentOffset.v, 16); bits_copy_from_array((char *)SS_DRB_PDU_REQ(message_p).sdu, 8, (const char *)header->SegmentOffset.v, 16);
//we consider only RLC payload is there meaning that RLC packet is segmented
RC.nr_drb_data_type = DRB_RlcSdu;
} }
SS_DRB_PDU_REQ(message_p).sdu_size = pdu_header_size + data->d; SS_DRB_PDU_REQ(message_p).sdu_size = pdu_header_size + data->d;
LOG_A(GNB_APP, "[SS_DRB] Length of RLC PDU received in NR_DRB_COMMON_REQ (SN6Bit): %lu\n", pdu_header_size + data->d); LOG_A(GNB_APP, "[SS_DRB] Length of RLC PDU received in NR_DRB_COMMON_REQ (SN6Bit): %lu\n", pdu_header_size + data->d);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment