mbox series

[RFC,ipsec,0/2] xfrm: Fix bugs in supporting stacked XFRM-I tunnels

Message ID 20220806044307.4007851-1-benedictwong@google.com (mailing list archive)
Headers show
Series xfrm: Fix bugs in supporting stacked XFRM-I tunnels | expand

Message

Benedict Wong Aug. 6, 2022, 4:43 a.m. UTC
This patch set fixes bugs that prevent stacked IPsec tunnels (via XFRM
interfaces) from receiving packets properly. The apparent cause of the issues
is that the inner tunnel’s policy checks fail to validate the outer tunnel’s
secpath entries (since it no longer has a reference to the outer tunnel
policies, and each call validates ALL secpath entries) prior to verifying the
inner tunnel’s. This patch set fixes this by caching the list of verified
secpath entries, and skipping them upon future validation runs.

PATCH 1/2 Ensures that policies for nested tunnel mode transforms are checked
before additional decapsulation. This ensures that entries in the secpath are
verified while the context (intermediate IP addresses, marks, etc) can be
appropriately matched.

PATCH 2/2 Skips template matching for previously verified entries in the
secpath. This ensures that each tunnel is responsible for incrementally
verifying the secpath entries associated with it.