Fix downlink GTP packets not being forwarded when ue_addr_ipv4
is set
#138
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
According to TS 129.244 Table 7.5.2.2-2: PDI IE within PFCP Session Establishment Request:
When
gtp.role == GTP5G_ROLE_UPF
, only the source address was checked. This resulted in dropping downlink GTP packets when UE IP address IE was set.This bug makes freeGC's go-upf incompatible with some third party SMFs.
To reproduce the bug:
gtp5g-tunnel
to edit the downlink pdr by adding the UE IP address on the downlink PDR.When merged, this will allow
https://github.com/free5gc/smf/blob/d049a7aa51db56cb2fad33713e422deac77ee2eb/internal/context/datapath.go#L636-L640 to be uncommented on free5GC's SMF. This also probably resolves the related FR5GC-1029 issue (but I don't have access to issue details, so I'm not sure).