IBM Support

PI52845: SSL HANDSHAKE FAILS DUE TO A JAVA.LANG.ILLEGALARGUMENTEXCEPTION.

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Error occurs on the SSL of the SOAP request: WebContainer : 1
    sent close_notify to Proxy causes the error of their
    application.
    ----
    [10/23/15 22:34:23:053 JST] 0000001c TCPReadReques < read Exit
    [10/23/15 22:34:23:053 JST] 0000001c TCPReadReques > read(1,0)
    Entry
    [10/23/15 22:34:23:053 JST] 0000001c TCPReadReques 3 Number of
    bytes
    requested: 1 exceeds space remaining in the buffers provided: 0
    
    [10/23/15 22:34:23:053 JST] 0000001c HttpOutboundL 3 Closing
    this
    outbound link:
    com.ibm.ws.http.channel.outbound.impl.HttpOutboundLink@3c683c68
    
    com.ibm.ws.channel.framework.impl.OutboundVirtualConnectionImpl@
    
    3c4c3c4c
    [10/23/15 22:34:23:053 JST] 0000001c SystemOut O WebContainer :
    
    1,
    called closeOutbound()
    [10/23/15 22:34:23:053 JST] 0000001c SystemOut O WebContainer :
    
    1,
    closeOutboundInternal()
    [10/23/15 22:34:23:053 JST] 0000001c SystemOut O WebContainer :
    
    1, SEND
    TLSv1 ALERT: warning, description = close_notify
    [10/23/15 22:34:23:053 JST] 0000001c SystemOut O WebContainer :
    
    1,
    WRITE: TLSv1 Alert, length = 2
    ----
    This close_notify sent in the middle of SSL
    handshake.
    SSL handshake fails because of IllegalArgumentException inside
    channel code.
    Exception caught in oConn.connect
    attempt:java.lang.IllegalArgumentException: Number of bytes
    requested: 1 exceeds space remaining in the buffers provided: 0
    
    On this specific case the SSL handshake data seems to be a
    considerable amount. When we issue the read for to the
    TCPChannel the SSLChannel is not increasing the amount of the
    net buffer to accommodate the data.
    

Local fix

  • N/A
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  IBM WebSphere Application Server Version    *
    *                  7.0, 8.0, and 8.5.5 Full Profile and        *
    *                  Liberty Profile                             *
    ****************************************************************
    * PROBLEM DESCRIPTION: The SSL Handshake fails after an        *
    *                      java.lang.IllegalArgumentException is   *
    *                      thrown because the buffers do not       *
    *                      expand to accommodate the data.         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The SSL Handshake fails after an IllegalArgumentException is
    thrown because the buffers do not expand to accommodate the
    SSL handshake data. A First Failure Data Capture (FFDC) is
    generated during the SSL handshake. The FFDC is caused by the
    IllegalArgumentException as demonstrated below:
    [11/10/15 23:11:06:129 JST]     FFDC
    Exception:java.lang.Exception
    SourceId:com.ibm.ws.webservices.engine.transport.http.HttpOutbou
    ndChannelConnection.connect
    ProbeId:782
    Reporter:com.ibm.ws.webservices.engine.transport.http.HttpsOutbo
    undChannelConnection@3eaf3eaf
    java.lang.Exception: java.lang.IllegalArgumentException:
    Number of bytes requested: 1 exceeds space remaining in the
    buffers provided: 0
    at
    com.ibm.ws.webservices.engine.transport.http.HttpOutboundChannel
    Connection.connect(HttpOutboundChannelConnection.java:899)
    at
    com.ibm.ws.webservices.engine.transport.http.HttpsOutboundChanne
    lConnection.connect(HttpsOutboundChannelConnection.java:210)
    at
    com.ibm.ws.webservices.engine.transport.http.HTTPSender.invoke(H
    TTPSender.java:670)
    ...
    at
    com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContai
    ner.java:1592)
    at
    com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLin
    k.java:191)
    ...
    at
    com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequ
    est(HttpInboundLink.java:307)
    at
    com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complet
    e(HttpICLReadCallback.java:84)
    at
    com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureComp
    leted(AioReadCompletionListener.java:175)
    ...
    at
    com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at
    com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1662)
    Caused by: java.lang.IllegalArgumentException: Number of bytes
    requested: 1 exceeds space remaining in the buffers provided: 0
    at
    com.ibm.ws.tcp.channel.impl.TCPReadRequestContextImpl.checkForEr
    rors(TCPReadRequestContextImpl.java:284)
    at
    com.ibm.ws.tcp.channel.impl.TCPReadRequestContextImpl.read(TCPRe
    adRequestContextImpl.java:80)
    at
    com.ibm.ws.ssl.channel.impl.SSLUtils.handleHandshake(SSLUtils.ja
    va:955)
    at
    com.ibm.ws.ssl.channel.impl.SSLConnectionLink.readyOutbound(SSLC
    onnectionLink.java:777)
    at
    com.ibm.ws.ssl.channel.impl.SSLConnectionLink.connect(SSLConnect
    ionLink.java:995)
    at
    com.ibm.wsspi.channel.base.OutboundProtocolLink.connect(Outbound
    ProtocolLink.java:87)
    at
    com.ibm.ws.http.channel.outbound.impl.HttpOutboundLink.connect(H
    ttpOutboundLink.java:278)
    at
    com.ibm.ws.channel.framework.impl.OutboundVirtualConnectionImpl.
    connect(OutboundVirtualConnectionImpl.java:79)
    at
    com.ibm.ws.webservices.engine.transport.http.HttpOutboundChannel
    Connection.connect(HttpOutboundChannelConnection.java:881)
    ... 102 more
    

Problem conclusion

  • The SSL Channel was modified to expand the buffers as needed
    by the SSL handshake.
    
    The fix for this APAR is currently targeted for inclusion in
    fix packs 7.0.0.41, 8.0.0.13 and 8.5.5.9.  Please refer to the
    Recommended Updates page for delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI52845

  • Reported component name

    WEBSPHERE APP S

  • Reported component ID

    5724J0800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-11-19

  • Closed date

    2016-01-04

  • Last modified date

    2016-11-18

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WEBSPHERE APP S

  • Fixed component ID

    5724J0800

Applicable component levels

  • R700 PSY

       UP

  • R800 PSY

       UP

  • R850 PSY

       UP



Document information

More support for: WebSphere Application Server
General

Software version: 7.0

Reference #: PI52845

Modified date: 18 November 2016