JDK-7011238 : pit jdk7 b126 sqe test src/jhttp/http/JhttpClient4001 fails on solaris platform.
  • Type: Bug
  • Component: security-libs
  • Sub-Component: javax.crypto:pkcs11
  • Affected Version: 7
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris
  • CPU: sparc
  • Submitted: 2011-01-10
  • Updated: 2011-04-04
  • Resolved: 2011-04-04
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7
7Resolved
Related Reports
Duplicate :  
Description
pit jdk7 b126 sqe test src/jhttp/http/JhttpClient4001 fails on all solaris platform.
java -version
java version "1.7.0-internal"
Java(TM) SE Runtime Environment (build 1.7.0-internal-201101070208.ss145989.tl-p
it-2d-awt-swin-b00)
Java HotSpot(TM) Server VM (build 20.0-b05, mixed mode)
pit jdk7 b126
test source:
      /net/sqenfs-1/export1/comp/jsn/all_workspace/7_int/networking

src/jhttp/http/JhttpClient4001/JhttpClient4001.java  fails  on solairs
src/jhttp/http/JhttpClient8002/JhttpClient8002.java  fails  on solaris

both tests pass in linux and win platforms for pit jdk7 b126.

Note:  01. jdk7 promotion build b124 both tests pass on solaris/linux/win                 
----
       
how to reproduce:
================
server machine used :   jsn-sfv245-1.sfbay.sun.com                      
                SunOS jsn-sfv245-1 5.10 Generic_127127-11 sun4u sparc SUNW,Sun-Fire-V245

client machine used :   jsn-sfv215-3.sfbay.sun.com
                SunOS jsn-sfv215-3 5.11 snv_85 sun4u sparc SUNW,Sun-Fire-V215



login to server machine:jsn-sfv245-1.sfbay.sun.com
---------
test jdk path:
/net/sqenfs-1/export1/jdk/jsn/pit_7.0/solaris-sparc/j2sdk-image

01. set jdk path
02. cd to /net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp

      setenv CLASSPATH "`pwd`/commonClasses.jar:.`pwd`/tonga.jar"

03.cd  to jhttp
javac JhttpServer4001.java

04.java JhttpServer4001 testkeys jsn-sfv245-1

log in to client machine:jsn-sfv215-3.sfbay.sun.com
---------------
test jdk path:
/net/sqenfs-1/export1/jdk/jsn/pit_7.0/solaris-sparc/j2sdk-image

01. set jdk path
02. cd to /net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp
 
      setenv CLASSPATH "`pwd`/commonClasses.jar:.`pwd`/tonga.jar"

03.cd to jhttp/JhttpClient4001 
   javac   JhttpServer4001.java
 
04. java JhttpClient4001 jsn-sfv245-1 testkeys


==============test output server side===================================

jsn-sfv245-1:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp 104
% java JhttpServer4001 testkeys jsn-sfv245-1
Total tests for JhttpServer4001 : 1
testkeyFile = testkeys
lookForCmdString:
server started in JhttpServer4001Test01() of JhttpServer4001.java
@SYNC_DATA:ready@


--------------test output client side------------------------------

jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient4001 87 % java JhttpClient4001 jsn-sfv245-1 testkeys
I am in server input mode
testkeyFile = testkeys
Total tests for JhttpClient4001 : 1
server=jsn-sfv245-1
Exception thrown = javax.net.ssl.SSLException: java.lang.RuntimeException: Could
 not parse key values
JhttpClient4001Test01() JhttpClient4001.java Fail
javax.net.ssl.SSLException: java.lang.RuntimeException: Could not parse key valu
es
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1783)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1743)
        at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:172
6)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1293
)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1270
)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
523)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLCo
nnection.java:1087)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Htt
psURLConnectionImpl.java:250)
        at JhttpClient4001.JhttpClient4001Test01(JhttpClient4001.java:132)
        at JhttpClient4001.main(JhttpClient4001.java:81)
Caused by: java.lang.RuntimeException: Could not parse key values
        at sun.security.pkcs11.P11Key$P11ECPublicKey.fetchValues(P11Key.java:101
6)
        at sun.security.pkcs11.P11Key$P11ECPublicKey.getW(P11Key.java:1037)
        at sun.security.ssl.ECDHClientKeyExchange.<init>(ECDHClientKeyExchange.j
ava:57)
        at sun.security.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.ja
va:846)
        at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.jav
a:282)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:869)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:805)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:963)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.
java:1259)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1286
)
        ... 7 more
Caused by: java.io.IOException: extra data given to DerValue constructor
        at sun.security.util.DerValue.init(DerValue.java:384)
        at sun.security.util.DerValue.<init>(DerValue.java:294)
        at sun.security.pkcs11.P11Key$P11ECPublicKey.fetchValues(P11Key.java:100
5)
        ... 16 more
