1. 03 Apr, 2024 10 commits
    • Cedric Roux's avatar
      minor: move declaration of variable · 0f9b3359
      Cedric Roux authored
      0f9b3359
    • Cedric Roux's avatar
    • Cedric Roux's avatar
      nrUE: check integrity of SecurityModeCommand · d1f49024
      Cedric Roux authored
      We AssertFatal() if integrity fails. To be refined if needed.
      d1f49024
    • Cedric Roux's avatar
      4e625b01
    • Cedric Roux's avatar
      nrUE: simplify nr_rrc_ue_process_securityModeCommand() · b9f02991
      Cedric Roux authored
      The case securityModeFailure didn't seem to be implemented
      properly, so I just removed it entirely.
      
      The variable 'securityMode' did not make much sense, removed as well.
      Plus for integrity, there was: securityMode |= 1 << 5 for nea1
      and << 6 for nea2, which does not seem correct (I would expect << 4
      and << 5 respectively), so it was properly incorrect.
      
      'securityModeCommand->criticalExtensions.choice.securityModeCommand'
      was accessed before checking that
      'securityModeCommand->criticalExtensions.present'
      is 'NR_SecurityModeCommand__criticalExtensions_PR_securityModeCommand',
      which is wrong.
      
      The tests 'securityMode >= NO_SECURITY_MODE' and 'securityMode != 0xff'
      don't make sense/are unclear, so removed too.
      
      So let's simplify this function, wrong in several places. And put
      some AssertFatal() so that the code won't do weird things. The
      AssertFatal() can be removed later and the function improved later
      if needed. The case securityModeFailure can also be handled later,
      but I think there is more work to do than just encoding the message
      and send it to the gNB, so it's not bad to remove it for the moment.
      b9f02991
    • Cedric Roux's avatar
      nr pdcp: pass MAC-I and header to upper layers · cc61d4f7
      Cedric Roux authored
      Needed by some RRC procedures to validate the integrity of a message
      before accepting it.
      cc61d4f7
    • Cedric Roux's avatar
    • Cedric Roux's avatar
      nrUE: bugfix/improvement in security mode handling · f85e3adc
      Cedric Roux authored
      The use of security_mode_completed in the PDCP entity was a hack.
      
      Plus it was not working at all with the deregistration request
      when nea2 is used, sent when doing ctrl+c in the nrUE.
      
      So let's remove it.
      
      And let's handle activation of integrity and ciphering more in
      accordance with what 38.331 says. SecurityModeComplete has to
      be sent integrity protected, but not ciphered. Only after should
      the ciphering be activated. (See 38.331 5.3.4.3.)
      f85e3adc
    • Cedric Roux's avatar
      7cceaa3f
    • Robert Schmidt's avatar
      Merge branch 'integration_2024_w13' into 'develop' · 1cae1879
      Robert Schmidt authored
      Integration `2024.w13`
      
      Closes #696 and #762
      
      See merge request oai/openairinterface5g!2653
      
      * !1911 Preparatory work for NR DL 4-layer MIMO at gNB
      * !2610 fix ug on pilot 2 in nr_pbch_dmrs_correlation() that is lacking signal...
      * !2639 NR gNB PUCCH2 CQI workaround
      * !2642 NR UE demoting to LOG_D another log that cause flooding
      * !2644 NR UE prevent segfault at detach
      * !2645 add error code for pdu session reject in the ue
      * !2600 Handle Msg3 with SRB1 RRCReestablishmentComplete and MAC CE C-RNTI
      * trigger RF-sim E1+F1 test without asan
      * !2636 Fix various F1 problems
      * !2641 NR DL and UL channel estimation fix
      * !2652 Provide additional troubleshooting documentation for QtScope
      * !2646 NRUE fix asn_sequence_del to clear a list
      * !2504 CI: use iperf3, refactor Iperf_Module
      * !2617 use UE ID instead of RNTI internally in NR RLC
      * !2619 Minor PDCP fixes
      * !2648 Minor CI fixes, stack protection, fix E1+F1 Quectel test, L2sim5G test
      1cae1879
  2. 02 Apr, 2024 11 commits
  3. 29 Mar, 2024 8 commits
  4. 28 Mar, 2024 11 commits