[PATCH ovpn net v2 0/5] ovpn: fix UDP route cache and endpoint handling
Ralf Lici <[email protected]> Wed, 29 Jul 2026 09:20:31 +0200
| Newsgroups | gmane.network.openvpn.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, This is v2 of a net series that fixes several related issues in ovpn's UDP endpoint and route-cache handling. The only change since v1 is the addition of memory barriers in the last patch when reading IPv6 route generations. Sashiko also noted that uninitialized stack memory in ss is used as a hash key for peer endpoints but this is already covered by Antonio's "ovpn: zero-initialize sockaddr before learning a floated endpoint" patch (https://lore.kernel.org/openvpn-devel/[email protected]/). This series preserves IPv6 scope IDs supplied through netlink, handles unspecified source addresses correctly, invalidates cached routes when mutable socket route inputs change, avoids in-place updates of RCU-published peer binds, and prevents stale IPv6 routes from being cached across FIB updates. Support for honoring UDP sockets bound to a device or local address will follow separately for net-next, after these route-cache fixes are available there. Cheers, Ralf Lici Mandelbit Srl --- Changes since v1 https://lore.kernel.org/openvpn-devel/[email protected] - Patch 5/5: add memory barriers around IPv6 FIB generation reads to avoid reordering on weakly ordered architectures (Sashiko). Ralf Lici (5): ovpn: preserve IPv6 scope id for netlink peer endpoints ovpn: skip UDP source validation for unspecified addresses ovpn: track UDP socket route key for peer dst cache ovpn: avoid in-place updates of peer bind local address ovpn: avoid caching stale IPv6 dst after FIB changes drivers/net/ovpn/netlink.c | 6 + drivers/net/ovpn/peer.c | 37 ++++--- drivers/net/ovpn/peer.h | 19 +++- drivers/net/ovpn/udp.c | 217 +++++++++++++++++++++++++++++++------ include/net/dst_cache.h | 13 +++ net/core/dst_cache.c | 16 ++- 6 files changed, 253 insertions(+), 55 deletions(-) -- 2.54.0