diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2011-01-09 23:27:43 +0100 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2011-01-11 01:17:40 +0100 |
commit | 8a284e04542e1576dceca76828d91857d9f7f168 (patch) | |
tree | a1725347f1fe7aa1d4da399e6e6f1c5e51771324 /src | |
parent | 719c33b41a1f9fe9b2585df3e7aa804a760c361c (diff) | |
download | strongswan-8a284e04542e1576dceca76828d91857d9f7f168.tar.bz2 strongswan-8a284e04542e1576dceca76828d91857d9f7f168.tar.xz |
communicate DELETE state to IMCs and IMVs
Diffstat (limited to 'src')
-rw-r--r-- | src/libcharon/plugins/tnccs_11/tnccs_11.c | 10 | ||||
-rw-r--r-- | src/libcharon/plugins/tnccs_20/tnccs_20.c | 10 |
2 files changed, 20 insertions, 0 deletions
diff --git a/src/libcharon/plugins/tnccs_11/tnccs_11.c b/src/libcharon/plugins/tnccs_11/tnccs_11.c index b950bfa07..375f2cce2 100644 --- a/src/libcharon/plugins/tnccs_11/tnccs_11.c +++ b/src/libcharon/plugins/tnccs_11/tnccs_11.c @@ -395,6 +395,16 @@ METHOD(tls_t, get_eap_msk, chunk_t, METHOD(tls_t, destroy, void, private_tnccs_11_t *this) { + if (this->is_server) + { + charon->imvs->notify_connection_change(charon->imvs, + this->connection_id, TNC_CONNECTION_STATE_DELETE); + } + else + { + charon->imcs->notify_connection_change(charon->imcs, + this->connection_id, TNC_CONNECTION_STATE_DELETE); + } charon->tnccs->remove_connection(charon->tnccs, this->connection_id); this->mutex->destroy(this->mutex); DESTROY_IF(this->batch); diff --git a/src/libcharon/plugins/tnccs_20/tnccs_20.c b/src/libcharon/plugins/tnccs_20/tnccs_20.c index ede0e4a04..7d39dc43e 100644 --- a/src/libcharon/plugins/tnccs_20/tnccs_20.c +++ b/src/libcharon/plugins/tnccs_20/tnccs_20.c @@ -626,6 +626,16 @@ METHOD(tls_t, get_eap_msk, chunk_t, METHOD(tls_t, destroy, void, private_tnccs_20_t *this) { + if (this->is_server) + { + charon->imvs->notify_connection_change(charon->imvs, + this->connection_id, TNC_CONNECTION_STATE_DELETE); + } + else + { + charon->imcs->notify_connection_change(charon->imcs, + this->connection_id, TNC_CONNECTION_STATE_DELETE); + } charon->tnccs->remove_connection(charon->tnccs, this->connection_id); this->state_machine->destroy(this->state_machine); this->mutex->destroy(this->mutex); |