additional state waiting for the EvidenceFinal attribute response
authorAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 20 Dec 2011 06:04:21 +0000 (07:04 +0100)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 20 Dec 2011 06:04:21 +0000 (07:04 +0100)
src/libpts/plugins/imv_attestation/imv_attestation_build.c
src/libpts/plugins/imv_attestation/imv_attestation_state.h

index 0186eb1..4ad58a6 100644 (file)
@@ -279,9 +279,16 @@ bool imv_attestation_build(linked_list_t *attr_list,
                                attr = tcg_pts_attr_gen_attest_evid_create();
                                attr->set_noskip_flag(attr, TRUE);
                                attr_list->insert_last(attr_list, attr);
+
+                               attestation_state->set_handshake_state(attestation_state,
+                                                                               IMV_ATTESTATION_STATE_EVID_FINAL);
                        }
                        break;
                }
+               case IMV_ATTESTATION_STATE_EVID_FINAL:
+                       attestation_state->set_handshake_state(attestation_state,
+                                                                               IMV_ATTESTATION_STATE_END);
+                       break;
                case IMV_ATTESTATION_STATE_END:
                        break;
        }
index 7125438..0e2c04d 100644 (file)
@@ -39,6 +39,7 @@ enum imv_attestation_handshake_state_t {
        IMV_ATTESTATION_STATE_TPM_INIT,
        IMV_ATTESTATION_STATE_MEAS,
        IMV_ATTESTATION_STATE_COMP_EVID,
+       IMV_ATTESTATION_STATE_EVID_FINAL,
        IMV_ATTESTATION_STATE_END,
 };