IBM Support

IJ46474: JSSE NPE IN KRB5CLIENTKEYEXCHANGEPRODUCER.PRODUCE()

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Error Message: N/A
    .
    Stack Trace: Java callstack:
      java.lang.NullPointerException
      at
    com.ibm.jsse2.Krb5ClientKeyExchange$Krb5ClientKeyExchangeProduce
    r.produce(Krb5ClientKeyExchange.java:103)
      at
    com.ibm.jsse2.ClientKeyExchange$ClientKeyExchangeProducer.produc
    e(ClientKeyExchange.java:60)
      at com.ibm.jsse2.SSLHandshake.produce(SSLHandshake.java:415)
      at
    com.ibm.jsse2.ServerHelloDone$ServerHelloDoneConsumer.consume(Se
    rverHelloDone.java:177)
      at com.ibm.jsse2.SSLHandshake.consume(SSLHandshake.java:371)
      at
    com.ibm.jsse2.HandshakeContext.dispatch(HandshakeContext.java:67
    2)
      at
    com.ibm.jsse2.HandshakeContext.dispatch(HandshakeContext.java:65
    0)
      at
    com.ibm.jsse2.TransportContext.dispatch(TransportContext.java:19
    5)
      at com.ibm.jsse2.SSLTransport.decode(SSLTransport.java:149)
      at com.ibm.jsse2.SSLSocketImpl.decode(SSLSocketImpl.java:1319)
      at
    com.ibm.jsse2.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.ja
    va:1229)
      at
    com.ibm.jsse2.SSLSocketImpl.startHandshake(SSLSocketImpl.java:41
    3)
      at
    com.ibm.jsse2.SSLSocketImpl.ensureNegotiated(SSLSocketImpl.java:
    833)
      at
    com.ibm.jsse2.SSLSocketImpl.access$200(SSLSocketImpl.java:72)
      at
    com.ibm.jsse2.SSLSocketImpl$AppOutputStream.write(SSLSocketImpl.
    java:1134)
    .
    

Local fix

  • N/A
    

Problem summary

  • Krb5ClientKeyExchangeProducer.produce() makes a direct reference
    to the ClientHandshakeContext.requestedServerNames field, which
    can be null.
    The code should be modified to use the
    HandshakeContext.getRequestedServerNames() getter method which
    returns an empty list, instead of null.
    

Problem conclusion

  • Modified Krb5ClientKeyExchangeProducer.produce() to use the
    HandshakeContext.getRequestedServerNames() getter method which
    returns an empty list,
    instead of null, avoiding the NPE.
    The files affected by this APAR are: ibmjsseprovider2.jar (Java
    8: Non-FIPS: build_20230330--649, FIPS140-3:
    build_20230330--650).
    The associated Hursley RTC Problem Report is: PR149056.
    The associated Austin Git issue is: Issue #257 for JSSE.
    The associated Austin APAR issue is: N/A.
    .
    This APAR will be fixed in the following Releases:
    .
    IBM SDK, Java Technology Edition
       8    SR8 FP10  (8.0.8.10)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    maintenance can be found at:
               https://www.ibm.com/support/pages/java-sdk
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ46474

  • Reported component name

    SECURITY

  • Reported component ID

    620700125

  • Reported release

    270

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2023-04-19

  • Closed date

    2023-04-29

  • Last modified date

    2023-04-29

  • 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

    SECURITY

  • Fixed component ID

    620700125

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"270","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
30 April 2023