aboutsummaryrefslogtreecommitdiffstats
path: root/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2015-09-16 16:44:09 +0200
committerTobias Brunner <tobias@strongswan.org>2015-11-10 16:42:52 +0100
commita6e0f14fd2bf8b23fbfd808acc595e97d5e23a49 (patch)
tree64b7633fa162732338093eedaa9f9a80bb81921b /src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c
parente2658390931608dd26390afec08e595a2feeed8b (diff)
downloadstrongswan-a6e0f14fd2bf8b23fbfd808acc595e97d5e23a49.tar.bz2
strongswan-a6e0f14fd2bf8b23fbfd808acc595e97d5e23a49.tar.xz
kernel-interface: Pass the same data to del_policy() that was passed to add_policy()
The additional data can be helpful to identify the exact policy to delete.
Diffstat (limited to 'src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c')
-rw-r--r--src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c b/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c
index a7a6f4641..db66de2bc 100644
--- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c
+++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c
@@ -2470,8 +2470,9 @@ METHOD(kernel_ipsec_t, query_policy, status_t,
}
METHOD(kernel_ipsec_t, del_policy, status_t,
- private_kernel_netlink_ipsec_t *this, traffic_selector_t *src_ts,
- traffic_selector_t *dst_ts, policy_dir_t direction, u_int32_t reqid,
+ private_kernel_netlink_ipsec_t *this, host_t *src, host_t *dst,
+ traffic_selector_t *src_ts, traffic_selector_t *dst_ts,
+ policy_dir_t direction, policy_type_t type, ipsec_sa_cfg_t *sa,
mark_t mark, policy_priority_t prio)
{
policy_entry_t *current, policy;
@@ -2496,7 +2497,7 @@ METHOD(kernel_ipsec_t, del_policy, status_t,
/* find the policy */
this->mutex->lock(this->mutex);
current = this->policies->get(this->policies, &policy);
- if (!current || current->reqid != reqid)
+ if (!current || current->reqid != sa->reqid)
{
if (mark.value)
{