aboutsummaryrefslogtreecommitdiff
path: root/contrib/ntp/ntpdc/(public-mirror)
diff options
context:
space:
mode:
authorZhenlei Huang <zlei@FreeBSD.org>2025-08-08 10:17:51 +0000
committerZhenlei Huang <zlei@FreeBSD.org>2025-08-08 10:17:51 +0000
commitf4744b8acb932fbb3e48b71d31b7cd585566b668 (patch)
treeb4a6666551ff2a64a0ec6937b9253b6d6359dc1a /contrib/ntp/ntpdc/(public-mirror)
parent04d0dc4c0c65592a21225cff43f25e0a0da64eb9 (diff)
EtherIP: Fix passing the address family from if_bridge(4) to gif(4)HEADmain
Given IPPROTO_IPV4, IPPROTO_IPV6 and IPPROTO_ETHERIP have different protocol numbers, then it is perfect valid to tunnel IPv4, IPv6 and Ethernet traffic over IPv[46] by the same interface. Since gif(4) has already utilized the inbound csum_data field to carry address family, also teach if_bridge(4) to do that, rather than checking if a gif(4) interface is member of a if_bridge(4) interface. Without this fix, tunnel IPv[46] over IPv[46] will not work when the gif(4) interface is member of a if_bridge(4) interface, aka the EtherIP setup, as the address family passed from gif_output() will be overwritten with the wrong one AF_LINK by gif_transmit(), and end up with incorrectly encapsulated packets. PR: 227450 Reviewed by: kp Tested by: meta Fixes: 8a0308722372 gif(4): Assert that gif_output() isn't called for EtherIP MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D51682
Diffstat (limited to 'contrib/ntp/ntpdc/(public-mirror)')
0 files changed, 0 insertions, 0 deletions