зеркало из https://github.com/mozilla/gecko-dev.git
detect ssl layer error doing start tls in imap code, add error to log, sr=mscott 311939
This commit is contained in:
Родитель
86007cf77f
Коммит
d0c30b715b
|
@ -1345,13 +1345,29 @@ PRBool nsImapProtocol::ProcessCurrentURL()
|
||||||
nsCOMPtr<nsISSLSocketControl> sslControl = do_QueryInterface(secInfo, &rv);
|
nsCOMPtr<nsISSLSocketControl> sslControl = do_QueryInterface(secInfo, &rv);
|
||||||
|
|
||||||
if (NS_SUCCEEDED(rv) && sslControl)
|
if (NS_SUCCEEDED(rv) && sslControl)
|
||||||
|
{
|
||||||
rv = sslControl->StartTLS();
|
rv = sslControl->StartTLS();
|
||||||
}
|
if (NS_SUCCEEDED(rv))
|
||||||
|
|
||||||
Capability();
|
Capability();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if (NS_FAILED(rv))
|
||||||
|
{
|
||||||
|
nsCAutoString logLine("STARTTLS negotiation failed. Error 0x");
|
||||||
|
logLine.AppendInt(rv, 16);
|
||||||
|
Log("ProcessCurrentURL", nsnull, logLine.get());
|
||||||
|
if (m_socketType == nsIMsgIncomingServer::alwaysUseTLS)
|
||||||
|
{
|
||||||
|
SetConnectionStatus(-1); // stop netlib
|
||||||
|
m_transport->Close(rv);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
else if (m_socketType == nsIMsgIncomingServer::alwaysUseTLS)
|
else if (m_socketType == nsIMsgIncomingServer::alwaysUseTLS)
|
||||||
return PR_FALSE;
|
{
|
||||||
|
SetConnectionStatus(-1); // stop netlib
|
||||||
|
m_transport->Close(rv);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
logonFailed = !TryToLogon();
|
logonFailed = !TryToLogon();
|
||||||
|
|
Загрузка…
Ссылка в новой задаче