[11u] RFR: 8213009: Refactoring existing SunMSCAPI classes
Lindenmaier, Goetz
goetz.lindenmaier at sap.com
Mon Dec 23 11:31:36 UTC 2019
Hi Martin,
Thanks for reviewing!
Best regards,
Goetz
> -----Original Message-----
> From: Doerr, Martin <martin.doerr at sap.com>
> Sent: Monday, December 23, 2019 12:28 PM
> To: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; jdk-updates-
> dev at openjdk.java.net
> Subject: RE: [11u] RFR: 8213009: Refactoring existing SunMSCAPI classes
>
> Hi Götz,
>
> src/jdk.crypto.mscapi/windows/classes/sun/security/mscapi/CKeyStore.java:
> The manually integrated Debug code for "java.security.debug" or "
> java.security.auth.debug" = "keystore" looks correct.
>
> src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp:
> I'd consider these changes trivial: comment insertion, variable renamed.
>
> Reviewed.
>
> Best regards,
> Martin
>
>
> > -----Original Message-----
> > From: jdk-updates-dev <jdk-updates-dev-bounces at openjdk.java.net> On
> > Behalf Of Lindenmaier, Goetz
> > Sent: Donnerstag, 19. Dezember 2019 11:59
> > To: jdk-updates-dev at openjdk.java.net
> > Subject: [11u] RFR: 8213009: Refactoring existing SunMSCAPI
> > classes
> >
> > Hi,
> >
> > I would like to downport this change for parity with 11.0.7-oracle.
> > It required some non-trivial resolves:
> > http://cr.openjdk.java.net/~goetz/wr19/8213009-refactor_mscapi-
> jdk11/01/
> >
> > Patching file
> >
> src/jdk.crypto.mscapi/windows/classes/sun/security/mscapi/KeyStore.java
> > failed. The file was deleted.
> > 11 differes a lot to the file deleted in 13. Most diffs are comments though,
> > except for this:
> >
> > @@ -47,6 +44,8 @@
> > import java.security.interfaces.RSAPrivateCrtKey;
> > import java.util.*;
> > +import sun.security.util.Debug;
> > +
> > /**
> > * Implementation of key store for Windows using the Microsoft Crypto
> API.
> > *
> > @@ -188,6 +187,7 @@
> > private static final String KEYSTORE_COMPATIBILITY_MODE_PROP =
> > "sun.security.mscapi.keyStoreCompatibilityMode";
> > private final boolean keyStoreCompatibilityMode;
> > + private static final Debug debug = Debug.getInstance("keystore");
> > /*
> > * The keystore entries.
> > @@ -731,6 +731,11 @@
> > } catch (KeyStoreException e) {
> > throw new IOException(e);
> > }
> > +
> > + if (debug != null) {
> > + debug.println("MSCAPI keystore load: entry count: " +
> > + entries.size());
> > + }
> > }
> > /**
> >
> > This code was introduced by "8218553: Enhance keystore load debug
> output"
> > which was downported to 11.0.5 and had to be modified.
> > I applied the coding to CKeyStore.java where it was in the original
> > patch of 8218553.
> >
> > In
> > patching file
> > src/jdk.crypto.mscapi/windows/native/libsunmscapi/security.cpp
> > Two hunks failed that were easy to resolve:
> >
> > --- security.cpp
> > +++ security.cpp
> > @@ -570,9 +586,8 @@
> > // Determine key type: RSA or DSA
> > DWORD dwData = CALG_RSA_KEYX;
> > DWORD dwSize = sizeof(DWORD);
> > - ::CryptGetKeyParam(hUserKey, KP_ALGID, (BYTE*)&dwData,
> > + ::CryptGetKeyParam(hUserKey, KP_ALGID, (BYTE*)&dwData,
> > //deprecated
> > &dwSize, NULL);
> > -
> > if ((dwData & ALG_TYPE_RSA) == ALG_TYPE_RSA)
> > {
> > // Generate RSA certificate chain and store into cert
> > @@ -966,7 +981,7 @@
> > NULL,
> > &hk,
> > hCryptProv,
> > - hKey,
> > + hCryptKey,
> > NULL,
> > 0));
> >
> > Best regards,
> > Goetz
> >
> >
More information about the jdk-updates-dev
mailing list