diff options
author | Tobias Brunner <tobias@strongswan.org> | 2016-06-09 11:46:06 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2016-06-09 11:46:06 +0200 |
commit | b3a3756abe91208ebf13c436a0f9a3dff5ac7f9c (patch) | |
tree | 949cc985e03e88b8597de698bfefcfaa97c46780 /src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c | |
parent | 50053250201b2d81383643b91164d95d6ca5c329 (diff) | |
parent | 1ba2b015fae7b9f37500e9aff515cd532e5a8781 (diff) | |
download | strongswan-b3a3756abe91208ebf13c436a0f9a3dff5ac7f9c.tar.bz2 strongswan-b3a3756abe91208ebf13c436a0f9a3dff5ac7f9c.tar.xz |
Merge branch 'ipsec-sa-cfg-equals'
Fixes the comparison of ipsec_sa_cfg_t instances in case there is
padding that's not initialized to zero.
Fixes #1503.
Diffstat (limited to 'src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c')
-rw-r--r-- | src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c b/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c index add4761f6..ab896a4ae 100644 --- a/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c +++ b/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c @@ -414,8 +414,9 @@ static bool ipsec_sa_equals(ipsec_sa_t *sa, ipsec_sa_t *other_sa) { return sa->src->ip_equals(sa->src, other_sa->src) && sa->dst->ip_equals(sa->dst, other_sa->dst) && - memeq(&sa->mark, &other_sa->mark, sizeof(mark_t)) && - memeq(&sa->cfg, &other_sa->cfg, sizeof(ipsec_sa_cfg_t)); + sa->mark.value == other_sa->mark.value && + sa->mark.mask == other_sa->mark.mask && + ipsec_sa_cfg_equals(&sa->cfg, &other_sa->cfg); } /** |