From 95e1524a646701a22890ea5200797d68386b318b Mon Sep 17 00:00:00 2001 From: Andreas Steffen Date: Sat, 30 Aug 2014 13:33:59 +0200 Subject: [PATCH] Register the reception of the AIK attribute --- src/libimcv/plugins/imv_attestation/imv_attestation_build.c | 5 +++++ .../plugins/imv_attestation/imv_attestation_process.c | 1 + src/libimcv/plugins/imv_attestation/imv_attestation_state.h | 5 +++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/libimcv/plugins/imv_attestation/imv_attestation_build.c b/src/libimcv/plugins/imv_attestation/imv_attestation_build.c index 120fe3eaa..c39fe8d47 100644 --- a/src/libimcv/plugins/imv_attestation/imv_attestation_build.c +++ b/src/libimcv/plugins/imv_attestation/imv_attestation_build.c @@ -98,6 +98,11 @@ bool imv_attestation_build(imv_msg_t *out_msg, imv_state_t *state, uint32_t depth; bool first_component = TRUE; + if (!(state->get_action_flags(state) & IMV_ATTESTATION_AIK)) + { + break; + } + attestation_state->set_handshake_state(attestation_state, IMV_ATTESTATION_STATE_END); diff --git a/src/libimcv/plugins/imv_attestation/imv_attestation_process.c b/src/libimcv/plugins/imv_attestation/imv_attestation_process.c index 26a57d15c..311c19f98 100644 --- a/src/libimcv/plugins/imv_attestation/imv_attestation_process.c +++ b/src/libimcv/plugins/imv_attestation/imv_attestation_process.c @@ -218,6 +218,7 @@ bool imv_attestation_process(pa_tnc_attr_t *attr, imv_msg_t *out_msg, } session->get_session_id(session, NULL, &aik_id); pts->set_aik(pts, aik, aik_id); + state->set_action_flags(state, IMV_ATTESTATION_AIK); break; } case TCG_PTS_FILE_MEAS: diff --git a/src/libimcv/plugins/imv_attestation/imv_attestation_state.h b/src/libimcv/plugins/imv_attestation/imv_attestation_state.h index 5e6fae2ca..39a8eee9c 100644 --- a/src/libimcv/plugins/imv_attestation/imv_attestation_state.h +++ b/src/libimcv/plugins/imv_attestation/imv_attestation_state.h @@ -49,8 +49,9 @@ enum imv_attestation_flag_t { IMV_ATTESTATION_ATTR_REQ = (1<<3), IMV_ATTESTATION_ALGO = (1<<4), IMV_ATTESTATION_DH_NONCE = (1<<5), - IMV_ATTESTATION_FILE_MEAS = (1<<6), - IMV_ATTESTATION_REC = (1<<7) + IMV_ATTESTATION_AIK = (1<<6), + IMV_ATTESTATION_FILE_MEAS = (1<<7), + IMV_ATTESTATION_REC = (1<<8) }; /**