aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/plugins/tnccs_20/tnccs_20.c
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2012-09-09 05:13:13 +0200
committerAndreas Steffen <andreas.steffen@strongswan.org>2012-09-09 05:13:50 +0200
commit6f93927b6c6a0094cb81b7c560baf9b15d339ba5 (patch)
tree5d30fd31f96da80556407dbfc194c6abc6075a40 /src/libcharon/plugins/tnccs_20/tnccs_20.c
parentbcf8cdd556d23844e633c09f27e05c2395364c3d (diff)
downloadstrongswan-6f93927b6c6a0094cb81b7c560baf9b15d339ba5.tar.bz2
strongswan-6f93927b6c6a0094cb81b7c560baf9b15d339ba5.tar.xz
introduced sending of standard IETF Assessment Result PA-TNC attribute by IMVs
Diffstat (limited to 'src/libcharon/plugins/tnccs_20/tnccs_20.c')
-rw-r--r--src/libcharon/plugins/tnccs_20/tnccs_20.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/libcharon/plugins/tnccs_20/tnccs_20.c b/src/libcharon/plugins/tnccs_20/tnccs_20.c
index 26edcb576..f2e958cfb 100644
--- a/src/libcharon/plugins/tnccs_20/tnccs_20.c
+++ b/src/libcharon/plugins/tnccs_20/tnccs_20.c
@@ -398,6 +398,7 @@ static void build_retry_batch(private_tnccs_20_t *this)
if (this->is_server)
{
+ this->recs->clear_recommendation(this->recs);
tnc->imvs->notify_connection_change(tnc->imvs, this->connection_id,
TNC_CONNECTION_STATE_HANDSHAKE);
}
@@ -574,7 +575,6 @@ static void check_and_build_recommendation(private_tnccs_20_t *this)
this->messages->insert_last(this->messages, msg);
}
enumerator->destroy(enumerator);
- this->recs->clear_reasons(this->recs);
}
}
@@ -639,12 +639,17 @@ METHOD(tls_t, build, status_t,
this->request_handshake_retry = FALSE;
}
+ if (this->is_server && state == PB_STATE_SERVER_WORKING &&
+ this->recs->have_recommendation(this->recs, NULL, NULL))
+ {
+ check_and_build_recommendation(this);
+ }
+
if (this->batch_type == PB_BATCH_NONE)
{
if (this->is_server && state == PB_STATE_SERVER_WORKING)
{
- if (this->state_machine->get_empty_cdata(this->state_machine) ||
- this->recs->have_recommendation(this->recs, NULL, NULL))
+ if (this->state_machine->get_empty_cdata(this->state_machine))
{
check_and_build_recommendation(this);
}