1. 15 Apr, 2024 7 commits
  2. 13 Apr, 2024 4 commits
    • Robert Schmidt's avatar
      Rewrite sctp_create_new_listener() to handle DNS, IPv6 · dfa01216
      Robert Schmidt authored
      Rewrite sctp_create_new_listener() to use getaddrinfo() to look up
      IPv4/IPv6 addresses via a common interface. This allows to use e.g. DNS,
      and enables the SCTP library to listen on IPv6 ports.
      
      To support the above, the corresponding message is changed to not take
      an IPv4 address on 4 bytes (and separate IPv6), but a single name that
      will be resolved via getaddrinfo()
      
      The previous init message used to allow multiple IPv4/IPv6 addresses;
      since this is not used anywhere, remove the corresponding functionality.
      
      Modify all uses of this ITTI message to copy te SCTP init bind addr into
      ITTI message.
      dfa01216
    • Robert Schmidt's avatar
      Rewrite sctp_handle_new_association_req() to handle hostnames and IPv6 · 0d128f9c
      Robert Schmidt authored
      Use getaddrinfo() to look up IP (v4/v6) addresses. The old
      interface of separately specifying IPv4 and IPv6 addresses is
      preserved, but both fields allow to specify types of addresses, and we
      will remove one field in the future.
      0d128f9c
    • Robert Schmidt's avatar
      Introduce additional option to bind on separate IFs for F1-C/U in DU · e65cb0cf
      Robert Schmidt authored
      After the last commit, it is not possible to bind on separate interfaces
      for F1-C and F1-U. In other words, it is for instance not possible to
      have the F1-C on one subnet on one physical interface, and F1-U on
      another subnet on another physical interface. This commit introduces a
      second option MACRLCs.[0].local_n_address_f1u to allow to bind F1-U on
      an alternative address; if it is not specified, the interface of F1-C is
      reused.
      
      The above only works for the DU; no corresponding option exists for the
      CU. For the CU, use separate CU-CP and CU-UP.
      
      Use it in the CI.
      e65cb0cf
    • Robert Schmidt's avatar
      Revert "F1AP SCTP: don't bind local address" · a1935185
      Robert Schmidt authored
      This reverts commit 28411652.
      
      The problem is that (1) we don't really support multi-homing, but (2) on
      some system, if the other IP addresses that the operating system
      considers part of the multi-homed connection are HEARTBEAT'ed (e.g.,
      docker), they answer with SCTP ABORT, which breaks the entire
      connection.
      
      In other words, force single-homing by binding. For F1-U uses, another
      option will be introduced that allows to bind to a separate interface
      for F1-U (separate from F1-C), if necessary.
      
      Closes #727
      a1935185
  3. 09 Apr, 2024 2 commits
    • Robert Schmidt's avatar
      Merge branch 'integration_2024_w14' into 'develop' · 1244c9a2
      Robert Schmidt authored
      Integration `2024.w14`
      
      Closes #775 and #773
      
      See merge request oai/openairinterface5g!2663
      
      * !2411 Simple and generic trx_write support of out of time order requests
      * !2532 moving decision on DCI format type to UE MAC
      * !2565 improvements in security of nrUE
      * !2656 remove stored G in UE DL, not needed and creating issues with DCI format 11/type0
      * !2658 Fix sleeping ue at synchro
      * !2649 NR SRS RRC assrtion removal
      * !2662 Avoid concurrent write while filling RX/CRC.indication
      * Remove obsolete "version" parameter from yaml files used on avra
      * !2664 Remove duplicated NAS message send, already done above
      * !2605 Improve performance polar encoder i.e., 3GPP 38.212 5.3.1.2 function
      * !2629 Msg2 and Msg3 at gNB: check allocation before committing to Msg2
      * !2657 replace transient malloc by stack allocation, add defense code on block size
      * !2631 chore(ci): some docker improvements
      * !2654 Pucch2 polar rx dynamic range fix
      * !2666 [E2 Agent] Fix E2 Setup Request for ASan
      * !2661 CI: iperf/iperf3 UDP analysis function fix → review in progress, review to be completed
      1244c9a2
    • Robert Schmidt's avatar
  4. 08 Apr, 2024 19 commits
  5. 05 Apr, 2024 6 commits
  6. 04 Apr, 2024 2 commits
    • Robert Schmidt's avatar
      Avoid concurrent write while filling RX/CRC.indication · 5951caa9
      Robert Schmidt authored
      We observe these asserts while running concurrent UL traffic on many
      UEs:
      
        Assertion (crc->rnti == rx->rnti) failed!
        In handle_nr_ulsch() ../../../openair2/NR_PHY_INTERFACE/NR_IF_Module.c:193
        mis-match between CRC RNTI 7221 and RX RNTI 35cf
      
      CRC and RX indication need to be pairwise for one UE, when here we have
      each for different UE. However, investigation seemed to indicate that
      both arrays for CRC and RX indication contained only one PDU; it seemed
      the RNTI changed while writing the CRC/RX.indication messages in
      nr_fill_indication().
      
      In this patch, we change the logic to mark a ULSCH free AFTER calling
      nr_fill_indication(). It is difficult to say if this makes the assertion
      disappear, but preliminary tests did not exhibit the same failure
      states.
      
      Closes #773
      5951caa9
    • Robert Schmidt's avatar
      Bugfix: make preamble_list an array · e6e25275
      Robert Schmidt authored
      - It is only a couple of bytes
      - It hid a bug: if two preambles, L1_nr_prach_procedures() overwrote the
        preamble of the first with the second one
      e6e25275