Re: [PATCH net v2] ipv6: seg6: clear IPv4 control block in End.DT4
Nicolas Dichtel <[email protected]> Tue, 4 Aug 2026 16:50:02 +0200
| Newsgroups | gmane.linux.kernel,gmane.linux.network |
|---|---|
| Organization | 6WIND |
| Message-ID | <[email protected]> |
Le 04/08/2026 à 11:46, David Lee a écrit : > From: Kyle Zeng <[email protected]> > > The End.DT4 input path decapsulates an IPv4 packet and sends it > directly to ip_route_input() and dst_input(). It therefore bypasses > ip_rcv_core(), which normally clears IPCB. The skb still contains > IP6CB data from the outer packet, and IPv6 extension-header offsets > overlap the IPv4 option fields. This can make __ip_options_echo() > copy beyond the allocation for saved options. > > Clear IPCB after validating the inner IPv4 header and preserve the > ingress interface as ip_rcv_core() does. This prevents outer IPv6 > metadata from being interpreted as inner IPv4 options. > > Fixes: 664d6f86868b ("seg6: add support for the SRv6 End.DT4 behavior") > Assisted-by: Codex:gpt-5.6-sol Codex:gpt-5.5-cyber > Signed-off-by: Kyle Zeng <[email protected]> > Co-developed-by: David Lee <[email protected]> > Signed-off-by: David Lee <[email protected]> > --- > Changes in v2: > - Restore Kyle Zeng as the patch author and correct the sign-off chain. You didn't answer my previous question: > End.DX4 also calls ip_route_input(). I guess the same problem exists. Am I > wrong?