generate key block when setting the master secret.

This commit is contained in:
Vincent Hanquez 2011-12-20 07:41:15 +00:00
parent b3b7051129
commit 6f02bb8548
3 changed files with 2 additions and 2 deletions

View file

@ -39,7 +39,6 @@ processPacket (Record ProtocolType_Alert _ fragment) = return . Alert =<< return
processPacket (Record ProtocolType_ChangeCipherSpec _ fragment) = do
returnEither $ decodeChangeCipherSpec $ fragmentGetBytes fragment
switchRxEncryption
isClientContext >>= \cc -> when (not cc) setKeyBlock
return ChangeCipherSpec
processPacket (Record ProtocolType_Handshake ver fragment) = do

View file

@ -48,7 +48,7 @@ processRecord record@(Record ty _ fragment) = do
-}
postprocessRecord :: Record Ciphertext -> TLSSt (Record Ciphertext)
postprocessRecord record@(Record ProtocolType_ChangeCipherSpec _ _) =
switchTxEncryption >> isClientContext >>= \cc -> when cc setKeyBlock >> return record
switchTxEncryption >> return record
postprocessRecord record = return record
{-

View file

@ -223,6 +223,7 @@ setMasterSecret masterSecret = do
hasValidHandshake "master secret"
updateHandshake "master secret" (\hst -> hst { hstMasterSecret = Just masterSecret } )
setKeyBlock
return ()
setMasterSecretFromPre :: MonadState TLSState m => Bytes -> m ()