8000 Comparing v0.9.5...v0.9.6 · free5gc/gtp5g · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: free5gc/gtp5g
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.9.5
Choose a base ref
...
head repository: free5gc/gtp5g
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.9.6
Choose a head ref
  • 5 commits
  • 6 files changed
  • 5 contributors

Commits on Dec 18, 2024

  1. fix: wrong GTP length when Sequence Number is enabled and QoS is disa…

    …bled (#130)
    
    ## Bug description
    If you create a configuration that make a new GTP packet with Sequence Number
    but you don't provide a QER IE (which is an optional IE), the resulting GTP
    packet's length field is off by 4.
    
    This makes the packet total payload shorter than indicated in the
    header, resulting in interoperability issues (in particular, when
    attempting to use a custom SMF that will push a different set of PFCP
    rules than Free5GC's one, and where QoS management is not yet implemented).
    
    For exemple, when creating a gNB using [go-gtp](https://github.com/wmnsk/go-gtp),
    such packet is considered malformed, and is always dropped.
    
    ## Bug cause
    This bug results from the following:
    ```c
    ext_pdu_sess_ctrl_t *ext_pdu_sess;
    // ...
    if (opt_flag) {
        // ...
        payload_len += ((sizeof(*gtp1opt) + sizeof(*ext_pdu_sess));
    }
    ```
    
    When `ext_pdu_sess` is not initialized, `sizeof(*ext_pdu_sess)` returns `4` and not `0`.
    
    ## Bug mitigation
    The fix is to split the incrementation in 2 steps:
    1. increment by `sizeof(*gtp1opt)` if an option (Sequence Number, or Extension Header) is provided;
    2. ensure `ext_pdu_sess` is well initialized before incrementing `payload_len` by `sizeof(*ext_pdu_sess)`.
    louisroyer authored Dec 18, 2024
    Configuration menu
    Copy the full SHA
    5c04e67 View commit details
    Browse the repository at this point in the history

Commits on Dec 25, 2024

  1. fix(QoS): Get now after get lock to prevent from negative elapsed tim…

    …e. (#131)
    
    Co-authored-by: LeoHung <leo.hung@saviah.com>
    leoelva and leohung-free5GC authored Dec 25, 2024
    Configuration menu
    Copy the full SHA
    f83fc85 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5fc5b30 View commit details
    Browse the repository at this point in the history
  3. fix: define NETIF_F_LLTX macro if missing (#129)

    In a recent kernel update the NETIF_F_LLTX was removed.
    It was deprecated for a long time and is replaced by a placeholder.
    
    This results in the NETIF_F_LLTX being undefined and preventing the
    compilation under newer (6.11.x and 6.12.x) kernel version.
    TheFunctionalGuy authored Dec 25, 2024
    Configuration menu
    Copy the full SHA
    1c1357b View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2024

  1. Configuration menu
    Copy the full SHA
    11ff34a View commit details
    Browse the repository at this point in the history
Loading
0