-
Cedric Roux authored
With the introduction of X2AP into develop, the UEs now have to regularly send measurement reports. In the logs of the eNB, we see: [OSA] Mismatch found in integrity for algorithm 2, got e0.a0.c2.66, expecting a5.9c.cb.57 [PDCP] [OSA][RB 1] eNB failed to validate MAC-I of incoming PDU This is a bug in the PDCP layer that uses wrong parameters to compute the integrity. This commit fixes this bug. The function pdcp_is_rx_seq_number_valid was removed. Its processing has been directly integrated into the function pdcp_data_ind. The function pdcp_mark_current_pdu_as_received is not called anymore. Its processing was not used later on, so as of today, not calling it does not introduce any functional change. The function pdcp_validate_security takes now as parameters both SN and HFN. Same for the function pdcp_get_next_count_rx. Useless constants PDCP_SN_5BIT, PDCP_SN_7BIT and PDCP_SN_12BIT have been removed. The compilation option ENABLE_SECURITY has been removed. It's now always on. (This may impact some use cases.) The PDCP for DRB using RLC AM is not correct. It was not correct before this commit (apart from the integrity bug). We should deal with a list of PDUs and transmit packets to upper layers as detailed in the specs. Today we transmit the PDU as soon as we get it. We don't care about duplicates, in-order delivery, timeouts. Also, we don't deal with "PDCP re-establishment". Not sure how that impacts the software. And, last but not least, there is still no ROHC.
8e890ebe