X-Git-Url: https://git.strongswan.org/?p=strongswan.git;a=blobdiff_plain;f=src%2Flibimcv%2Fplugins%2Fimc_attestation%2Fimc_attestation_state.c;h=9ea722e95ecd84681e5d7ab1f9c6b218883e51a3;hp=19a8a1b6d525c4508d187f09f4df82ac41e7d737;hb=12c0a261cc39e3e92bcc707d70644560e59fb791;hpb=4a492a8d1fa35edf2acce370f68676dbb3212e2e diff --git a/src/libimcv/plugins/imc_attestation/imc_attestation_state.c b/src/libimcv/plugins/imc_attestation/imc_attestation_state.c index 19a8a1b..9ea722e 100644 --- a/src/libimcv/plugins/imc_attestation/imc_attestation_state.c +++ b/src/libimcv/plugins/imc_attestation/imc_attestation_state.c @@ -38,6 +38,11 @@ struct private_imc_attestation_state_t { * TNCCS connection state */ TNC_ConnectionState state; + + /** + * IMC Attestation handshake state + */ + imc_attestation_handshake_state_t handshake_state; }; @@ -59,6 +64,18 @@ METHOD(imc_state_t, destroy, void, free(this); } +METHOD(imc_attestation_state_t, get_handshake_state, imc_attestation_handshake_state_t, + private_imc_attestation_state_t *this) +{ + return this->handshake_state; +} + +METHOD(imc_attestation_state_t, set_handshake_state, void, + private_imc_attestation_state_t *this, imc_attestation_handshake_state_t new_state) +{ + this->handshake_state = new_state; +} + /** * Described in header. */ @@ -73,9 +90,12 @@ imc_state_t *imc_attestation_state_create(TNC_ConnectionID connection_id) .change_state = _change_state, .destroy = _destroy, }, + .get_handshake_state = _get_handshake_state, + .set_handshake_state = _set_handshake_state, }, .state = TNC_CONNECTION_STATE_CREATE, .connection_id = connection_id, + .handshake_state = IMC_ATTESTATION_STATE_INIT, ); return &this->public.interface;