<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi everyone,<div><br></div><div>I'm currently trying to find out, where could come from this error : </div><div><br></div><div><div>=ERROR REPORT==== 23-Jul-2012::11:03:56 ===</div><div>SSL: certify: ssl_record.erl:654:Fatal error: bad record mac</div></div><div><br></div><div>The SSL function where it is coming from is decipher: </div><div><br></div><div>---------------------------------- ssl_record.erl ---------------------------------------------</div><div><div><br></div><div>decipher(TLS=#ssl_tls{type=Type, version=Version, fragment=Fragment}, CS0) -></div><div>    SP = CS0#connection_state.security_parameters,</div><div>    BCA = SP#security_parameters.bulk_cipher_algorithm, </div><div>    HashSz = SP#security_parameters.hash_size,</div><div>    CipherS0 = CS0#connection_state.cipher_state,</div><div>    case ssl_cipher:decipher(BCA, HashSz, CipherS0, Fragment, Version) of</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>{T, Mac, CipherS1} -></div><div><span class="Apple-tab-span" style="white-space:pre">     </span>    CS1 = CS0#connection_state{cipher_state = CipherS1},</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>    TLength = size(T),</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>    {MacHash, CS2} = hash_and_bump_seqno(CS1, Type, Version, TLength, T),</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>    case is_correct_mac(Mac, MacHash) of</div><div><span class="Apple-tab-span" style="white-space:pre">           </span>true -><span class="Apple-tab-span" style="white-space:pre">          </span>  </div><div><span class="Apple-tab-span" style="white-space:pre">              </span>    {TLS#ssl_tls{fragment = T}, CS2};</div><div><span class="Apple-tab-span" style="white-space:pre">              </span>false -></div><div><span class="Apple-tab-span" style="white-space:pre">          </span>    ?ALERT_REC(?FATAL, ?BAD_RECORD_MAC)                      <b><i>%%<-------- HERE</i></b></div><div><span class="Apple-tab-span" style="white-space:pre">      </span>    end;</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>#alert{} = Alert -></div><div><span class="Apple-tab-span" style="white-space:pre">       </span>    Alert</div><div>    end.</div></div><div>----------------------------------------------------------------------------------------------------</div><div><br></div><div>I'm not really sure if this error is happening at handshake, or read.</div><div>The thing is, the error is <b>only</b> coming only from users connecting from a BlackBerry device (Can't know which OS version, I suppose it comes from rather old devices).</div><div><br></div><div>If there is nothing I can't do server-side, does anyone could point out how to handle the error, in order to close cleanly the connection ?</div><div><br></div><div>Regards,</div><div><br></div><div>Morgan.</div></body></html>