aboutsummaryrefslogtreecommitdiffstats
path: root/src/libipsec/ipsec_sa_mgr.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2013-09-30 15:47:27 +0200
committerMartin Willi <martin@revosec.ch>2013-10-11 10:23:18 +0200
commitd53002f088c588bb65215bb9a6e5100ba321738e (patch)
tree8d7cceebfa783449fbe3d164cb0cdd5c3e2cafcc /src/libipsec/ipsec_sa_mgr.c
parent12fdc2b16b43b8ea3098ff73a8b6cbdce542c74a (diff)
downloadstrongswan-d53002f088c588bb65215bb9a6e5100ba321738e.tar.bz2
strongswan-d53002f088c588bb65215bb9a6e5100ba321738e.tar.xz
libipsec: Enforce byte/packet lifetimes on SAs
Diffstat (limited to 'src/libipsec/ipsec_sa_mgr.c')
-rw-r--r--src/libipsec/ipsec_sa_mgr.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/libipsec/ipsec_sa_mgr.c b/src/libipsec/ipsec_sa_mgr.c
index 8da20cdc5..1db1776c0 100644
--- a/src/libipsec/ipsec_sa_mgr.c
+++ b/src/libipsec/ipsec_sa_mgr.c
@@ -299,12 +299,10 @@ static job_requeue_t sa_expired(ipsec_sa_expired_t *expired)
if (this->sas->find_first(this->sas, (void*)match_entry_by_ptr,
NULL, expired->entry) == SUCCESS)
{
- u_int32_t hard_offset = expired->hard_offset;
- ipsec_sa_t *sa = expired->entry->sa;
+ u_int32_t hard_offset;
- ipsec->events->expire(ipsec->events, sa->get_reqid(sa),
- sa->get_protocol(sa), sa->get_spi(sa),
- hard_offset == 0);
+ hard_offset = expired->hard_offset;
+ expired->entry->sa->expire(expired->entry->sa, hard_offset == 0);
if (hard_offset)
{ /* soft limit reached, schedule hard expire */
expired->hard_offset = 0;