improved log output of functional component names
This commit is contained in:
@@ -448,19 +448,15 @@ bool imc_attestation_process(pa_tnc_attr_t *attr, linked_list_t *attr_list,
|
||||
attr_info = attr->get_value(attr);
|
||||
attr_cast = (tcg_pts_attr_req_func_comp_evid_t*)attr;
|
||||
|
||||
DBG1(DBG_IMC, "IMV requests evidence for %d functional components",
|
||||
DBG1(DBG_IMC, "evidence requested for %d functional components",
|
||||
attr_cast->get_count(attr_cast));
|
||||
|
||||
e = attr_cast->create_enumerator(attr_cast);
|
||||
while (e->enumerate(e, &flags, &depth, &name))
|
||||
{
|
||||
name->log(name, " ");
|
||||
negotiated_caps = pts->get_proto_caps(pts);
|
||||
|
||||
DBG1(DBG_IMC, "Requested Evidence flags: %d, depth: %d,"
|
||||
" vendor_id: %d, qualifier %d, name: %d",
|
||||
flags, depth, name->get_vendor_id(name),
|
||||
name->get_qualifier(name), name->get_name(name));
|
||||
|
||||
if (flags & PTS_REQ_FUNC_COMP_FLAG_TTC)
|
||||
{
|
||||
attr = ietf_attr_pa_tnc_error_create(PEN_TCG,
|
||||
@@ -499,12 +495,6 @@ bool imc_attestation_process(pa_tnc_attr_t *attr, linked_list_t *attr_list,
|
||||
"zero. Measuring top level component only.");
|
||||
return FALSE;
|
||||
}
|
||||
if (name->get_vendor_id(name) != PEN_ITA)
|
||||
{
|
||||
DBG1(DBG_IMC, "current version of Attestation IMC supports"
|
||||
"only functional component namings by ITA");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Check if Unknown or Wildcard was set for qualifier */
|
||||
if (name->get_qualifier(name) & PTS_QUALIFIER_WILDCARD)
|
||||
|
||||
@@ -210,11 +210,11 @@ bool imv_attestation_build(pa_tnc_msg_t *msg,
|
||||
{
|
||||
tcg_pts_attr_req_func_comp_evid_t *attr_cast;
|
||||
enumerator_t *enumerator;
|
||||
char flags[8], *platform_info;
|
||||
char *platform_info;
|
||||
pts_component_t *comp;
|
||||
pts_comp_func_name_t *comp_name;
|
||||
int vid, name, qualifier, type;
|
||||
enum_name_t *names, *types;
|
||||
int vid, name, qualifier;
|
||||
u_int8_t flags;
|
||||
bool first = TRUE;
|
||||
|
||||
attestation_state->set_handshake_state(attestation_state,
|
||||
@@ -236,28 +236,16 @@ bool imv_attestation_build(pa_tnc_msg_t *msg,
|
||||
{
|
||||
break;
|
||||
}
|
||||
DBG2(DBG_IMV, "evidence request by");
|
||||
while (enumerator->enumerate(enumerator, &vid, &name, &qualifier))
|
||||
{
|
||||
comp_name = pts_comp_func_name_create(vid, name, qualifier);
|
||||
comp_name->log(comp_name, " ");
|
||||
|
||||
names = pts_components->get_comp_func_names(pts_components, vid);
|
||||
types = pts_components->get_qualifier_type_names(pts_components, vid);
|
||||
if (names && types)
|
||||
{
|
||||
type = pts_components->get_qualifier(pts_components,
|
||||
comp_name, flags);
|
||||
DBG2(DBG_TNC, "%N component evidence request '%N' [%s] '%N'",
|
||||
pen_names, vid, names, name, flags, types, type);
|
||||
}
|
||||
else
|
||||
{
|
||||
DBG2(DBG_TNC, "0x%06x component evidence request 0x%08x 0x%02x",
|
||||
vid, name, qualifier);
|
||||
}
|
||||
comp = pts_components->create(pts_components, comp_name);
|
||||
if (!comp)
|
||||
{
|
||||
DBG2(DBG_TNC, " functional component not registered");
|
||||
DBG2(DBG_TNC, " not registered: removed from request");
|
||||
comp_name->destroy(comp_name);
|
||||
continue;
|
||||
}
|
||||
@@ -268,9 +256,10 @@ bool imv_attestation_build(pa_tnc_msg_t *msg,
|
||||
attr->set_noskip_flag(attr, TRUE);
|
||||
first = FALSE;
|
||||
}
|
||||
flags = comp->get_evidence_flags(comp);
|
||||
/* TODO check flags against negotiated_caps */
|
||||
attr_cast = (tcg_pts_attr_req_func_comp_evid_t *)attr;
|
||||
attr_cast->add_component(attr, comp->get_evidence_flags(comp),
|
||||
0, comp_name);
|
||||
attr_cast->add_component(attr_cast, flags, 0, comp_name);
|
||||
}
|
||||
enumerator->destroy(enumerator);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user