kernel-pfkey: Remove latest IPsec SA mapping when deleting a policy
authorTobias Brunner <tobias@strongswan.org>
Wed, 10 Jul 2013 09:08:01 +0000 (11:08 +0200)
committerTobias Brunner <tobias@strongswan.org>
Wed, 17 Jul 2013 15:45:17 +0000 (17:45 +0200)
commitbbd9df25a9410fcde8cb594e5c789cad5506d5ed
treea2a715f22022775dba69684d3a98425f8e76f941
parenta9f14ada34554bc42b819f8196899a002bade27b
kernel-pfkey: Remove latest IPsec SA mapping when deleting a policy

If IPsec SAs are rekeyed due to an address change (e.g. because
update_sa is not supported) the exact same policy with the same reqid
will be installed, but with different addresses.  After the rekeying the
old SA and its policies are removed, using the first matching mapping
breaks the mapping between the policies and the new SA (at least on
FreeBSD, the Linux kernel might only use the reqid for this).  Using the
oldest matching SA is still an approximation but it solves the above
issue.
src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c