anchor.diff:  	       role = client} = State0) ->    
       case ssl_handshake:master_secret(Version, PremasterSecret, 
   				     ConnectionStates0, client) of
  -	{MasterSecret, ConnectionStates1} -> 
  +	{MasterSecret, ConnectionStates} ->
   	    Session = Session0#session{master_secret = MasterSecret},
  -	    State = State0#state{connection_states = ConnectionStates1,
  -				  session = Session},
  +	    State = State0#state{connection_states = ConnectionStates,
  +				 session = Session},
   	    client_certify_and_key_exchange(State);
   	#alert{} = Alert ->
   	    handle_own_alert(Alert, Version, certify, State0),
  
positive.code: format_reply(binary, _, _, Data) ->  
      Data;
  format_reply(list, Packet, _, Data)
    when Packet == http; Packet == {http, headers};  Packet == http_bin; Packet == {http_bin, headers}; Packet == httph;
         Packet == httph_bin->
      Data;
  format_reply(list, _,_, Data) ->
      binary_to_list(Data).
  
negative.code:        Algorithm == dhe_rsa;
         Algorithm == dh_anon ->
      Msg =  ssl_handshake:key_exchange(client, {dh, DhPubKey}),
      {BinMsg, ConnectionStates, Hashes} =
          encode_handshake(Msg, Version, ConnectionStates0, Hashes0),
      Transport:send(Socket, BinMsg),
      State#state{connection_states = ConnectionStates,
                  tls_handshake_hashes = Hashes}.
  
  rsa_key_exchange(PremasterSecret, PublicKeyInfo = {Algorithm, _, _})  
    when Algorithm == ?rsaEncryption;
  