SSL handshake in AsyncChannelWrapperSecure  fails with the 
"javax.net.ssl.SSLException: TODO" error.
Its failing because of BUFFER_OVERFLOW during handshake.

Caused by: javax.net.ssl.SSLException: TLS handshake returned an unexpected 
status [BUFFER_OVERFLOW]
        at 
org.apache.tomcat.websocket.AsyncChannelWrapperSecure$WebSocketSslHandshakeThread.checkResult(AsyncChannelWrapperSecure.java:430)

Seems like tomcat is not handling dynamic buffer resizing for BUFFER_OVERFLOW 
as recommended in 
http://docs.oracle.com/javase/7/docs/api/javax/net/ssl/SSLEngine.html. Its 
handled  and fixed for BUFFER_UNDERFLOW.

Temporarily, we increased buffer size of the temporary buffer to 64kb in  
/org/apache/tomcat/websocket/AsyncChannelWrapperSecure.java and now we are able 
to have successful handshake. Originally it was 8192 bytes.

We have raised issue (https://bz.apache.org/bugzilla/show_bug.cgi?id=60437) to 
handle BUFFER_OVERFLOW, and attached a sample client that can be used to 
reproduce the issue.


Thanks,
Dharmesh Patel


This message and the information contained herein is proprietary and 
confidential and subject to the Amdocs policy statement,
you may review at http://www.amdocs.com/email_disclaimer.asp

Reply via email to