diff options
author | Tobias Brunner <tobias@strongswan.org> | 2015-09-16 16:44:09 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2015-11-10 16:42:52 +0100 |
commit | a6e0f14fd2bf8b23fbfd808acc595e97d5e23a49 (patch) | |
tree | 64b7633fa162732338093eedaa9f9a80bb81921b /src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c | |
parent | e2658390931608dd26390afec08e595a2feeed8b (diff) | |
download | strongswan-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_pfkey/kernel_pfkey_ipsec.c')
-rw-r--r-- | src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c b/src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c index 0df6fb56b..107ee6ae2 100644 --- a/src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c +++ b/src/libhydra/plugins/kernel_pfkey/kernel_pfkey_ipsec.c @@ -2691,8 +2691,9 @@ METHOD(kernel_ipsec_t, query_policy, status_t, } METHOD(kernel_ipsec_t, del_policy, status_t, - private_kernel_pfkey_ipsec_t *this, traffic_selector_t *src_ts, - traffic_selector_t *dst_ts, policy_dir_t direction, u_int32_t reqid, + private_kernel_pfkey_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) { unsigned char request[PFKEY_BUFFER_SIZE]; @@ -2737,7 +2738,8 @@ METHOD(kernel_ipsec_t, del_policy, status_t, enumerator = policy->used_by->create_enumerator(policy->used_by); while (enumerator->enumerate(enumerator, (void**)&mapping)) { - if (reqid == mapping->sa->cfg.reqid && priority == mapping->priority) + if (sa->reqid == mapping->sa->cfg.reqid && + priority == mapping->priority) { to_remove = mapping; is_installed = first; |