diff options
Diffstat (limited to 'src/tls/msg_finished.cpp')
-rw-r--r-- | src/tls/msg_finished.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/tls/msg_finished.cpp b/src/tls/msg_finished.cpp index 390f05300..059ed8363 100644 --- a/src/tls/msg_finished.cpp +++ b/src/tls/msg_finished.cpp @@ -18,15 +18,15 @@ namespace { /* * Compute the verify_data */ -std::vector<byte> finished_compute_verify(const Handshake_State* state, +std::vector<byte> finished_compute_verify(const Handshake_State& state, Connection_Side side) { - if(state->version() == Protocol_Version::SSL_V3) + if(state.version() == Protocol_Version::SSL_V3) { const byte SSL_CLIENT_LABEL[] = { 0x43, 0x4C, 0x4E, 0x54 }; const byte SSL_SERVER_LABEL[] = { 0x53, 0x52, 0x56, 0x52 }; - Handshake_Hash hash = state->hash(); // don't modify state + Handshake_Hash hash = state.hash(); // don't modify state std::vector<byte> ssl3_finished; @@ -35,7 +35,7 @@ std::vector<byte> finished_compute_verify(const Handshake_State* state, else hash.update(SSL_SERVER_LABEL, sizeof(SSL_SERVER_LABEL)); - return unlock(hash.final_ssl3(state->session_keys().master_secret())); + return unlock(hash.final_ssl3(state.session_keys().master_secret())); } else { @@ -47,7 +47,7 @@ std::vector<byte> finished_compute_verify(const Handshake_State* state, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x66, 0x69, 0x6E, 0x69, 0x73, 0x68, 0x65, 0x64 }; - std::unique_ptr<KDF> prf(state->protocol_specific_prf()); + std::unique_ptr<KDF> prf(state.protocol_specific_prf()); std::vector<byte> input; if(side == CLIENT) @@ -55,9 +55,9 @@ std::vector<byte> finished_compute_verify(const Handshake_State* state, else input += std::make_pair(TLS_SERVER_LABEL, sizeof(TLS_SERVER_LABEL)); - input += state->hash().final(state->version(), state->ciphersuite().mac_algo()); + input += state.hash().final(state.version(), state.ciphersuite().mac_algo()); - return unlock(prf->derive_key(12, state->session_keys().master_secret(), input)); + return unlock(prf->derive_key(12, state.session_keys().master_secret(), input)); } } @@ -67,11 +67,11 @@ std::vector<byte> finished_compute_verify(const Handshake_State* state, * Create a new Finished message */ Finished::Finished(Handshake_IO& io, - Handshake_State* state, + Handshake_State& state, Connection_Side side) { m_verification_data = finished_compute_verify(state, side); - state->hash().update(io.send(*this)); + state.hash().update(io.send(*this)); } /* @@ -93,7 +93,7 @@ Finished::Finished(const std::vector<byte>& buf) /* * Verify a Finished message */ -bool Finished::verify(const Handshake_State* state, +bool Finished::verify(const Handshake_State& state, Connection_Side side) const { return (m_verification_data == finished_compute_verify(state, side)); |