free(this);
}
+
+static void log_sa(sa_entry_t *sa)
+{
+ DBG1(DBG_CFG, "=== sa [%u] b(i): %llu, b(o): %llu, p(i): %llu, p(o): %llu",
+ sa->id, sa->usage.bytes.received, sa->usage.bytes.sent, sa->usage.packets.received, sa->usage.packets.sent);
+}
+
/**
* Accounting message status types
*/
{
/* SA is gone, add its latest stats to the total for this IKE_SA
* and remove the cache entry */
+ DBG1(DBG_CFG, "=== cached SA is gone in cleanup");
+ log_sa(sa);
add_usage(&entry->usage, sa->usage);
array_remove_at(entry->cached, enumerator);
free(sa);
destroy_entry(entry);
return;
}
+ DBG1(DBG_CFG, "=== report cached in stop");
enumerator = array_create_enumerator(entry->cached);
while (enumerator->enumerate(enumerator, &sa))
{
+ log_sa(sa);
add_usage(&entry->usage, sa->usage);
}
enumerator->destroy(enumerator);
dst = xfrm2host(expire->state.family, &expire->state.id.daddr, 0);
if (dst)
{
+ if (expire->hard)
+ {
+ DBG1(DBG_KNL, "=== received hard expire for CHILD_SA 0x%08x/%H, p: %llu, b: %llu",
+ ntohl(spi), dst, expire->state.curlft.packets, expire->state.curlft.bytes);
+ }
hydra->kernel_interface->expire(hydra->kernel_interface, protocol,
spi, dst, expire->hard != 0);
dst->destroy(dst);