]> git.ipfire.org Git - thirdparty/strongswan.git/commit
kernel-netlink: Allow reqid updates for policies again
authorTobias Brunner <tobias@strongswan.org>
Fri, 4 Feb 2022 08:37:37 +0000 (09:37 +0100)
committerTobias Brunner <tobias@strongswan.org>
Thu, 14 Apr 2022 16:42:01 +0000 (18:42 +0200)
commit96ecc39cd00f90175209606ebeabb8f7185afb1c
treed2a126fabf764bb76f8d75ed852f64966ab68c73
parent1b3af3e37d7ee00b1f43abd41127dd1126e0afd2
kernel-netlink: Allow reqid updates for policies again

This was originally added with 1551d8b13d14 ("kernel-netlink: reject
policy refcount if the reqid differs").  Since then we added code to
allocate constant reqids for the same TS, which pretty much avoids the
previous issues.

However, the reqid might have to be changed due to MOBIKE updates. And
because reqids are allocated for a complete set of traffic selectors and
not individual pairs, this can create a problem with drop policies as
those will use the old reqid (they are installed with the same priority,
reqid etc. to replace the actual IPsec policies), while unmodified
replacement policies will use the new one.  A similar issue exists for
CHILD_SAs with SELinux contexts as those all use duplicate policies (same
generic label) but can't all be updated concurrently.
src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c