Hi All,

We are using geode-1.1.0 and for some reason we are getting SSLException from 
org.apache.geode.internal.tcp.TCPConduit#run after invocation of 
socketCreator.configureServerSSLSocket(othersock):

[severe 2017/07/21 22:49:02.993 UTC  <P2P Listener Thread 
tcp:///10.112.69.135:20001> tid=0x22] SSL Error in connecting to peer 
/10.112.69.135[36,932].
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
        at 
sun.security.ssl.InputRecord.handleUnknownRecord(InputRecord.java:710)
        at sun.security.ssl.InputRecord.read(InputRecord.java:527)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
        at 
sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
        at 
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
        at 
sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
        at 
com.gemstone.gemfire.internal.SocketCreator.configureServerSSLSocket(SocketCreator.java:1077)
        at com.gemstone.gemfire.internal.tcp.TCPConduit.run(TCPConduit.java:624)
        at java.lang.Thread.run(Thread.java:745)

As we don't have specific SSLException case in catch blocks it goes through 
generic

} catch (Exception e) {
  if (!stopped) {
...

case where it seems we are not doing anything for this specific error.


Afterwards if socket is not stopped and is closed, it tries to reopen it, 
otherwise just loops again. In 2nd case code is not performing socket.close(); 
On the other hand, it is not breaking from loop as well like it is done if 
SSLException was thrown from



othersock = socket.accept();




So just want to clarify if all this is expected behavior or there is some 
problem in this portion of code handling SSLException?

And 2nd query - should not we have socket timeout configured before the call of 
configureServerSSLSocket to avoid any blocking in TCPConduit.run()?

Thanks,
Vahram.

Reply via email to