function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
MarkAMarkA 

SSLv3 handshake problems

We have some code written in .NET that connects to the API to get some data.  It fails more often than it works.  Through the use of wireshark we were able to see this: "SSLv3 Alert (Level: Fatal, Description: Handshare Failure)".  We have then tracked this down to the IPs on the Salesforce side.  We have noticed that 4 out of 5 Salesforce servers that are giving us this response.  Below is a list of IPs that work and fail.  Please advise us on how we can fix this problem.

96.43.145.27 – FAIL
96.43.146.124 – FAIL
96.43.144.27 - FAIL
96.43.146.251 – FAIL
 
96.43.144.47 – PASS
 
Gaurav KheterpalGaurav Kheterpal
Are these IPs whitelisted (https://help.salesforce.com/apex/HTViewSolution?id=000003652) in your org?

If my answer helps resolve your query, please mark it as the 'Best Answer' & upvote it to benefit others and improve the overall quality of Discussion Forums.

Gaurav Kheterpal
Certified Force.com Developer| Salesforce Mobile Evangelist| Developer Forums Moderator| Dreamforce Speaker


 
MarkAMarkA
I guess I forgot to mention this, but those IPs are salesforce servers.  So it seems like whichever IP that salesforce pushes the request to in their load balancing scheme, the response can be different.  For us we are only leaving on one IP.  If it works for one of your 5 servers, it should work for all.  It is not a whitelist issue.
MarkAMarkA
This is the error we are getting:

Testing Statement - a Exception has occurred: - Received at:1/26/2015 1:36:50 PM
** System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Received an unexpected EOF or 0 bytes from the transport stream.
at System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)
at System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
at System.Net.TlsStream.CallProcessAuthentication(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)
at System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)
at System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)
at System.Net.ConnectStream.WriteHeaders(Boolean async)
--- End of inner exception stack trace ---
at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at SforceService.query(String queryString)
at SalesForceConnector.SalesForceConnect.TestSFStatement(String szSFStatement, String szSFStatementKey) **
MarkAMarkA
This is the error with the handshake (example of 1 of the 4 servers responding bad)
Error with the SSL handshake

This is a screen shot showing that one of the five servers actually responds good.
good transaction