1. 26 Apr, 2024 3 commits
    • Cedric Roux's avatar
      minor cleanup - use variable defined above · fac5c1f6
      Cedric Roux authored
      fac5c1f6
    • Cedric Roux's avatar
      cleanup the structure cbc_cmac_ctx_t · 61a2c085
      Cedric Roux authored
      - rename "lib_ctx" to "mac_implementation" which is what is stored because
        of previous commit
      - rename "mac" to "mac_context" to be clearer with what is stored in this
        variable too
      61a2c085
    • Cedric Roux's avatar
      bugfix: speedup integrity computation · d7931ea4
      Cedric Roux authored
      The main work of this commit is to rewrite cipher_aes_128_cbc_cmac()
      which was too slow and created issues when running the 4G eNB on some
      machines (LLL when using a b210).
      
      Instead of creating the security context, use it, and delete it, all in
      cipher_aes_128_cbc_cmac(), we introduce the function init_aes_128_cbc_cmac()
      to create it, and we change cipher_aes_128_cbc_cmac() to just use it,
      and we also adapt free_aes_128_cbc_cmac(). The function aes_128_cbc_cmac()
      is removed, it does not follow the new init/use/free API.
      
      Doing so, on the primary test machine used to do this work (a powerful
      and fast machine where it is possible to set the CPUs' frequencies)
      it was possible to limit the CPUs' frequencies to 500 MHz (it was not
      possible to go lower) without any LLL (using a b210, quectel UE in
      idle, no data traffic, only periodic measurement reports). Before this
      commit, it was necessary to set a frequency of at least 1.8 GHz
      otherwise some LLL would appear.
      
      Then we need to adapt the rest of the code to take into account those
      changes.
      
      A notion of security container (stream_security_container_t) containing
      ciphering and integrity contexts is introduced.
      
      And the code is harmonized for, hopefully, better readability.
      
      The (opaque) type stream_security_context_t is introduced, used by
      both integrity and ciphering contexts. The idea is to use a
      init()/use()/free() API for all the security procedures, identical for
      all the ciphering and integrity procedures.
      d7931ea4
  2. 23 Apr, 2024 1 commit
  3. 22 Apr, 2024 2 commits
  4. 19 Apr, 2024 3 commits
  5. 18 Apr, 2024 7 commits
  6. 17 Apr, 2024 2 commits
    • Robert Schmidt's avatar
      Compile using -rdynamic with clang · 8e7ecaa7
      Robert Schmidt authored
      -rdynamic is necessary for clang as well to properly link shared
      executables. Add furthermore an option to ignore unused command line
      arguments, to suppress warning
      
        clang: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
      
      This is likely because -rdynamic is only relevant for the linker, but
      the corresponding option add_link_options() is only available starting
      cmake 3.13, while we are still at 3.12 (for Ubuntu 18, to my
      understanding).
      8e7ecaa7
    • Laurent THOMAS's avatar
  7. 16 Apr, 2024 1 commit
    • Robert Schmidt's avatar
      Merge branch 'integration_2024_w15' into 'develop' · 74977924
      Robert Schmidt authored
      Integration `2024.w15`
      
      Closes #727, #765, #776
      
      See merge request oai/openairinterface5g!2676
      
      * !2561 CI - add T2 tests to timing pipeline
      * !2620 Fix cppcheck errors
      * !2624 NR UE MAC SR improvements
      * !2647 NR UE mixed fixes
      * !2671 Reduce stack memory size for layer mapping
      * !2669 CI: create SA 2x2 pipeline
      * !2660 fix for 3072 fft size when using 80 MHz and -E
      * !2539 CI: Add channel emulation in one test
      * !2635 SCTP problems: allow to bind separate F1-C/F1-U interfaces; allow to use DNS
      * !2438 PSBCH RX,TX and SLSS SEARCH procedures
      * !2675 (doc): Update benetel firmware version and configuration files
      * Update of O-RAN 7.2 gNB configuration file for Benetel 650
      74977924
  8. 15 Apr, 2024 21 commits