Scanner IMV without workitems provides immediate recommendation, too

This commit is contained in:
Andreas Steffen
2013-07-08 17:53:05 +02:00
parent 43c912dc27
commit 34f894b6cc
@@ -442,21 +442,22 @@ METHOD(imv_agent_if_t, batch_ending, TNC_Result,
workitem->destroy(workitem); workitem->destroy(workitem);
} }
enumerator->destroy(enumerator); enumerator->destroy(enumerator);
}
/* finalized all workitems ? */ /* finalized all workitems ? */
if (session->get_workitem_count(session, imv_id) == 0) if (handshake_state == IMV_SCANNER_STATE_WORKITEMS &&
session->get_workitem_count(session, imv_id) == 0)
{ {
scanner_state->set_handshake_state(scanner_state,
IMV_SCANNER_STATE_END);
result = out_msg->send_assessment(out_msg); result = out_msg->send_assessment(out_msg);
out_msg->destroy(out_msg); out_msg->destroy(out_msg);
scanner_state->set_handshake_state(scanner_state, IMV_SCANNER_STATE_END);
if (result != TNC_RESULT_SUCCESS) if (result != TNC_RESULT_SUCCESS)
{ {
return result; return result;
} }
return this->agent->provide_recommendation(this->agent, state); return this->agent->provide_recommendation(this->agent, state);
} }
}
/* send non-empty PA-TNC message with excl flag not set */ /* send non-empty PA-TNC message with excl flag not set */
if (out_msg->get_attribute_count(out_msg)) if (out_msg->get_attribute_count(out_msg))