APAR status
Closed as program error.
Error description
Error Message: java.lang.RuntimeException . Stack Trace: javax.net.ssl.SSLException: java.lang.RuntimeException: java.lang.CloneNotSupportedException at com.ibm.jsse2.k.a(k.java:32) at com.ibm.jsse2.av.a(av.java:688) at com.ibm.jsse2.av.a(av.java:379) at com.ibm.jsse2.av.a(av.java:346) at com.ibm.jsse2.av.a(av.java:815) at com.ibm.jsse2.av.startHandshake(av.java:431) at com.ibm.test.jsse2.test.HandshakeTests$16.check(HandshakeTests.j ava:889) at com.ibm.test.jsse2.common.SSLTests.createSockets(SSLTests.java:6 5) at com.ibm.test.jsse2.common.SSLTests.createConnection(SSLTests.jav a:29) at com.ibm.test.jsse2.test.HandshakeTests.SSLGPCC03(HandshakeTests. java:866) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor Impl.java:90) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod AccessorImpl.java:55) at java.lang.reflect.Method.invoke(Method.java:508) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(Fram eworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(Reflecti veCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(Framew orkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(Invo keMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4Cla ssRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4Cla ssRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288 ) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfte rs.java:27) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:27) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288 ) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBef ores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfte rs.java:27) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:38) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run (JUnitTestRunner.java:535) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.lau nch(JUnitTestRunner.java:1182) at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.mai n(JUnitTestRunner.java:1033) Caused by: java.lang.RuntimeException: java.lang.CloneNotSupportedException at com.ibm.crypto.ibmjcehybrid.provider.HybridMessageDigest.clone(H ybridMessageDigest.java:356) at com.ibm.crypto.ibmjcehybrid.provider.SHA3DigestHybrid.clone(SHA3 DigestHybrid.java:26) at java.security.MessageDigest$Delegate.clone(MessageDigest.java:57 1) at com.ibm.jsse2.af.a(af.java:30) at com.ibm.jsse2.x.b(x.java:25) at com.ibm.jsse2.F.a(F.java:844) at com.ibm.jsse2.F.a(F.java:922) at com.ibm.jsse2.D.r(D.java:444) at com.ibm.jsse2.D.a(D.java:399) at com.ibm.jsse2.av.a(av.java:1006) at com.ibm.jsse2.av.i(av.java:574) at com.ibm.jsse2.av.a(av.java:280) ... 37 more Caused by: java.lang.CloneNotSupportedException at com.ibm.crypto.pkcs11impl.provider.GeneralHashing.clone(GeneralH ashing.java:174) at java.security.MessageDigest$Delegate.clone(MessageDigest.java:57 1) at com.ibm.crypto.ibmjcehybrid.provider.HybridMessageDigest.clone(H ybridMessageDigest.java:300) ... 48 more . Only occurs when configured list of security providers in either the $JAVA_HOME/lib/security/java.securtiy file or within the application code has IBMJCEHYBRID configured prior to PKCS11Impl provider
Local fix
N/A
Problem summary
When a IBMJCEHYBRID message digests are cloned the underlying provider message digest from PKCS11Impl is also attempted to be cloned. PKCS11Impl correctly throws the CloneNotSupportedException exception as it does not support cloning. When IBMJCEHYBRID catches this failure from PKCS11Impl it incorrectly throws a RuntimeException instead of a CloneNotSupportedException exception.
Problem conclusion
After this update IBMJCEHYBRID correctly catches and throws the CloneNotSupportedException when using PKCS11Impl. IBMJCEHYBRID message digest clone operations will act similar to PKCS11Impl if PKCS11Impl ( or any other provider ) is placed into the java.security provider list that does not support cloning. . This APAR will be fixed in the following Java Releases: 8 SR5 FP35 (8.0.5.35) . Contact your IBM Product's Service Team for these Service Refreshes and Fix Packs. For those running stand-alone, information about the available Service Refreshes and Fix Packs can be found at: https://www.ibm.com/developerworks/java/jdk/
Temporary fix
Comments
APAR Information
APAR number
PH09935
Reported component name
JAVA Z/OS 64
Reported component ID
620700104
Reported release
800
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-03-19
Closed date
2019-03-29
Last modified date
2019-03-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
JAVA Z/OS 64
Fixed component ID
620700104
Applicable component levels
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"800","Edition":"","Line of Business":{"code":"LOB16","label":"Mainframe HW"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"800","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
09 August 2022