mirror of
https://github.com/open5gs/open5gs.git
synced 2026-10-19 09:44:04 +00:00
`ogs_pfcp_pdr_rule_find_by_packet()` compares `addr_len` bytes of the rule's address, where `addr_len` is the *packet's* length. The rule's own family flags (`ipv4_src`, `ipv4_dst`, `ipv6_src`, `ipv6_dst`) were never consulted, so the memcmp compared only the first four bytes of an IPv6 address against an IPv4 packet, and the first four bytes of an IPv4 address against an IPv6 packet. The SMF installs `permit out 58 from ff02::2/128 to assigned` for every session, so an IPv4 packet whose source begins ff 02 00 00 — 255.2.0.0 — matched that RS rule and was forwarded to the CP function's TEID instead of the N6 interface, dropping out of the default flow's usage statistics. Skip a rule whose address family differs from the packet's. Rules that name no address (both flags zero) still match either family. |
||
|---|---|---|
| .. | ||
| 310014 | ||
| af | ||
| app | ||
| attach | ||
| common | ||
| core | ||
| crypt | ||
| csfb | ||
| dns | ||
| eir | ||
| fuzzing | ||
| handover | ||
| non3gpp | ||
| registration | ||
| sctp | ||
| slice | ||
| transfer | ||
| unit | ||
| volte | ||
| vonr | ||
| meson.build | ||