aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2007-02-01 15:23:31 +0000
committerMartin Willi <martin@strongswan.org>2007-02-01 15:23:31 +0000
commit42dcd01ffedd7e6bb5f3e0912abf26af8b335282 (patch)
tree017a6b686fd9f3c1a78820dc9acad0c0337e1831
parent280f5aeb47dd50dc01ac692803f6b5cc36eabec5 (diff)
downloadstrongswan-42dcd01ffedd7e6bb5f3e0912abf26af8b335282.tar.bz2
strongswan-42dcd01ffedd7e6bb5f3e0912abf26af8b335282.tar.xz
sending proper signal to the bus when detecting a dead peer
-rw-r--r--src/charon/sa/ike_sa.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/charon/sa/ike_sa.c b/src/charon/sa/ike_sa.c
index 225a9254a..62f18b5b1 100644
--- a/src/charon/sa/ike_sa.c
+++ b/src/charon/sa/ike_sa.c
@@ -498,6 +498,23 @@ static void dpd_detected(private_ike_sa_t *this)
}
child_sa->destroy(child_sa);
}
+
+ /* send a proper signal to brief interested bus listeners */
+ switch (this->state)
+ {
+ case IKE_CONNECTING:
+ SIG(IKE_UP_FAILED, "establishing IKE_SA failed, peer not responding");
+ break;
+ case IKE_REKEYING:
+ SIG(IKE_REKEY_FAILED, "rekeying IKE_SA failed, peer not responding");
+ break;
+ case IKE_DELETING:
+ SIG(IKE_DOWN_FAILED, "proper IKE_SA delete failed, peer not responding");
+ break;
+ default:
+ break;
+ }
+
DESTROY_IF(connection);
}