Pass count: 0
Fail count: 1
Test for JhttpClient4001.java Failed


----------------------------------------------------------




***********************************************
-------------test output JhttpServer8002----------------
jsn-sfv245-1:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp 108
% java JhttpServer8002 testkeys jsn-sfv245-1
Total tests for JhttpServer8002 : 1
testkeyFile = testkeys
lookForCmdString:
server started in JhttpServer8002Test01() of JhttpServer8002.java
@SYNC_DATA:ready@


----------------------------------


jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient8002 92 % java JhttpClient8002 jsn-sfv245-1 testkeys
I am in server input mode
testkeyFile = testkeys
Total tests for JhttpClient8002 : 1
Exception thrown = javax.net.ssl.SSLException: java.lang.RuntimeException: Could
 not parse key values
JhttpClient8002Test01() JhttpClient8002.java Fail
javax.net.ssl.SSLException: java.lang.RuntimeException: Could not parse key valu
es
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1783)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1743)
        at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:172
6)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1293
)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1270
)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
523)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLCo
nnection.java:1087)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Htt
psURLConnectionImpl.java:250)
        at JhttpClient8002.JhttpClient8002Test01(JhttpClient8002.java:131)
        at JhttpClient8002.main(JhttpClient8002.java:81)
Caused by: java.lang.RuntimeException: Could not parse key values
        at sun.security.pkcs11.P11Key$P11ECPublicKey.fetchValues(P11Key.java:101
6)
        at sun.security.pkcs11.P11Key$P11ECPublicKey.getW(P11Key.java:1037)
        at sun.security.ssl.ECDHClientKeyExchange.<init>(ECDHClientKeyExchange.j
ava:57)
        at sun.security.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.ja
va:846)
        at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.jav
a:282)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:869)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:805)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:963)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.
java:1259)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1286
)
        ... 7 more
Caused by: java.io.IOException: DerInputStream.getLength(): lengthTag=29, too bi
g.
        at sun.security.util.DerInputStream.getLength(DerInputStream.java:561)
        at sun.security.util.DerValue.init(DerValue.java:365)
        at sun.security.util.DerValue.<init>(DerValue.java:294)
        at sun.security.pkcs11.P11Key$P11ECPublicKey.fetchValues(P11Key.java:100
5)
        ... 16 more
Pass count: 0
Fail count: 1
Test for JhttpClient8002.java Failed
jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient8002 93 %

================================================

Note:   server and client machine interchanged . 
       test fails. output is different.


jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient4001 98 % uname -a
SunOS jsn-sfv215-3 5.11 snv_85 sun4u sparc SUNW,Sun-Fire-V215
jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient4001 99 % cd ..
jsn-sfv215-3:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp 100
% java JhttpServer4001 testkeys jsn-sfv215-3
Total tests for JhttpServer4001 : 1
testkeyFile = testkeys
lookForCmdString:
server started in JhttpServer4001Test01() of JhttpServer4001.java
@SYNC_DATA:ready@

-------------------------


jsn-sfv245-1:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient4001 239 % java JhttpClient4001 jsn-sfv215-3 testkeys
I am in server input mode
testkeyFile = testkeys
Total tests for JhttpClient4001 : 1
server=jsn-sfv215-3
Exception thrown = javax.net.ssl.SSLHandshakeException: Remote host closed conne
ction during handshake
JhttpClient4001Test01() JhttpClient4001.java Fail
javax.net.ssl.SSLHandshakeException: Remote host closed connection during handsh
ake
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:877)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.
java:1259)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1286
)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1270
)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
523)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect
(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLCo
nnection.java:1087)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Htt
psURLConnectionImpl.java:250)
        at JhttpClient4001.JhttpClient4001Test01(JhttpClient4001.java:132)
        at JhttpClient4001.main(JhttpClient4001.java:81)
Caused by: java.io.EOFException: SSL peer shut down incorrectly
        at sun.security.ssl.InputRecord.read(InputRecord.java:352)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:858)
        ... 9 more
Pass count: 0
Fail count: 1
Test for JhttpClient4001.java Failed
jsn-sfv245-1:/net/sqenfs-1/export1/comp/jsn/users/shantaram/testjhttp/jhttp/Jhtt
pClient4001 240 %
--------------------------------------------------------------------

Comments
EVALUATION Exception thrown when parsing DER value of EC public keys. Perhaps another one of the EC encoding problem? Re-assigning to Vinnie.
10-01-2011

EVALUATION It could be 6996365 which exposed this issue, as some of the EC suites are the higher priority suites. But the underlying issue needs to be fixed. ###@###.### may need to be involved.
10-01-2011