aboutsummaryrefslogtreecommitdiffstats
path: root/src/libhydra/kernel/kernel_interface.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2014-10-27 15:07:05 +0100
committerMartin Willi <martin@revosec.ch>2015-02-20 13:34:50 +0100
commitf81a9497483a7282c11adf5705d9ea3e83f6fffd (patch)
tree8414a9b7e0eec4ae56fdcfa1447bd1e7f432504d /src/libhydra/kernel/kernel_interface.c
parent971a91685da640363651e7a9a9edb9dfd94b7fe5 (diff)
downloadstrongswan-f81a9497483a7282c11adf5705d9ea3e83f6fffd.tar.bz2
strongswan-f81a9497483a7282c11adf5705d9ea3e83f6fffd.tar.xz
kernel-interface: Raise expires with a proto/SPI/dst tuple instead of reqid
Diffstat (limited to 'src/libhydra/kernel/kernel_interface.c')
-rw-r--r--src/libhydra/kernel/kernel_interface.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/libhydra/kernel/kernel_interface.c b/src/libhydra/kernel/kernel_interface.c
index 28821fc15..b5ade37d1 100644
--- a/src/libhydra/kernel/kernel_interface.c
+++ b/src/libhydra/kernel/kernel_interface.c
@@ -815,17 +815,18 @@ METHOD(kernel_interface_t, acquire, void,
}
METHOD(kernel_interface_t, expire, void,
- private_kernel_interface_t *this, u_int32_t reqid, u_int8_t protocol,
- u_int32_t spi, bool hard)
+ private_kernel_interface_t *this, u_int8_t protocol, u_int32_t spi,
+ host_t *dst, bool hard)
{
kernel_listener_t *listener;
enumerator_t *enumerator;
+
this->mutex->lock(this->mutex);
enumerator = this->listeners->create_enumerator(this->listeners);
while (enumerator->enumerate(enumerator, &listener))
{
if (listener->expire &&
- !listener->expire(listener, reqid, protocol, spi, hard))
+ !listener->expire(listener, protocol, spi, dst, hard))
{
this->listeners->remove_at(this->listeners, enumerator);
}