From valerie.peng at oracle.com Fri Apr 1 02:09:01 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Thu, 31 Mar 2011 19:09:01 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D945A51.30100@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> Message-ID: <4D9533BD.7040709@oracle.com> Max, I like this new approach of yours better. As for compatibility, you mentioned only one aspect, i.e. apps which put KerberosKeys inside a subject's private cred set. There is also a possibility that apps may read the subject's private credentials set for KerberosKeys that we used to put in and they won't find the keys anymore since it's the KeyTab objects that we put into the private cred set after this dynamic keytab support. Thoughts? Valerie On 03/31/11 03:41 AM, Weijun Wang wrote: > Hi Valerie > > Sorry for the late reply. I've considered some alternatives. > > A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, > we have a list of keys with different etypes as the private > credentials. If it's not resolved, we can only create one, whose > encoding and etype are both unresolved, and when it finally gets > resolved, it's resolved into multiple keys. Also, there was a simple > mapping between KerberosKey and EncryptionKey. The resolving process > is not always at the same time as the mapping (converting from one to > another) time, so it seems EncryptionKey might also needs to be > unresolved. > > Another solution is to revert back to my original KeyTab without an > intended user. This means several changes: > > In my latest version of ServiceCreds, there were multiple keys and > *one* keytab, now we also need multiple keytabs, because there might > be multiple keytabs in the subject's private credentials set and we > cannot tell which is for who. Therefore we collect all of them, when > the keys are needed at AP-REP time, we call getKeys() on all of them, > and return the combination. Hopefully there won't be two keys for the > same principal with same kvno and same etype. I regard that as an abuse. > > Currently when there is no serverPrincipal specified in the > Krb5AcceptCredential construction, we pick a KerberosKey from the > private credentials set and use the KerberosPrincipal info inside, and > then get all KerberosKeys for the same principal. We have never really > looked at any KerberosPrincipal objects in the subject's principal > set. I had tried to do the same to KeyTabs in my webrev.02. Now this > will have a big change: the first step is always finding a > KerberosPrincipal in the principal sets first. If serverPrincipal is > specified, we find a matched one, otherwise, we just pick one and use > it. And then, from the private credentials set, we fetch all > KerberosKeys for this principal and all KeyTabs. > > I think this is the correct way to go. Of course, for compatibility > reason, we assume there are third party codes that put KerberosKeys > inside a subject's private credentials set but hasn't put any > KerberosPrincipal there. Our Krb5LoginModule will never do it, but we > can accept it. > > Here is a partial webrev: > > http://cr.openjdk.java.net/~weijun/6894072/webrev.03 > > It only contains changes for Krb5Util.java, and hasn't included the > compatibility codes I mentioned above. As you can see, the KeyTab > objects are now retrieved by > > + sc.ktabs = SubjectComber.findMany( > + subj, null, null, KeyTab.class); > > so no principal name is used, and we retrive "many". > > If you think this is OK, I'll clean up other codes. One benefit is > that we don't need to update CCC with this solution. Yes we do > introduce new hashCode/equals/toString methods, but I think they do > not deserve a CCC. > > Thanks > Max > > > On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >> Max, >> >> Well, I find it a bit awkward that the KeyTab class has to have the >> KerberosPrincipal info which "intends" to use it. >> Have you considered a different approach like: >> Instead of adding the whole KeyTab object into the Subject's private >> credential set, we add a "to-be-resolved" KerberosKey object. When we >> need to use this kind of key, we'd check the associated KeyTab object to >> re-fresh its value if needed. This approach is conceptually closer to >> what we had and the changes aren't as dramatic and seems to meet the >> need required by 6894072. >> >> I'll continue to review your webrev, but just want to kick this idea off >> w/ you and see if it may work. >> Valerie >> >> On 03/23/11 02:00 AM, Weijun Wang wrote: >>> Hi Valerie >>> >>> Updated webrev: >>> >>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>> >>> Changes since last version: >>> >>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>> arguments, new getPrincipal() method. >>> >>> It can only be non-null now, but I didn't say anything in the spec. >>> I'm hoping it can be null in the future to support multiple service >>> principal in a single service. >>> >>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>> inside private credentials set. >>> >>> 3. Enhancement to SubjectComber: >>> a) Generics for find() and findMany() >>> b) findAux() now support Krb5AcceptCredential >>> >>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>> getInstance(), there is still a field inside to save the value. >>> >>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>> Changes to the javadoc of javax..KeyTab.getKeys(). >>> >>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal after >>> JAAS commit. >>> >>> This time I'd like to first make sure implementation is correct, and >>> then I'll update the CCC. Is this OK? >>> >>> Thanks >>> Max >> From joe.darcy at oracle.com Fri Apr 1 02:11:37 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Fri, 01 Apr 2011 02:11:37 +0000 Subject: hg: jdk7/tl/jdk: 7005628: Clarify NPE behavior of Throwable.addSuppressed(null) Message-ID: <20110401021209.1D8834769E@hg.openjdk.java.net> Changeset: 856cc9e97aea Author: darcy Date: 2011-03-31 19:09 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/856cc9e97aea 7005628: Clarify NPE behavior of Throwable.addSuppressed(null) Reviewed-by: dholmes, mchung, jjb ! src/share/classes/java/lang/ArithmeticException.java ! src/share/classes/java/lang/NullPointerException.java ! src/share/classes/java/lang/OutOfMemoryError.java ! src/share/classes/java/lang/Throwable.java ! test/java/lang/Throwable/SuppressedExceptions.java From weijun.wang at oracle.com Fri Apr 1 02:23:08 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Fri, 01 Apr 2011 10:23:08 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D9533BD.7040709@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> Message-ID: <4D95370C.6090107@oracle.com> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: > Max, > > I like this new approach of yours better. > As for compatibility, you mentioned only one aspect, i.e. apps which put > KerberosKeys inside a subject's private cred set. > There is also a possibility that apps may read the subject's private > credentials set for KerberosKeys that we used to put in and they won't > find the keys anymore since it's the KeyTab objects that we put into the > private cred set after this dynamic keytab support. Thoughts? No, I haven't thought about it. We can put a snapshot of keys there at the beginning and refresh them whenever a getKeys() is called. This should be harmless because we don't really use the keys if keytab objects (not keytab files) exist. I can do that. Thanks Max > > Valerie > > > On 03/31/11 03:41 AM, Weijun Wang wrote: >> Hi Valerie >> >> Sorry for the late reply. I've considered some alternatives. >> >> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >> we have a list of keys with different etypes as the private >> credentials. If it's not resolved, we can only create one, whose >> encoding and etype are both unresolved, and when it finally gets >> resolved, it's resolved into multiple keys. Also, there was a simple >> mapping between KerberosKey and EncryptionKey. The resolving process >> is not always at the same time as the mapping (converting from one to >> another) time, so it seems EncryptionKey might also needs to be >> unresolved. >> >> Another solution is to revert back to my original KeyTab without an >> intended user. This means several changes: >> >> In my latest version of ServiceCreds, there were multiple keys and >> *one* keytab, now we also need multiple keytabs, because there might >> be multiple keytabs in the subject's private credentials set and we >> cannot tell which is for who. Therefore we collect all of them, when >> the keys are needed at AP-REP time, we call getKeys() on all of them, >> and return the combination. Hopefully there won't be two keys for the >> same principal with same kvno and same etype. I regard that as an abuse. >> >> Currently when there is no serverPrincipal specified in the >> Krb5AcceptCredential construction, we pick a KerberosKey from the >> private credentials set and use the KerberosPrincipal info inside, and >> then get all KerberosKeys for the same principal. We have never really >> looked at any KerberosPrincipal objects in the subject's principal >> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >> will have a big change: the first step is always finding a >> KerberosPrincipal in the principal sets first. If serverPrincipal is >> specified, we find a matched one, otherwise, we just pick one and use >> it. And then, from the private credentials set, we fetch all >> KerberosKeys for this principal and all KeyTabs. >> >> I think this is the correct way to go. Of course, for compatibility >> reason, we assume there are third party codes that put KerberosKeys >> inside a subject's private credentials set but hasn't put any >> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >> can accept it. >> >> Here is a partial webrev: >> >> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >> >> It only contains changes for Krb5Util.java, and hasn't included the >> compatibility codes I mentioned above. As you can see, the KeyTab >> objects are now retrieved by >> >> + sc.ktabs = SubjectComber.findMany( >> + subj, null, null, KeyTab.class); >> >> so no principal name is used, and we retrive "many". >> >> If you think this is OK, I'll clean up other codes. One benefit is >> that we don't need to update CCC with this solution. Yes we do >> introduce new hashCode/equals/toString methods, but I think they do >> not deserve a CCC. >> >> Thanks >> Max >> >> >> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>> Max, >>> >>> Well, I find it a bit awkward that the KeyTab class has to have the >>> KerberosPrincipal info which "intends" to use it. >>> Have you considered a different approach like: >>> Instead of adding the whole KeyTab object into the Subject's private >>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>> need to use this kind of key, we'd check the associated KeyTab object to >>> re-fresh its value if needed. This approach is conceptually closer to >>> what we had and the changes aren't as dramatic and seems to meet the >>> need required by 6894072. >>> >>> I'll continue to review your webrev, but just want to kick this idea off >>> w/ you and see if it may work. >>> Valerie >>> >>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>> Hi Valerie >>>> >>>> Updated webrev: >>>> >>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>> >>>> Changes since last version: >>>> >>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>> arguments, new getPrincipal() method. >>>> >>>> It can only be non-null now, but I didn't say anything in the spec. >>>> I'm hoping it can be null in the future to support multiple service >>>> principal in a single service. >>>> >>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>> inside private credentials set. >>>> >>>> 3. Enhancement to SubjectComber: >>>> a) Generics for find() and findMany() >>>> b) findAux() now support Krb5AcceptCredential >>>> >>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>> getInstance(), there is still a field inside to save the value. >>>> >>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>> >>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal after >>>> JAAS commit. >>>> >>>> This time I'd like to first make sure implementation is correct, and >>>> then I'll update the CCC. Is this OK? >>>> >>>> Thanks >>>> Max >>> > From weijun.wang at oracle.com Fri Apr 1 04:38:07 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Fri, 01 Apr 2011 12:38:07 +0800 Subject: code review request: 7030180: AES 128/256 decrypt exception Message-ID: <4D9556AF.4060206@oracle.com> Hi Valerie http://cr.openjdk.java.net/~weijun/7030180/webrev.00/ A bug in MIT krb5 1.8 triggers this exception (read evaluation below). They will fix it in 1.8.4 and 1.9. At the mean time, we can check both the session key and the subkey on the acceptor side. I think this does not deserve a backport to 6u releases. Your opinion? Thanks Max -------- Original Message -------- *Change Request ID*: 7030180 *Synopsis*: AES 128/256 decrypt exception === *Description* ============================================================ I tried to use SPNEGO. When I use DES3 It works for a principal. When I try to use AES 128/256 It crashes. ERROR MESSAGES/STACK TRACES THAT OCCUR : GSSException: Failure unspecified at GSS-API level (Mechanism level: Checksum failed) at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:741) .... === *Evaluation* ============================================================= The customer is using krb5 1.8 on the client side. There is a known issue that KRB-CRED inside AP-REQ is encrypted with the authenticator subkey instead of the ticket session key: http://krbdev.mit.edu/rt/Ticket/Display.html?id=6768&user=guest&pass=guest At the same time, we can try both the session key and the sub key in Java, this is also what MIT and Heimdal have done for years. From weijun.wang at oracle.com Fri Apr 1 09:14:25 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Fri, 01 Apr 2011 17:14:25 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D95370C.6090107@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> Message-ID: <4D959771.50403@oracle.com> Hi Valerie Updated again: http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ 1. KeyTab can be used by anyone 2. The two compatibility support As for adding keys (from keytab) into private credentials set, I haven't cleaned up old ones. Since it's a set, this means if old keys are removed from the keytab, they stay in the set. The set is never really used by our code, so I think it's harmless. I really don't know how to clean up. Remove all keys for this principal? But we do this because we want to keep compatibility and worry about people directly manipulating the set, and I cannot predict what they will do with the set. Thanks Max On 04/01/2011 10:23 AM, Weijun Wang wrote: > > > On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >> Max, >> >> I like this new approach of yours better. >> As for compatibility, you mentioned only one aspect, i.e. apps which put >> KerberosKeys inside a subject's private cred set. >> There is also a possibility that apps may read the subject's private >> credentials set for KerberosKeys that we used to put in and they won't >> find the keys anymore since it's the KeyTab objects that we put into the >> private cred set after this dynamic keytab support. Thoughts? > > No, I haven't thought about it. > > We can put a snapshot of keys there at the beginning and refresh them > whenever a getKeys() is called. This should be harmless because we don't > really use the keys if keytab objects (not keytab files) exist. I can do > that. > > Thanks > Max > > >> >> Valerie >> >> >> On 03/31/11 03:41 AM, Weijun Wang wrote: >>> Hi Valerie >>> >>> Sorry for the late reply. I've considered some alternatives. >>> >>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>> we have a list of keys with different etypes as the private >>> credentials. If it's not resolved, we can only create one, whose >>> encoding and etype are both unresolved, and when it finally gets >>> resolved, it's resolved into multiple keys. Also, there was a simple >>> mapping between KerberosKey and EncryptionKey. The resolving process >>> is not always at the same time as the mapping (converting from one to >>> another) time, so it seems EncryptionKey might also needs to be >>> unresolved. >>> >>> Another solution is to revert back to my original KeyTab without an >>> intended user. This means several changes: >>> >>> In my latest version of ServiceCreds, there were multiple keys and >>> *one* keytab, now we also need multiple keytabs, because there might >>> be multiple keytabs in the subject's private credentials set and we >>> cannot tell which is for who. Therefore we collect all of them, when >>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>> and return the combination. Hopefully there won't be two keys for the >>> same principal with same kvno and same etype. I regard that as an abuse. >>> >>> Currently when there is no serverPrincipal specified in the >>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>> private credentials set and use the KerberosPrincipal info inside, and >>> then get all KerberosKeys for the same principal. We have never really >>> looked at any KerberosPrincipal objects in the subject's principal >>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>> will have a big change: the first step is always finding a >>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>> specified, we find a matched one, otherwise, we just pick one and use >>> it. And then, from the private credentials set, we fetch all >>> KerberosKeys for this principal and all KeyTabs. >>> >>> I think this is the correct way to go. Of course, for compatibility >>> reason, we assume there are third party codes that put KerberosKeys >>> inside a subject's private credentials set but hasn't put any >>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>> can accept it. >>> >>> Here is a partial webrev: >>> >>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>> >>> It only contains changes for Krb5Util.java, and hasn't included the >>> compatibility codes I mentioned above. As you can see, the KeyTab >>> objects are now retrieved by >>> >>> + sc.ktabs = SubjectComber.findMany( >>> + subj, null, null, KeyTab.class); >>> >>> so no principal name is used, and we retrive "many". >>> >>> If you think this is OK, I'll clean up other codes. One benefit is >>> that we don't need to update CCC with this solution. Yes we do >>> introduce new hashCode/equals/toString methods, but I think they do >>> not deserve a CCC. >>> >>> Thanks >>> Max >>> >>> >>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>> Max, >>>> >>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>> KerberosPrincipal info which "intends" to use it. >>>> Have you considered a different approach like: >>>> Instead of adding the whole KeyTab object into the Subject's private >>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>> need to use this kind of key, we'd check the associated KeyTab >>>> object to >>>> re-fresh its value if needed. This approach is conceptually closer to >>>> what we had and the changes aren't as dramatic and seems to meet the >>>> need required by 6894072. >>>> >>>> I'll continue to review your webrev, but just want to kick this idea >>>> off >>>> w/ you and see if it may work. >>>> Valerie >>>> >>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>> Hi Valerie >>>>> >>>>> Updated webrev: >>>>> >>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>> >>>>> Changes since last version: >>>>> >>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>> arguments, new getPrincipal() method. >>>>> >>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>> I'm hoping it can be null in the future to support multiple service >>>>> principal in a single service. >>>>> >>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>> inside private credentials set. >>>>> >>>>> 3. Enhancement to SubjectComber: >>>>> a) Generics for find() and findMany() >>>>> b) findAux() now support Krb5AcceptCredential >>>>> >>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>> getInstance(), there is still a field inside to save the value. >>>>> >>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>> >>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal after >>>>> JAAS commit. >>>>> >>>>> This time I'd like to first make sure implementation is correct, and >>>>> then I'll update the CCC. Is this OK? >>>>> >>>>> Thanks >>>>> Max >>>> >> From maurizio.cimadamore at oracle.com Fri Apr 1 11:31:32 2011 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Fri, 01 Apr 2011 11:31:32 +0000 Subject: hg: jdk7/tl/langtools: 7032633: javac -Xlint:all warns about flush() within try on an auto-closeable resource Message-ID: <20110401113139.6DBBC476C4@hg.openjdk.java.net> Changeset: b945b846c979 Author: mcimadamore Date: 2011-04-01 12:30 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/b945b846c979 7032633: javac -Xlint:all warns about flush() within try on an auto-closeable resource Summary: missing name check before calling MethodSymbol.overrides causes wrong warnings to be issued Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/TryWithResources/T7032633.java From sean.mullan at oracle.com Fri Apr 1 16:54:47 2011 From: sean.mullan at oracle.com (Sean Mullan) Date: Fri, 01 Apr 2011 12:54:47 -0400 Subject: importing a local CA certificate into cacerts keystore In-Reply-To: <468F3A07-6FF7-4D35-909A-851E99FF61C9@yoderhome.com> References: <468F3A07-6FF7-4D35-909A-851E99FF61C9@yoderhome.com> Message-ID: <4D960357.8090005@oracle.com> Moving to security-dev at openjdk.java.net On 3/31/11 4:11 PM, Kurt Yoder wrote: > Hello all, > > I'm trying to run Apache Archiva using OpenJDK, and authenticating off SSL-protected LDAP. This is throwing an exception "sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target". Since my LDAP server's SSL is signed using my local CA certificate, I presume this error effectively is telling me I need to import my local CA certificate into the OpenJDK keystore. > > > Following this reasoning I am attempting to import my root CA, but I can't figure out how to do it. I tried: > > keytool -importcert -file /etc/ssl/certs/my-ca.pem -keystore /etc/ssl/certs/java/cacerts > > which gives me: > > keytool error: java.lang.Exception: Input not an X.509 certificate This means it can't decode the certificate for some reason. Try the following: keytool -v -printcert -file /etc/ssl/certs/my-ca.pem which should dump a trace of the exception with more info. --Sean > > > I also tried: > > keytool -importkeystore -v -srckeystore /etc/ssl/certs/my-ca.pem -destkeystore /etc/ssl/certs/java/cacerts > > but this gives me > > keytool error: java.io.IOException: Invalid keystore format > java.io.IOException: Invalid keystore format > at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:650) > at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:55) > at java.security.KeyStore.load(KeyStore.java:1201) > at sun.security.tools.KeyTool.loadSourceKeyStore(KeyTool.java:1560) > at sun.security.tools.KeyTool.doImportKeyStore(KeyTool.java:1603) > at sun.security.tools.KeyTool.doCommands(KeyTool.java:881) > at sun.security.tools.KeyTool.run(KeyTool.java:194) > at sun.security.tools.KeyTool.main(KeyTool.java:188) > > > Searching on the internet, I see something that *looks* like what I want, but doesn't appear to work with openjdk's keytool: > > http://www.grok2.com/blog/2010/09/14/keytool-jarsigner-oddity-on-ubuntu-with-openjdk-version-6/ > > eg "keytool -import -alias myCA -file my-ca.pem" > > > So does anyone have suggestions? Am I doing it wrong? From lana.steuck at oracle.com Fri Apr 1 17:19:03 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:19:03 +0000 Subject: hg: jdk7/tl: 7 new changesets Message-ID: <20110401171904.34E14476D5@hg.openjdk.java.net> Changeset: b87875789600 Author: ohair Date: 2011-03-22 08:15 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/b87875789600 6896934: README: Document how the drop source bundles work for jaxp/jaxws 6896978: README: Updates to openjdk README-builds.html 6903517: README: OpenJDK additions needed - cygwin issues Reviewed-by: dholmes ! README ! README-builds.html Changeset: 783bd02b4ab4 Author: cl Date: 2011-03-23 17:43 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/783bd02b4ab4 Merge Changeset: e97f037142f5 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/e97f037142f5 Added tag jdk7-b135 for changeset 783bd02b4ab4 ! .hgtags Changeset: dada8003df87 Author: dholmes Date: 2011-03-28 00:50 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/rev/dada8003df87 7030131: Update README-builds.html to cover changes introduced by SE-Embedded integration Reviewed-by: ohair ! README-builds.html Changeset: 2fe76e73adaa Author: ohair Date: 2011-03-29 18:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/2fe76e73adaa Merge Changeset: 7654afc6a29e Author: schien Date: 2011-03-31 18:13 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/7654afc6a29e Added tag jdk7-b136 for changeset 2fe76e73adaa ! .hgtags Changeset: 1527f425ee22 Author: lana Date: 2011-03-31 21:49 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/1527f425ee22 Merge From lana.steuck at oracle.com Fri Apr 1 17:18:58 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:18:58 +0000 Subject: hg: jdk7/tl/corba: 2 new changesets Message-ID: <20110401171904.26019476D4@hg.openjdk.java.net> Changeset: 48ef0c712e7c Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/48ef0c712e7c Added tag jdk7-b135 for changeset e0b72ae5dc5e ! .hgtags Changeset: a66c01d8bf89 Author: schien Date: 2011-03-31 18:13 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/a66c01d8bf89 Added tag jdk7-b136 for changeset 48ef0c712e7c ! .hgtags From lana.steuck at oracle.com Fri Apr 1 17:19:06 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:19:06 +0000 Subject: hg: jdk7/tl/jaxws: 2 new changesets Message-ID: <20110401171907.0639D476D6@hg.openjdk.java.net> Changeset: c81d289c9a53 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/c81d289c9a53 Added tag jdk7-b135 for changeset d5fc61f18043 ! .hgtags Changeset: ccea3282991c Author: schien Date: 2011-03-31 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/ccea3282991c Added tag jdk7-b136 for changeset c81d289c9a53 ! .hgtags From lana.steuck at oracle.com Fri Apr 1 17:19:09 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:19:09 +0000 Subject: hg: jdk7/tl/jaxp: 2 new changesets Message-ID: <20110401171909.8E332476D7@hg.openjdk.java.net> Changeset: 1759daa85d33 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/1759daa85d33 Added tag jdk7-b135 for changeset 4aa9916693dc ! .hgtags Changeset: 1d87f7460cde Author: schien Date: 2011-03-31 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/1d87f7460cde Added tag jdk7-b136 for changeset 1759daa85d33 ! .hgtags From lana.steuck at oracle.com Fri Apr 1 17:19:18 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:19:18 +0000 Subject: hg: jdk7/tl/langtools: 5 new changesets Message-ID: <20110401171928.93144476D8@hg.openjdk.java.net> Changeset: 028248b9a397 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/028248b9a397 Added tag jdk7-b135 for changeset 9d0a61ac567b ! .hgtags Changeset: ed0f7f1f9511 Author: lana Date: 2011-03-26 00:11 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/ed0f7f1f9511 Merge Changeset: a15c9b058ae0 Author: schien Date: 2011-03-31 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/a15c9b058ae0 Added tag jdk7-b136 for changeset ed0f7f1f9511 ! .hgtags Changeset: 28570a737e83 Author: lana Date: 2011-03-31 22:08 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/28570a737e83 Merge Changeset: d0b5026ec7ca Author: lana Date: 2011-04-01 10:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/d0b5026ec7ca Merge From lana.steuck at oracle.com Fri Apr 1 17:19:28 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:19:28 +0000 Subject: hg: jdk7/tl/hotspot: 61 new changesets Message-ID: <20110401172116.D67F2476D9@hg.openjdk.java.net> Changeset: 9f44e9aad2d9 Author: coleenp Date: 2011-03-03 19:51 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/9f44e9aad2d9 7022999: Can't build with FORCE_TIERED=0 Summary: Put UseFastLocking test under #ifdef COMPILER1 Reviewed-by: kvn, phh, never, dcubed ! src/share/vm/runtime/arguments.cpp Changeset: fbbeec6dad2d Author: coleenp Date: 2011-03-03 19:52 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/fbbeec6dad2d 6512830: Error: assert(tag_at(which).is_unresolved_klass(), "Corrupted constant pool") Summary: Redefine classes copies the constant pool while the constant pool may be resolving strings or classes Reviewed-by: dcubed, dsamersoff, acorn ! src/share/vm/oops/constantPoolOop.cpp ! src/share/vm/prims/jvmtiRedefineClasses.cpp Changeset: f767174aac14 Author: coleenp Date: 2011-03-03 19:53 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/f767174aac14 7021653: Parfait issue in hotspot/src/share/vm/oops/methodDataOops.hpp Summary: Fix compilation error(s) Reviewed-by: kvn, phh, jcoomes, dholmes ! src/share/vm/oops/methodDataOop.hpp ! src/share/vm/runtime/os.cpp Changeset: dbad0519a1c4 Author: kamg Date: 2011-03-04 14:40 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/dbad0519a1c4 6845426: non-static method with no args is called during the class initialization process Summary: Only call with ACC_STATIC for classfiles with version > 50 Reviewed-by: acorn, dholmes, coleenp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/oops/methodOop.hpp Changeset: 0cd0a06d2535 Author: acorn Date: 2011-03-07 09:16 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/0cd0a06d2535 Merge ! src/share/vm/runtime/arguments.cpp Changeset: df1347358fe6 Author: coleenp Date: 2011-03-07 16:03 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/df1347358fe6 7024584: Symbol printouts shouldnt be under PrintGCDetails Summary: Put symbol printing under Verbose and WizardMode so you can get this information if you really want it. Reviewed-by: phh, stefank, never, dholmes, jcoomes ! src/share/vm/classfile/symbolTable.cpp Changeset: 02e6fc2effd8 Author: trims Date: 2011-03-11 22:41 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/02e6fc2effd8 Merge Changeset: 4f148718983e Author: bdelsart Date: 2011-03-10 17:44 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4f148718983e 7025485: leverage shared x86-only deoptimization code Summary: removed an ifdef IA32 around harmless code useful for some ports Reviewed-by: chrisphi, never ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp Changeset: 3d5a546351ef Author: phh Date: 2011-03-11 16:09 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3d5a546351ef 7023931: PcDescCache::find_pc_desc should not write _last_pc_desc Summary: Remove _last_pc_desc and use pcdescs[0] instead. Reviewed-by: dcubed, coleenp, ysr ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp Changeset: 4775a1e3e923 Author: acorn Date: 2011-03-14 11:43 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4775a1e3e923 Merge Changeset: 216d916d5c12 Author: dcubed Date: 2011-03-15 06:35 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/216d916d5c12 7024234: 2/3 jvmti tests fail assert(!_oops_are_stale) failed: oops are stale on Win-AMD64 Summary: Move initialization of the '_instance' field to avoid race with ServiceThread start. Reviewed-by: dholmes, kamg, never, dsamersoff, ysr, coleenp, acorn ! src/share/vm/runtime/serviceThread.cpp Changeset: 46a56fac55c7 Author: dcubed Date: 2011-03-15 06:37 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/46a56fac55c7 7024970: 2/3 assert(ServiceThread::is_service_thread(Thread::current())) failed: Service thread must post enqueue Summary: Change nmethod_lock() to also prevent zombification of the nmethod. CompiledMethodUnload events also need to lock the nmethod. Clean ups in nmethod::make_not_entrant_or_zombie() Reviewed-by: dholmes, kamg, never, dsamersoff, ysr, coleenp, acorn ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/prims/jvmtiImpl.cpp ! src/share/vm/prims/jvmtiImpl.hpp Changeset: 65f880e2869b Author: dcubed Date: 2011-03-15 06:50 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/65f880e2869b Merge ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp Changeset: 8a3f8defe568 Author: coleenp Date: 2011-03-16 14:57 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8a3f8defe568 7019165: Incorrect symbols in pstack output after SymbolTable changes Summary: And out lsb which is set for symbols in constant pool slots to distinguish them from strings Reviewed-by: phh, dholmes, never, dcubed ! src/os/solaris/dtrace/libjvm_db.c Changeset: b9684d5ccb52 Author: vladidan Date: 2011-03-10 14:56 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b9684d5ccb52 7011490: Wrong computation results in Test6880034 Summary: incorrect handling of c2i deoptimization on little endian architectures Reviewed-by: never ! src/share/vm/c1/c1_LinearScan.cpp Changeset: bc57bfb5bfad Author: vladidan Date: 2011-03-16 10:47 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/bc57bfb5bfad Merge Changeset: 2074c95f707e Author: vladidan Date: 2011-03-16 23:45 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2074c95f707e Merge Changeset: 5d8f5a6dced7 Author: iveresov Date: 2011-03-04 15:14 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/5d8f5a6dced7 7020403: Add AdvancedCompilationPolicy for tiered Summary: This implements adaptive tiered compilation policy. Reviewed-by: kvn, never ! src/share/vm/oops/methodKlass.cpp ! src/share/vm/oops/methodOop.hpp + src/share/vm/runtime/advancedThresholdPolicy.cpp + src/share/vm/runtime/advancedThresholdPolicy.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/compilationPolicy.cpp Changeset: 4cd9add59b1e Author: never Date: 2011-03-04 20:01 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4cd9add59b1e 7024866: # assert(limit == NULL || limit <= nm->code_end()) failed: in bounds Reviewed-by: kvn, iveresov ! src/share/vm/code/nmethod.cpp Changeset: 8ec5e1f45ea1 Author: never Date: 2011-03-04 22:44 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8ec5e1f45ea1 Merge Changeset: 8e72cd29b15d Author: kvn Date: 2011-03-05 11:02 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8e72cd29b15d 6589823: Error: meet not symmetric Summary: arrays pointers meet must fall to bottom if exact array klasses in upper lattice are not equal or super klass is exact. Reviewed-by: never ! src/share/vm/opto/type.cpp Changeset: 425688247f3d Author: never Date: 2011-03-06 22:09 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/425688247f3d 6965570: assert(!needs_patching && x->is_loaded(),"how do we know it's volatile if it's not loaded") Reviewed-by: iveresov ! src/share/vm/c1/c1_Canonicalizer.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Instruction.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_ValueMap.hpp Changeset: 1c0cf339481b Author: kvn Date: 2011-03-09 09:15 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1c0cf339481b 7025742: Can not use CodeCache::unallocated_capacity() with fragmented CodeCache Summary: Use largest_free_block() instead of unallocated_capacity(). Reviewed-by: iveresov, never, ysr ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/memory/heap.cpp ! src/share/vm/opto/output.cpp ! src/share/vm/runtime/sweeper.cpp Changeset: 83f08886981c Author: kvn Date: 2011-03-11 07:50 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/83f08886981c 7026631: field _klass is incorrectly set for dual type of TypeAryPtr::OOPS Summary: add missing check this->dual() != TypeAryPtr::OOPS into TypeAryPtr::klass(). Reviewed-by: never ! src/share/vm/opto/type.cpp Changeset: 799d8ccf63cf Author: jrose Date: 2011-03-11 21:19 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/799d8ccf63cf Merge ! src/share/vm/oops/methodOop.hpp ! src/share/vm/runtime/arguments.cpp Changeset: 72dee110246f Author: jrose Date: 2011-03-11 22:33 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/72dee110246f 6839872: remove implementation inheritance from JSR 292 APIs Summary: consolidate runtime support in java.dyn.MethodHandleNatives; include transitional compatibility logic Reviewed-by: twisti ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/nativeLookup.cpp ! src/share/vm/runtime/globals.hpp Changeset: 8033953d67ff Author: jrose Date: 2011-03-11 22:34 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8033953d67ff 7012648: move JSR 292 to package java.lang.invoke and adjust names Summary: package and class renaming only; delete unused methods and classes Reviewed-by: twisti ! src/cpu/sparc/vm/assembler_sparc.cpp ! src/cpu/sparc/vm/cppInterpreter_sparc.cpp ! src/cpu/sparc/vm/interpreter_sparc.cpp ! src/cpu/sparc/vm/methodHandles_sparc.cpp ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/interpreter_x86_32.cpp ! src/cpu/x86/vm/interpreter_x86_64.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/share/vm/c1/c1_LIR.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/ci/ciCallSite.cpp ! src/share/vm/ci/ciCallSite.hpp ! src/share/vm/ci/ciField.cpp ! src/share/vm/ci/ciMethod.cpp ! src/share/vm/ci/ciMethodHandle.hpp ! src/share/vm/ci/ciObjectFactory.cpp ! src/share/vm/ci/ciStreams.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/interpreter/abstractInterpreter.hpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/cpCacheOop.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/parse3.cpp ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandleWalk.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/methodHandles.hpp ! src/share/vm/prims/nativeLookup.cpp Changeset: 82de9bd880e3 Author: kvn Date: 2011-03-17 12:08 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/82de9bd880e3 7028394: Newer AMD Processor Prefetch Defaults Summary: This new default has shown improvement across many workloads. Reviewed-by: kvn Contributed-by: tom.deneau at amd.com ! src/cpu/x86/vm/vm_version_x86.cpp Changeset: d2134498fd3f Author: jrose Date: 2011-03-17 18:29 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/d2134498fd3f 7011865: JSR 292 CTW fails: !THREAD->is_Compiler_thread() failed: Can not load classes with the Compiler thre Reviewed-by: kvn, never ! src/share/vm/interpreter/linkResolver.cpp Changeset: fc5ebbb2d1a8 Author: twisti Date: 2011-03-18 01:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/fc5ebbb2d1a8 Merge ! src/share/vm/code/nmethod.cpp Changeset: 1216415d8e35 Author: tonyp Date: 2011-03-04 17:13 -0500 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1216415d8e35 7014923: G1: code cleanup Summary: Some G1 code cleanup. Reviewed-by: johnc, jcoomes, jwilhelm ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1MarkSweep.cpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.cpp ! src/share/vm/gc_implementation/g1/heapRegionSeq.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegionSets.cpp ! src/share/vm/utilities/debug.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: a2c2eac1ca62 Author: jcoomes Date: 2011-03-06 11:37 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a2c2eac1ca62 7018056: large pages not always enabled by default Reviewed-by: phh, kvn ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/globals.hpp Changeset: c93aa6caa02f Author: brutisso Date: 2011-03-03 22:58 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c93aa6caa02f 7022943: G1: improve logging to avoid interleaved numbers Summary: Introduced buffered loggging to make sure that log lines are logged one line at a time Reviewed-by: stefank, johnc, dsamersoff ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp Changeset: 04d1138b4cce Author: brutisso Date: 2011-03-03 11:35 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/04d1138b4cce 7023747: G1: too strict assert in RefineRecordRefsIntoCSCardTableEntryClosure::do_card_ptr in g1RemSet.cpp Summary: Made sure that the assert looks at ParallelGCThreads. Reviewed-by: stefank, tonyp, jwilhelm, johnc ! src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp ! src/share/vm/gc_implementation/g1/g1RemSet.cpp Changeset: a181f3a124dd Author: ysr Date: 2011-03-14 21:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a181f3a124dd 6987703: iCMS: Intermittent hang with gc/gctests/CallGC/CallGC01 and +ExplicitGCInvokesConcurrent Summary: Count enable_icms() and disable_icms() events so as to prevent inteference between concurrent calls, which can cause the iCMS thread to be left stranded in icms_wait() with an unserviced request and no young allocations to unwedge it. Reviewed-by: jcoomes, poonam ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.hpp Changeset: 1fb790245268 Author: jwilhelm Date: 2011-03-11 16:35 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1fb790245268 6820066: Check that -XX:ParGCArrayScanChunk has a value larger than zero. Summary: Check that -XX:ParGCArrayScanChunk has a value larger than zero. Reviewed-by: johnc, jmasa, ysr ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp ! src/share/vm/runtime/arguments.cpp Changeset: 1abd292f8c38 Author: jwilhelm Date: 2011-03-15 09:07 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1abd292f8c38 Merge Changeset: dde920245681 Author: ysr Date: 2011-03-16 10:37 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/dde920245681 6896099: Integrate CMS heap ergo with default heap sizing ergo 6627787: CMS: JVM refuses to start up with -Xms16m -Xmx16m 7000125: CMS: Anti-monotone young gen sizing with respect to maximum whole heap size specification 7027529: CMS: retire CMSUseOldDefaults flag Summary: Simplify CMS heap sizing code, relying on ergonomic initial sizing consistent with other collectors for the most part, controlling only young gen sizing to rein in pause times. Make CMS young gen sizing default statically cpu-dependant. Remove inconsistencies wrt generation sizing and policy code, allowing for the fixing for 6627787 and 7000125. For 7027529, retire the flag CMSUseOldDefaults which had been introduced as a bridge from JDK 5 to JDK 6 a number of years ago. Reviewed-by: brutisso, poonam ! src/cpu/sparc/vm/globals_sparc.hpp ! src/cpu/x86/vm/globals_x86.hpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 92da084fefc9 Author: ysr Date: 2011-03-17 10:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/92da084fefc9 6668573: CMS: reference processing crash if ParallelCMSThreads > ParallelGCThreads Summary: Use _max_num_q = max(discovery_degree, processing_degree), and let balance_queues() redistribute from discovery_degree to processing_degree of queues. This should also allow a more dynamic and flexible parallelism policy in the future. Reviewed-by: jmasa, johnc ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/memory/generation.cpp ! src/share/vm/memory/referenceProcessor.cpp ! src/share/vm/memory/referenceProcessor.hpp ! src/share/vm/utilities/workgroup.cpp ! src/share/vm/utilities/workgroup.hpp Changeset: 048f98400b8e Author: jcoomes Date: 2011-03-18 09:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/048f98400b8e Merge ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: e97ad5d5c990 Author: trims Date: 2011-03-18 13:28 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/e97ad5d5c990 Merge Changeset: b898f0fc3ced Author: trims Date: 2011-03-18 13:28 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b898f0fc3ced 7028846: Bump the HS21 build number to 05 Summary: Update the HS21 build number to 05 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 7449da4cdab5 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/7449da4cdab5 Added tag jdk7-b135 for changeset b898f0fc3ced ! .hgtags Changeset: 661c46a8434c Author: trims Date: 2011-03-25 17:26 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/661c46a8434c Added tag hs21-b05 for changeset b898f0fc3ced ! .hgtags Changeset: d673ef06fe96 Author: never Date: 2011-03-18 15:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/d673ef06fe96 7028374: race in fix_oop_relocations for scavengeable nmethods Reviewed-by: kvn ! src/cpu/sparc/vm/nativeInst_sparc.cpp ! src/cpu/sparc/vm/nativeInst_sparc.hpp ! src/cpu/sparc/vm/relocInfo_sparc.cpp ! src/cpu/x86/vm/relocInfo_x86.cpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/relocInfo.hpp ! src/share/vm/memory/universe.cpp Changeset: c7f3d0b4570f Author: never Date: 2011-03-18 16:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c7f3d0b4570f 7017732: move static fields into Class to prepare for perm gen removal Reviewed-by: kvn, coleenp, twisti, stefank ! agent/src/share/classes/sun/jvm/hotspot/jdi/FieldImpl.java ! agent/src/share/classes/sun/jvm/hotspot/oops/InstanceKlass.java ! agent/src/share/classes/sun/jvm/hotspot/oops/IntField.java ! agent/src/share/classes/sun/jvm/hotspot/oops/OopField.java ! agent/src/share/classes/sun/jvm/hotspot/oops/OopUtilities.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java ! agent/test/jdi/sasanity.sh ! src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp ! src/cpu/sparc/vm/dump_sparc.cpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/ci/ciCPCache.cpp ! src/share/vm/ci/ciField.cpp ! src/share/vm/ci/ciInstance.cpp ! src/share/vm/ci/ciInstance.hpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciObjectFactory.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/memory/compactingPermGenGen.hpp ! src/share/vm/memory/oopFactory.cpp ! src/share/vm/memory/oopFactory.hpp ! src/share/vm/memory/universe.cpp ! src/share/vm/oops/arrayKlassKlass.cpp ! src/share/vm/oops/constantPoolOop.cpp ! src/share/vm/oops/cpCacheKlass.cpp ! src/share/vm/oops/cpCacheOop.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/instanceKlassKlass.cpp ! src/share/vm/oops/instanceKlassKlass.hpp + src/share/vm/oops/instanceMirrorKlass.cpp + src/share/vm/oops/instanceMirrorKlass.hpp ! src/share/vm/oops/klass.hpp ! src/share/vm/oops/klassKlass.cpp ! src/share/vm/oops/klassOop.hpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/objArrayKlassKlass.cpp ! src/share/vm/oops/oop.hpp ! src/share/vm/oops/oop.inline.hpp ! src/share/vm/oops/oopsHierarchy.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse3.cpp ! src/share/vm/opto/type.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jniCheck.cpp ! src/share/vm/prims/jvm.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiTagMap.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/reflection.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/shark/sharkNativeWrapper.cpp Changeset: 57552dca1708 Author: never Date: 2011-03-21 14:06 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/57552dca1708 7029509: nightly failures after static fields in Class Reviewed-by: kvn ! src/share/vm/prims/jvmtiRedefineClasses.cpp ! src/share/vm/prims/jvmtiTagMap.cpp ! src/share/vm/services/heapDumper.cpp Changeset: 924777755fad Author: jcoomes Date: 2011-03-21 18:38 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/924777755fad 6962930: make the string table size configurable Reviewed-by: never, phh, stefank, kamg, dholmes, coleenp ! agent/src/share/classes/sun/jvm/hotspot/memory/StringTable.java ! src/share/vm/classfile/symbolTable.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: b099aaf51bf8 Author: jcoomes Date: 2011-03-22 13:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b099aaf51bf8 6962931: move interned strings out of the perm gen Reviewed-by: never, coleenp, ysr, jwilhelm ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp ! src/share/vm/memory/dump.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/stringopts.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/runtime/globals.hpp Changeset: 32f7097f9d8f Author: never Date: 2011-03-23 10:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/32f7097f9d8f 7030300: more nightly failures after statics in Class changes Reviewed-by: iveresov, jcoomes, dcubed ! agent/src/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java ! src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp Changeset: f195ebb181b8 Author: jcoomes Date: 2011-03-24 23:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/f195ebb181b8 Merge Changeset: 3ef1a1866a60 Author: twisti Date: 2011-03-21 02:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3ef1a1866a60 7027232: JSR 292: wrong numeric value returned by MH on solaris-sparc Reviewed-by: kvn, never ! src/cpu/sparc/vm/methodHandles_sparc.cpp Changeset: 9dc311b8473e Author: kvn Date: 2011-03-21 11:28 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/9dc311b8473e 7008866: Missing loop predicate for loop with multiple entries Summary: Add predicates when loop head bytecode is parsed instead of when back branch bytecode is parsed. Reviewed-by: never ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopUnswitch.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/stringopts.cpp Changeset: 0a5d9566b8a4 Author: twisti Date: 2011-03-23 04:19 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/0a5d9566b8a4 7029805: JSR 292 compiler/6991596/Test6991596.java fails in nightly Summary: Both JSR 292 compiler tests were moved with 6839872 to the jdk repository Reviewed-by: never - test/compiler/6987555/Test6987555.java - test/compiler/6991596/Test6991596.java Changeset: 0e3ed5a14f73 Author: jcoomes Date: 2011-03-24 23:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/0e3ed5a14f73 Merge ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/stringopts.cpp - test/compiler/6987555/Test6987555.java - test/compiler/6991596/Test6991596.java Changeset: 083f13976b51 Author: dholmes Date: 2011-03-21 22:16 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/083f13976b51 6535709: interrupt of wait()ing thread isn't triggerring InterruptedException - test intwait3 Summary: only clear the interrupt state if we will report that it was set Reviewed-by: dcubed, alanb, phh, coleenp, dice ! src/os/windows/vm/os_windows.cpp ! src/share/vm/runtime/osThread.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: fc416c2556ec Author: mchung Date: 2011-03-22 18:04 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/fc416c2556ec 7025628: Remove the temporary hack added for jdk modularization in hotspot Summary: Removed Reviewed-by: ohair, coleenp ! src/share/vm/runtime/os.cpp Changeset: 006b3750a4d4 Author: jcoomes Date: 2011-03-24 23:06 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/006b3750a4d4 Merge ! src/share/vm/runtime/vmStructs.cpp Changeset: c10b82a05d58 Author: trims Date: 2011-03-25 18:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c10b82a05d58 Merge - test/compiler/6987555/Test6987555.java - test/compiler/6991596/Test6991596.java Changeset: bd586e392d93 Author: trims Date: 2011-03-25 18:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/bd586e392d93 7031227: Bump the HS21 build number to 06 Summary: Update the HS21 build number to 06 Reviewed-by: jcoomes ! make/hotspot_version Changeset: a1615ff22854 Author: schien Date: 2011-03-31 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a1615ff22854 Added tag jdk7-b136 for changeset bd586e392d93 ! .hgtags From lana.steuck at oracle.com Fri Apr 1 17:22:11 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Fri, 01 Apr 2011 17:22:11 +0000 Subject: hg: jdk7/tl/jdk: 56 new changesets Message-ID: <20110401173117.C97A6476DA@hg.openjdk.java.net> Changeset: 1c7cac250f71 Author: asaha Date: 2011-03-21 21:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/1c7cac250f71 7029704: JFB: Refix JFB Custom Revision Version Build/Makefile changes Reviewed-by: mr, ohair ! make/common/Defs.gmk ! make/common/Release.gmk Changeset: e390396bc938 Author: katakai Date: 2011-02-26 03:53 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e390396bc938 6998391: Serbian (Latin) locale support Reviewed-by: naoto ! make/java/text/base/FILES_java.gmk ! make/java/util/FILES_properties.gmk ! src/share/classes/java/text/SimpleDateFormat.java + src/share/classes/sun/text/resources/CollationData_sr_Latn.java + src/share/classes/sun/text/resources/FormatData_sr_Latn.java + src/share/classes/sun/text/resources/FormatData_sr_Latn_BA.java + src/share/classes/sun/text/resources/FormatData_sr_Latn_ME.java + src/share/classes/sun/text/resources/FormatData_sr_Latn_RS.java + src/share/classes/sun/util/resources/CalendarData_sr_Latn_BA.properties + src/share/classes/sun/util/resources/CalendarData_sr_Latn_ME.properties + src/share/classes/sun/util/resources/CalendarData_sr_Latn_RS.properties + src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_BA.properties + src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_ME.properties + src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_RS.properties ! src/share/classes/sun/util/resources/LocaleData.java + src/share/classes/sun/util/resources/LocaleNames_sr_Latn.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 0fc1f64bbd73 Author: mfang Date: 2011-03-04 14:31 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0fc1f64bbd73 Merge - src/share/classes/java/dyn/NoAccessException.java - src/share/classes/java/dyn/Switcher.java - test/java/lang/Thread/StopBeforeStart.java Changeset: a574a067d85a Author: mfang Date: 2011-03-05 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a574a067d85a 7016542: NLS: obsolete resources in MsgAppletViewer.java should be removed Reviewed-by: igor ! src/share/classes/sun/applet/resources/MsgAppletViewer.java Changeset: c3c9fda4591e Author: mfang Date: 2011-03-07 12:08 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c3c9fda4591e 7025267: NLS: t13y fix for 7021689 [ja] Notepad demo throws NPE Reviewed-by: ogino ! src/share/demo/jfc/Notepad/resources/Notepad.properties ! src/share/demo/jfc/Notepad/resources/Notepad_ja.properties ! src/share/demo/jfc/Notepad/resources/Notepad_zh_CN.properties Changeset: 9e4d258ac919 Author: mfang Date: 2011-03-07 12:17 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9e4d258ac919 7021693: [ja, zh_CN] jconsole throws exception and fail to start in ja and zh_CN locales Reviewed-by: ogino ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java Changeset: abe08bf657e3 Author: mfang Date: 2011-03-07 12:58 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/abe08bf657e3 7025303: NLS: t13y fix for 7021691 Most log level words are not translated in java logging Reviewed-by: yhuang ! src/share/classes/sun/util/logging/resources/logging.properties Changeset: 21737a3e16fb Author: mfang Date: 2011-03-09 14:19 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/21737a3e16fb Merge Changeset: 5ed7b3d84957 Author: yhuang Date: 2011-03-11 05:17 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5ed7b3d84957 7019267: Currency Display Names are not localized into pt_BR. Reviewed-by: naoto ! make/java/util/FILES_properties.gmk + src/share/classes/sun/util/resources/CurrencyNames_pt.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: e64ef0cd99ad Author: yhuang Date: 2011-03-11 05:49 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e64ef0cd99ad Merge Changeset: af4793ab50fb Author: mfang Date: 2011-03-19 19:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/af4793ab50fb Merge - make/common/Modules.gmk - make/java/nio/mxbean/Makefile - make/modules/Makefile - make/modules/bootmodule.roots - make/modules/jdk7.depconfig - make/modules/modules.config - make/modules/modules.group - make/modules/optional.depconfig - make/modules/tools/Makefile - make/modules/tools/build.xml - make/modules/tools/nbproject/project.properties - make/modules/tools/nbproject/project.xml - make/modules/tools/src/com/sun/classanalyzer/AnnotatedDependency.java - make/modules/tools/src/com/sun/classanalyzer/AnnotationParser.java - make/modules/tools/src/com/sun/classanalyzer/BootAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/CheckDeps.java - make/modules/tools/src/com/sun/classanalyzer/ClassAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ClassFileParser.java - make/modules/tools/src/com/sun/classanalyzer/ClassPath.java - make/modules/tools/src/com/sun/classanalyzer/CodeAttributeParser.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolParser.java - make/modules/tools/src/com/sun/classanalyzer/DependencyConfig.java - make/modules/tools/src/com/sun/classanalyzer/Klass.java - make/modules/tools/src/com/sun/classanalyzer/Module.java - make/modules/tools/src/com/sun/classanalyzer/ModuleConfig.java - make/modules/tools/src/com/sun/classanalyzer/ResolutionInfo.java - make/modules/tools/src/com/sun/classanalyzer/ResourceFile.java - make/modules/tools/src/com/sun/classanalyzer/ShowDeps.java - src/share/classes/sun/misc/BootClassLoaderHook.java - src/share/classes/sun/misc/JavaSecurityCodeSignerAccess.java - test/sun/misc/BootClassLoaderHook/TestHook.java Changeset: 258072f4db19 Author: yhuang Date: 2011-03-20 23:47 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/258072f4db19 7020960: CurrencyNames_sr_RS.properties is missing. Reviewed-by: naoto ! make/java/util/FILES_properties.gmk + src/share/classes/sun/util/resources/CurrencyNames_sr_RS.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: f9d15fd48919 Author: mfang Date: 2011-03-21 11:42 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f9d15fd48919 Merge Changeset: d8ced728159f Author: mfang Date: 2011-03-22 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d8ced728159f Merge Changeset: dbdd618765a8 Author: schien Date: 2011-03-24 11:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/dbdd618765a8 Added tag jdk7-b135 for changeset d8ced728159f ! .hgtags Changeset: 9f88ef1d373f Author: srl Date: 2011-03-07 17:23 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9f88ef1d373f 7017324: Kerning crash in JDK 7 since ICU layout update Reviewed-by: igor, prr ! src/share/native/sun/font/layout/KernTable.cpp + test/java/awt/font/TextLayout/KernCrash.java Changeset: be2e229513a7 Author: srl Date: 2011-03-07 19:37 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/be2e229513a7 6962082: merge back in lines from bad merge in CR 6501644 and open up a test Reviewed-by: igor, prr ! src/share/native/sun/font/layout/LayoutEngine.cpp + test/java/awt/font/TextLayout/CombiningPerf.java Changeset: 48d97c8653f0 Author: jgodinez Date: 2011-03-08 11:47 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/48d97c8653f0 7020528: closed/java/awt/print/PageFormat/PageFormatFromAttributes.java failed Reviewed-by: igor, prr ! src/windows/native/sun/windows/awt_PrintJob.cpp Changeset: 69ec42543dd9 Author: bae Date: 2011-03-09 13:08 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/69ec42543dd9 7022280: Parfait reports Format string argument mismatch in /jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c Reviewed-by: jgodinez, prr ! src/solaris/native/sun/awt/awt_GraphicsEnv.c Changeset: 87444344d616 Author: bae Date: 2011-03-10 11:18 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/87444344d616 6710434: PIT: Reg test java/awt/Graphics2D/ClipPrimitivesTest.java fails in pit build 6u10_b26 Reviewed-by: flar, prr ! src/share/native/sun/java2d/loops/ProcessPath.c Changeset: fd8b81c558d3 Author: dlila Date: 2011-03-15 15:15 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fd8b81c558d3 7027667: clipped aa rectangles are not drawn properly. Summary: Already fixed. This is just a regression test for it. Reviewed-by: prr + test/sun/java2d/pipe/Test7027667.java Changeset: 253f3bc64961 Author: dlila Date: 2011-03-15 17:05 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/253f3bc64961 7019861: Last scanline is skipped in pisces.Renderer. Summary: not skipping it anymore. Reviewed-by: flar ! src/share/classes/sun/java2d/pisces/Helpers.java ! src/share/classes/sun/java2d/pisces/PiscesTileGenerator.java ! src/share/classes/sun/java2d/pisces/Renderer.java ! src/share/classes/sun/java2d/pisces/Stroker.java + test/sun/java2d/pisces/Renderer/Test7019861.java Changeset: 5c61c31d2621 Author: bae Date: 2011-03-16 19:21 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5c61c31d2621 6989760: cmm native compiler warnings Reviewed-by: prr, ohair ! make/sun/cmm/kcms/Makefile ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c Changeset: 4450c35a5f90 Author: bae Date: 2011-03-17 17:45 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/4450c35a5f90 7014528: ColorModel and SampleModel gotten from the same ImageTypeSpecifier instance can be not compatible Reviewed-by: jgodinez, prr ! src/share/classes/java/awt/image/PackedColorModel.java Changeset: 5371ec6c4f41 Author: lana Date: 2011-03-18 23:33 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5371ec6c4f41 Merge - make/common/Modules.gmk - make/java/nio/mxbean/Makefile - make/modules/Makefile - make/modules/bootmodule.roots - make/modules/jdk7.depconfig - make/modules/modules.config - make/modules/modules.group - make/modules/optional.depconfig - make/modules/tools/Makefile - make/modules/tools/build.xml - make/modules/tools/nbproject/project.properties - make/modules/tools/nbproject/project.xml - make/modules/tools/src/com/sun/classanalyzer/AnnotatedDependency.java - make/modules/tools/src/com/sun/classanalyzer/AnnotationParser.java - make/modules/tools/src/com/sun/classanalyzer/BootAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/CheckDeps.java - make/modules/tools/src/com/sun/classanalyzer/ClassAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ClassFileParser.java - make/modules/tools/src/com/sun/classanalyzer/ClassPath.java - make/modules/tools/src/com/sun/classanalyzer/CodeAttributeParser.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolParser.java - make/modules/tools/src/com/sun/classanalyzer/DependencyConfig.java - make/modules/tools/src/com/sun/classanalyzer/Klass.java - make/modules/tools/src/com/sun/classanalyzer/Module.java - make/modules/tools/src/com/sun/classanalyzer/ModuleConfig.java - make/modules/tools/src/com/sun/classanalyzer/ResolutionInfo.java - make/modules/tools/src/com/sun/classanalyzer/ResourceFile.java - make/modules/tools/src/com/sun/classanalyzer/ShowDeps.java ! make/sun/cmm/kcms/Makefile - src/share/classes/sun/misc/BootClassLoaderHook.java - src/share/classes/sun/misc/JavaSecurityCodeSignerAccess.java - test/sun/misc/BootClassLoaderHook/TestHook.java Changeset: 38ebd0682a54 Author: dav Date: 2011-03-09 17:29 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/38ebd0682a54 7023019: Constructor of class java.awt.Component.FlipBufferStrategy throws unspecified IAE Reviewed-by: dcherepanov, art ! src/share/classes/java/awt/Component.java Changeset: cb130134aacf Author: dav Date: 2011-03-14 18:57 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cb130134aacf 7022931: GradientPaint class spec clarification: 7022931, 7016391, 7017246, 7019386 Reviewed-by: flar ! src/share/classes/java/awt/LinearGradientPaint.java ! src/share/classes/java/awt/MultipleGradientPaint.java ! src/share/classes/java/awt/RadialGradientPaint.java + src/share/classes/java/awt/doc-files/RadialGradientPaint-3.png + src/share/classes/java/awt/doc-files/RadialGradientPaint-4.png Changeset: 16d75df4a240 Author: dav Date: 2011-03-18 17:56 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/16d75df4a240 7016131: JDK 7 b127: 8 crashes in native frame:awt_DrawingSurface_FreeDrawingSurfaceInfo+0xc on linux amd64 Reviewed-by: dcherepanov, art ! src/solaris/native/sun/awt/awt_DrawingSurface.c Changeset: 9ed3ec97315c Author: lana Date: 2011-03-18 15:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9ed3ec97315c Merge - make/common/Modules.gmk - make/java/nio/mxbean/Makefile - make/modules/Makefile - make/modules/bootmodule.roots - make/modules/jdk7.depconfig - make/modules/modules.config - make/modules/modules.group - make/modules/optional.depconfig - make/modules/tools/Makefile - make/modules/tools/build.xml - make/modules/tools/nbproject/project.properties - make/modules/tools/nbproject/project.xml - make/modules/tools/src/com/sun/classanalyzer/AnnotatedDependency.java - make/modules/tools/src/com/sun/classanalyzer/AnnotationParser.java - make/modules/tools/src/com/sun/classanalyzer/BootAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/CheckDeps.java - make/modules/tools/src/com/sun/classanalyzer/ClassAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ClassFileParser.java - make/modules/tools/src/com/sun/classanalyzer/ClassPath.java - make/modules/tools/src/com/sun/classanalyzer/CodeAttributeParser.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolParser.java - make/modules/tools/src/com/sun/classanalyzer/DependencyConfig.java - make/modules/tools/src/com/sun/classanalyzer/Klass.java - make/modules/tools/src/com/sun/classanalyzer/Module.java - make/modules/tools/src/com/sun/classanalyzer/ModuleConfig.java - make/modules/tools/src/com/sun/classanalyzer/ResolutionInfo.java - make/modules/tools/src/com/sun/classanalyzer/ResourceFile.java - make/modules/tools/src/com/sun/classanalyzer/ShowDeps.java - src/share/classes/sun/misc/BootClassLoaderHook.java - src/share/classes/sun/misc/JavaSecurityCodeSignerAccess.java - test/sun/misc/BootClassLoaderHook/TestHook.java Changeset: 458b205209a9 Author: lana Date: 2011-03-21 16:53 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/458b205209a9 Merge Changeset: 551a6faa60df Author: rupashka Date: 2011-03-14 15:01 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/551a6faa60df 6464022: Memory leak in JOptionPane.createDialog Reviewed-by: alexp ! src/share/classes/javax/swing/JOptionPane.java + test/javax/swing/JOptionPane/6464022/bug6464022.java ! test/javax/swing/UIDefaults/6795356/bug6795356.java ! test/javax/swing/regtesthelpers/Util.java Changeset: 33755bd32db9 Author: rupashka Date: 2011-03-14 20:28 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/33755bd32db9 7016150: 6246816 refers to the Laffy demo which is not present in the JDK 7 demo/jfc directory Reviewed-by: peterz + make/mkdemo/jfc/Laffy/Makefile ! make/mkdemo/jfc/Makefile Changeset: 9faa309e852b Author: malenkov Date: 2011-03-16 18:48 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9faa309e852b 7027043: (doc) Confusing typo at java/beans/VetoableChangeSupport.java Reviewed-by: rupashka ! src/share/classes/java/beans/VetoableChangeSupport.java Changeset: c53260a00454 Author: malenkov Date: 2011-03-17 18:22 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c53260a00454 7021517: java.beans code comments have issues with HTML4 compliance Reviewed-by: rupashka ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/beans/DesignMode.java ! src/share/classes/java/beans/IndexedPropertyChangeEvent.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/beans/package.html Changeset: 55f97ad0a36e Author: peytoia Date: 2011-03-18 08:42 +0900 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/55f97ad0a36e 7027387: (tz) Support tzdata2011d Reviewed-by: okutsu ! make/sun/javazic/tzdata/VERSION ! make/sun/javazic/tzdata/australasia ! make/sun/javazic/tzdata/etcetera ! make/sun/javazic/tzdata/europe ! make/sun/javazic/tzdata/leapseconds ! make/sun/javazic/tzdata/northamerica ! make/sun/javazic/tzdata/southamerica ! make/sun/javazic/tzdata/zone.tab ! src/share/classes/sun/util/resources/TimeZoneNames.java ! src/share/classes/sun/util/resources/TimeZoneNames_de.java ! src/share/classes/sun/util/resources/TimeZoneNames_es.java ! src/share/classes/sun/util/resources/TimeZoneNames_fr.java ! src/share/classes/sun/util/resources/TimeZoneNames_it.java ! src/share/classes/sun/util/resources/TimeZoneNames_ja.java ! src/share/classes/sun/util/resources/TimeZoneNames_ko.java ! src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java ! src/share/classes/sun/util/resources/TimeZoneNames_sv.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java Changeset: 44daa419e52b Author: lana Date: 2011-03-18 15:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/44daa419e52b Merge - make/common/Modules.gmk - make/java/nio/mxbean/Makefile - make/modules/Makefile - make/modules/bootmodule.roots - make/modules/jdk7.depconfig - make/modules/modules.config - make/modules/modules.group - make/modules/optional.depconfig - make/modules/tools/Makefile - make/modules/tools/build.xml - make/modules/tools/nbproject/project.properties - make/modules/tools/nbproject/project.xml - make/modules/tools/src/com/sun/classanalyzer/AnnotatedDependency.java - make/modules/tools/src/com/sun/classanalyzer/AnnotationParser.java - make/modules/tools/src/com/sun/classanalyzer/BootAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/CheckDeps.java - make/modules/tools/src/com/sun/classanalyzer/ClassAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ClassFileParser.java - make/modules/tools/src/com/sun/classanalyzer/ClassPath.java - make/modules/tools/src/com/sun/classanalyzer/CodeAttributeParser.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolAnalyzer.java - make/modules/tools/src/com/sun/classanalyzer/ConstantPoolParser.java - make/modules/tools/src/com/sun/classanalyzer/DependencyConfig.java - make/modules/tools/src/com/sun/classanalyzer/Klass.java - make/modules/tools/src/com/sun/classanalyzer/Module.java - make/modules/tools/src/com/sun/classanalyzer/ModuleConfig.java - make/modules/tools/src/com/sun/classanalyzer/ResolutionInfo.java - make/modules/tools/src/com/sun/classanalyzer/ResourceFile.java - make/modules/tools/src/com/sun/classanalyzer/ShowDeps.java - src/share/classes/sun/misc/BootClassLoaderHook.java - src/share/classes/sun/misc/JavaSecurityCodeSignerAccess.java - test/sun/misc/BootClassLoaderHook/TestHook.java Changeset: e930c56882b9 Author: lana Date: 2011-03-21 16:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e930c56882b9 Merge Changeset: 8fafdc993bf2 Author: lana Date: 2011-03-21 16:57 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8fafdc993bf2 Merge - make/com/sun/xml/Makefile - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c Changeset: 3dabb2f78e73 Author: bae Date: 2010-10-30 00:24 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3dabb2f78e73 6985453: Font.createFont may expose some system properties in exception text Reviewed-by: prr, hawtin ! src/share/classes/sun/font/FileFont.java ! src/share/classes/sun/font/TrueTypeFont.java ! src/share/classes/sun/font/Type1Font.java Changeset: 85ccd221280b Author: mullan Date: 2010-11-01 11:32 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/85ccd221280b 6994263: Untrusted code can replace JRE's XML DSig Transform or C14N algorithm implementations Reviewed-by: xuelei ! src/share/classes/com/sun/org/apache/xml/internal/security/transforms/Transform.java Changeset: cc989209cbf1 Author: chegar Date: 2011-01-10 18:12 +0000 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cc989209cbf1 6997851: Create NTLM AuthenticationCallBack class to avoid NTLM info leakage on client side Reviewed-by: michaelm ! make/sun/net/FILES_java.gmk ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/share/classes/sun/net/www/protocol/http/NTLMAuthenticationProxy.java + src/share/classes/sun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback.java ! src/solaris/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java ! src/windows/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java Changeset: b5c340d6c905 Author: denis Date: 2011-03-17 17:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b5c340d6c905 6907662: System clipboard should ensure access restrictions Reviewed-by: alexp ! src/share/classes/java/awt/AWTEvent.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/MenuComponent.java ! src/share/classes/java/awt/TrayIcon.java ! src/share/classes/java/security/AccessControlContext.java ! src/share/classes/java/security/ProtectionDomain.java ! src/share/classes/javax/swing/Timer.java ! src/share/classes/javax/swing/TransferHandler.java ! src/share/classes/sun/awt/AWTAccessor.java + src/share/classes/sun/misc/JavaSecurityAccess.java ! src/share/classes/sun/misc/SharedSecrets.java Changeset: d19e3b281dcc Author: michaelm Date: 2011-03-17 18:26 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d19e3b281dcc 6981922: DNS cache poisoning by untrusted applets Reviewed-by: chegar ! make/sun/net/FILES_java.gmk ! src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java ! src/share/classes/java/net/AbstractPlainSocketImpl.java + src/share/classes/sun/net/ResourceManager.java ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/nio/ch/Net.java Changeset: 8af27e4ecaed Author: lana Date: 2011-03-21 17:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8af27e4ecaed Merge ! src/share/classes/java/awt/Component.java Changeset: 6d1b98c84f85 Author: michaelm Date: 2011-03-25 16:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6d1b98c84f85 7031238: Problem with fix for 6981922 Reviewed-by: chegar ! src/windows/classes/java/net/TwoStacksPlainDatagramSocketImpl.java Changeset: a50a7f8a847d Author: lana Date: 2011-03-26 00:10 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a50a7f8a847d Merge - make/com/sun/xml/Makefile ! make/common/Defs.gmk - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c Changeset: 5acc8cf00539 Author: jrose Date: 2011-03-18 00:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5acc8cf00539 6839872: remove implementation inheritance from JSR 292 APIs Summary: move everything into a single package; remove all multi-package machinery Reviewed-by: twisti, forax + src/share/classes/java/dyn/AdapterMethodHandle.java + src/share/classes/java/dyn/BoundMethodHandle.java ! src/share/classes/java/dyn/CallSite.java ! src/share/classes/java/dyn/ClassValue.java + src/share/classes/java/dyn/DirectMethodHandle.java + src/share/classes/java/dyn/FilterGeneric.java + src/share/classes/java/dyn/FilterOneArgument.java + src/share/classes/java/dyn/FromGeneric.java ! src/share/classes/java/dyn/InvokeDynamic.java + src/share/classes/java/dyn/InvokeGeneric.java + src/share/classes/java/dyn/Invokers.java ! src/share/classes/java/dyn/Linkage.java + src/share/classes/java/dyn/MemberName.java ! src/share/classes/java/dyn/MethodHandle.java + src/share/classes/java/dyn/MethodHandleImpl.java + src/share/classes/java/dyn/MethodHandleNatives.java + src/share/classes/java/dyn/MethodHandleStatics.java ! src/share/classes/java/dyn/MethodHandles.java ! src/share/classes/java/dyn/MethodType.java ! src/share/classes/java/dyn/MethodTypeForm.java ! src/share/classes/java/dyn/MutableCallSite.java + src/share/classes/java/dyn/SpreadGeneric.java + src/share/classes/java/dyn/ToGeneric.java ! src/share/classes/java/dyn/VolatileCallSite.java ! src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java ! src/share/classes/sun/dyn/util/ValueConversions.java ! src/share/classes/sun/dyn/util/VerifyAccess.java + test/java/dyn/6987555/Test6987555.java + test/java/dyn/6991596/Test6991596.java ! test/java/dyn/MethodTypeTest.java Changeset: 9c1e4e0ab69f Author: jrose Date: 2011-03-23 23:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9c1e4e0ab69f 7012648: move JSR 292 to package java.lang.invoke and adjust names Summary: package and class renaming only; delete unused methods and classes; add @since tags; no code changes Reviewed-by: twisti ! make/common/Release.gmk ! make/docs/CORE_PKGS.gmk ! make/java/Makefile - make/java/dyn/Makefile + make/java/invoke/Makefile - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/package-info.java + src/share/classes/java/lang/BootstrapMethodError.java ! src/share/classes/java/lang/ClassValue.java < src/share/classes/java/dyn/ClassValue.java ! src/share/classes/java/lang/invoke/AdapterMethodHandle.java < src/share/classes/java/dyn/AdapterMethodHandle.java ! src/share/classes/java/lang/invoke/BoundMethodHandle.java < src/share/classes/java/dyn/BoundMethodHandle.java ! src/share/classes/java/lang/invoke/CallSite.java < src/share/classes/java/dyn/CallSite.java + src/share/classes/java/lang/invoke/ConstantCallSite.java ! src/share/classes/java/lang/invoke/DirectMethodHandle.java < src/share/classes/java/dyn/DirectMethodHandle.java ! src/share/classes/java/lang/invoke/FilterGeneric.java < src/share/classes/java/dyn/FilterGeneric.java ! src/share/classes/java/lang/invoke/FilterOneArgument.java < src/share/classes/java/dyn/FilterOneArgument.java ! src/share/classes/java/lang/invoke/FromGeneric.java < src/share/classes/java/dyn/FromGeneric.java ! src/share/classes/java/lang/invoke/InvokeDynamic.java < src/share/classes/java/dyn/InvokeDynamic.java ! src/share/classes/java/lang/invoke/InvokeGeneric.java < src/share/classes/java/dyn/InvokeGeneric.java ! src/share/classes/java/lang/invoke/Invokers.java < src/share/classes/java/dyn/Invokers.java ! src/share/classes/java/lang/invoke/MemberName.java < src/share/classes/java/dyn/MemberName.java ! src/share/classes/java/lang/invoke/MethodHandle.java < src/share/classes/java/dyn/MethodHandle.java ! src/share/classes/java/lang/invoke/MethodHandleImpl.java < src/share/classes/java/dyn/MethodHandleImpl.java ! src/share/classes/java/lang/invoke/MethodHandleNatives.java < src/share/classes/java/dyn/MethodHandleNatives.java ! src/share/classes/java/lang/invoke/MethodHandleStatics.java < src/share/classes/java/dyn/MethodHandleStatics.java ! src/share/classes/java/lang/invoke/MethodHandles.java < src/share/classes/java/dyn/MethodHandles.java ! src/share/classes/java/lang/invoke/MethodType.java < src/share/classes/java/dyn/MethodType.java ! src/share/classes/java/lang/invoke/MethodTypeForm.java < src/share/classes/java/dyn/MethodTypeForm.java ! src/share/classes/java/lang/invoke/MutableCallSite.java < src/share/classes/java/dyn/MutableCallSite.java ! src/share/classes/java/lang/invoke/SpreadGeneric.java < src/share/classes/java/dyn/SpreadGeneric.java + src/share/classes/java/lang/invoke/SwitchPoint.java ! src/share/classes/java/lang/invoke/ToGeneric.java < src/share/classes/java/dyn/ToGeneric.java ! src/share/classes/java/lang/invoke/VolatileCallSite.java < src/share/classes/java/dyn/VolatileCallSite.java ! src/share/classes/java/lang/invoke/WrongMethodTypeException.java < src/share/classes/java/dyn/WrongMethodTypeException.java + src/share/classes/java/lang/invoke/package-info.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java + src/share/classes/sun/invoke/WrapperInstance.java + src/share/classes/sun/invoke/anon/AnonymousClassLoader.java + src/share/classes/sun/invoke/anon/ConstantPoolParser.java + src/share/classes/sun/invoke/anon/ConstantPoolPatch.java + src/share/classes/sun/invoke/anon/ConstantPoolVisitor.java + src/share/classes/sun/invoke/anon/InvalidConstantPoolFormatException.java + src/share/classes/sun/invoke/empty/Empty.java + src/share/classes/sun/invoke/package-info.java + src/share/classes/sun/invoke/util/BytecodeDescriptor.java + src/share/classes/sun/invoke/util/BytecodeName.java ! src/share/classes/sun/invoke/util/ValueConversions.java < src/share/classes/sun/dyn/util/ValueConversions.java ! src/share/classes/sun/invoke/util/VerifyAccess.java < src/share/classes/sun/dyn/util/VerifyAccess.java + src/share/classes/sun/invoke/util/VerifyType.java + src/share/classes/sun/invoke/util/Wrapper.java + src/share/classes/sun/invoke/util/package-info.java ! src/share/native/common/check_code.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/indify/Indify.java ! test/java/lang/invoke/6987555/Test6987555.java < test/java/dyn/6987555/Test6987555.java ! test/java/lang/invoke/6991596/Test6991596.java < test/java/dyn/6991596/Test6991596.java + test/java/lang/invoke/ClassValueTest.java + test/java/lang/invoke/InvokeDynamicPrintArgs.java + test/java/lang/invoke/InvokeGenericTest.java + test/java/lang/invoke/JavaDocExamplesTest.java + test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/MethodTypeTest.java < test/java/dyn/MethodTypeTest.java + test/java/lang/invoke/indify/Indify.java Changeset: 4770b99ba850 Author: jrose Date: 2011-03-24 00:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/4770b99ba850 Merge ! make/common/Release.gmk - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: 137d0bb3887a Author: trims Date: 2011-03-29 13:28 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/137d0bb3887a Merge - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: 9b9ca2b816f0 Author: ohair Date: 2011-03-29 18:24 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9b9ca2b816f0 7032327: Fix overview-core.html file, refers to version 6 Reviewed-by: wetmore ! src/share/classes/overview-core.html Changeset: dfffbbd40f30 Author: ohair Date: 2011-03-29 18:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/dfffbbd40f30 Merge - make/com/sun/xml/Makefile - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: 0858c48466f0 Author: ohair Date: 2011-03-29 11:29 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0858c48466f0 7011718: VS2010, remove makefile logic with regards to use of VC6, VS2003, VS2005, VS2008 Reviewed-by: prr, weijun ! make/common/Defs-windows.gmk ! make/common/Release.gmk ! make/common/shared/Compiler-msvc.gmk ! make/common/shared/Defs-versions.gmk ! make/common/shared/Defs-windows.gmk ! make/common/shared/Sanity.gmk ! make/sun/cmm/lcms/Makefile Changeset: aa13e7702cd9 Author: ohair Date: 2011-03-29 20:19 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/aa13e7702cd9 Merge - make/com/sun/xml/Makefile ! make/common/Release.gmk ! make/common/shared/Defs-versions.gmk ! make/common/shared/Sanity.gmk - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: c5cd41d19f5f Author: schien Date: 2011-03-31 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c5cd41d19f5f Added tag jdk7-b136 for changeset aa13e7702cd9 ! .hgtags Changeset: 9aaa2233b0de Author: lana Date: 2011-03-31 22:07 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9aaa2233b0de Merge ! make/common/Defs.gmk ! make/common/Release.gmk - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java From valerie.peng at oracle.com Fri Apr 1 18:15:42 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Fri, 01 Apr 2011 11:15:42 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D95370C.6090107@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> Message-ID: <4D96164E.9030303@oracle.com> Sounds good to me. A word of caution: only *refresh* the set of keys that we put in and not those which other apps add. Thanks, Valerie On 03/31/11 07:23 PM, Weijun Wang wrote: > > > On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >> Max, >> >> I like this new approach of yours better. >> As for compatibility, you mentioned only one aspect, i.e. apps which put >> KerberosKeys inside a subject's private cred set. >> There is also a possibility that apps may read the subject's private >> credentials set for KerberosKeys that we used to put in and they won't >> find the keys anymore since it's the KeyTab objects that we put into the >> private cred set after this dynamic keytab support. Thoughts? > > No, I haven't thought about it. > > We can put a snapshot of keys there at the beginning and refresh them > whenever a getKeys() is called. This should be harmless because we > don't really use the keys if keytab objects (not keytab files) exist. > I can do that. > > Thanks > Max > > >> >> Valerie >> >> >> On 03/31/11 03:41 AM, Weijun Wang wrote: >>> Hi Valerie >>> >>> Sorry for the late reply. I've considered some alternatives. >>> >>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>> we have a list of keys with different etypes as the private >>> credentials. If it's not resolved, we can only create one, whose >>> encoding and etype are both unresolved, and when it finally gets >>> resolved, it's resolved into multiple keys. Also, there was a simple >>> mapping between KerberosKey and EncryptionKey. The resolving process >>> is not always at the same time as the mapping (converting from one to >>> another) time, so it seems EncryptionKey might also needs to be >>> unresolved. >>> >>> Another solution is to revert back to my original KeyTab without an >>> intended user. This means several changes: >>> >>> In my latest version of ServiceCreds, there were multiple keys and >>> *one* keytab, now we also need multiple keytabs, because there might >>> be multiple keytabs in the subject's private credentials set and we >>> cannot tell which is for who. Therefore we collect all of them, when >>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>> and return the combination. Hopefully there won't be two keys for the >>> same principal with same kvno and same etype. I regard that as an >>> abuse. >>> >>> Currently when there is no serverPrincipal specified in the >>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>> private credentials set and use the KerberosPrincipal info inside, and >>> then get all KerberosKeys for the same principal. We have never really >>> looked at any KerberosPrincipal objects in the subject's principal >>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>> will have a big change: the first step is always finding a >>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>> specified, we find a matched one, otherwise, we just pick one and use >>> it. And then, from the private credentials set, we fetch all >>> KerberosKeys for this principal and all KeyTabs. >>> >>> I think this is the correct way to go. Of course, for compatibility >>> reason, we assume there are third party codes that put KerberosKeys >>> inside a subject's private credentials set but hasn't put any >>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>> can accept it. >>> >>> Here is a partial webrev: >>> >>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>> >>> It only contains changes for Krb5Util.java, and hasn't included the >>> compatibility codes I mentioned above. As you can see, the KeyTab >>> objects are now retrieved by >>> >>> + sc.ktabs = SubjectComber.findMany( >>> + subj, null, null, KeyTab.class); >>> >>> so no principal name is used, and we retrive "many". >>> >>> If you think this is OK, I'll clean up other codes. One benefit is >>> that we don't need to update CCC with this solution. Yes we do >>> introduce new hashCode/equals/toString methods, but I think they do >>> not deserve a CCC. >>> >>> Thanks >>> Max >>> >>> >>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>> Max, >>>> >>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>> KerberosPrincipal info which "intends" to use it. >>>> Have you considered a different approach like: >>>> Instead of adding the whole KeyTab object into the Subject's private >>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>> need to use this kind of key, we'd check the associated KeyTab >>>> object to >>>> re-fresh its value if needed. This approach is conceptually closer to >>>> what we had and the changes aren't as dramatic and seems to meet the >>>> need required by 6894072. >>>> >>>> I'll continue to review your webrev, but just want to kick this >>>> idea off >>>> w/ you and see if it may work. >>>> Valerie >>>> >>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>> Hi Valerie >>>>> >>>>> Updated webrev: >>>>> >>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>> >>>>> Changes since last version: >>>>> >>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>> arguments, new getPrincipal() method. >>>>> >>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>> I'm hoping it can be null in the future to support multiple service >>>>> principal in a single service. >>>>> >>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>> inside private credentials set. >>>>> >>>>> 3. Enhancement to SubjectComber: >>>>> a) Generics for find() and findMany() >>>>> b) findAux() now support Krb5AcceptCredential >>>>> >>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>> getInstance(), there is still a field inside to save the value. >>>>> >>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>> >>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal after >>>>> JAAS commit. >>>>> >>>>> This time I'd like to first make sure implementation is correct, and >>>>> then I'll update the CCC. Is this OK? >>>>> >>>>> Thanks >>>>> Max >>>> >> From valerie.peng at oracle.com Fri Apr 1 19:02:08 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Fri, 01 Apr 2011 12:02:08 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D959771.50403@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> Message-ID: <4D962130.3000003@oracle.com> I think we need to clean up the old ones if we added it there. Conceptually, this would fit closer w/ the "dynamic key tab" support. One straightforward way for us to do this is to subclass KerberosKey class and then we can remove all KerberosKey objects which are implemented using this class at refresh time. Just an idea. Valerie On 04/01/11 02:14 AM, Weijun Wang wrote: > Hi Valerie > > Updated again: > > http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ > > 1. KeyTab can be used by anyone > 2. The two compatibility support > > As for adding keys (from keytab) into private credentials set, I > haven't cleaned up old ones. Since it's a set, this means if old keys > are removed from the keytab, they stay in the set. The set is never > really used by our code, so I think it's harmless. I really don't know > how to clean up. Remove all keys for this principal? But we do this > because we want to keep compatibility and worry about people directly > manipulating the set, and I cannot predict what they will do with the > set. > > Thanks > Max > > > On 04/01/2011 10:23 AM, Weijun Wang wrote: >> >> >> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>> Max, >>> >>> I like this new approach of yours better. >>> As for compatibility, you mentioned only one aspect, i.e. apps which >>> put >>> KerberosKeys inside a subject's private cred set. >>> There is also a possibility that apps may read the subject's private >>> credentials set for KerberosKeys that we used to put in and they won't >>> find the keys anymore since it's the KeyTab objects that we put into >>> the >>> private cred set after this dynamic keytab support. Thoughts? >> >> No, I haven't thought about it. >> >> We can put a snapshot of keys there at the beginning and refresh them >> whenever a getKeys() is called. This should be harmless because we don't >> really use the keys if keytab objects (not keytab files) exist. I can do >> that. >> >> Thanks >> Max >> >> >>> >>> Valerie >>> >>> >>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>> Hi Valerie >>>> >>>> Sorry for the late reply. I've considered some alternatives. >>>> >>>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>>> we have a list of keys with different etypes as the private >>>> credentials. If it's not resolved, we can only create one, whose >>>> encoding and etype are both unresolved, and when it finally gets >>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>> is not always at the same time as the mapping (converting from one to >>>> another) time, so it seems EncryptionKey might also needs to be >>>> unresolved. >>>> >>>> Another solution is to revert back to my original KeyTab without an >>>> intended user. This means several changes: >>>> >>>> In my latest version of ServiceCreds, there were multiple keys and >>>> *one* keytab, now we also need multiple keytabs, because there might >>>> be multiple keytabs in the subject's private credentials set and we >>>> cannot tell which is for who. Therefore we collect all of them, when >>>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>>> and return the combination. Hopefully there won't be two keys for the >>>> same principal with same kvno and same etype. I regard that as an >>>> abuse. >>>> >>>> Currently when there is no serverPrincipal specified in the >>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>> private credentials set and use the KerberosPrincipal info inside, and >>>> then get all KerberosKeys for the same principal. We have never really >>>> looked at any KerberosPrincipal objects in the subject's principal >>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>> will have a big change: the first step is always finding a >>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>> specified, we find a matched one, otherwise, we just pick one and use >>>> it. And then, from the private credentials set, we fetch all >>>> KerberosKeys for this principal and all KeyTabs. >>>> >>>> I think this is the correct way to go. Of course, for compatibility >>>> reason, we assume there are third party codes that put KerberosKeys >>>> inside a subject's private credentials set but hasn't put any >>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>>> can accept it. >>>> >>>> Here is a partial webrev: >>>> >>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>> >>>> It only contains changes for Krb5Util.java, and hasn't included the >>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>> objects are now retrieved by >>>> >>>> + sc.ktabs = SubjectComber.findMany( >>>> + subj, null, null, KeyTab.class); >>>> >>>> so no principal name is used, and we retrive "many". >>>> >>>> If you think this is OK, I'll clean up other codes. One benefit is >>>> that we don't need to update CCC with this solution. Yes we do >>>> introduce new hashCode/equals/toString methods, but I think they do >>>> not deserve a CCC. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>> Max, >>>>> >>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>> KerberosPrincipal info which "intends" to use it. >>>>> Have you considered a different approach like: >>>>> Instead of adding the whole KeyTab object into the Subject's private >>>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>>> need to use this kind of key, we'd check the associated KeyTab >>>>> object to >>>>> re-fresh its value if needed. This approach is conceptually closer to >>>>> what we had and the changes aren't as dramatic and seems to meet the >>>>> need required by 6894072. >>>>> >>>>> I'll continue to review your webrev, but just want to kick this idea >>>>> off >>>>> w/ you and see if it may work. >>>>> Valerie >>>>> >>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>> Hi Valerie >>>>>> >>>>>> Updated webrev: >>>>>> >>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>> >>>>>> Changes since last version: >>>>>> >>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>>> arguments, new getPrincipal() method. >>>>>> >>>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>>> I'm hoping it can be null in the future to support multiple service >>>>>> principal in a single service. >>>>>> >>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>>> inside private credentials set. >>>>>> >>>>>> 3. Enhancement to SubjectComber: >>>>>> a) Generics for find() and findMany() >>>>>> b) findAux() now support Krb5AcceptCredential >>>>>> >>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>> getInstance(), there is still a field inside to save the value. >>>>>> >>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>> >>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>> after >>>>>> JAAS commit. >>>>>> >>>>>> This time I'd like to first make sure implementation is correct, and >>>>>> then I'll update the CCC. Is this OK? >>>>>> >>>>>> Thanks >>>>>> Max >>>>> >>> From weijun.wang at oracle.com Sat Apr 2 09:18:40 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Sat, 02 Apr 2011 17:18:40 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D962130.3000003@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> Message-ID: <4D96E9F0.2070909@oracle.com> Updated again: http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ Changes: 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we will add to and remove from private credentials set. Add and remove are only done when !subject.isReadOnly(). Only remove keys for this principal. 2. Use the class above in KeyTab.getKeys(). 3. Remove a uselss method in KDC.java test. 4. Update new test KeyTabCompat.java, make sure after keytab refresh, the old key in priv cred set is removed. Thanks Max On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: > I think we need to clean up the old ones if we added it there. > Conceptually, this would fit closer w/ the "dynamic key tab" support. > One straightforward way for us to do this is to subclass KerberosKey > class and then we can remove all KerberosKey objects which are > implemented using this class at refresh time. > Just an idea. > Valerie > > On 04/01/11 02:14 AM, Weijun Wang wrote: >> Hi Valerie >> >> Updated again: >> >> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >> >> 1. KeyTab can be used by anyone >> 2. The two compatibility support >> >> As for adding keys (from keytab) into private credentials set, I >> haven't cleaned up old ones. Since it's a set, this means if old keys >> are removed from the keytab, they stay in the set. The set is never >> really used by our code, so I think it's harmless. I really don't know >> how to clean up. Remove all keys for this principal? But we do this >> because we want to keep compatibility and worry about people directly >> manipulating the set, and I cannot predict what they will do with the >> set. >> >> Thanks >> Max >> >> >> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>> >>> >>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>> Max, >>>> >>>> I like this new approach of yours better. >>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>> put >>>> KerberosKeys inside a subject's private cred set. >>>> There is also a possibility that apps may read the subject's private >>>> credentials set for KerberosKeys that we used to put in and they won't >>>> find the keys anymore since it's the KeyTab objects that we put into >>>> the >>>> private cred set after this dynamic keytab support. Thoughts? >>> >>> No, I haven't thought about it. >>> >>> We can put a snapshot of keys there at the beginning and refresh them >>> whenever a getKeys() is called. This should be harmless because we don't >>> really use the keys if keytab objects (not keytab files) exist. I can do >>> that. >>> >>> Thanks >>> Max >>> >>> >>>> >>>> Valerie >>>> >>>> >>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>> Hi Valerie >>>>> >>>>> Sorry for the late reply. I've considered some alternatives. >>>>> >>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>>>> we have a list of keys with different etypes as the private >>>>> credentials. If it's not resolved, we can only create one, whose >>>>> encoding and etype are both unresolved, and when it finally gets >>>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>>> is not always at the same time as the mapping (converting from one to >>>>> another) time, so it seems EncryptionKey might also needs to be >>>>> unresolved. >>>>> >>>>> Another solution is to revert back to my original KeyTab without an >>>>> intended user. This means several changes: >>>>> >>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>> *one* keytab, now we also need multiple keytabs, because there might >>>>> be multiple keytabs in the subject's private credentials set and we >>>>> cannot tell which is for who. Therefore we collect all of them, when >>>>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>>>> and return the combination. Hopefully there won't be two keys for the >>>>> same principal with same kvno and same etype. I regard that as an >>>>> abuse. >>>>> >>>>> Currently when there is no serverPrincipal specified in the >>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>> private credentials set and use the KerberosPrincipal info inside, and >>>>> then get all KerberosKeys for the same principal. We have never really >>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>>> will have a big change: the first step is always finding a >>>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>>> specified, we find a matched one, otherwise, we just pick one and use >>>>> it. And then, from the private credentials set, we fetch all >>>>> KerberosKeys for this principal and all KeyTabs. >>>>> >>>>> I think this is the correct way to go. Of course, for compatibility >>>>> reason, we assume there are third party codes that put KerberosKeys >>>>> inside a subject's private credentials set but hasn't put any >>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>>>> can accept it. >>>>> >>>>> Here is a partial webrev: >>>>> >>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>> >>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>> objects are now retrieved by >>>>> >>>>> + sc.ktabs = SubjectComber.findMany( >>>>> + subj, null, null, KeyTab.class); >>>>> >>>>> so no principal name is used, and we retrive "many". >>>>> >>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>> that we don't need to update CCC with this solution. Yes we do >>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>> not deserve a CCC. >>>>> >>>>> Thanks >>>>> Max >>>>> >>>>> >>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>> Max, >>>>>> >>>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>>> KerberosPrincipal info which "intends" to use it. >>>>>> Have you considered a different approach like: >>>>>> Instead of adding the whole KeyTab object into the Subject's private >>>>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>> object to >>>>>> re-fresh its value if needed. This approach is conceptually closer to >>>>>> what we had and the changes aren't as dramatic and seems to meet the >>>>>> need required by 6894072. >>>>>> >>>>>> I'll continue to review your webrev, but just want to kick this idea >>>>>> off >>>>>> w/ you and see if it may work. >>>>>> Valerie >>>>>> >>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>> Hi Valerie >>>>>>> >>>>>>> Updated webrev: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>> >>>>>>> Changes since last version: >>>>>>> >>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>>>> arguments, new getPrincipal() method. >>>>>>> >>>>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>>>> I'm hoping it can be null in the future to support multiple service >>>>>>> principal in a single service. >>>>>>> >>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>>>> inside private credentials set. >>>>>>> >>>>>>> 3. Enhancement to SubjectComber: >>>>>>> a) Generics for find() and findMany() >>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>> >>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>> >>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>> >>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>> after >>>>>>> JAAS commit. >>>>>>> >>>>>>> This time I'd like to first make sure implementation is correct, and >>>>>>> then I'll update the CCC. Is this OK? >>>>>>> >>>>>>> Thanks >>>>>>> Max >>>>>> >>>> > From weijun.wang at oracle.com Sat Apr 2 10:33:35 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Sat, 02 Apr 2011 18:33:35 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D96E9F0.2070909@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> Message-ID: <4D96FB7F.40001@oracle.com> On 04/02/2011 05:18 PM, Weijun Wang wrote: > Updated again: > > http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ > > Changes: > > 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we will > add to and remove from private credentials set. Add and remove are only > done when !subject.isReadOnly(). Only remove keys for this principal. > > 2. Use the class above in KeyTab.getKeys(). Should be 2. Use the class above in Krb5LoginModule.commit() and ServiceCreds.getKKeys(). Thanks Max > > 3. Remove a uselss method in KDC.java test. > > 4. Update new test KeyTabCompat.java, make sure after keytab refresh, > the old key in priv cred set is removed. > > Thanks > Max From kumar.x.srinivasan at oracle.com Mon Apr 4 00:02:27 2011 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Mon, 04 Apr 2011 00:02:27 +0000 Subject: hg: jdk7/tl/langtools: 7028405: (javac) remove unused JSR-292 code Message-ID: <20110404000232.E3E704776E@hg.openjdk.java.net> Changeset: 46d720734db3 Author: ksrini Date: 2011-04-03 17:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/46d720734db3 7028405: (javac) remove unused JSR-292 code Reviewed-by: jrose, mcimadamore ! src/share/classes/com/sun/tools/javac/code/Symtab.java ! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/util/Names.java ! test/tools/javac/meth/InvokeMH.java ! test/tools/javac/meth/TestCP.java ! test/tools/javac/meth/XlintWarn.java From bhavesh.patel at sun.com Mon Apr 4 17:16:53 2011 From: bhavesh.patel at sun.com (bhavesh.patel at sun.com) Date: Mon, 04 Apr 2011 17:16:53 +0000 Subject: hg: jdk7/tl/langtools: 7010344: Some of the html files do not have element in right context. Message-ID: <20110404171656.14EE74779A@hg.openjdk.java.net> Changeset: 734144b6b22f Author: bpatel Date: 2011-04-04 10:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/734144b6b22f 7010344: Some of the html files do not have element in right context. Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/AnnotationTypeWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/ClassWriterImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/LinkFactoryImpl.java ! src/share/classes/com/sun/tools/doclets/formats/html/LinkInfoImpl.java ! test/com/sun/javadoc/testDeprecatedDocs/TestDeprecatedDocs.java ! test/com/sun/javadoc/testHref/TestHref.java ! test/com/sun/javadoc/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/com/sun/javadoc/testLinkOption/TestLinkOption.java ! test/com/sun/javadoc/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/com/sun/javadoc/testTypeParams/TestTypeParameters.java + test/com/sun/javadoc/testTypeParams/pkg/ClassUseTest3.java + test/com/sun/javadoc/testTypeParams/pkg/Foo4.java + test/com/sun/javadoc/testTypeParams/pkg/ParamTest2.java From joe.darcy at oracle.com Mon Apr 4 18:23:01 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Mon, 04 Apr 2011 18:23:01 +0000 Subject: hg: jdk7/tl/jdk: 6543593: (reflect) Clarify private final field mutability Message-ID: <20110404182310.A03E34779E@hg.openjdk.java.net> Changeset: abb29a6bc9f3 Author: darcy Date: 2011-04-04 11:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/abb29a6bc9f3 6543593: (reflect) Clarify private final field mutability Reviewed-by: dholmes, alanb, mduigou ! src/share/classes/java/lang/reflect/Constructor.java ! src/share/classes/java/lang/reflect/Field.java ! src/share/classes/java/lang/reflect/Method.java From xueming.shen at oracle.com Mon Apr 4 18:31:03 2011 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Mon, 04 Apr 2011 18:31:03 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110404183123.06565477A0@hg.openjdk.java.net> Changeset: 59f43e232481 Author: sherman Date: 2011-04-04 11:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/59f43e232481 6751338: ZIP inflater/deflater performance Summary: To use GetPrimitiveArrayCritical for bye array access Reviewed-by: bristor, alanb ! src/share/classes/java/util/zip/DeflaterOutputStream.java ! src/share/native/java/util/zip/Deflater.c ! src/share/native/java/util/zip/Inflater.c + test/java/util/zip/FlaterCriticalArray.java + test/java/util/zip/InflaterBufferSize.java Changeset: 83e5e081b4bb Author: sherman Date: 2011-04-04 11:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/83e5e081b4bb Merge From alan.bateman at oracle.com Mon Apr 4 18:33:18 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Mon, 04 Apr 2011 18:33:18 +0000 Subject: hg: jdk7/tl/jdk: 4 new changesets Message-ID: <20110404183358.21EF0477A1@hg.openjdk.java.net> Changeset: 05c9c157ec51 Author: alanb Date: 2011-04-04 18:09 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/05c9c157ec51 7029979: (fs) Path.toRealPath(boolean) should be toRealPath(LinkOption...) Reviewed-by: sherman ! src/share/classes/java/nio/file/Path.java ! src/share/classes/sun/nio/fs/Util.java ! src/share/classes/sun/util/calendar/ZoneInfoFile.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipPath.java ! src/solaris/classes/sun/nio/fs/LinuxFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/SolarisFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/UnixFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! src/solaris/classes/sun/nio/fs/UnixSecureDirectoryStream.java ! src/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! src/windows/classes/sun/nio/fs/WindowsPath.java ! test/java/nio/file/Files/CheckPermissions.java ! test/java/nio/file/Files/PassThroughFileSystem.java ! test/java/nio/file/Path/Misc.java Changeset: d5f0cf316f12 Author: alanb Date: 2011-04-04 18:12 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d5f0cf316f12 7033568: (file) Miscellaneous typos Reviewed-by: michaelm, mduigou ! src/share/classes/java/nio/file/Files.java Changeset: e9b9b0748794 Author: alanb Date: 2011-04-04 18:35 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e9b9b0748794 7030249: Eliminate use of LoadLibrary and other clean-ups Reviewed-by: ohair, chegar, mchung ! make/java/java/Makefile ! make/java/management/Makefile ! src/windows/native/com/sun/management/OperatingSystem_md.c ! src/windows/native/java/io/WinNTFileSystem_md.c ! src/windows/native/java/lang/java_props_md.c ! src/windows/native/sun/management/FileSystemImpl.c ! src/windows/native/sun/nio/fs/WindowsNativeDispatcher.c ! src/windows/native/sun/security/provider/WinCAPISeedGenerator.c Changeset: 9a3a1f8ad66b Author: alanb Date: 2011-04-04 19:32 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9a3a1f8ad66b Merge From alan.bateman at oracle.com Mon Apr 4 18:36:49 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Mon, 04 Apr 2011 18:36:49 +0000 Subject: hg: jdk7/tl/langtools: 2 new changesets Message-ID: <20110404183653.113C5477A2@hg.openjdk.java.net> Changeset: 7916df9c99be Author: alanb Date: 2011-04-04 18:10 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/7916df9c99be 7029979: (fs) Path.toRealPath(boolean) should be toRealPath(LinkOption...) Reviewed-by: mcimadamore, jjg ! src/share/classes/com/sun/tools/javac/nio/PathFileObject.java Changeset: 26b065bb4ee7 Author: alanb Date: 2011-04-04 19:36 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/26b065bb4ee7 Merge From mike.duigou at oracle.com Mon Apr 4 18:55:52 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Mon, 04 Apr 2011 18:55:52 +0000 Subject: hg: jdk7/tl/jdk: 6565585: Remove critical section in Method.invoke, Constructor.newInstance, Field.getFieldAccessor improving performance Message-ID: <20110404185602.76D1E477A3@hg.openjdk.java.net> Changeset: 9f08a221e5f2 Author: mduigou Date: 2011-04-04 11:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9f08a221e5f2 6565585: Remove critical section in Method.invoke, Constructor.newInstance, Field.getFieldAccessor improving performance Reviewed-by: alanb, dholmes, briangoetz ! src/share/classes/java/lang/reflect/AccessibleObject.java ! src/share/classes/java/lang/reflect/Constructor.java ! src/share/classes/java/lang/reflect/Field.java ! src/share/classes/java/lang/reflect/Method.java From valerie.peng at oracle.com Wed Apr 6 01:47:55 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Tue, 05 Apr 2011 18:47:55 -0700 Subject: Code Review Request for 7001094 Can't initialize SunPKCS11 more times than PKCS11 driver maxSessionCount Message-ID: <4D9BC64B.8030607@oracle.com> Sean, Do you have cycles to review this following fix: 7001094: Can't initialize SunPKCS11 more times than PKCS11 driver maxSessionCount The webrev can be found at: http://cr.openjdk.java.net/~valeriep/7001094/webrev.00/ While fixing the following issue 6918573: sun.security.pkcs11.P11RSACipher.finalize() is a scalability blocker I replaced the private field "activeSessions" of SessionManager class w/ SessionRef.totalCount(). However, this leads to incorrect number of active sessions per provider when there are more than one PKCS11 provider being installed. SessionRef.totalCount() is the total combined number of active sessions and isn't suitable for replacing the private field "activeSessions" which represents the number of active sessions of each PKCS11 provider. So, I have to revert back to using a private field "activeSessions" to keep track of the number of active sessions per provider. No regression test added for this since our PKCS11 library, i.e. Solaris and NSS, do not have any limit on the number of active sessions, and would always pass even w/ the old code. However, I've tested the fix by manually hardcoding a limit in the PKCS11 provider. Thanks, Valerie From albert.ciffone at gmail.com Wed Apr 6 10:36:00 2011 From: albert.ciffone at gmail.com (Albert Ciffone) Date: Wed, 6 Apr 2011 12:36:00 +0200 Subject: source c++ code for sunmscapi.dll Message-ID: Hi, I'm working with sunmscapi provider to deal with keys in windows keystore. My code works properly in windows with JVM 32bit installation, but in JVM 64 bits installation my code fails because sunmscapi.dll is not in this distributions. Can anybody says me where I can find the source code of this dll in order to compile it for 64 bits distributions? Thanks in advance, -------------- next part -------------- An HTML attachment was scrubbed... URL: From vincent.x.ryan at oracle.com Wed Apr 6 11:57:07 2011 From: vincent.x.ryan at oracle.com (Vincent Ryan) Date: Wed, 06 Apr 2011 12:57:07 +0100 Subject: source c++ code for sunmscapi.dll In-Reply-To: References: Message-ID: <4D9C5513.8040806@oracle.com> On 04/ 6/11 11:36 AM, Albert Ciffone wrote: > Hi, > > I'm working with sunmscapi provider to deal with keys in windows keystore. My > code works properly in windows with JVM 32bit installation, but in JVM 64 bits > installation my code fails because sunmscapi.dll is not in this distributions. > Can anybody says me where I can find the source code of this dll in order to > compile it for 64 bits distributions? > > Thanks in advance, A fix to address this RFE will appear in the next week or so: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6931562 Otherwise, the sources are in the usual place: http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/29296ea6529a From albert.ciffone at gmail.com Wed Apr 6 12:07:23 2011 From: albert.ciffone at gmail.com (Albert Ciffone) Date: Wed, 6 Apr 2011 14:07:23 +0200 Subject: source c++ code for sunmscapi.dll In-Reply-To: <4D9C5513.8040806@oracle.com> References: <4D9C5513.8040806@oracle.com> Message-ID: Hi Vincent, Thanks ;), anywise I can't wait for solution so I try to compile security.cpp for windows JVM 64bits. Regards, On Wed, Apr 6, 2011 at 1:57 PM, Vincent Ryan wrote: > On 04/ 6/11 11:36 AM, Albert Ciffone wrote: > > Hi, > > > > I'm working with sunmscapi provider to deal with keys in windows > keystore. My > > code works properly in windows with JVM 32bit installation, but in JVM 64 > bits > > installation my code fails because sunmscapi.dll is not in this > distributions. > > Can anybody says me where I can find the source code of this dll in order > to > > compile it for 64 bits distributions? > > > > Thanks in advance, > > A fix to address this RFE will appear in the next week or so: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6931562 > > Otherwise, the sources are in the usual place: > http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/29296ea6529a > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike.duigou at oracle.com Wed Apr 6 16:54:22 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Wed, 06 Apr 2011 16:54:22 +0000 Subject: hg: jdk7/tl/jdk: 6312706: Map entrySet iterators should return different entries on each call to next() Message-ID: <20110406165432.222754784A@hg.openjdk.java.net> Changeset: c1e87a18e46a Author: mduigou Date: 2011-04-06 09:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c1e87a18e46a 6312706: Map entrySet iterators should return different entries on each call to next() Reviewed-by: mduigou, alanb Contributed-by: Neil Richards ! src/share/classes/java/util/EnumMap.java ! src/share/classes/java/util/IdentityHashMap.java + test/java/util/EnumMap/DistinctEntrySetElements.java + test/java/util/EnumMap/EntrySetIteratorRemoveInvalidatesEntry.java + test/java/util/EnumMap/SimpleSerialization.java + test/java/util/IdentityHashMap/DistinctEntrySetElements.java + test/java/util/IdentityHashMap/EntrySetIteratorRemoveInvalidatesEntry.java + test/java/util/concurrent/ConcurrentHashMap/DistinctEntrySetElements.java From naoto.sato at oracle.com Wed Apr 6 17:54:01 2011 From: naoto.sato at oracle.com (naoto.sato at oracle.com) Date: Wed, 06 Apr 2011 17:54:01 +0000 Subject: hg: jdk7/tl/jdk: 7031546: test/java/util/ResourceBundle/Bug4168625Test.java fails on solaris10u9 sparc. Message-ID: <20110406175411.BE6CD4784D@hg.openjdk.java.net> Changeset: ea45b4ed1758 Author: naoto Date: 2011-04-06 10:53 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ea45b4ed1758 7031546: test/java/util/ResourceBundle/Bug4168625Test.java fails on solaris10u9 sparc. Reviewed-by: okutsu ! test/java/util/ResourceBundle/Bug4168625Test.java From alan.bateman at oracle.com Wed Apr 6 19:54:39 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Wed, 06 Apr 2011 19:54:39 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110406195458.7C1D947854@hg.openjdk.java.net> Changeset: cd86fbf11e33 Author: alanb Date: 2011-04-06 20:51 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cd86fbf11e33 7034155: (ch) NullPointerException in sun.io.ch.IOUtil when OOM is thrown Reviewed-by: forax ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/nio/ch/IOUtil.java Changeset: e279678f9f66 Author: alanb Date: 2011-04-06 20:54 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e279678f9f66 Merge From lance.andersen at oracle.com Wed Apr 6 21:38:20 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Wed, 06 Apr 2011 21:38:20 +0000 Subject: hg: jdk7/tl/jdk: 7034471: Wrap registeredDrivers in DriverManager Message-ID: <20110406213829.B1FDD4785A@hg.openjdk.java.net> Changeset: d5bc10b1aa2c Author: lancea Date: 2011-04-06 17:37 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d5bc10b1aa2c 7034471: Wrap registeredDrivers in DriverManager Reviewed-by: alanb, briangoetz ! src/share/classes/java/sql/DriverManager.java From valerie.peng at oracle.com Thu Apr 7 00:18:43 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Wed, 06 Apr 2011 17:18:43 -0700 Subject: code review request: 7032354: no-addresses should not be used on acceptor side In-Reply-To: <4D92BEDF.3040605@oracle.com> References: <4D92BEDF.3040605@oracle.com> Message-ID: <4D9D02E3.1010007@oracle.com> Changes look good to me. Thanks, Valerie On 03/29/11 10:25 PM, Weijun Wang wrote: > Hi Valerie > > http://cr.openjdk.java.net/~weijun/7032354/webrev.00/ > > I've removed the use of this setting on the acceptor side, now host > address check is only performed if caddr is inside service ticket and > the acceptor has a way to get the initiator's address (currently, thru > channel binding only). > > Thanks > Max > > > ---------------- > *Change Request ID*: 7032354 > *Synopsis*: no-addresses should not be used on acceptor side > > > === *Description* =============================================== > We now uses the no-addresses setting in krb5.conf on the acceptor side > to check if the caddr field in an incoming service ticket matches the > initiator's host address. According to available docs on krb5.conf, > this setting is only used by the initiator side when requesting for > the initial TGT. > > http://www.daemon-systems.org/man/krb5.conf.5.html > > no-addresses = boolean > When obtaining initial credentials, request them > for an empty set of addresses, making the tickets > valid from any address. > > http://web.mit.edu/kerberos/krb5-1.4/krb5-1.4.1/doc/krb5-admin/libdefaults.html#libdefaults > > > noaddresses > Setting this flag causes the initial Kerberos ticket > to be addressless. The default for the flag is set. > From weijun.wang at oracle.com Thu Apr 7 00:53:52 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Thu, 07 Apr 2011 00:53:52 +0000 Subject: hg: jdk7/tl/jdk: 7032354: no-addresses should not be used on acceptor side Message-ID: <20110407005402.E835C47862@hg.openjdk.java.net> Changeset: 06c7ee973e05 Author: weijun Date: 2011-04-07 08:51 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/06c7ee973e05 7032354: no-addresses should not be used on acceptor side Reviewed-by: valeriep ! src/share/classes/sun/security/krb5/KrbApReq.java ! test/sun/security/krb5/auto/KDC.java + test/sun/security/krb5/auto/NoAddresses.java From joe.darcy at oracle.com Thu Apr 7 02:31:13 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Thu, 07 Apr 2011 02:31:13 +0000 Subject: hg: jdk7/tl/langtools: 7033809: Rename "disjunctive" to "union" in javax.lang.model Message-ID: <20110407023119.79C0E47868@hg.openjdk.java.net> Changeset: 8cc5b440fdde Author: darcy Date: 2011-04-06 19:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/8cc5b440fdde 7033809: Rename "disjunctive" to "union" in javax.lang.model Reviewed-by: mcimadamore, jjg - src/share/classes/com/sun/source/tree/DisjunctiveTypeTree.java ! src/share/classes/com/sun/source/tree/Tree.java ! src/share/classes/com/sun/source/tree/TreeVisitor.java + src/share/classes/com/sun/source/tree/UnionTypeTree.java ! src/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/share/classes/com/sun/source/util/TreeScanner.java ! src/share/classes/com/sun/tools/javac/code/Flags.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/share/classes/com/sun/tools/javac/tree/TreeCopier.java ! src/share/classes/com/sun/tools/javac/tree/TreeInfo.java ! src/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/share/classes/com/sun/tools/javac/tree/TreeScanner.java ! src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java - src/share/classes/javax/lang/model/type/DisjunctiveType.java ! src/share/classes/javax/lang/model/type/TypeKind.java ! src/share/classes/javax/lang/model/type/TypeVisitor.java + src/share/classes/javax/lang/model/type/UnionType.java ! src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java ! src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java ! src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java ! src/share/classes/javax/lang/model/util/TypeKindVisitor7.java From kumar.x.srinivasan at oracle.com Thu Apr 7 02:32:18 2011 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Thu, 07 Apr 2011 02:32:18 +0000 Subject: hg: jdk7/tl/jdk: 7033954: (launcher) Launchers not built with mapfiles Message-ID: <20110407023228.25FB447869@hg.openjdk.java.net> Changeset: 244b27bb14f8 Author: ksrini Date: 2011-04-06 19:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/244b27bb14f8 7033954: (launcher) Launchers not built with mapfiles Reviewed-by: ohair ! make/com/sun/java/pack/Makefile + make/com/sun/java/pack/mapfile-vers-unpack200 ! make/common/Mapfile-vers.gmk ! make/common/Program.gmk ! make/java/main/java/Makefile ! make/java/main/java/mapfile-amd64 ! make/java/main/java/mapfile-i586 ! make/java/main/java/mapfile-sparc ! make/java/main/java/mapfile-sparcv9 From bradford.wetmore at oracle.com Thu Apr 7 04:46:48 2011 From: bradford.wetmore at oracle.com (Brad Wetmore) Date: Wed, 06 Apr 2011 21:46:48 -0700 Subject: Review 7031343: Provide API changes to support future GCM AEAD ciphers Message-ID: <4D9D41B8.4010207@oracle.com> Hi Xuelei/Valerie, Our JDK 7 freeze window is fast closing and I'd like to get this in for b140, so will need a quick turnaround to make this happen. 7031343: Provide API changes to support future GCM AEAD ciphers As we talked about, as part of the National Security Agency's Suite B effort [1] (modernization of the national crypto infrastructure), the JDK will soon need to support the Galois Counter Mode (GCM) cipher mode [2] for ciphers like AES. (e.g. GCM is also being used in some new TLS ciphersuites [3][4]). We will not be able to provide a full implementation of GCM in JDK 7 FCS, but we would like to be able to add this as a potential enhancement in a future JDK 7 Update Release (UR). Adding GCM in an JDK 7 UR will require API changes in JDK 7 now. The changes are fairly small, low risk, and localized. There are some minor changes to Cipher/CipherSpi, and two new classes for an AEAD Exception and a GCMParameterSpec. http://cr.openjdk.java.net/~wetmore/7031343/javadocs.00/ http://cr.openjdk.java.net/~wetmore/7031343/webrev.00/ A few points worth calling out: 1) The API's were designed with an eye to both CCM and GCM. GCM is the important one now from the Suite B perspective. We'll probably add similar CCM Parameters in JDK 8. 2) If algorithm parameters are not derivable from the supplied inputs, Cipher.init() will normally trigger the generation of algorithm parameters based on provider-specific default values. But note that XML GCM is using 128 bit tags, and TLS 1.2 is using 96 bit tags, so there really isn't a completely clear-cut default. And in GCM for IV, that would push IV generation down into the CSP provider, which means the provider must keep track of all previously used IV's, which could be perceived as a 128-bit memory leak for each GCM operation on reused Cipher objects. Language was added to allow providers to select IV if they really want to, but in most cases and for interoperability, the caller really should be specifying the tagLen/IV in a GCMParameterSpec. 3) AEAD (GCM/CCM) tags are appended to the ciphertext on encryption, and verified/removed during decryption, as is done in RFC 5116[5], and is reflected in other GCM APIs. Because Ciphers are reset after each doFinal(), we would have had to create an intermediate state/getTag(), or add some kind of outbound data structure. Appending was far cleaner. 4) AEADBadTagException is a subclass of BadPaddingException, which is a checked exception currently thrown by the doFinal methods. While it's not exactly BadPadding in the true sense of padding, it is close and was the best option for a checked Exception. A RunTimeException really should be reserved for programming mistakes, not normal operations. 5) AAD can be supplied to the cipher in chunks, and is not restricted to a single shot as in PKCS11. This will allow applications with huge AADs the flexibility to not have to store everything in memory (media files). Also, the underlying GCM/CCM algorithms process all AAD before the plain/ciphertext, so we require updateAAD() to be called before plain/ciphertext is handled. 6) As usual for adding new methods to these engine classes, for backwards source and binary compatibility with older providers, the new updateAAD() methods in CipherSpi will throw UnsupportedOperationExceptions unless the provider overrides the method. Thanks, Brad [1]: http://www.nsa.gov/ia/programs/suiteb_cryptography/ [2]: http://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf [3]: http://www.rfc-editor.org/info/rfc5288 [4]: http://www.rfc-editor.org/info/rfc5289 [5]: http://www.rfc-editor.org/info/rfc5116 From chris.hegarty at oracle.com Thu Apr 7 14:49:14 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Thu, 07 Apr 2011 14:49:14 +0000 Subject: hg: jdk7/tl/jdk: 7034657: Update Creative Commons license URL in legal notices Message-ID: <20110407144924.EDAC84788C@hg.openjdk.java.net> Changeset: 31619dfa6a4a Author: dl Date: 2011-04-07 15:06 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/31619dfa6a4a 7034657: Update Creative Commons license URL in legal notices Reviewed-by: chegar ! src/share/classes/java/util/AbstractQueue.java ! src/share/classes/java/util/ArrayDeque.java ! src/share/classes/java/util/Deque.java ! src/share/classes/java/util/NavigableMap.java ! src/share/classes/java/util/NavigableSet.java ! src/share/classes/java/util/Queue.java ! src/share/classes/java/util/concurrent/AbstractExecutorService.java ! src/share/classes/java/util/concurrent/ArrayBlockingQueue.java ! src/share/classes/java/util/concurrent/BlockingDeque.java ! src/share/classes/java/util/concurrent/BlockingQueue.java ! src/share/classes/java/util/concurrent/BrokenBarrierException.java ! src/share/classes/java/util/concurrent/Callable.java ! src/share/classes/java/util/concurrent/CancellationException.java ! src/share/classes/java/util/concurrent/CompletionService.java ! src/share/classes/java/util/concurrent/ConcurrentHashMap.java ! src/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java ! src/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java ! src/share/classes/java/util/concurrent/ConcurrentMap.java ! src/share/classes/java/util/concurrent/ConcurrentNavigableMap.java ! src/share/classes/java/util/concurrent/ConcurrentSkipListMap.java ! src/share/classes/java/util/concurrent/ConcurrentSkipListSet.java ! src/share/classes/java/util/concurrent/CopyOnWriteArraySet.java ! src/share/classes/java/util/concurrent/CountDownLatch.java ! src/share/classes/java/util/concurrent/CyclicBarrier.java ! src/share/classes/java/util/concurrent/DelayQueue.java ! src/share/classes/java/util/concurrent/Delayed.java ! src/share/classes/java/util/concurrent/Exchanger.java ! src/share/classes/java/util/concurrent/ExecutionException.java ! src/share/classes/java/util/concurrent/Executor.java ! src/share/classes/java/util/concurrent/ExecutorCompletionService.java ! src/share/classes/java/util/concurrent/ExecutorService.java ! src/share/classes/java/util/concurrent/Executors.java ! src/share/classes/java/util/concurrent/ForkJoinPool.java ! src/share/classes/java/util/concurrent/ForkJoinTask.java ! src/share/classes/java/util/concurrent/ForkJoinWorkerThread.java ! src/share/classes/java/util/concurrent/Future.java ! src/share/classes/java/util/concurrent/FutureTask.java ! src/share/classes/java/util/concurrent/LinkedBlockingDeque.java ! src/share/classes/java/util/concurrent/LinkedBlockingQueue.java ! src/share/classes/java/util/concurrent/LinkedTransferQueue.java ! src/share/classes/java/util/concurrent/Phaser.java ! src/share/classes/java/util/concurrent/PriorityBlockingQueue.java ! src/share/classes/java/util/concurrent/RecursiveAction.java ! src/share/classes/java/util/concurrent/RecursiveTask.java ! src/share/classes/java/util/concurrent/RejectedExecutionException.java ! src/share/classes/java/util/concurrent/RejectedExecutionHandler.java ! src/share/classes/java/util/concurrent/RunnableFuture.java ! src/share/classes/java/util/concurrent/RunnableScheduledFuture.java ! src/share/classes/java/util/concurrent/ScheduledExecutorService.java ! src/share/classes/java/util/concurrent/ScheduledFuture.java ! src/share/classes/java/util/concurrent/ScheduledThreadPoolExecutor.java ! src/share/classes/java/util/concurrent/Semaphore.java ! src/share/classes/java/util/concurrent/SynchronousQueue.java ! src/share/classes/java/util/concurrent/ThreadFactory.java ! src/share/classes/java/util/concurrent/ThreadLocalRandom.java ! src/share/classes/java/util/concurrent/ThreadPoolExecutor.java ! src/share/classes/java/util/concurrent/TimeUnit.java ! src/share/classes/java/util/concurrent/TimeoutException.java ! src/share/classes/java/util/concurrent/TransferQueue.java ! src/share/classes/java/util/concurrent/atomic/AtomicBoolean.java ! src/share/classes/java/util/concurrent/atomic/AtomicInteger.java ! src/share/classes/java/util/concurrent/atomic/AtomicIntegerArray.java ! src/share/classes/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.java ! src/share/classes/java/util/concurrent/atomic/AtomicLong.java ! src/share/classes/java/util/concurrent/atomic/AtomicLongArray.java ! src/share/classes/java/util/concurrent/atomic/AtomicLongFieldUpdater.java ! src/share/classes/java/util/concurrent/atomic/AtomicMarkableReference.java ! src/share/classes/java/util/concurrent/atomic/AtomicReference.java ! src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java ! src/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java ! src/share/classes/java/util/concurrent/atomic/AtomicStampedReference.java ! src/share/classes/java/util/concurrent/atomic/package-info.java ! src/share/classes/java/util/concurrent/locks/AbstractOwnableSynchronizer.java ! src/share/classes/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.java ! src/share/classes/java/util/concurrent/locks/AbstractQueuedSynchronizer.java ! src/share/classes/java/util/concurrent/locks/Condition.java ! src/share/classes/java/util/concurrent/locks/Lock.java ! src/share/classes/java/util/concurrent/locks/LockSupport.java ! src/share/classes/java/util/concurrent/locks/ReadWriteLock.java ! src/share/classes/java/util/concurrent/locks/ReentrantLock.java ! src/share/classes/java/util/concurrent/locks/ReentrantReadWriteLock.java ! src/share/classes/java/util/concurrent/locks/package-info.java ! src/share/classes/java/util/concurrent/package-info.java ! test/java/util/PriorityQueue/NoNulls.java ! test/java/util/PriorityQueue/PriorityQueueSort.java ! test/java/util/Random/DistinctSeeds.java ! test/java/util/concurrent/BlockingQueue/CancelledProducerConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/LoopHelpers.java ! test/java/util/concurrent/BlockingQueue/MultipleProducersSingleConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/OfferDrainToLoops.java ! test/java/util/concurrent/BlockingQueue/PollMemoryLeak.java ! test/java/util/concurrent/BlockingQueue/ProducerConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/SingleProducerMultipleConsumerLoops.java ! test/java/util/concurrent/ConcurrentHashMap/LoopHelpers.java ! test/java/util/concurrent/ConcurrentHashMap/MapCheck.java ! test/java/util/concurrent/ConcurrentHashMap/MapLoops.java ! test/java/util/concurrent/ConcurrentQueues/ConcurrentQueueLoops.java ! test/java/util/concurrent/ConcurrentQueues/GCRetention.java ! test/java/util/concurrent/ConcurrentQueues/IteratorWeakConsistency.java ! test/java/util/concurrent/ConcurrentQueues/LoopHelpers.java ! test/java/util/concurrent/ConcurrentQueues/RemovePollRace.java ! test/java/util/concurrent/Exchanger/ExchangeLoops.java ! test/java/util/concurrent/Exchanger/LoopHelpers.java ! test/java/util/concurrent/ExecutorCompletionService/ExecutorCompletionServiceLoops.java ! test/java/util/concurrent/ExecutorCompletionService/LoopHelpers.java ! test/java/util/concurrent/FutureTask/CancelledFutureLoops.java ! test/java/util/concurrent/FutureTask/LoopHelpers.java ! test/java/util/concurrent/Phaser/Arrive.java ! test/java/util/concurrent/Phaser/Basic.java ! test/java/util/concurrent/Phaser/FickleRegister.java ! test/java/util/concurrent/Phaser/PhaseOverflow.java ! test/java/util/concurrent/Phaser/TieredArriveLoops.java ! test/java/util/concurrent/ScheduledThreadPoolExecutor/DelayOverflow.java ! test/java/util/concurrent/Semaphore/PermitOverflow.java ! test/java/util/concurrent/Semaphore/RacingReleases.java ! test/java/util/concurrent/forkjoin/Integrate.java ! test/java/util/concurrent/forkjoin/NQueensCS.java ! test/java/util/concurrent/locks/ReentrantLock/CancelledLockLoops.java ! test/java/util/concurrent/locks/ReentrantLock/LockOncePerThreadLoops.java ! test/java/util/concurrent/locks/ReentrantLock/LoopHelpers.java ! test/java/util/concurrent/locks/ReentrantLock/SimpleReentrantLockLoops.java ! test/java/util/concurrent/locks/ReentrantLock/TimeoutLockLoops.java ! test/java/util/concurrent/locks/ReentrantReadWriteLock/LoopHelpers.java ! test/java/util/concurrent/locks/ReentrantReadWriteLock/MapLoops.java ! test/java/util/concurrent/locks/ReentrantReadWriteLock/RWMap.java From lance.andersen at oracle.com Thu Apr 7 15:25:53 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Thu, 07 Apr 2011 15:25:53 +0000 Subject: hg: jdk7/tl/jdk: 7034656: Address lint warnings for DriverManager Message-ID: <20110407152602.CD1CF4788F@hg.openjdk.java.net> Changeset: 5137806a3e34 Author: lancea Date: 2011-04-07 11:25 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5137806a3e34 7034656: Address lint warnings for DriverManager Reviewed-by: alanb, forax, ohair ! src/share/classes/java/sql/DriverManager.java From bradford.wetmore at oracle.com Thu Apr 7 15:46:42 2011 From: bradford.wetmore at oracle.com (Bradford Wetmore) Date: Thu, 07 Apr 2011 08:46:42 -0700 Subject: Review 7031343: Provide API changes to support future GCM AEAD ciphers In-Reply-To: <4D9D41B8.4010207@oracle.com> References: <4D9D41B8.4010207@oracle.com> Message-ID: <4D9DDC62.5090308@oracle.com> Thanks for looking at this again. On 4/7/2011 12:46 AM, Xuelei Fan wrote: > Looks fine to me. > > A few very minor suggestions: > > Cipher.java > ========================================== > C1: > > 98 * authenticity tag (checksum). This tag is appended to the ciphertext > > > I think "authentication tag" is more formal . Ok. > I'm not sure whether the > "checksum" is a misleading comment to the readers. To me, checksum means > none-key-hash operations. I debated putting that in thinking that it might help someone who knows JCE but is not familiar with GCM. Mac would be a better choice. I'll likely use that (or take it out completely). > C2: > > 112 * // If the GCMParameterSpec is needed again > 113 * cipher.getParameters().getParameterSpec( > 114 * GCMParameterSpec.class).getTLen(...); > > This block may be not necessary any more. There is no set-methods for > GCMParameterSpec. If you want to keep the block, I want suggest to > return the GCMParameterSpec rather than the Tag length. Point taken. > GCMParameterSpec .java > ========================================== > C3: > I would suggest you use "authentication tag" rather than "tag" in the > spec, as would make it friendly to search engine. Ok. I'll wait to see if there are further comments, and will be submitting for internal review later today. Thanks Andrew! Brad On 4/6/2011 9:46 PM, Brad Wetmore wrote: > Hi Xuelei/Valerie, > > Our JDK 7 freeze window is fast closing and I'd like to get this in for > b140, so will need a quick turnaround to make this happen. > > 7031343: Provide API changes to support future GCM AEAD ciphers > > As we talked about, as part of the National Security Agency's Suite B > effort [1] (modernization of the national crypto infrastructure), the > JDK will soon need to support the Galois Counter Mode (GCM) cipher mode > [2] for ciphers like AES. (e.g. GCM is also being used in some new TLS > ciphersuites [3][4]). > > We will not be able to provide a full implementation of GCM in JDK 7 > FCS, but we would like to be able to add this as a potential enhancement > in a future JDK 7 Update Release (UR). Adding GCM in an JDK 7 UR will > require API changes in JDK 7 now. > > The changes are fairly small, low risk, and localized. There are some > minor changes to Cipher/CipherSpi, and two new classes for an AEAD > Exception and a GCMParameterSpec. > > http://cr.openjdk.java.net/~wetmore/7031343/javadocs.00/ > http://cr.openjdk.java.net/~wetmore/7031343/webrev.00/ > > A few points worth calling out: > > 1) The API's were designed with an eye to both CCM and GCM. GCM is the > important one now from the Suite B perspective. We'll probably add > similar CCM Parameters in JDK 8. > > 2) If algorithm parameters are not derivable from the supplied inputs, > Cipher.init() will normally trigger the generation of algorithm > parameters based on provider-specific default values. But note that XML > GCM is using 128 bit tags, and TLS 1.2 is using 96 bit tags, so there > really isn't a completely clear-cut default. And in GCM for IV, that > would push IV generation down into the CSP provider, which means the > provider must keep track of all previously used IV's, which could be > perceived as a 128-bit memory leak for each GCM operation on reused > Cipher objects. Language was added to allow providers to select IV if > they really want to, but in most cases and for interoperability, the > caller really should be specifying the tagLen/IV in a GCMParameterSpec. > > 3) AEAD (GCM/CCM) tags are appended to the ciphertext on encryption, and > verified/removed during decryption, as is done in RFC 5116[5], and is > reflected in other GCM APIs. Because Ciphers are reset after each > doFinal(), we would have had to create an intermediate state/getTag(), > or add some kind of outbound data structure. Appending was far cleaner. > > 4) AEADBadTagException is a subclass of BadPaddingException, which is a > checked exception currently thrown by the doFinal methods. While it's > not exactly BadPadding in the true sense of padding, it is close and was > the best option for a checked Exception. A RunTimeException really > should be reserved for programming mistakes, not normal operations. > > 5) AAD can be supplied to the cipher in chunks, and is not restricted to > a single shot as in PKCS11. This will allow applications with huge AADs > the flexibility to not have to store everything in memory (media files). > Also, the underlying GCM/CCM algorithms process all AAD before the > plain/ciphertext, so we require updateAAD() to be called before > plain/ciphertext is handled. > > 6) As usual for adding new methods to these engine classes, for > backwards source and binary compatibility with older providers, the new > updateAAD() methods in CipherSpi will throw > UnsupportedOperationExceptions unless the provider overrides the method. > > Thanks, > > Brad > > [1]: http://www.nsa.gov/ia/programs/suiteb_cryptography/ > [2]: http://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf > [3]: http://www.rfc-editor.org/info/rfc5288 > [4]: http://www.rfc-editor.org/info/rfc5289 > [5]: http://www.rfc-editor.org/info/rfc5116 From kumar.x.srinivasan at oracle.com Thu Apr 7 19:15:01 2011 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Thu, 07 Apr 2011 19:15:01 +0000 Subject: hg: jdk7/tl/jdk: 7029048: (launcher) fence the launcher against LD_LIBRARY_PATH Message-ID: <20110407191519.517F447898@hg.openjdk.java.net> Changeset: d8dfd1a0bd8d Author: ksrini Date: 2011-04-07 12:06 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d8dfd1a0bd8d 7029048: (launcher) fence the launcher against LD_LIBRARY_PATH Reviewed-by: mchung, ohair ! src/share/bin/jli_util.h ! src/solaris/bin/java_md.c ! test/tools/launcher/ExecutionEnvironment.java + test/tools/launcher/Test7029048.java ! test/tools/launcher/TestHelper.java From valerie.peng at oracle.com Thu Apr 7 23:13:56 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Thu, 07 Apr 2011 16:13:56 -0700 Subject: code review request: 7030180: AES 128/256 decrypt exception In-Reply-To: <4D9556AF.4060206@oracle.com> References: <4D9556AF.4060206@oracle.com> Message-ID: <4D9E4534.6070504@oracle.com> The change looks fine. Well, I am fine w/ only provide the workaround for this MIT bug in jdk7 Valerie On 03/31/11 09:38 PM, Weijun Wang wrote: > Hi Valerie > > http://cr.openjdk.java.net/~weijun/7030180/webrev.00/ > > A bug in MIT krb5 1.8 triggers this exception (read evaluation below). > They will fix it in 1.8.4 and 1.9. At the mean time, we can check both > the session key and the subkey on the acceptor side. > > I think this does not deserve a backport to 6u releases. Your opinion? > > Thanks > Max > > > -------- Original Message -------- > *Change Request ID*: 7030180 > *Synopsis*: AES 128/256 decrypt exception > > === *Description* > ============================================================ > I tried to use SPNEGO. > > When I use DES3 It works for a principal. When I try to use AES > 128/256 It crashes. > > ERROR MESSAGES/STACK TRACES THAT OCCUR : > > GSSException: Failure unspecified at GSS-API level (Mechanism level: > Checksum failed) > at > sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:741) > .... > > === *Evaluation* > ============================================================= > The customer is using krb5 1.8 on the client side. There is a known > issue that KRB-CRED inside AP-REQ is encrypted with the authenticator > subkey instead of the ticket session key: > > http://krbdev.mit.edu/rt/Ticket/Display.html?id=6768&user=guest&pass=guest > > > At the same time, we can try both the session key and the sub key in > Java, this is also what MIT and Heimdal have done for years. > From kumar.x.srinivasan at oracle.com Fri Apr 8 01:37:45 2011 From: kumar.x.srinivasan at oracle.com (kumar.x.srinivasan at oracle.com) Date: Fri, 08 Apr 2011 01:37:45 +0000 Subject: hg: jdk7/tl/jdk: 7034700: (unpack200) build fails with fastdebug builds Message-ID: <20110408013755.A89BA478B8@hg.openjdk.java.net> Changeset: 587e968b03ee Author: ksrini Date: 2011-04-07 17:08 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/587e968b03ee 7034700: (unpack200) build fails with fastdebug builds Reviewed-by: ohair ! make/com/sun/java/pack/Makefile From xuelei.fan at oracle.com Fri Apr 8 09:01:54 2011 From: xuelei.fan at oracle.com (xuelei.fan at oracle.com) Date: Fri, 08 Apr 2011 09:01:54 +0000 Subject: hg: jdk7/tl/jdk: 6976117: SSLContext.getInstance("TLSv1.1") returns SSLEngines/SSLSockets without TLSv1.1 enabled Message-ID: <20110408090203.BAB61478DA@hg.openjdk.java.net> Changeset: 9c29dd06e138 Author: xuelei Date: 2011-04-08 02:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9c29dd06e138 6976117: SSLContext.getInstance("TLSv1.1") returns SSLEngines/SSLSockets without TLSv1.1 enabled Summary: Reorg the SSLContext implementation Reviewed-by: weijun ! src/share/classes/sun/security/ssl/CipherSuiteList.java - src/share/classes/sun/security/ssl/DefaultSSLContextImpl.java ! src/share/classes/sun/security/ssl/JsseJce.java ! src/share/classes/sun/security/ssl/ProtocolList.java ! src/share/classes/sun/security/ssl/SSLContextImpl.java ! src/share/classes/sun/security/ssl/SSLEngineImpl.java ! src/share/classes/sun/security/ssl/SSLServerSocketFactoryImpl.java ! src/share/classes/sun/security/ssl/SSLServerSocketImpl.java ! src/share/classes/sun/security/ssl/SSLSocketFactoryImpl.java ! src/share/classes/sun/security/ssl/SSLSocketImpl.java ! src/share/classes/sun/security/ssl/SunJSSE.java + test/sun/security/ssl/javax/net/ssl/SSLContextVersion.java From chris.hegarty at oracle.com Fri Apr 8 14:01:38 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Fri, 08 Apr 2011 14:01:38 +0000 Subject: hg: jdk7/tl/jdk: 7035020: ForkJoinPool.invoke may deadlock if parallelism = 1 Message-ID: <20110408140156.15DA2478EA@hg.openjdk.java.net> Changeset: 8fbd15bd6149 Author: dl Date: 2011-04-08 10:33 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8fbd15bd6149 7035020: ForkJoinPool.invoke may deadlock if parallelism = 1 Reviewed-by: chegar ! src/share/classes/java/util/concurrent/ForkJoinPool.java From valerie.peng at oracle.com Sat Apr 9 00:33:53 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Fri, 08 Apr 2011 17:33:53 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D96E9F0.2070909@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> Message-ID: <4D9FA971.303@oracle.com> *src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java* *src/share/classes/javax/security/auth/kerberos/KerberosKey.java* *src/share/classes/sun/misc/SharedSecrets.java* *src/share/classes/sun/security/jgss/krb5/Krb5AcceptCredential.java *=> All look fine.* **src/share/classes/sun/security/jgss/krb5/Krb5Util.java* => 1) So, since when do we populate the Subject w/ Krb5AcceptCredential objects? I thought only Krb5LoginModule would "write" the subject's private cred set and I didn't find Krb5AcceptCredential objects added there. 224 Krb5AcceptCredential k5ac = SubjectComber.find( 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); => 2) Inside the getKKeys() method, you refresh the set of KerberoKey objects in the subject when the subject isn't read only. However, in Krb5LoginModule, KerberosKey objects are only stored into the Subject's private cred set when "storeKey" is true. Seems inconsistent? 271 public KerberosKey[] getKKeys() { => 3) I don't quite understand why there is a destroy() method that does nothing... At a minimum, I'd expect we need to reset the fields, so that they aren't usable or empty, right? Perhaps, we also need to destroy the individual KeyTab and KerberosKey objects in the lists? 316 public void destroy() { 317 // Nothing to do now 318 } ||*src/share/classes/sun/security/jgss/krb5/SubjectComber.java * => I wonder why do you add this? The previous impl only search for publicly defined Kerberos objects, i.e. KerberosKey, KerberosTicket, etc. I thought you said in previous email that we don't populate Subject's private credential set w/ Krb5AcceptCredential objects? 100 credClass == Krb5AcceptCredential.class) { *src/share/classes/sun/security/krb5/Config.java* ***src/share/classes/sun/security/krb5/EncryptionKey.java **src/share/classes/sun/security/krb5/KrbAsRep.java *=> All look fine * *||*src/share/classes/sun/security/krb5/KrbAsReqBuilder.java* => 1) This class does store its own copy of password, so shouldn't you move the "does not" on line 49 to line 50?* * 49 * This class *does not:* 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) 51 * a. Name of KDCs for a realm 52 * b. Server availability, timeout, UDP or TCP 53 * d. KRB_ERR_RESPONSE_TOO_BIG 54 * 2. Stores its own copy of password, this means: 55 * a. Do not change/wipe it before Builder finish 56 * b. Builder will not wipe it for you * *I am still looking at the rest of changes, just want to send what I have now, so you don't wait too long. Thanks, Valerie * *On 04/02/11 02:18 AM, Weijun Wang wrote: > Updated again: > > http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ > > Changes: > > 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we > will add to and remove from private credentials set. Add and remove > are only done when !subject.isReadOnly(). Only remove keys for this > principal. > > 2. Use the class above in KeyTab.getKeys(). > > 3. Remove a uselss method in KDC.java test. > > 4. Update new test KeyTabCompat.java, make sure after keytab refresh, > the old key in priv cred set is removed. > > Thanks > Max > > > > On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >> I think we need to clean up the old ones if we added it there. >> Conceptually, this would fit closer w/ the "dynamic key tab" support. >> One straightforward way for us to do this is to subclass KerberosKey >> class and then we can remove all KerberosKey objects which are >> implemented using this class at refresh time. >> Just an idea. >> Valerie >> >> On 04/01/11 02:14 AM, Weijun Wang wrote: >>> Hi Valerie >>> >>> Updated again: >>> >>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>> >>> 1. KeyTab can be used by anyone >>> 2. The two compatibility support >>> >>> As for adding keys (from keytab) into private credentials set, I >>> haven't cleaned up old ones. Since it's a set, this means if old keys >>> are removed from the keytab, they stay in the set. The set is never >>> really used by our code, so I think it's harmless. I really don't know >>> how to clean up. Remove all keys for this principal? But we do this >>> because we want to keep compatibility and worry about people directly >>> manipulating the set, and I cannot predict what they will do with the >>> set. >>> >>> Thanks >>> Max >>> >>> >>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>> >>>> >>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>> Max, >>>>> >>>>> I like this new approach of yours better. >>>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>>> put >>>>> KerberosKeys inside a subject's private cred set. >>>>> There is also a possibility that apps may read the subject's private >>>>> credentials set for KerberosKeys that we used to put in and they >>>>> won't >>>>> find the keys anymore since it's the KeyTab objects that we put into >>>>> the >>>>> private cred set after this dynamic keytab support. Thoughts? >>>> >>>> No, I haven't thought about it. >>>> >>>> We can put a snapshot of keys there at the beginning and refresh them >>>> whenever a getKeys() is called. This should be harmless because we >>>> don't >>>> really use the keys if keytab objects (not keytab files) exist. I >>>> can do >>>> that. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>>> >>>>> Valerie >>>>> >>>>> >>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>> Hi Valerie >>>>>> >>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>> >>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's >>>>>> resolved, >>>>>> we have a list of keys with different etypes as the private >>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>>>> is not always at the same time as the mapping (converting from >>>>>> one to >>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>> unresolved. >>>>>> >>>>>> Another solution is to revert back to my original KeyTab without an >>>>>> intended user. This means several changes: >>>>>> >>>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>>> *one* keytab, now we also need multiple keytabs, because there might >>>>>> be multiple keytabs in the subject's private credentials set and we >>>>>> cannot tell which is for who. Therefore we collect all of them, when >>>>>> the keys are needed at AP-REP time, we call getKeys() on all of >>>>>> them, >>>>>> and return the combination. Hopefully there won't be two keys for >>>>>> the >>>>>> same principal with same kvno and same etype. I regard that as an >>>>>> abuse. >>>>>> >>>>>> Currently when there is no serverPrincipal specified in the >>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>>> private credentials set and use the KerberosPrincipal info >>>>>> inside, and >>>>>> then get all KerberosKeys for the same principal. We have never >>>>>> really >>>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>>>> will have a big change: the first step is always finding a >>>>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>>>> specified, we find a matched one, otherwise, we just pick one and >>>>>> use >>>>>> it. And then, from the private credentials set, we fetch all >>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>> >>>>>> I think this is the correct way to go. Of course, for compatibility >>>>>> reason, we assume there are third party codes that put KerberosKeys >>>>>> inside a subject's private credentials set but hasn't put any >>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, >>>>>> but we >>>>>> can accept it. >>>>>> >>>>>> Here is a partial webrev: >>>>>> >>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>> >>>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>>> objects are now retrieved by >>>>>> >>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>> + subj, null, null, KeyTab.class); >>>>>> >>>>>> so no principal name is used, and we retrive "many". >>>>>> >>>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>>> not deserve a CCC. >>>>>> >>>>>> Thanks >>>>>> Max >>>>>> >>>>>> >>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>> Max, >>>>>>> >>>>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>> Have you considered a different approach like: >>>>>>> Instead of adding the whole KeyTab object into the Subject's >>>>>>> private >>>>>>> credential set, we add a "to-be-resolved" KerberosKey object. >>>>>>> When we >>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>> object to >>>>>>> re-fresh its value if needed. This approach is conceptually >>>>>>> closer to >>>>>>> what we had and the changes aren't as dramatic and seems to meet >>>>>>> the >>>>>>> need required by 6894072. >>>>>>> >>>>>>> I'll continue to review your webrev, but just want to kick this >>>>>>> idea >>>>>>> off >>>>>>> w/ you and see if it may work. >>>>>>> Valerie >>>>>>> >>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>> Hi Valerie >>>>>>>> >>>>>>>> Updated webrev: >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>> >>>>>>>> Changes since last version: >>>>>>>> >>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New >>>>>>>> getInstance() >>>>>>>> arguments, new getPrincipal() method. >>>>>>>> >>>>>>>> It can only be non-null now, but I didn't say anything in the >>>>>>>> spec. >>>>>>>> I'm hoping it can be null in the future to support multiple >>>>>>>> service >>>>>>>> principal in a single service. >>>>>>>> >>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will >>>>>>>> be put >>>>>>>> inside private credentials set. >>>>>>>> >>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>> a) Generics for find() and findMany() >>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>> >>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>>> >>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>> >>>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>>> after >>>>>>>> JAAS commit. >>>>>>>> >>>>>>>> This time I'd like to first make sure implementation is >>>>>>>> correct, and >>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>> >>>>>>>> Thanks >>>>>>>> Max >>>>>>> >>>>> >> -------------- next part -------------- An HTML attachment was scrubbed... URL: From weijun.wang at oracle.com Sat Apr 9 10:00:00 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Sat, 9 Apr 2011 18:00:00 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D9FA971.303@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> Message-ID: <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> On Apr 9, 2011, at 8:33 AM, Valerie (Yu-Ching) Peng wrote: > > src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java > src/share/classes/javax/security/auth/kerberos/KerberosKey.java > src/share/classes/sun/misc/SharedSecrets.java > src/share/classes/sun/security/jgss/krb5/Krb5AcceptCredential.java > => All look fine. > > src/share/classes/sun/security/jgss/krb5/Krb5Util.java > => 1) So, since when do we populate the Subject w/ Krb5AcceptCredential objects? I thought only Krb5LoginModule would "write" the subject's private cred set and I didn't find Krb5AcceptCredential objects added there. > 224 Krb5AcceptCredential k5ac = SubjectComber.find( > 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); The old Krb5AcceptCredential extends KerberosKey, and I didn't figure out what it means. Maybe someone wants to use it as a KerberosKey? For safeguard, I support it as a private confidential entry. > => 2) Inside the getKKeys() method, you refresh the set of KerberoKey objects in the subject when the subject isn't read only. However, in Krb5LoginModule, KerberosKey objects are only stored into the Subject's private cred set when "storeKey" is true. Seems inconsistent? > 271 public KerberosKey[] getKKeys() { I think not. In a normal krb5 login with JAAS, KeyTab and KerberosKey are only stored when both "storeKey" and subject.isReadOnly() are true. Since we now only deal with KeysFromKeyTab type of keys, we can be sure they are read from KeyTab. On the other hand, the reason we still store keys here is because we are afraid that the user is directly manipulating the subject, which means he/she is not using JAAS and therefore no Krb5LoginModule involved at all. > => 3) I don't quite understand why there is a destroy() method that does nothing... At a minimum, I'd expect we need to reset the fields, so that they aren't usable or empty, right? Perhaps, we also need to destroy the individual KeyTab and KerberosKey objects in the lists? > 316 public void destroy() { > 317 // Nothing to do now > 318 } I'll think about this. > > > src/share/classes/sun/security/jgss/krb5/SubjectComber.java > > => I wonder why do you add this? The previous impl only search for publicly defined Kerberos objects, i.e. KerberosKey, KerberosTicket, etc. I thought you said in previous email that we don't populate Subject's private credential set w/ Krb5AcceptCredential objects? > > 100 credClass == Krb5AcceptCredential.class) { > src/share/classes/sun/security/krb5/Config.java > src/share/classes/sun/security/krb5/EncryptionKey.java > src/share/classes/sun/security/krb5/KrbAsRep.java > => All look fine > > src/share/classes/sun/security/krb5/KrbAsReqBuilder.java > => 1) This class does store its own copy of password, so shouldn't you move the "does not" on line 49 to line 50? > 49 * This class does not: > > 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) > 51 * a. Name of KDCs for a realm > 52 * b. Server availability, timeout, UDP or TCP > 53 * d. KRB_ERR_RESPONSE_TOO_BIG > > 54 * 2. Stores its own copy of password, this means: > 55 * a. Do not change/wipe it before Builder finish > 56 * b. Builder will not wipe it for you I'll remove lines 54-56. Maybe I meant to do that some time ago. Thanks Max > > I am still looking at the rest of changes, just want to send what I have now, so you don't wait too long. > > Thanks, > Valerie > > On 04/02/11 02:18 AM, Weijun Wang wrote: >> Updated again: >> >> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >> >> Changes: >> >> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we will add to and remove from private credentials set. Add and remove are only done when !subject.isReadOnly(). Only remove keys for this principal. >> >> 2. Use the class above in KeyTab.getKeys(). >> >> 3. Remove a uselss method in KDC.java test. >> >> 4. Update new test KeyTabCompat.java, make sure after keytab refresh, the old key in priv cred set is removed. >> >> Thanks >> Max >> >> >> >> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>> I think we need to clean up the old ones if we added it there. >>> Conceptually, this would fit closer w/ the "dynamic key tab" support. >>> One straightforward way for us to do this is to subclass KerberosKey >>> class and then we can remove all KerberosKey objects which are >>> implemented using this class at refresh time. >>> Just an idea. >>> Valerie >>> >>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>> Hi Valerie >>>> >>>> Updated again: >>>> >>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>> >>>> 1. KeyTab can be used by anyone >>>> 2. The two compatibility support >>>> >>>> As for adding keys (from keytab) into private credentials set, I >>>> haven't cleaned up old ones. Since it's a set, this means if old keys >>>> are removed from the keytab, they stay in the set. The set is never >>>> really used by our code, so I think it's harmless. I really don't know >>>> how to clean up. Remove all keys for this principal? But we do this >>>> because we want to keep compatibility and worry about people directly >>>> manipulating the set, and I cannot predict what they will do with the >>>> set. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>> >>>>> >>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>> Max, >>>>>> >>>>>> I like this new approach of yours better. >>>>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>>>> put >>>>>> KerberosKeys inside a subject's private cred set. >>>>>> There is also a possibility that apps may read the subject's private >>>>>> credentials set for KerberosKeys that we used to put in and they won't >>>>>> find the keys anymore since it's the KeyTab objects that we put into >>>>>> the >>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>> >>>>> No, I haven't thought about it. >>>>> >>>>> We can put a snapshot of keys there at the beginning and refresh them >>>>> whenever a getKeys() is called. This should be harmless because we don't >>>>> really use the keys if keytab objects (not keytab files) exist. I can do >>>>> that. >>>>> >>>>> Thanks >>>>> Max >>>>> >>>>> >>>>>> >>>>>> Valerie >>>>>> >>>>>> >>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>> Hi Valerie >>>>>>> >>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>> >>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>>>>>> we have a list of keys with different etypes as the private >>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>>>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>>>>> is not always at the same time as the mapping (converting from one to >>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>> unresolved. >>>>>>> >>>>>>> Another solution is to revert back to my original KeyTab without an >>>>>>> intended user. This means several changes: >>>>>>> >>>>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>>>> *one* keytab, now we also need multiple keytabs, because there might >>>>>>> be multiple keytabs in the subject's private credentials set and we >>>>>>> cannot tell which is for who. Therefore we collect all of them, when >>>>>>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>>>>>> and return the combination. Hopefully there won't be two keys for the >>>>>>> same principal with same kvno and same etype. I regard that as an >>>>>>> abuse. >>>>>>> >>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>>>> private credentials set and use the KerberosPrincipal info inside, and >>>>>>> then get all KerberosKeys for the same principal. We have never really >>>>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>>>>> will have a big change: the first step is always finding a >>>>>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>>>>> specified, we find a matched one, otherwise, we just pick one and use >>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>> >>>>>>> I think this is the correct way to go. Of course, for compatibility >>>>>>> reason, we assume there are third party codes that put KerberosKeys >>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>>>>>> can accept it. >>>>>>> >>>>>>> Here is a partial webrev: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>> >>>>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>>>> objects are now retrieved by >>>>>>> >>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>> + subj, null, null, KeyTab.class); >>>>>>> >>>>>>> so no principal name is used, and we retrive "many". >>>>>>> >>>>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>>>> not deserve a CCC. >>>>>>> >>>>>>> Thanks >>>>>>> Max >>>>>>> >>>>>>> >>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>> Max, >>>>>>>> >>>>>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>> Have you considered a different approach like: >>>>>>>> Instead of adding the whole KeyTab object into the Subject's private >>>>>>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>> object to >>>>>>>> re-fresh its value if needed. This approach is conceptually closer to >>>>>>>> what we had and the changes aren't as dramatic and seems to meet the >>>>>>>> need required by 6894072. >>>>>>>> >>>>>>>> I'll continue to review your webrev, but just want to kick this idea >>>>>>>> off >>>>>>>> w/ you and see if it may work. >>>>>>>> Valerie >>>>>>>> >>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>> Hi Valerie >>>>>>>>> >>>>>>>>> Updated webrev: >>>>>>>>> >>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>> >>>>>>>>> Changes since last version: >>>>>>>>> >>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>> >>>>>>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>>>>>> I'm hoping it can be null in the future to support multiple service >>>>>>>>> principal in a single service. >>>>>>>>> >>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>>>>>> inside private credentials set. >>>>>>>>> >>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>> a) Generics for find() and findMany() >>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>> >>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>>>> >>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>> >>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>>>> after >>>>>>>>> JAAS commit. >>>>>>>>> >>>>>>>>> This time I'd like to first make sure implementation is correct, and >>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> Max >>>>>>>> >>>>>> >>> > From weijun.wang at oracle.com Mon Apr 11 02:24:14 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Mon, 11 Apr 2011 02:24:14 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110411022442.343E547989@hg.openjdk.java.net> Changeset: 4de90f390a48 Author: weijun Date: 2011-04-11 10:22 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/4de90f390a48 7012160: read SF file in signed jar in streaming mode Reviewed-by: mullan ! src/share/classes/java/util/jar/JarFile.java ! src/share/classes/java/util/jar/JarInputStream.java ! src/share/classes/java/util/jar/JarVerifier.java ! src/share/classes/sun/security/pkcs/PKCS7.java ! src/share/classes/sun/security/pkcs/SignerInfo.java ! src/share/classes/sun/security/util/ManifestEntryVerifier.java + src/share/classes/sun/security/util/SignatureFileManifest.java ! src/share/classes/sun/security/util/SignatureFileVerifier.java Changeset: 50f77a77ffcf Author: weijun Date: 2011-04-11 10:22 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/50f77a77ffcf 7030180: AES 128/256 decrypt exception Reviewed-by: valeriep ! src/share/classes/sun/security/jgss/krb5/InitSecContextToken.java ! src/share/classes/sun/security/jgss/krb5/InitialToken.java + test/sun/security/krb5/KrbCredSubKey.java From xueming.shen at oracle.com Mon Apr 11 06:28:34 2011 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Mon, 11 Apr 2011 06:28:34 +0000 Subject: hg: jdk7/tl/jdk: 7033561: Missing Unicode Script aliases Message-ID: <20110411062851.D2B5747992@hg.openjdk.java.net> Changeset: c8f22fc4aa00 Author: sherman Date: 2011-04-10 23:33 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c8f22fc4aa00 7033561: Missing Unicode Script aliases Summary: added 6.0 aliases Reviewed-by: okutsu, peytoia, alanb ! src/share/classes/java/lang/Character.java ! test/java/lang/Character/CheckScript.java + test/java/lang/Character/PropertyValueAliases.txt From alan.bateman at oracle.com Mon Apr 11 12:13:17 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Mon, 11 Apr 2011 12:13:17 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110411121350.7C0F94799F@hg.openjdk.java.net> Changeset: dc74b14a8753 Author: alanb Date: 2011-04-10 19:45 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/dc74b14a8753 7034532: (fs) AssertionError when working directory is UNC Reviewed-by: forax, mduigou ! src/windows/classes/sun/nio/fs/WindowsFileSystem.java Changeset: 36e467e1e8b0 Author: alanb Date: 2011-04-11 12:52 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/36e467e1e8b0 Merge From sean.mullan at oracle.com Mon Apr 11 13:30:01 2011 From: sean.mullan at oracle.com (Sean Mullan) Date: Mon, 11 Apr 2011 09:30:01 -0400 Subject: Code Review Request for 7001094 Can't initialize SunPKCS11 more times than PKCS11 driver maxSessionCount In-Reply-To: <4D9F8230.3020507@oracle.com> References: <4D9F8230.3020507@oracle.com> Message-ID: <4DA30259.70801@oracle.com> This fix looks fine to me. --Sean On 4/8/11 5:46 PM, Valerie (Yu-Ching) Peng wrote: > Sean, > > Do you have cycles to review this following fix: > 7001094: Can't initialize SunPKCS11 more times than PKCS11 driver > maxSessionCount > > The webrev can be found at: > http://cr.openjdk.java.net/~valeriep/7001094/webrev.00/ > > While fixing the following issue > 6918573: sun.security.pkcs11.P11RSACipher.finalize() is a scalability > blocker > I replaced the private field "activeSessions" of SessionManager class w/ > SessionRef.totalCount(). > However, this leads to incorrect number of active sessions per provider > when there are more than one PKCS11 provider being installed. > SessionRef.totalCount() is the total combined number of active sessions > and isn't suitable for replacing the private field "activeSessions" > which represents the number of active sessions of each PKCS11 provider. > So, I have to revert back to using a private field "activeSessions" to > keep track of the number of active sessions per provider. > > No regression test added for this since our PKCS11 library, i.e. Solaris > and NSS, do not have any limit on the number of active sessions, and > would always pass even w/ the old code. > However, I've tested the fix by manually hardcoding a limit in the > PKCS11 provider. > > Thanks, > Valerie > > > > > From joe.darcy at oracle.com Tue Apr 12 06:21:58 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Tue, 12 Apr 2011 06:21:58 +0000 Subject: hg: jdk7/tl/jdk: 7035834: Bad @param tags in LayerUI.java Message-ID: <20110412062208.0A277479CC@hg.openjdk.java.net> Changeset: a12f142410f2 Author: darcy Date: 2011-04-11 23:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a12f142410f2 7035834: Bad @param tags in LayerUI.java Reviewed-by: rupashka ! src/share/classes/javax/swing/plaf/LayerUI.java From xuelei.fan at oracle.com Tue Apr 12 15:27:39 2011 From: xuelei.fan at oracle.com (xuelei.fan at oracle.com) Date: Tue, 12 Apr 2011 15:27:39 +0000 Subject: hg: jdk7/tl/jdk: 6882437: CertPath/X509CertPathDiscovery/Test fails on jdk7/pit/b62 Message-ID: <20110412152749.40707479F0@hg.openjdk.java.net> Changeset: 6e306c3aa17b Author: xuelei Date: 2011-04-12 08:27 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6e306c3aa17b 6882437: CertPath/X509CertPathDiscovery/Test fails on jdk7/pit/b62 Summary: Pass trust anchors to CRL certification path building, support CRLs without AKID extension. Reviewed-by: mullan ! src/share/classes/sun/security/provider/certpath/CrlRevocationChecker.java ! src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java From lance.andersen at oracle.com Tue Apr 12 16:25:54 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Tue, 12 Apr 2011 16:25:54 +0000 Subject: hg: jdk7/tl/jdk: 7035615: Address lint warnings for javax.sql.rowset & com.sun.rowset Message-ID: <20110412162604.4ADA0479F3@hg.openjdk.java.net> Changeset: 1bb95f6ac753 Author: lancea Date: 2011-04-12 12:25 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/1bb95f6ac753 7035615: Address lint warnings for javax.sql.rowset & com.sun.rowset Reviewed-by: alanb, darcy ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java ! src/share/classes/com/sun/rowset/JdbcRowSetImpl.java ! src/share/classes/com/sun/rowset/JoinRowSetImpl.java ! src/share/classes/javax/sql/rowset/BaseRowSet.java ! src/share/classes/javax/sql/rowset/RowSetMetaDataImpl.java ! src/share/classes/javax/sql/rowset/RowSetProvider.java From lance.andersen at oracle.com Tue Apr 12 18:34:11 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Tue, 12 Apr 2011 18:34:11 +0000 Subject: hg: jdk7/tl/jdk: 7007772: Address typos in javadoc for ResultSet Message-ID: <20110412183420.F298847A02@hg.openjdk.java.net> Changeset: 0bae251b548b Author: lancea Date: 2011-04-12 14:32 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0bae251b548b 7007772: Address typos in javadoc for ResultSet Reviewed-by: ohair, smarks ! src/share/classes/java/sql/ResultSet.java From daniel.daugherty at oracle.com Tue Apr 12 20:37:52 2011 From: daniel.daugherty at oracle.com (daniel.daugherty at oracle.com) Date: Tue, 12 Apr 2011 20:37:52 +0000 Subject: hg: jdk7/tl/jdk: 7035555: 4/4 attach/BasicTests.sh needs another tweak for Cygwin Message-ID: <20110412203802.490B547A09@hg.openjdk.java.net> Changeset: 59b2b9a34b3c Author: dcubed Date: 2011-04-12 13:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/59b2b9a34b3c 7035555: 4/4 attach/BasicTests.sh needs another tweak for Cygwin Summary: Test needs to properly detect missing AgentInitializationException. Clarify when exceptions are expected. Another Cygwin tweak. Reviewed-by: dsamersoff, ohair ! test/com/sun/tools/attach/ApplicationSetup.sh ! test/com/sun/tools/attach/BasicTests.java ! test/com/sun/tools/attach/BasicTests.sh From kelly.ohair at oracle.com Tue Apr 12 21:07:23 2011 From: kelly.ohair at oracle.com (kelly.ohair at oracle.com) Date: Tue, 12 Apr 2011 21:07:23 +0000 Subject: hg: jdk7/tl/jaxws: 7034918: Integrate JAX-WS 2.2.4-b01 in to JDK 7 Message-ID: <20110412210723.EE91B47A0A@hg.openjdk.java.net> Changeset: d5e3452a6909 Author: ohair Date: 2011-04-12 12:39 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/d5e3452a6909 7034918: Integrate JAX-WS 2.2.4-b01 in to JDK 7 Reviewed-by: ramap ! jaxws.properties From valerie.peng at oracle.com Wed Apr 13 01:13:03 2011 From: valerie.peng at oracle.com (valerie.peng at oracle.com) Date: Wed, 13 Apr 2011 01:13:03 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110413011343.F24FF47A1B@hg.openjdk.java.net> Changeset: 5d132f3bfbbf Author: valeriep Date: 2011-04-12 15:57 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5d132f3bfbbf 7001094: Can't initialize SunPKCS11 more times than PKCS11 driver maxSessionCount Summary: Changed SessionManager to keep track of session count for each instance Reviewed-by: mullan ! src/share/classes/sun/security/pkcs11/SessionManager.java Changeset: a3de1543568b Author: valeriep Date: 2011-04-12 16:09 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a3de1543568b 6986789: Sun pkcs11 provider fails to parse path name containing "+" Summary: Modified to accept '+' as valid character. Reviewed-by: weijun ! src/share/classes/sun/security/pkcs11/Config.java ! test/sun/security/pkcs11/Provider/ConfigShortPath.java + test/sun/security/pkcs11/Provider/cspPlus.cfg From rickard.backman at oracle.com Tue Apr 12 07:35:08 2011 From: rickard.backman at oracle.com (rickard.backman at oracle.com) Date: Tue, 12 Apr 2011 07:35:08 +0000 Subject: hg: jdk7/tl/jdk: 7026287: Asynchronous API sample Message-ID: <20110412073518.17E2E479D1@hg.openjdk.java.net> Changeset: 54446de9fbb0 Author: rbackman Date: 2011-04-12 09:04 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/54446de9fbb0 7026287: Asynchronous API sample Summary: Implement a chat server using the new asynchronous networking API Reviewed-by: hosterda, alanb ! make/mksample/nio/Makefile + make/mksample/nio/chatserver/Makefile + src/share/sample/nio/chatserver/ChatServer.java + src/share/sample/nio/chatserver/Client.java + src/share/sample/nio/chatserver/ClientReader.java + src/share/sample/nio/chatserver/DataReader.java + src/share/sample/nio/chatserver/MessageReader.java + src/share/sample/nio/chatserver/NameReader.java + src/share/sample/nio/chatserver/README.txt + test/sample/chatserver/ChatTest.java From rickard.backman at oracle.com Tue Apr 12 11:14:45 2011 From: rickard.backman at oracle.com (rickard.backman at oracle.com) Date: Tue, 12 Apr 2011 11:14:45 +0000 Subject: hg: jdk7/tl/jdk: 7026304: Fork-Join sample Message-ID: <20110412111454.BE533479DA@hg.openjdk.java.net> Changeset: 9128eace50f5 Author: rbackman Date: 2011-04-12 13:14 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9128eace50f5 7026304: Fork-Join sample Summary: Implement a merge-sort sample using Fork-Join Reviewed-by: hosterda, chegar, dholmes ! make/mksample/Makefile + make/mksample/forkjoin/Makefile + make/mksample/forkjoin/mergesort/Makefile + src/share/sample/forkjoin/mergesort/MergeDemo.java + src/share/sample/forkjoin/mergesort/MergeSort.java + test/sample/mergesort/MergeSortTest.java From weijun.wang at oracle.com Wed Apr 13 03:20:22 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Wed, 13 Apr 2011 11:20:22 +0800 Subject: code review request: 7036157: TCP connection does not use kdc_timeout Message-ID: <4DA51676.9000506@oracle.com> Hi Valerie http://cr.openjdk.java.net/~weijun/7036157/webrev.00/ There is no regression test because it's not easy to simulate a connection timeout in a regression test. On my home machine, I set KDC to facebook.com. Thanks to the Great Firewall of China that all connections to facebook are blocked and I can confirm the code change does work as intended. Thanks Max -------- Original Message -------- *Change Request ID*: 7036157 *Synopsis*: TCP connection does not use kdc_timeout === *Description* ============================================================ We added timeout support for TCP in 6952519: kdc_timeout is not being honored when using TCP but it's only on communication stage. In practice, a timeout happens more likely at the connection stage. From maurizio.cimadamore at oracle.com Wed Apr 13 04:00:16 2011 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Wed, 13 Apr 2011 04:00:16 +0000 Subject: hg: jdk7/tl/langtools: 2 new changesets Message-ID: <20110413040027.70AD047A28@hg.openjdk.java.net> Changeset: f00986f55961 Author: mcimadamore Date: 2011-04-12 20:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/f00986f55961 7034511: Loophole in typesafety Summary: Type-variable substutution takes upper bound of replaced captured type-variable Reviewed-by: dlsmith ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/7034511/T7034511a.java + test/tools/javac/generics/7034511/T7034511a.out + test/tools/javac/generics/7034511/T7034511b.java + test/tools/javac/generics/7034511/T7034511b.out Changeset: bfbc197b560f Author: mcimadamore Date: 2011-04-12 20:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/bfbc197b560f 7034019: ClassCastException in javac with conjunction types Summary: Resolve.mostSpecific doesn't handle case of raw override Reviewed-by: dlsmith ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/generics/7034019/T7034019a.java + test/tools/javac/generics/7034019/T7034019b.java + test/tools/javac/generics/7034019/T7034019c.java + test/tools/javac/generics/7034019/T7034019c.out + test/tools/javac/generics/7034019/T7034019d.java + test/tools/javac/generics/7034019/T7034019d.out From albert.ciffone at gmail.com Wed Apr 13 14:59:46 2011 From: albert.ciffone at gmail.com (Albert Ciffone) Date: Wed, 13 Apr 2011 16:59:46 +0200 Subject: source c++ code for sunmscapi.dll In-Reply-To: References: <4D9C5513.8040806@oracle.com> Message-ID: Hi, Finally I can compile security.cpp and gets a sunmscapi.dll for 64bits. I use this dll with sunmscapi java classes and works fine in windows7 with jvm 64bits. Now I'm trying to do the same with sunPKCS11 provider because j2pkcs11.dll is also missing in windows JVM 64 bits distributions, but this time seems more difficult. Does Anybody know if the classes which I must compile are the next or I missing someone: src/windows/native/sun/security/pkcs11/j2secmod_md.c src/windows/native/sun/security/pkcs11/j2secmod_md.h src/windows/native/sun/security/pkcs11/wrapper/p11_md.c src/windows/native/sun/security/pkcs11/wrapper/p11_md.h src/share/native/sun/security/pkcs11/wrapper/p11_convert.c src/share/native/sun/security/pkcs11/wrapper/p11_crypt.c src/share/native/sun/security/pkcs11/wrapper/p11_digest.c src/share/native/sun/security/pkcs11/wrapper/p11_dual.c src/share/native/sun/security/pkcs11/wrapper/p11_general.c src/share/native/sun/security/pkcs11/wrapper/p11_keymgmt.c src/share/native/sun/security/pkcs11/wrapper/p11_mutex.c src/share/native/sun/security/pkcs11/wrapper/p11_objmgmt.c src/share/native/sun/security/pkcs11/wrapper/p11_sessmgmt.c src/share/native/sun/security/pkcs11/wrapper/p11_sign.c src/share/native/sun/security/pkcs11/wrapper/p11_util.c src/share/native/sun/security/pkcs11/wrapper/pkcs11.h src/share/native/sun/security/pkcs11/wrapper/pkcs11f.h src/share/native/sun/security/pkcs11/wrapper/pkcs11t.h src/share/native/sun/security/pkcs11/wrapper/pkcs11wrapper.h anyway, if someone has already compiled the dll and wants to give me it... would be perfect ;). Thanks in advance, On Wed, Apr 6, 2011 at 2:07 PM, Albert Ciffone wrote: > Hi Vincent, > > Thanks ;), anywise I can't wait for solution so I try to compile > security.cpp for windows JVM 64bits. > > Regards, > > > On Wed, Apr 6, 2011 at 1:57 PM, Vincent Ryan wrote: > >> On 04/ 6/11 11:36 AM, Albert Ciffone wrote: >> > Hi, >> > >> > I'm working with sunmscapi provider to deal with keys in windows >> keystore. My >> > code works properly in windows with JVM 32bit installation, but in JVM >> 64 bits >> > installation my code fails because sunmscapi.dll is not in this >> distributions. >> > Can anybody says me where I can find the source code of this dll in >> order to >> > compile it for 64 bits distributions? >> > >> > Thanks in advance, >> >> A fix to address this RFE will appear in the next week or so: >> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6931562 >> >> Otherwise, the sources are in the usual place: >> http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/29296ea6529a >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lance.andersen at oracle.com Wed Apr 13 15:22:07 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Wed, 13 Apr 2011 15:22:07 +0000 Subject: hg: jdk7/tl/jdk: 7036251: Correct SQLPermission constructor javadocs for permission target names Message-ID: <20110413152220.372FC47A4A@hg.openjdk.java.net> Changeset: d9248245a88c Author: lancea Date: 2011-04-13 11:21 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d9248245a88c 7036251: Correct SQLPermission constructor javadocs for permission target names Reviewed-by: alanb ! src/share/classes/java/sql/SQLPermission.java From alan.bateman at oracle.com Wed Apr 13 17:41:37 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Wed, 13 Apr 2011 17:41:37 +0000 Subject: hg: jdk7/tl/jdk: 6597112: referential integrity loophole during remote object export Message-ID: <20110413174147.551E847A53@hg.openjdk.java.net> Changeset: c0602036be5d Author: alanb Date: 2011-04-13 18:39 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c0602036be5d 6597112: referential integrity loophole during remote object export Reviewed-by: peterjones Contributed-by: Neil Richards ! src/share/classes/sun/rmi/transport/ObjectTable.java + test/java/rmi/server/UnicastRemoteObject/exportObject/GcDuringExport.java From bradford.wetmore at oracle.com Wed Apr 13 18:54:26 2011 From: bradford.wetmore at oracle.com (bradford.wetmore at oracle.com) Date: Wed, 13 Apr 2011 18:54:26 +0000 Subject: hg: jdk7/tl/jdk: 6914617: JCE framework code signing certificate is expiring at the end of 2010. Message-ID: <20110413185436.2F96747A57@hg.openjdk.java.net> Changeset: 29e88b0c0894 Author: wetmore Date: 2011-04-13 11:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/29e88b0c0894 6914617: JCE framework code signing certificate is expiring at the end of 2010. Reviewed-by: valeriep, weijun, mullan ! make/javax/crypto/Defs-jce.gmk From bradford.wetmore at oracle.com Wed Apr 13 19:11:38 2011 From: bradford.wetmore at oracle.com (bradford.wetmore at oracle.com) Date: Wed, 13 Apr 2011 19:11:38 +0000 Subject: hg: jdk7/tl/jdk: 7031343: Provide API changes to support future GCM AEAD ciphers Message-ID: <20110413191148.A509F47A58@hg.openjdk.java.net> Changeset: 13af7c12c62a Author: wetmore Date: 2011-04-13 11:59 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/13af7c12c62a 7031343: Provide API changes to support future GCM AEAD ciphers Reviewed-by: valeriep, xuelei + src/share/classes/javax/crypto/AEADBadTagException.java ! src/share/classes/javax/crypto/Cipher.java ! src/share/classes/javax/crypto/CipherSpi.java + src/share/classes/javax/crypto/spec/GCMParameterSpec.java + test/javax/crypto/Cipher/GCMAPI.java + test/javax/crypto/spec/GCMParameterSpec/GCMParameterSpecTest.java From valerie.peng at oracle.com Wed Apr 13 21:23:06 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Wed, 13 Apr 2011 14:23:06 -0700 Subject: code review request: 7036157: TCP connection does not use kdc_timeout In-Reply-To: <4DA51676.9000506@oracle.com> References: <4DA51676.9000506@oracle.com> Message-ID: <4DA6143A.4080305@oracle.com> Changes look fine. Thanks, Valerie On 04/12/11 08:20 PM, Weijun Wang wrote: > Hi Valerie > > http://cr.openjdk.java.net/~weijun/7036157/webrev.00/ > > There is no regression test because it's not easy to simulate a > connection timeout in a regression test. > > On my home machine, I set KDC to facebook.com. Thanks to the Great > Firewall of China that all connections to facebook are blocked and I > can confirm the code change does work as intended. > > Thanks > Max > > > -------- Original Message -------- > *Change Request ID*: 7036157 > *Synopsis*: TCP connection does not use kdc_timeout > > > === *Description* > ============================================================ > We added timeout support for TCP in > > 6952519: kdc_timeout is not being honored when using TCP > > but it's only on communication stage. In practice, a timeout happens > more likely at the connection stage. > From bradford.wetmore at oracle.com Wed Apr 13 23:17:24 2011 From: bradford.wetmore at oracle.com (bradford.wetmore at oracle.com) Date: Wed, 13 Apr 2011 23:17:24 +0000 Subject: hg: jdk7/tl/jdk: 6626257: Update SWAN-specific webcaching to Oracle environment in the regression tests. Message-ID: <20110413231734.0AD4A47A65@hg.openjdk.java.net> Changeset: 65b6fe866a6f Author: wetmore Date: 2011-04-13 16:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/65b6fe866a6f 6626257: Update SWAN-specific webcaching to Oracle environment in the regression tests. Reviewed-by: valeriep ! test/sun/net/InetAddress/nameservice/dns/cname.sh From bradford.wetmore at oracle.com Wed Apr 13 23:46:55 2011 From: bradford.wetmore at oracle.com (Brad Wetmore) Date: Wed, 13 Apr 2011 16:46:55 -0700 Subject: source c++ code for sunmscapi.dll In-Reply-To: References: <4D9C5513.8040806@oracle.com> Message-ID: <4DA635EF.9030404@oracle.com> /solaris/native/sun/security/pkcs11 ./share/classes/sun/security/pkcs11 ./share/native/sun/security/pkcs11 ./windows/native/sun/security/pkcs11 Brad On 4/13/2011 7:59 AM, Albert Ciffone wrote: > Hi, > > Finally I can compile security.cpp and gets a sunmscapi.dll for 64bits. > I use this dll with sunmscapi java classes and works fine in windows7 > with jvm 64bits. Now I'm trying to do the same with sunPKCS11 provider > because j2pkcs11.dll is also missing in windows JVM 64 bits > distributions, but this time seems more difficult. Does Anybody know if > the classes which I must compile are the next or I missing someone: > > src/windows/native/sun/security/pkcs11/j2secmod_md.c > > src/windows/native/sun/security/pkcs11/j2secmod_md.h > > src/windows/native/sun/security/pkcs11/wrapper/p11_md.c > > src/windows/native/sun/security/pkcs11/wrapper/p11_md.h > > src/share/native/sun/security/pkcs11/wrapper/p11_convert.c > > src/share/native/sun/security/pkcs11/wrapper/p11_crypt.c > > src/share/native/sun/security/pkcs11/wrapper/p11_digest.c > > src/share/native/sun/security/pkcs11/wrapper/p11_dual.c > > src/share/native/sun/security/pkcs11/wrapper/p11_general.c > > src/share/native/sun/security/pkcs11/wrapper/p11_keymgmt.c > > src/share/native/sun/security/pkcs11/wrapper/p11_mutex.c > > src/share/native/sun/security/pkcs11/wrapper/p11_objmgmt.c > > src/share/native/sun/security/pkcs11/wrapper/p11_sessmgmt.c > > src/share/native/sun/security/pkcs11/wrapper/p11_sign.c > > src/share/native/sun/security/pkcs11/wrapper/p11_util.c > > src/share/native/sun/security/pkcs11/wrapper/pkcs11.h > > src/share/native/sun/security/pkcs11/wrapper/pkcs11f.h > > src/share/native/sun/security/pkcs11/wrapper/pkcs11t.h > > src/share/native/sun/security/pkcs11/wrapper/pkcs11wrapper.h > > > anyway, if someone has already compiled the dll and wants to give me > it... would be perfect ;). > > > Thanks in advance, > > > > > > On Wed, Apr 6, 2011 at 2:07 PM, Albert Ciffone > wrote: > > Hi Vincent, > > Thanks ;), anywise I can't wait for solution so I try to compile > security.cpp for windows JVM 64bits. > > Regards, > > > On Wed, Apr 6, 2011 at 1:57 PM, Vincent Ryan > > wrote: > > On 04/ 6/11 11:36 AM, Albert Ciffone wrote: > > Hi, > > > > I'm working with sunmscapi provider to deal with keys in > windows keystore. My > > code works properly in windows with JVM 32bit installation, > but in JVM 64 bits > > installation my code fails because sunmscapi.dll is not in > this distributions. > > Can anybody says me where I can find the source code of this > dll in order to > > compile it for 64 bits distributions? > > > > Thanks in advance, > > A fix to address this RFE will appear in the next week or so: > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6931562 > > Otherwise, the sources are in the usual place: > http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/29296ea6529a > > > From valerie.peng at oracle.com Wed Apr 13 23:54:32 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Wed, 13 Apr 2011 16:54:32 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4D9FA971.303@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> Message-ID: <4DA637B8.6050905@oracle.com> The remaining half of the review: *src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java* => 1) inconsistency between javadoc and the source code, i.e. the parameter name is not "file" but "s". Also, what do you mean by source? It's very vague. 137 * @param file the key tab source. ||*src/share/classes/sun/security/ssl/Handshaker.java *=>1) the only change is the copyright year? I think you meant to update the copyright year of *ServerHandshaker.java* which has some source changes.* **src/share/classes/sun/security/ssl/ServerHandshaker.java **src/share/classes/sun/security/ssl/krb5/Krb5ProxyImpl.java **src/windows/classes/sun/security/krb5/internal/tools/Kinit.java* *src/windows/classes/sun/security/krb5/internal/tools/Klist.java* *src/windows/classes/sun/security/krb5/internal/tools/Ktab.java **src/share/classes/javax/security/auth/kerberos/JavaxSecurityAuthKerberosAccessImpl.java **src/share/classes/javax/security/auth/kerberos/KeyTab.java **src/share/classes/sun/misc/JavaxSecurityAuthKerberosAccess.java *=> looks fine*** ** *Valerie* ** *On 04/08/11 05:33 PM, Valerie (Yu-Ching) Peng wrote: > > *src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java* > *src/share/classes/javax/security/auth/kerberos/KerberosKey.java* > *src/share/classes/sun/misc/SharedSecrets.java* > *src/share/classes/sun/security/jgss/krb5/Krb5AcceptCredential.java > *=> All look fine.* > > **src/share/classes/sun/security/jgss/krb5/Krb5Util.java* > => 1) So, since when do we populate the Subject w/ > Krb5AcceptCredential objects? I thought only Krb5LoginModule would > "write" the subject's private cred set and I didn't find > Krb5AcceptCredential objects added there. > 224 Krb5AcceptCredential k5ac = SubjectComber.find( > 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); > > => 2) Inside the getKKeys() method, you refresh the set of KerberoKey > objects in the subject when the subject isn't read only. However, in > Krb5LoginModule, KerberosKey objects are only stored into the > Subject's private cred set when "storeKey" is true. Seems inconsistent? > 271 public KerberosKey[] getKKeys() { > => 3) I don't quite understand why there is a destroy() method that > does nothing... At a minimum, I'd expect we need to reset the fields, > so that they aren't usable or empty, right? Perhaps, we also need to > destroy the individual KeyTab and KerberosKey objects in the lists? > 316 public void destroy() { > 317 // Nothing to do now > 318 } > > ||*src/share/classes/sun/security/jgss/krb5/SubjectComber.java > * > => I wonder why do you add this? The previous impl only search for > publicly defined Kerberos objects, i.e. KerberosKey, KerberosTicket, > etc. I thought you said in previous email that we don't populate > Subject's private credential set w/ Krb5AcceptCredential objects? > > 100 credClass == Krb5AcceptCredential.class) { > *src/share/classes/sun/security/krb5/Config.java* > *src/share/classes/sun/security/krb5/EncryptionKey.java > **src/share/classes/sun/security/krb5/KrbAsRep.java > *=> All look fine > * > *||*src/share/classes/sun/security/krb5/KrbAsReqBuilder.java* > => 1) This class does store its own copy of password, so shouldn't you > move the "does not" on line 49 to line 50?* > * > 49 * This class *does not:* > 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) > 51 * a. Name of KDCs for a realm > 52 * b. Server availability, timeout, UDP or TCP > 53 * d. KRB_ERR_RESPONSE_TOO_BIG > 54 * 2. Stores its own copy of password, this means: > 55 * a. Do not change/wipe it before Builder finish > 56 * b. Builder will not wipe it for you > > * > *I am still looking at the rest of changes, just want to send what I > have now, so you don't wait too long. > > Thanks, > Valerie > * > *On 04/02/11 02:18 AM, Weijun Wang wrote: >> Updated again: >> >> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >> >> Changes: >> >> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we >> will add to and remove from private credentials set. Add and remove >> are only done when !subject.isReadOnly(). Only remove keys for this >> principal. >> >> 2. Use the class above in KeyTab.getKeys(). >> >> 3. Remove a uselss method in KDC.java test. >> >> 4. Update new test KeyTabCompat.java, make sure after keytab refresh, >> the old key in priv cred set is removed. >> >> Thanks >> Max >> >> >> >> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>> I think we need to clean up the old ones if we added it there. >>> Conceptually, this would fit closer w/ the "dynamic key tab" support. >>> One straightforward way for us to do this is to subclass KerberosKey >>> class and then we can remove all KerberosKey objects which are >>> implemented using this class at refresh time. >>> Just an idea. >>> Valerie >>> >>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>> Hi Valerie >>>> >>>> Updated again: >>>> >>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>> >>>> 1. KeyTab can be used by anyone >>>> 2. The two compatibility support >>>> >>>> As for adding keys (from keytab) into private credentials set, I >>>> haven't cleaned up old ones. Since it's a set, this means if old keys >>>> are removed from the keytab, they stay in the set. The set is never >>>> really used by our code, so I think it's harmless. I really don't know >>>> how to clean up. Remove all keys for this principal? But we do this >>>> because we want to keep compatibility and worry about people directly >>>> manipulating the set, and I cannot predict what they will do with the >>>> set. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>> >>>>> >>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>> Max, >>>>>> >>>>>> I like this new approach of yours better. >>>>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>>>> put >>>>>> KerberosKeys inside a subject's private cred set. >>>>>> There is also a possibility that apps may read the subject's private >>>>>> credentials set for KerberosKeys that we used to put in and they >>>>>> won't >>>>>> find the keys anymore since it's the KeyTab objects that we put into >>>>>> the >>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>> >>>>> No, I haven't thought about it. >>>>> >>>>> We can put a snapshot of keys there at the beginning and refresh them >>>>> whenever a getKeys() is called. This should be harmless because we >>>>> don't >>>>> really use the keys if keytab objects (not keytab files) exist. I >>>>> can do >>>>> that. >>>>> >>>>> Thanks >>>>> Max >>>>> >>>>> >>>>>> >>>>>> Valerie >>>>>> >>>>>> >>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>> Hi Valerie >>>>>>> >>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>> >>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's >>>>>>> resolved, >>>>>>> we have a list of keys with different etypes as the private >>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>> resolved, it's resolved into multiple keys. Also, there was a >>>>>>> simple >>>>>>> mapping between KerberosKey and EncryptionKey. The resolving >>>>>>> process >>>>>>> is not always at the same time as the mapping (converting from >>>>>>> one to >>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>> unresolved. >>>>>>> >>>>>>> Another solution is to revert back to my original KeyTab without an >>>>>>> intended user. This means several changes: >>>>>>> >>>>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>>>> *one* keytab, now we also need multiple keytabs, because there >>>>>>> might >>>>>>> be multiple keytabs in the subject's private credentials set and we >>>>>>> cannot tell which is for who. Therefore we collect all of them, >>>>>>> when >>>>>>> the keys are needed at AP-REP time, we call getKeys() on all of >>>>>>> them, >>>>>>> and return the combination. Hopefully there won't be two keys >>>>>>> for the >>>>>>> same principal with same kvno and same etype. I regard that as an >>>>>>> abuse. >>>>>>> >>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>>>> private credentials set and use the KerberosPrincipal info >>>>>>> inside, and >>>>>>> then get all KerberosKeys for the same principal. We have never >>>>>>> really >>>>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now >>>>>>> this >>>>>>> will have a big change: the first step is always finding a >>>>>>> KerberosPrincipal in the principal sets first. If >>>>>>> serverPrincipal is >>>>>>> specified, we find a matched one, otherwise, we just pick one >>>>>>> and use >>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>> >>>>>>> I think this is the correct way to go. Of course, for compatibility >>>>>>> reason, we assume there are third party codes that put KerberosKeys >>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, >>>>>>> but we >>>>>>> can accept it. >>>>>>> >>>>>>> Here is a partial webrev: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>> >>>>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>>>> objects are now retrieved by >>>>>>> >>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>> + subj, null, null, KeyTab.class); >>>>>>> >>>>>>> so no principal name is used, and we retrive "many". >>>>>>> >>>>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>>>> not deserve a CCC. >>>>>>> >>>>>>> Thanks >>>>>>> Max >>>>>>> >>>>>>> >>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>> Max, >>>>>>>> >>>>>>>> Well, I find it a bit awkward that the KeyTab class has to have >>>>>>>> the >>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>> Have you considered a different approach like: >>>>>>>> Instead of adding the whole KeyTab object into the Subject's >>>>>>>> private >>>>>>>> credential set, we add a "to-be-resolved" KerberosKey object. >>>>>>>> When we >>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>> object to >>>>>>>> re-fresh its value if needed. This approach is conceptually >>>>>>>> closer to >>>>>>>> what we had and the changes aren't as dramatic and seems to >>>>>>>> meet the >>>>>>>> need required by 6894072. >>>>>>>> >>>>>>>> I'll continue to review your webrev, but just want to kick this >>>>>>>> idea >>>>>>>> off >>>>>>>> w/ you and see if it may work. >>>>>>>> Valerie >>>>>>>> >>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>> Hi Valerie >>>>>>>>> >>>>>>>>> Updated webrev: >>>>>>>>> >>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>> >>>>>>>>> Changes since last version: >>>>>>>>> >>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New >>>>>>>>> getInstance() >>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>> >>>>>>>>> It can only be non-null now, but I didn't say anything in the >>>>>>>>> spec. >>>>>>>>> I'm hoping it can be null in the future to support multiple >>>>>>>>> service >>>>>>>>> principal in a single service. >>>>>>>>> >>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will >>>>>>>>> be put >>>>>>>>> inside private credentials set. >>>>>>>>> >>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>> a) Generics for find() and findMany() >>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>> >>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>>>> >>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>> >>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>>>> after >>>>>>>>> JAAS commit. >>>>>>>>> >>>>>>>>> This time I'd like to first make sure implementation is >>>>>>>>> correct, and >>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> Max >>>>>>>> >>>>>> >>> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From valerie.peng at oracle.com Thu Apr 14 01:45:59 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Wed, 13 Apr 2011 18:45:59 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> Message-ID: <4DA651D7.9000503@oracle.com> On 04/09/11 03:00 AM, Weijun Wang wrote: >> src/share/classes/sun/security/jgss/krb5/Krb5Util.java >> => 1) So, since when do we populate the Subject w/ Krb5AcceptCredential objects? I thought only Krb5LoginModule would "write" the subject's private cred set and I didn't find Krb5AcceptCredential objects added there. >> 224 Krb5AcceptCredential k5ac = SubjectComber.find( >> 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); >> > > The old Krb5AcceptCredential extends KerberosKey, and I didn't figure out what it means. Maybe someone wants to use it as a KerberosKey? For safeguard, I support it as a private confidential entry. > If someone really wants to use it as a KerberosKey, didn't you already break them by making Krb5AcceptCredential class no longer extending KerberosKey? If you want to be really safe, you'd leave the "extends KerberosKey" part unchanged and you don't need to put the above special handling in Krb5Util.java. The special handling looks weird since we never put the Krb5AcceptCredential object into the Subject's priv cred set in our impl. Even w/ this special handling, it'd still not work if an app added Krb5AcceptCredential objects into the priv cred set and later tried to look them up as KerberosKey objects. Lastly, Krb5AcceptCredential class is in sun.* package and not supposed to be used directly by apps. So, I'd prefer we just remove this special handling altogether. > >> => 2) Inside the getKKeys() method, you refresh the set of KerberoKey objects in the subject when the subject isn't read only. However, in Krb5LoginModule, KerberosKey objects are only stored into the Subject's private cred set when "storeKey" is true. Seems inconsistent? >> 271 public KerberosKey[] getKKeys() { >> > > I think not. In a normal krb5 login with JAAS, KeyTab and KerberosKey are only stored when both "storeKey" and subject.isReadOnly() are true. Since we now only deal with KeysFromKeyTab type of keys, we can be sure they are read from KeyTab. On the other hand, the reason we still store keys here is because we are afraid that the user is directly manipulating the subject, which means he/she is not using JAAS and therefore no Krb5LoginModule involved at all. > > Let me rephrase my question: If he/she is only using JAAS, e.g. Krb5LoginModule and has storeKey set to false, will ServiceCreds.getKKeys() put KerberosKey objects into Subject's priv cred set? If yes, is this the expected behavior? >> => 3) I don't quite understand why there is a destroy() method that does nothing... At a minimum, I'd expect we need to reset the fields, so that they aren't usable or empty, right? Perhaps, we also need to destroy the individual KeyTab and KerberosKey objects in the lists? >> 316 public void destroy() { >> 317 // Nothing to do now >> 318 } >> > > I'll think about this. > Ok, let me know if you have more thoughts. Thanks, Valerie > >> src/share/classes/sun/security/jgss/krb5/SubjectComber.java >> >> => I wonder why do you add this? The previous impl only search for publicly defined Kerberos objects, i.e. KerberosKey, KerberosTicket, etc. I thought you said in previous email that we don't populate Subject's private credential set w/ Krb5AcceptCredential objects? >> >> 100 credClass == Krb5AcceptCredential.class) { >> src/share/classes/sun/security/krb5/Config.java >> src/share/classes/sun/security/krb5/EncryptionKey.java >> src/share/classes/sun/security/krb5/KrbAsRep.java >> => All look fine >> >> src/share/classes/sun/security/krb5/KrbAsReqBuilder.java >> => 1) This class does store its own copy of password, so shouldn't you move the "does not" on line 49 to line 50? >> 49 * This class does not: >> >> 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) >> 51 * a. Name of KDCs for a realm >> 52 * b. Server availability, timeout, UDP or TCP >> 53 * d. KRB_ERR_RESPONSE_TOO_BIG >> >> 54 * 2. Stores its own copy of password, this means: >> 55 * a. Do not change/wipe it before Builder finish >> 56 * b. Builder will not wipe it for you >> > > I'll remove lines 54-56. Maybe I meant to do that some time ago. > > Thanks > Max > > >> I am still looking at the rest of changes, just want to send what I have now, so you don't wait too long. >> >> Thanks, >> Valerie >> >> On 04/02/11 02:18 AM, Weijun Wang wrote: >> >>> Updated again: >>> >>> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >>> >>> Changes: >>> >>> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we will add to and remove from private credentials set. Add and remove are only done when !subject.isReadOnly(). Only remove keys for this principal. >>> >>> 2. Use the class above in KeyTab.getKeys(). >>> >>> 3. Remove a uselss method in KDC.java test. >>> >>> 4. Update new test KeyTabCompat.java, make sure after keytab refresh, the old key in priv cred set is removed. >>> >>> Thanks >>> Max >>> >>> >>> >>> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>> >>>> I think we need to clean up the old ones if we added it there. >>>> Conceptually, this would fit closer w/ the "dynamic key tab" support. >>>> One straightforward way for us to do this is to subclass KerberosKey >>>> class and then we can remove all KerberosKey objects which are >>>> implemented using this class at refresh time. >>>> Just an idea. >>>> Valerie >>>> >>>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>> >>>>> Hi Valerie >>>>> >>>>> Updated again: >>>>> >>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>>> >>>>> 1. KeyTab can be used by anyone >>>>> 2. The two compatibility support >>>>> >>>>> As for adding keys (from keytab) into private credentials set, I >>>>> haven't cleaned up old ones. Since it's a set, this means if old keys >>>>> are removed from the keytab, they stay in the set. The set is never >>>>> really used by our code, so I think it's harmless. I really don't know >>>>> how to clean up. Remove all keys for this principal? But we do this >>>>> because we want to keep compatibility and worry about people directly >>>>> manipulating the set, and I cannot predict what they will do with the >>>>> set. >>>>> >>>>> Thanks >>>>> Max >>>>> >>>>> >>>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>> >>>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>> >>>>>>> Max, >>>>>>> >>>>>>> I like this new approach of yours better. >>>>>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>>>>> put >>>>>>> KerberosKeys inside a subject's private cred set. >>>>>>> There is also a possibility that apps may read the subject's private >>>>>>> credentials set for KerberosKeys that we used to put in and they won't >>>>>>> find the keys anymore since it's the KeyTab objects that we put into >>>>>>> the >>>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>>>> >>>>>> No, I haven't thought about it. >>>>>> >>>>>> We can put a snapshot of keys there at the beginning and refresh them >>>>>> whenever a getKeys() is called. This should be harmless because we don't >>>>>> really use the keys if keytab objects (not keytab files) exist. I can do >>>>>> that. >>>>>> >>>>>> Thanks >>>>>> Max >>>>>> >>>>>> >>>>>> >>>>>>> Valerie >>>>>>> >>>>>>> >>>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>> >>>>>>>> Hi Valerie >>>>>>>> >>>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>>> >>>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>>>>>>> we have a list of keys with different etypes as the private >>>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>>>>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>>>>>> is not always at the same time as the mapping (converting from one to >>>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>>> unresolved. >>>>>>>> >>>>>>>> Another solution is to revert back to my original KeyTab without an >>>>>>>> intended user. This means several changes: >>>>>>>> >>>>>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>>>>> *one* keytab, now we also need multiple keytabs, because there might >>>>>>>> be multiple keytabs in the subject's private credentials set and we >>>>>>>> cannot tell which is for who. Therefore we collect all of them, when >>>>>>>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>>>>>>> and return the combination. Hopefully there won't be two keys for the >>>>>>>> same principal with same kvno and same etype. I regard that as an >>>>>>>> abuse. >>>>>>>> >>>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>>>>> private credentials set and use the KerberosPrincipal info inside, and >>>>>>>> then get all KerberosKeys for the same principal. We have never really >>>>>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>>>>>> will have a big change: the first step is always finding a >>>>>>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>>>>>> specified, we find a matched one, otherwise, we just pick one and use >>>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>>> >>>>>>>> I think this is the correct way to go. Of course, for compatibility >>>>>>>> reason, we assume there are third party codes that put KerberosKeys >>>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>>>>>>> can accept it. >>>>>>>> >>>>>>>> Here is a partial webrev: >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>>> >>>>>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>>>>> objects are now retrieved by >>>>>>>> >>>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>>> + subj, null, null, KeyTab.class); >>>>>>>> >>>>>>>> so no principal name is used, and we retrive "many". >>>>>>>> >>>>>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>>>>> not deserve a CCC. >>>>>>>> >>>>>>>> Thanks >>>>>>>> Max >>>>>>>> >>>>>>>> >>>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>> >>>>>>>>> Max, >>>>>>>>> >>>>>>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>>> Have you considered a different approach like: >>>>>>>>> Instead of adding the whole KeyTab object into the Subject's private >>>>>>>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>>> object to >>>>>>>>> re-fresh its value if needed. This approach is conceptually closer to >>>>>>>>> what we had and the changes aren't as dramatic and seems to meet the >>>>>>>>> need required by 6894072. >>>>>>>>> >>>>>>>>> I'll continue to review your webrev, but just want to kick this idea >>>>>>>>> off >>>>>>>>> w/ you and see if it may work. >>>>>>>>> Valerie >>>>>>>>> >>>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>> >>>>>>>>>> Hi Valerie >>>>>>>>>> >>>>>>>>>> Updated webrev: >>>>>>>>>> >>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>>> >>>>>>>>>> Changes since last version: >>>>>>>>>> >>>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>>> >>>>>>>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>>>>>>> I'm hoping it can be null in the future to support multiple service >>>>>>>>>> principal in a single service. >>>>>>>>>> >>>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>>>>>>> inside private credentials set. >>>>>>>>>> >>>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>>> a) Generics for find() and findMany() >>>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>>> >>>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>>>>> >>>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>>> >>>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>>>>> after >>>>>>>>>> JAAS commit. >>>>>>>>>> >>>>>>>>>> This time I'd like to first make sure implementation is correct, and >>>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>>> >>>>>>>>>> Thanks >>>>>>>>>> Max >>>>>>>>>> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From weijun.wang at oracle.com Thu Apr 14 04:36:02 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Thu, 14 Apr 2011 12:36:02 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4DA651D7.9000503@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> <4DA651D7.9000503@oracle.com> Message-ID: <4DA679B2.9050107@oracle.com> webrev updated at http://cr.openjdk.java.net/~weijun/6894072/webrev.06/ changes: 1. Remove Krb5AcceptCredentials in manipulation cred priv set 2. Add codes to ServiceCreds.destroy() (See below) 3. javadoc of sun..KeyTab.getInstance(s) (mentioned in your other mail) 4. Copyright year of Handshaker and ServerHandsshaker (mentioned in your other mail) Comments inline below: On 04/14/2011 09:45 AM, Valerie (Yu-Ching) Peng wrote: > > > On 04/09/11 03:00 AM, Weijun Wang wrote: >>> src/share/classes/sun/security/jgss/krb5/Krb5Util.java >>> => 1) So, since when do we populate the Subject w/ Krb5AcceptCredential objects? I thought only Krb5LoginModule would "write" the subject's private cred set and I didn't find Krb5AcceptCredential objects added there. >>> 224 Krb5AcceptCredential k5ac = SubjectComber.find( >>> 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); >>> >> So, I'd prefer we just remove this special handling altogether. OK. Removed. > >> >>> => 2) Inside the getKKeys() method, you refresh the set of KerberoKey objects in the subject when the subject isn't read only. However, in Krb5LoginModule, KerberosKey objects are only stored into the Subject's private cred set when "storeKey" is true. Seems inconsistent? >>> 271 public KerberosKey[] getKKeys() { >>> >> >> I think not. In a normal krb5 login with JAAS, KeyTab and KerberosKey are only stored when both "storeKey" and subject.isReadOnly() are true. Since we now only deal with KeysFromKeyTab type of keys, we can be sure they are read from KeyTab. On the other hand, the reason we still store keys here is because we are afraid that the user is directly manipulating the subject, which means he/she is not using JAAS and therefore no Krb5LoginModule involved at all. >> >> > Let me rephrase my question: If he/she is only using JAAS, e.g. > Krb5LoginModule and has storeKey set to false, will > ServiceCreds.getKKeys() put KerberosKey objects into Subject's priv cred > set? If yes, is this the expected behavior? If storeKey=false, there will be no KeyTab object in the priv cred set, and there is no chance for these KerberosKey objects to be added. > >>> => 3) I don't quite understand why there is a destroy() method that does nothing... At a minimum, I'd expect we need to reset the fields, so that they aren't usable or empty, right? Perhaps, we also need to destroy the individual KeyTab and KerberosKey objects in the lists? >>> 316 public void destroy() { >>> 317 // Nothing to do now >>> 318 } >>> >> >> I'll think about this. >> > Ok, let me know if you have more thoughts. I added kp = null; ktabs = null; kk = null; to the method. Since the keys and keytabs are directly taken out of subject's priv cred set, I cannot destroy them. Otherwise, the same subject cannot doAs another JGSS session. The destroy() method should be called by Krb5AcceptCredential.dispose() and then called by Krb5Context.dispose(). Unfortunately, Krb5Context has not made the call. This is something we should fix later, but I don't want to touch it now. Thanks Max > Thanks, > Valerie >> >>> src/share/classes/sun/security/jgss/krb5/SubjectComber.java >>> >>> => I wonder why do you add this? The previous impl only search for publicly defined Kerberos objects, i.e. KerberosKey, KerberosTicket, etc. I thought you said in previous email that we don't populate Subject's private credential set w/ Krb5AcceptCredential objects? >>> >>> 100 credClass == Krb5AcceptCredential.class) { >>> src/share/classes/sun/security/krb5/Config.java >>> src/share/classes/sun/security/krb5/EncryptionKey.java >>> src/share/classes/sun/security/krb5/KrbAsRep.java >>> => All look fine >>> >>> src/share/classes/sun/security/krb5/KrbAsReqBuilder.java >>> => 1) This class does store its own copy of password, so shouldn't you move the "does not" on line 49 to line 50? >>> 49 * This class does not: >>> >>> 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) >>> 51 * a. Name of KDCs for a realm >>> 52 * b. Server availability, timeout, UDP or TCP >>> 53 * d. KRB_ERR_RESPONSE_TOO_BIG >>> >>> 54 * 2. Stores its own copy of password, this means: >>> 55 * a. Do not change/wipe it before Builder finish >>> 56 * b. Builder will not wipe it for you >>> >> >> I'll remove lines 54-56. Maybe I meant to do that some time ago. >> >> Thanks >> Max >> >> >>> I am still looking at the rest of changes, just want to send what I have now, so you don't wait too long. >>> >>> Thanks, >>> Valerie >>> >>> On 04/02/11 02:18 AM, Weijun Wang wrote: >>> >>>> Updated again: >>>> >>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >>>> >>>> Changes: >>>> >>>> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we will add to and remove from private credentials set. Add and remove are only done when !subject.isReadOnly(). Only remove keys for this principal. >>>> >>>> 2. Use the class above in KeyTab.getKeys(). >>>> >>>> 3. Remove a uselss method in KDC.java test. >>>> >>>> 4. Update new test KeyTabCompat.java, make sure after keytab refresh, the old key in priv cred set is removed. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>> >>>> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>>> >>>>> I think we need to clean up the old ones if we added it there. >>>>> Conceptually, this would fit closer w/ the "dynamic key tab" support. >>>>> One straightforward way for us to do this is to subclass KerberosKey >>>>> class and then we can remove all KerberosKey objects which are >>>>> implemented using this class at refresh time. >>>>> Just an idea. >>>>> Valerie >>>>> >>>>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>>> >>>>>> Hi Valerie >>>>>> >>>>>> Updated again: >>>>>> >>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>>>> >>>>>> 1. KeyTab can be used by anyone >>>>>> 2. The two compatibility support >>>>>> >>>>>> As for adding keys (from keytab) into private credentials set, I >>>>>> haven't cleaned up old ones. Since it's a set, this means if old keys >>>>>> are removed from the keytab, they stay in the set. The set is never >>>>>> really used by our code, so I think it's harmless. I really don't know >>>>>> how to clean up. Remove all keys for this principal? But we do this >>>>>> because we want to keep compatibility and worry about people directly >>>>>> manipulating the set, and I cannot predict what they will do with the >>>>>> set. >>>>>> >>>>>> Thanks >>>>>> Max >>>>>> >>>>>> >>>>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>>> >>>>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>> >>>>>>>> Max, >>>>>>>> >>>>>>>> I like this new approach of yours better. >>>>>>>> As for compatibility, you mentioned only one aspect, i.e. apps which >>>>>>>> put >>>>>>>> KerberosKeys inside a subject's private cred set. >>>>>>>> There is also a possibility that apps may read the subject's private >>>>>>>> credentials set for KerberosKeys that we used to put in and they won't >>>>>>>> find the keys anymore since it's the KeyTab objects that we put into >>>>>>>> the >>>>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>>>>> >>>>>>> No, I haven't thought about it. >>>>>>> >>>>>>> We can put a snapshot of keys there at the beginning and refresh them >>>>>>> whenever a getKeys() is called. This should be harmless because we don't >>>>>>> really use the keys if keytab objects (not keytab files) exist. I can do >>>>>>> that. >>>>>>> >>>>>>> Thanks >>>>>>> Max >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Valerie >>>>>>>> >>>>>>>> >>>>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>>> >>>>>>>>> Hi Valerie >>>>>>>>> >>>>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>>>> >>>>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's resolved, >>>>>>>>> we have a list of keys with different etypes as the private >>>>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>>>> resolved, it's resolved into multiple keys. Also, there was a simple >>>>>>>>> mapping between KerberosKey and EncryptionKey. The resolving process >>>>>>>>> is not always at the same time as the mapping (converting from one to >>>>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>>>> unresolved. >>>>>>>>> >>>>>>>>> Another solution is to revert back to my original KeyTab without an >>>>>>>>> intended user. This means several changes: >>>>>>>>> >>>>>>>>> In my latest version of ServiceCreds, there were multiple keys and >>>>>>>>> *one* keytab, now we also need multiple keytabs, because there might >>>>>>>>> be multiple keytabs in the subject's private credentials set and we >>>>>>>>> cannot tell which is for who. Therefore we collect all of them, when >>>>>>>>> the keys are needed at AP-REP time, we call getKeys() on all of them, >>>>>>>>> and return the combination. Hopefully there won't be two keys for the >>>>>>>>> same principal with same kvno and same etype. I regard that as an >>>>>>>>> abuse. >>>>>>>>> >>>>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from the >>>>>>>>> private credentials set and use the KerberosPrincipal info inside, and >>>>>>>>> then get all KerberosKeys for the same principal. We have never really >>>>>>>>> looked at any KerberosPrincipal objects in the subject's principal >>>>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. Now this >>>>>>>>> will have a big change: the first step is always finding a >>>>>>>>> KerberosPrincipal in the principal sets first. If serverPrincipal is >>>>>>>>> specified, we find a matched one, otherwise, we just pick one and use >>>>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>>>> >>>>>>>>> I think this is the correct way to go. Of course, for compatibility >>>>>>>>> reason, we assume there are third party codes that put KerberosKeys >>>>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do it, but we >>>>>>>>> can accept it. >>>>>>>>> >>>>>>>>> Here is a partial webrev: >>>>>>>>> >>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>>>> >>>>>>>>> It only contains changes for Krb5Util.java, and hasn't included the >>>>>>>>> compatibility codes I mentioned above. As you can see, the KeyTab >>>>>>>>> objects are now retrieved by >>>>>>>>> >>>>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>>>> + subj, null, null, KeyTab.class); >>>>>>>>> >>>>>>>>> so no principal name is used, and we retrive "many". >>>>>>>>> >>>>>>>>> If you think this is OK, I'll clean up other codes. One benefit is >>>>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>>>> introduce new hashCode/equals/toString methods, but I think they do >>>>>>>>> not deserve a CCC. >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> Max >>>>>>>>> >>>>>>>>> >>>>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>>> >>>>>>>>>> Max, >>>>>>>>>> >>>>>>>>>> Well, I find it a bit awkward that the KeyTab class has to have the >>>>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>>>> Have you considered a different approach like: >>>>>>>>>> Instead of adding the whole KeyTab object into the Subject's private >>>>>>>>>> credential set, we add a "to-be-resolved" KerberosKey object. When we >>>>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>>>> object to >>>>>>>>>> re-fresh its value if needed. This approach is conceptually closer to >>>>>>>>>> what we had and the changes aren't as dramatic and seems to meet the >>>>>>>>>> need required by 6894072. >>>>>>>>>> >>>>>>>>>> I'll continue to review your webrev, but just want to kick this idea >>>>>>>>>> off >>>>>>>>>> w/ you and see if it may work. >>>>>>>>>> Valerie >>>>>>>>>> >>>>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>>> >>>>>>>>>>> Hi Valerie >>>>>>>>>>> >>>>>>>>>>> Updated webrev: >>>>>>>>>>> >>>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>>>> >>>>>>>>>>> Changes since last version: >>>>>>>>>>> >>>>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New getInstance() >>>>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>>>> >>>>>>>>>>> It can only be non-null now, but I didn't say anything in the spec. >>>>>>>>>>> I'm hoping it can be null in the future to support multiple service >>>>>>>>>>> principal in a single service. >>>>>>>>>>> >>>>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it will be put >>>>>>>>>>> inside private credentials set. >>>>>>>>>>> >>>>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>>>> a) Generics for find() and findMany() >>>>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>>>> >>>>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside both >>>>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>>>> getInstance(), there is still a field inside to save the value. >>>>>>>>>>> >>>>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now valid. >>>>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>>>> >>>>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 KerberosPrincipal >>>>>>>>>>> after >>>>>>>>>>> JAAS commit. >>>>>>>>>>> >>>>>>>>>>> This time I'd like to first make sure implementation is correct, and >>>>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> Max >>>>>>>>>>> >> >> > From weijun.wang at oracle.com Thu Apr 14 04:42:01 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Thu, 14 Apr 2011 04:42:01 +0000 Subject: hg: jdk7/tl/jdk: 7036157: TCP connection does not use kdc_timeout Message-ID: <20110414044211.5DBE947A74@hg.openjdk.java.net> Changeset: e9ae2178926a Author: weijun Date: 2011-04-14 12:40 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e9ae2178926a 7036157: TCP connection does not use kdc_timeout Reviewed-by: valeriep ! src/share/classes/sun/security/krb5/internal/NetClient.java From jim.holmlund at sun.com Wed Apr 13 20:28:36 2011 From: jim.holmlund at sun.com (jim.holmlund at sun.com) Date: Wed, 13 Apr 2011 20:28:36 +0000 Subject: hg: jdk7/tl/jdk: 7032960: API files in java.awt need to be updated for references to JVM Spec with editions/hyperlinks; ... Message-ID: <20110413202846.754E947A5C@hg.openjdk.java.net> Changeset: 2dc552b0ebac Author: jjh Date: 2011-04-13 12:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2dc552b0ebac 7032960: API files in java.awt need to be updated for references to JVM Spec with editions/hyperlinks 7032965: API files in java.io need to updated for references to JVM Spec with editions/hyperlinks 7032958: API files in java.lang need to updated for references to JLS with editions/hyperlinks 7032961: API files in java.lang need to updated for references to JVM with editions/hyperlinks 7032976: API files in javax.lang need to be updated for references to JLS with editions/hyperlinks 7032959: API files in java.util need to updated for references to JLS with editions/hyperlinks 7032962: API files in java.util need to updated for references to JVM Spec with editions/hyperlinks 7032967: API files in java.security need to updated for references to JVM Spec with editions/hyperlinks 7032955: API files in java.math need to updated for references to JLS with editions/hyperlinks Summary: Removed URLs and 'edition' references Reviewed-by: darcy ! make/docs/Makefile ! make/jpda/jdwp/jdwp.spec ! src/share/classes/com/sun/beans/TypeResolver.java ! src/share/classes/com/sun/java/util/jar/pack/package.html ! src/share/classes/com/sun/jdi/Accessible.java ! src/share/classes/com/sun/jdi/ArrayType.java ! src/share/classes/com/sun/jdi/ClassLoaderReference.java ! src/share/classes/com/sun/jdi/ClassNotLoadedException.java ! src/share/classes/com/sun/jdi/ClassType.java ! src/share/classes/com/sun/jdi/LocalVariable.java ! src/share/classes/com/sun/jdi/Method.java ! src/share/classes/com/sun/jdi/ObjectReference.java ! src/share/classes/com/sun/jdi/ReferenceType.java ! src/share/classes/com/sun/jdi/TypeComponent.java ! src/share/classes/java/awt/doc-files/AWTThreadIssues.html ! src/share/classes/java/io/Console.java ! src/share/classes/java/io/PrintStream.java ! src/share/classes/java/io/PrintWriter.java ! src/share/classes/java/lang/AssertionError.java ! src/share/classes/java/lang/Byte.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/ClassLoader.java ! src/share/classes/java/lang/Double.java ! src/share/classes/java/lang/Enum.java ! src/share/classes/java/lang/Error.java ! src/share/classes/java/lang/Exception.java ! src/share/classes/java/lang/Float.java ! src/share/classes/java/lang/Integer.java ! src/share/classes/java/lang/Long.java ! src/share/classes/java/lang/Object.java ! src/share/classes/java/lang/Override.java ! src/share/classes/java/lang/Package.java ! src/share/classes/java/lang/RuntimeException.java ! src/share/classes/java/lang/SafeVarargs.java ! src/share/classes/java/lang/Short.java ! src/share/classes/java/lang/String.java ! src/share/classes/java/lang/Throwable.java ! src/share/classes/java/lang/annotation/Annotation.java ! src/share/classes/java/lang/instrument/ClassFileTransformer.java ! src/share/classes/java/lang/instrument/Instrumentation.java ! src/share/classes/java/lang/invoke/package-info.java ! src/share/classes/java/lang/reflect/Constructor.java ! src/share/classes/java/lang/reflect/Field.java ! src/share/classes/java/lang/reflect/GenericDeclaration.java ! src/share/classes/java/lang/reflect/Method.java ! src/share/classes/java/lang/reflect/Modifier.java ! src/share/classes/java/math/BigDecimal.java ! src/share/classes/java/math/BigInteger.java ! src/share/classes/java/security/SecureClassLoader.java ! src/share/classes/java/util/Formatter.java ! src/share/classes/java/util/Properties.java ! src/share/classes/java/util/PropertyResourceBundle.java ! src/share/classes/java/util/concurrent/atomic/package-info.java ! src/share/classes/java/util/concurrent/locks/Lock.java ! src/share/classes/java/util/concurrent/package-info.java ! src/share/classes/java/util/jar/Pack200.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/javax/management/remote/package.html ! src/share/classes/sun/misc/FpUtils.java From jim.holmlund at sun.com Wed Apr 13 20:29:40 2011 From: jim.holmlund at sun.com (jim.holmlund at sun.com) Date: Wed, 13 Apr 2011 20:29:40 +0000 Subject: hg: jdk7/tl/langtools: 7032975: API files in javax.annotation.processing need to be updated for references to JLS; ... Message-ID: <20110413202943.0015A47A5D@hg.openjdk.java.net> Changeset: 694ff82ca68e Author: jjh Date: 2011-04-13 11:35 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/694ff82ca68e 7032975: API files in javax.annotation.processing need to be updated for references to JLS 7032972: API files in javax.tools need to updated for references to JVM Spec with editions/hyperlinks 7032978: API files in javax.tools need to be updated for references to JLS with editions/hyperlinks Summary: Removed URLs and 'edition' references Reviewed-by: jjg, darcy ! make/build.properties ! make/build.xml ! src/share/classes/com/sun/javadoc/ClassDoc.java ! src/share/classes/com/sun/source/tree/AnnotationTree.java ! src/share/classes/com/sun/source/tree/ArrayAccessTree.java ! src/share/classes/com/sun/source/tree/ArrayTypeTree.java ! src/share/classes/com/sun/source/tree/AssertTree.java ! src/share/classes/com/sun/source/tree/AssignmentTree.java ! src/share/classes/com/sun/source/tree/BinaryTree.java ! src/share/classes/com/sun/source/tree/BlockTree.java ! src/share/classes/com/sun/source/tree/BreakTree.java ! src/share/classes/com/sun/source/tree/CaseTree.java ! src/share/classes/com/sun/source/tree/CatchTree.java ! src/share/classes/com/sun/source/tree/ClassTree.java ! src/share/classes/com/sun/source/tree/CompilationUnitTree.java ! src/share/classes/com/sun/source/tree/CompoundAssignmentTree.java ! src/share/classes/com/sun/source/tree/ConditionalExpressionTree.java ! src/share/classes/com/sun/source/tree/ContinueTree.java ! src/share/classes/com/sun/source/tree/DoWhileLoopTree.java ! src/share/classes/com/sun/source/tree/EmptyStatementTree.java ! src/share/classes/com/sun/source/tree/EnhancedForLoopTree.java ! src/share/classes/com/sun/source/tree/ExpressionStatementTree.java ! src/share/classes/com/sun/source/tree/ExpressionTree.java ! src/share/classes/com/sun/source/tree/ForLoopTree.java ! src/share/classes/com/sun/source/tree/IdentifierTree.java ! src/share/classes/com/sun/source/tree/IfTree.java ! src/share/classes/com/sun/source/tree/ImportTree.java ! src/share/classes/com/sun/source/tree/InstanceOfTree.java ! src/share/classes/com/sun/source/tree/LabeledStatementTree.java ! src/share/classes/com/sun/source/tree/LiteralTree.java ! src/share/classes/com/sun/source/tree/MemberSelectTree.java ! src/share/classes/com/sun/source/tree/MethodInvocationTree.java ! src/share/classes/com/sun/source/tree/MethodTree.java ! src/share/classes/com/sun/source/tree/ModifiersTree.java ! src/share/classes/com/sun/source/tree/NewArrayTree.java ! src/share/classes/com/sun/source/tree/NewClassTree.java ! src/share/classes/com/sun/source/tree/ParameterizedTypeTree.java ! src/share/classes/com/sun/source/tree/ParenthesizedTree.java ! src/share/classes/com/sun/source/tree/PrimitiveTypeTree.java ! src/share/classes/com/sun/source/tree/ReturnTree.java ! src/share/classes/com/sun/source/tree/StatementTree.java ! src/share/classes/com/sun/source/tree/SwitchTree.java ! src/share/classes/com/sun/source/tree/SynchronizedTree.java ! src/share/classes/com/sun/source/tree/ThrowTree.java ! src/share/classes/com/sun/source/tree/TryTree.java ! src/share/classes/com/sun/source/tree/TypeCastTree.java ! src/share/classes/com/sun/source/tree/TypeParameterTree.java ! src/share/classes/com/sun/source/tree/UnaryTree.java ! src/share/classes/com/sun/source/tree/VariableTree.java ! src/share/classes/com/sun/source/tree/WhileLoopTree.java ! src/share/classes/com/sun/source/tree/WildcardTree.java ! src/share/classes/com/sun/tools/apt/mirror/util/DeclarationsImpl.java ! src/share/classes/com/sun/tools/classfile/AccessFlags.java ! src/share/classes/com/sun/tools/classfile/Annotation.java ! src/share/classes/com/sun/tools/classfile/AnnotationDefault_attribute.java ! src/share/classes/com/sun/tools/classfile/BootstrapMethods_attribute.java ! src/share/classes/com/sun/tools/classfile/ClassFile.java ! src/share/classes/com/sun/tools/classfile/Code_attribute.java ! src/share/classes/com/sun/tools/classfile/ConstantPool.java ! src/share/classes/com/sun/tools/classfile/ConstantValue_attribute.java ! src/share/classes/com/sun/tools/classfile/Deprecated_attribute.java ! src/share/classes/com/sun/tools/classfile/Descriptor.java ! src/share/classes/com/sun/tools/classfile/EnclosingMethod_attribute.java ! src/share/classes/com/sun/tools/classfile/Exceptions_attribute.java ! src/share/classes/com/sun/tools/classfile/InnerClasses_attribute.java ! src/share/classes/com/sun/tools/classfile/Instruction.java ! src/share/classes/com/sun/tools/classfile/LineNumberTable_attribute.java ! src/share/classes/com/sun/tools/classfile/LocalVariableTable_attribute.java ! src/share/classes/com/sun/tools/classfile/LocalVariableTypeTable_attribute.java ! src/share/classes/com/sun/tools/classfile/Opcode.java ! src/share/classes/com/sun/tools/classfile/RuntimeAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/RuntimeInvisibleAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/RuntimeInvisibleParameterAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/RuntimeParameterAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/RuntimeVisibleAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/RuntimeVisibleParameterAnnotations_attribute.java ! src/share/classes/com/sun/tools/classfile/Signature.java ! src/share/classes/com/sun/tools/classfile/Signature_attribute.java ! src/share/classes/com/sun/tools/classfile/SourceDebugExtension_attribute.java ! src/share/classes/com/sun/tools/classfile/SourceFile_attribute.java ! src/share/classes/com/sun/tools/classfile/StackMapTable_attribute.java ! src/share/classes/com/sun/tools/classfile/Synthetic_attribute.java ! src/share/classes/com/sun/tools/classfile/package.html ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java ! src/share/classes/com/sun/tools/javac/code/Symbol.java ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/share/classes/javax/annotation/processing/Processor.java ! src/share/classes/javax/lang/model/SourceVersion.java ! src/share/classes/javax/lang/model/element/Element.java ! src/share/classes/javax/lang/model/element/Modifier.java ! src/share/classes/javax/lang/model/element/PackageElement.java ! src/share/classes/javax/lang/model/element/TypeElement.java ! src/share/classes/javax/lang/model/element/VariableElement.java ! src/share/classes/javax/lang/model/type/DeclaredType.java ! src/share/classes/javax/lang/model/type/TypeVariable.java ! src/share/classes/javax/lang/model/util/Elements.java ! src/share/classes/javax/lang/model/util/Types.java ! src/share/classes/javax/tools/JavaCompiler.java ! src/share/classes/javax/tools/JavaFileManager.java ! src/share/classes/javax/tools/JavaFileObject.java ! src/share/sample/javac/processing/src/CheckNamesProcessor.java From valerie.peng at oracle.com Thu Apr 14 23:32:14 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Thu, 14 Apr 2011 16:32:14 -0700 Subject: Code review request for 7035115 Message-ID: <4DA783FE.1090105@oracle.com> Max, Do you have cycles to review this following trivial test bug? 7035115: sun/security/pkcs11/Provider/ConfigShortPath.java compilation failed Webrev at: http://cr.openjdk.java.net/~valeriep/7035115/webrev.00/ This only occurs on windows 64-bit machines where SunPKCS11 provider isn't built. This wasn't caught in my previous JPRT job since pkcs11 regression tests aren't run w/ default JPRT settings. Thanks, Valerie From weijun.wang at oracle.com Fri Apr 15 00:49:18 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Fri, 15 Apr 2011 08:49:18 +0800 Subject: Code review request for 7035115 In-Reply-To: <4DA783FE.1090105@oracle.com> References: <4DA783FE.1090105@oracle.com> Message-ID: <4DA7960E.3040901@oracle.com> Changes look fine. Are you going to backport the fix to earlier JDKs? Otherwise, you can simplify cons = clazz.getConstructor(new Class[] {String.class}); Object obj = cons.newInstance(new Object[] {configFile}); to cons = clazz.getConstructor(String.class); cons.newInstance(configFile); Thanks Max On 04/15/2011 07:32 AM, Valerie (Yu-Ching) Peng wrote: > Max, > > Do you have cycles to review this following trivial test bug? > 7035115: sun/security/pkcs11/Provider/ConfigShortPath.java compilation > failed > > Webrev at: > http://cr.openjdk.java.net/~valeriep/7035115/webrev.00/ > > This only occurs on windows 64-bit machines where SunPKCS11 provider > isn't built. > This wasn't caught in my previous JPRT job since pkcs11 regression tests > aren't run w/ default JPRT settings. > > Thanks, > Valerie From joe.darcy at oracle.com Fri Apr 15 04:27:30 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Fri, 15 Apr 2011 04:27:30 +0000 Subject: hg: jdk7/tl/jdk: 6430675: Math.round has surprising behavior for 0x1.fffffffffffffp-2 Message-ID: <20110415042740.8B90E47AE1@hg.openjdk.java.net> Changeset: 2d89d0d1e0ff Author: darcy Date: 2011-04-14 21:27 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2d89d0d1e0ff 6430675: Math.round has surprising behavior for 0x1.fffffffffffffp-2 Reviewed-by: alanb ! src/share/classes/java/lang/Math.java ! src/share/classes/java/lang/StrictMath.java + test/java/lang/Math/RoundTests.java From valerie.peng at oracle.com Sat Apr 16 00:14:17 2011 From: valerie.peng at oracle.com (valerie.peng at oracle.com) Date: Sat, 16 Apr 2011 00:14:17 +0000 Subject: hg: jdk7/tl/jdk: 7035115: sun/security/pkcs11/Provider/ConfigShortPath.java compilation failed Message-ID: <20110416001440.4815047B18@hg.openjdk.java.net> Changeset: 131ed7967996 Author: valeriep Date: 2011-04-15 15:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/131ed7967996 7035115: sun/security/pkcs11/Provider/ConfigShortPath.java compilation failed Summary: Updated the test to use reflection and skip when SunPKCS11 provider not present. Reviewed-by: weijun ! test/sun/security/pkcs11/Provider/ConfigShortPath.java From mandy.chung at oracle.com Sat Apr 16 06:42:35 2011 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Sat, 16 Apr 2011 06:42:35 +0000 Subject: hg: jdk7/tl/jdk: 7032589: FileHandler leaking file descriptor of the file lock Message-ID: <20110416064245.18FEC47B28@hg.openjdk.java.net> Changeset: 54d9513f87a4 Author: mchung Date: 2011-04-15 23:42 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/54d9513f87a4 7032589: FileHandler leaking file descriptor of the file lock Reviewed-by: forax, dcubed ! src/share/classes/java/util/logging/FileHandler.java From alan.bateman at oracle.com Sun Apr 17 12:50:30 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Sun, 17 Apr 2011 12:50:30 +0000 Subject: hg: jdk7/tl/jdk: 7036582: Improve test coverage of java.math.BigDecimal Message-ID: <20110417125102.EC2A247B78@hg.openjdk.java.net> Changeset: 007b2535a7f5 Author: alanb Date: 2011-04-17 13:49 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/007b2535a7f5 7036582: Improve test coverage of java.math.BigDecimal Reviewed-by: darcy Contributed-by: sergey.kuksenko at oracle.com ! test/ProblemList.txt + test/java/math/BigDecimal/DivideMcTests.java ! test/java/math/BigDecimal/FloatDoubleValueTests.java + test/java/math/BigDecimal/RangeTests.java ! test/java/math/BigDecimal/StrippingZerosTest.java ! test/java/math/BigDecimal/ToPlainStringTests.java From lana.steuck at oracle.com Sun Apr 17 17:49:10 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Sun, 17 Apr 2011 17:49:10 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110417174930.6140047B90@hg.openjdk.java.net> Changeset: 718617820e53 Author: dwanvik Date: 2011-04-15 23:01 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/718617820e53 7036048: Bring the Java DB in JDK7 to the same level as JDK 6 (Java DB v10.6.2.1) Summary: Replace the existing Java DB bundles with newer ones, and move demo dir into JDK's demo dir as db Reviewed-by: ohair ! make/common/Release.gmk Changeset: 6939022fa093 Author: dwanvik Date: 2011-04-17 16:21 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6939022fa093 Merge From lana.steuck at oracle.com Mon Apr 18 04:45:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:47 +0000 Subject: hg: jdk7/tl/jaxp: 4 new changesets Message-ID: <20110418044547.8FD6A47BAA@hg.openjdk.java.net> Changeset: d19dd3dd599e Author: schien Date: 2011-04-07 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/d19dd3dd599e Added tag jdk7-b137 for changeset 1d87f7460cde ! .hgtags Changeset: bc701b263f16 Author: ohair Date: 2011-04-06 20:15 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/bc701b263f16 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! build-defs.xml ! build-drop-template.xml ! build.xml ! jaxp.properties ! make/Makefile Changeset: be3758943770 Author: ohair Date: 2011-04-12 18:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/be3758943770 Merge Changeset: 28c7c0ed2444 Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/28c7c0ed2444 Added tag jdk7-b138 for changeset be3758943770 ! .hgtags From lana.steuck at oracle.com Mon Apr 18 04:45:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:47 +0000 Subject: hg: jdk7/tl/jaxws: 5 new changesets Message-ID: <20110418044547.991C647BAB@hg.openjdk.java.net> Changeset: 6dfcea9f7a4e Author: schien Date: 2011-04-07 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/6dfcea9f7a4e Added tag jdk7-b137 for changeset ccea3282991c ! .hgtags Changeset: de11bd049d6f Author: ohair Date: 2011-04-06 20:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/de11bd049d6f 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! build-defs.xml ! build-drop-template.xml ! build.xml ! make/Makefile Changeset: cc956c8a8255 Author: ohair Date: 2011-04-12 18:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/cc956c8a8255 Merge Changeset: c025078c8362 Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/c025078c8362 Added tag jdk7-b138 for changeset cc956c8a8255 ! .hgtags Changeset: 97c69227f325 Author: lana Date: 2011-04-17 16:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxws/rev/97c69227f325 Merge From lana.steuck at oracle.com Mon Apr 18 04:45:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:47 +0000 Subject: hg: jdk7/tl: 5 new changesets Message-ID: <20110418044547.99F2F47BAC@hg.openjdk.java.net> Changeset: f911d742c40a Author: schien Date: 2011-04-07 15:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/f911d742c40a Added tag jdk7-b137 for changeset 7654afc6a29e ! .hgtags Changeset: 574b71659cb1 Author: lana Date: 2011-04-10 10:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/574b71659cb1 Merge Changeset: 7e13dbf7e8af Author: ohair Date: 2011-04-06 22:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/7e13dbf7e8af 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! Makefile ! make/Defs-internal.gmk ! make/corba-rules.gmk ! make/deploy-rules.gmk ! make/hotspot-rules.gmk ! make/install-rules.gmk ! make/jaxp-rules.gmk ! make/jaxws-rules.gmk ! make/jdk-rules.gmk ! make/langtools-rules.gmk ! make/scripts/update_copyright_year.sh ! make/sponsors-rules.gmk ! test/Makefile Changeset: fc47c97bbbd9 Author: ohair Date: 2011-04-12 18:35 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/fc47c97bbbd9 Merge ! test/Makefile Changeset: 7ed6d0b9aaa1 Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/rev/7ed6d0b9aaa1 Added tag jdk7-b138 for changeset fc47c97bbbd9 ! .hgtags From lana.steuck at oracle.com Mon Apr 18 04:45:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:47 +0000 Subject: hg: jdk7/tl/corba: 6 new changesets Message-ID: <20110418044551.8B76A47BAD@hg.openjdk.java.net> Changeset: 99f186b8097f Author: schien Date: 2011-04-07 15:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/99f186b8097f Added tag jdk7-b137 for changeset a66c01d8bf89 ! .hgtags Changeset: 53c6f4ad1e06 Author: ohair Date: 2011-04-06 20:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/53c6f4ad1e06 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_de.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_es.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_fr.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_it.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ja.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_ko.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_sv.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_CN.properties ! src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_zh_TW.properties ! src/share/classes/com/sun/corba/se/spi/logging/data/Activation.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/IOR.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/Interceptors.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/Naming.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/OMG.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/ORBUtil.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/POA.mc ! src/share/classes/com/sun/corba/se/spi/logging/data/Util.mc Changeset: 63cbb2c9c88c Author: mfang Date: 2011-04-08 15:24 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/63cbb2c9c88c 7034940: message drop 2 translation integration Reviewed-by: yhuang ! src/share/classes/com/sun/tools/corba/se/idl/idl_ja.prp ! src/share/classes/com/sun/tools/corba/se/idl/idl_zh_CN.prp ! src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_ja.prp ! src/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/toJavaPortable_zh_CN.prp Changeset: 2f8ada17792a Author: mfang Date: 2011-04-11 13:36 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/2f8ada17792a Merge Changeset: 78d8cf04697e Author: mfang Date: 2011-04-11 14:09 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/78d8cf04697e Merge Changeset: 60b074ec6fcf Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/corba/rev/60b074ec6fcf Added tag jdk7-b138 for changeset 78d8cf04697e ! .hgtags From lana.steuck at oracle.com Mon Apr 18 04:45:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:47 +0000 Subject: hg: jdk7/tl/langtools: 9 new changesets Message-ID: <20110418044606.5593047BAE@hg.openjdk.java.net> Changeset: aa4f494c17ef Author: schien Date: 2011-04-07 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/aa4f494c17ef Added tag jdk7-b137 for changeset a15c9b058ae0 ! .hgtags Changeset: de8bb6fa070c Author: lana Date: 2011-04-10 10:25 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/de8bb6fa070c Merge Changeset: 0ff2bbd38f10 Author: ohair Date: 2011-04-06 20:33 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/0ff2bbd38f10 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! make/netbeans/langtools/build.xml ! make/tools/GenStubs/GenStubs.java ! src/share/bin/launcher.sh-template ! src/share/classes/com/sun/tools/apt/resources/apt_ja.properties ! src/share/classes/com/sun/tools/apt/resources/apt_zh_CN.properties ! src/share/classes/com/sun/tools/doclets/formats/html/HelpWriter.java ! src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java ! src/share/classes/com/sun/tools/doclets/internal/toolkit/Content.java ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Enter.java ! src/share/classes/com/sun/tools/javac/main/OptionName.java ! src/share/classes/com/sun/tools/javac/main/RecognizedOptions.java ! src/share/classes/com/sun/tools/javac/nio/JavacPathFileManager.java ! src/share/classes/com/sun/tools/javac/nio/PathFileObject.java ! src/share/classes/com/sun/tools/javac/resources/compiler_ja.properties ! src/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties ! src/share/classes/com/sun/tools/javac/resources/javac_ja.properties ! src/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties ! src/share/classes/com/sun/tools/javac/util/Names.java ! src/share/classes/com/sun/tools/javac/util/Options.java ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties ! src/share/classes/com/sun/tools/javah/resources/l10n_ja.properties ! src/share/classes/com/sun/tools/javah/resources/l10n_zh_CN.properties ! test/tools/javac/4917091/Test255.java ! test/tools/javac/4917091/Test256a.java ! test/tools/javac/4917091/Test256b.java ! test/tools/javac/ClassPathTest/ClassPathTest.sh ! test/tools/javac/ExtDirs/ExtDirs.sh ! test/tools/javac/Paths/Help.sh ! test/tools/javac/diags/CheckResourceKeys.java ! test/tools/javac/javazip/Test.sh ! test/tools/javac/meth/TestCP.java ! test/tools/javac/meth/XlintWarn.java ! test/tools/javac/options/T6900037.java ! test/tools/javac/scope/HashCollisionTest.java ! test/tools/javac/scope/StarImportTest.java ! test/tools/javac/types/GenericTypeWellFormednessTest.java ! test/tools/javac/types/TypeHarness.java ! test/tools/javac/varargs/6199075/T6199075.java ! test/tools/javac/varargs/warning/Warn4.java ! test/tools/javac/varargs/warning/Warn5.java ! test/tools/javac/versions/check.sh Changeset: 7278b5b61c17 Author: mfang Date: 2011-04-08 15:25 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/7278b5b61c17 7034940: message drop 2 translation integration Reviewed-by: yhuang ! src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties ! src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.properties ! src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties ! src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties ! src/share/classes/com/sun/tools/javac/resources/compiler_ja.properties ! src/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties ! src/share/classes/com/sun/tools/javac/resources/javac_ja.properties ! src/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties Changeset: d042f2ca7e85 Author: mfang Date: 2011-04-11 14:01 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/d042f2ca7e85 Merge Changeset: 6f8bb109a65b Author: mfang Date: 2011-04-11 16:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/6f8bb109a65b Merge ! src/share/classes/com/sun/tools/javac/resources/compiler_ja.properties ! src/share/classes/com/sun/tools/javac/resources/compiler_zh_CN.properties ! src/share/classes/com/sun/tools/javac/resources/javac_ja.properties ! src/share/classes/com/sun/tools/javac/resources/javac_zh_CN.properties ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_ja.properties ! src/share/classes/com/sun/tools/javadoc/resources/javadoc_zh_CN.properties Changeset: 53f212bed4f4 Author: ohair Date: 2011-04-13 16:57 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/53f212bed4f4 Merge ! src/share/classes/com/sun/tools/doclets/formats/html/HelpWriter.java ! src/share/classes/com/sun/tools/javac/nio/PathFileObject.java ! src/share/classes/com/sun/tools/javac/util/Names.java ! test/tools/javac/meth/TestCP.java ! test/tools/javac/meth/XlintWarn.java Changeset: 853b6bb99f9b Author: schien Date: 2011-04-14 15:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/853b6bb99f9b Added tag jdk7-b138 for changeset 53f212bed4f4 ! .hgtags Changeset: 5ed971fce27c Author: lana Date: 2011-04-17 16:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/5ed971fce27c Merge From lana.steuck at oracle.com Mon Apr 18 04:45:48 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:45:48 +0000 Subject: hg: jdk7/tl/hotspot: 50 new changesets Message-ID: <20110418044717.19FE047BAF@hg.openjdk.java.net> Changeset: 2ffcf94550d5 Author: trims Date: 2011-04-01 12:06 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2ffcf94550d5 Added tag hs21-b06 for changeset bd586e392d93 ! .hgtags Changeset: 74e790c48cd4 Author: sla Date: 2011-03-28 12:48 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/74e790c48cd4 7031571: Generate native VS2010 project files Reviewed-by: hosterda, stefank, brutisso ! make/windows/create.bat ! make/windows/makefiles/projectcreator.make ! make/windows/makefiles/rules.make ! src/share/tools/ProjectCreator/Util.java ! src/share/tools/ProjectCreator/WinGammaPlatform.java + src/share/tools/ProjectCreator/WinGammaPlatformVC10.java ! src/share/tools/ProjectCreator/WinGammaPlatformVC7.java Changeset: df553e4a797b Author: acorn Date: 2011-03-30 17:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/df553e4a797b Merge Changeset: 151da0c145a8 Author: twisti Date: 2011-03-24 02:11 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/151da0c145a8 7030207: Zero tweak to remove accidentally incorporated code Summary: IcedTea contains a now-unmaintained ARM-specific interpreter and part of that interpreter was accidentally incorporated in one of the webrevs when Zero was initially imported. Reviewed-by: twisti Contributed-by: Gary Benson ! src/share/vm/interpreter/bytecodeInterpreter.cpp Changeset: b868d9928221 Author: twisti Date: 2011-03-24 23:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b868d9928221 Merge - test/compiler/6987555/Test6987555.java - test/compiler/6991596/Test6991596.java Changeset: f731b22cd52d Author: jcoomes Date: 2011-03-24 23:49 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/f731b22cd52d Merge ! src/share/vm/interpreter/bytecodeInterpreter.cpp Changeset: 322a41ec766c Author: never Date: 2011-03-25 11:29 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/322a41ec766c 7025708: Assertion if using "-XX:+CITraceTypeFlow -XX:+Verbose" together Reviewed-by: never Contributed-by: volker.simonis at gmail.com ! src/share/vm/ci/ciTypeFlow.cpp Changeset: b2949bf39900 Author: never Date: 2011-03-25 18:19 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b2949bf39900 Merge Changeset: 29524004ce17 Author: never Date: 2011-03-25 18:50 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/29524004ce17 7022204: LogFile wildcarding should use %p instead of star Reviewed-by: coleenp, jrose ! src/share/vm/utilities/ostream.cpp Changeset: 7e88bdae86ec Author: roland Date: 2011-03-25 09:35 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/7e88bdae86ec 7029017: Additional architecture support for c2 compiler Summary: Enables cross building of a c2 VM. Support masking of shift counts when the processor architecture mandates it. Reviewed-by: kvn, never ! make/linux/makefiles/adlc.make ! make/linux/makefiles/gcc.make ! make/linux/makefiles/rules.make ! make/linux/makefiles/sparcWorks.make ! src/cpu/sparc/vm/sparc.ad ! src/cpu/x86/vm/x86_32.ad ! src/cpu/x86/vm/x86_64.ad ! src/share/vm/adlc/main.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/matcher.hpp Changeset: 244bf8afbbd3 Author: roland Date: 2011-03-26 08:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/244bf8afbbd3 Merge Changeset: 1927db75dd85 Author: never Date: 2011-03-27 00:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1927db75dd85 7024475: loop doesn't terminate when compiled Reviewed-by: kvn ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/opto/idealGraphPrinter.cpp ! src/share/vm/opto/idealGraphPrinter.hpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/node.cpp ! src/share/vm/runtime/globals.hpp + test/compiler/7024475/Test7024475.java Changeset: b40d4fa697bf Author: iveresov Date: 2011-03-27 13:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b40d4fa697bf 6964776: c2 should ensure the polling page is reachable on 64 bit Summary: Materialize the pointer to the polling page in a register instead of using rip-relative addressing when the distance from the code cache is larger than disp32. Reviewed-by: never, kvn ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/nativeInst_x86.hpp ! src/cpu/x86/vm/relocInfo_x86.cpp ! src/cpu/x86/vm/x86_64.ad Changeset: 3d58a4983660 Author: twisti Date: 2011-03-28 03:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3d58a4983660 7022998: JSR 292 recursive method handle calls inline themselves infinitely Reviewed-by: never, kvn ! src/cpu/sparc/vm/sharedRuntime_sparc.cpp ! src/cpu/x86/vm/sharedRuntime_x86_32.cpp ! src/cpu/x86/vm/sharedRuntime_x86_64.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp Changeset: a988a7bb3b8a Author: kvn Date: 2011-03-29 09:11 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a988a7bb3b8a 7032133: Enable sse4.2 for new AMD processors Summary: New AMD processors support sse4.2. Enable corresponding instructions in Hotspot. Reviewed-by: kvn Contributed-by: eric.caspole at amd.com ! src/cpu/x86/vm/vm_version_x86.cpp Changeset: b1c22848507b Author: iveresov Date: 2011-03-29 17:35 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b1c22848507b 6741940: Nonvolatile XMM registers not preserved across JNI calls Summary: Save xmm6-xmm15 in call stub on win64 Reviewed-by: kvn, never ! src/cpu/x86/vm/frame_x86.hpp ! src/cpu/x86/vm/stubGenerator_x86_64.cpp Changeset: 2cd0180da6e1 Author: never Date: 2011-03-29 22:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2cd0180da6e1 7032306: Fastdebug build failure on Solaris with SS11 compilers Reviewed-by: kvn, iveresov ! src/share/vm/oops/instanceKlass.cpp Changeset: 348c0df561a9 Author: iveresov Date: 2011-03-29 22:25 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/348c0df561a9 7026307: DEBUG MESSAGE: broken null klass on amd64 Summary: Correct typo introduces in 7020521 Reviewed-by: never, kvn ! src/cpu/x86/vm/stubGenerator_x86_64.cpp Changeset: fe1dbd98e18f Author: iveresov Date: 2011-03-30 03:48 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/fe1dbd98e18f Merge Changeset: 63997f575155 Author: never Date: 2011-03-30 07:47 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/63997f575155 7031614: jmap -permstat fails with java.lang.InternalError in sun.jvm.hotspot.oops.OopField.getValue Reviewed-by: kvn, dcubed ! agent/src/share/classes/sun/jvm/hotspot/jdi/ClassObjectReferenceImpl.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Instance.java ! agent/src/share/classes/sun/jvm/hotspot/oops/InstanceKlass.java + agent/src/share/classes/sun/jvm/hotspot/oops/InstanceMirrorKlass.java ! agent/src/share/classes/sun/jvm/hotspot/oops/ObjectHeap.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Oop.java ! agent/src/share/classes/sun/jvm/hotspot/oops/OopUtilities.java + agent/src/share/classes/sun/jvm/hotspot/oops/java_lang_Class.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java ! agent/src/share/classes/sun/jvm/hotspot/tools/FinalizerInfo.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/HeapGXLWriter.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/HeapHprofBinWriter.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/ReversePtrsAnalysis.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/soql/JSJavaFactoryImpl.java ! src/share/vm/oops/instanceMirrorKlass.hpp ! src/share/vm/runtime/vmStructs.cpp Changeset: f9424955eb18 Author: kvn Date: 2011-03-30 12:08 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/f9424955eb18 7029152: Ideal nodes for String intrinsics miss memory edge optimization Summary: In Ideal() method of String intrinsics nodes look for TypeAryPtr::CHARS memory slice if memory is MergeMem. Do not unroll a loop with String intrinsics code. Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp + test/compiler/7029152/Test.java Changeset: e2eb7f986c64 Author: iveresov Date: 2011-03-30 15:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/e2eb7f986c64 6564610: assert(UseCompiler || CompileTheWorld, "UseCompiler should be set by now.") Summary: Remove invalid asserts Reviewed-by: never, kvn ! src/share/vm/runtime/compilationPolicy.cpp Changeset: 9d343b8113db Author: iveresov Date: 2011-03-30 18:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/9d343b8113db Merge Changeset: 09f96c3ff1ad Author: twisti Date: 2011-03-31 00:27 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/09f96c3ff1ad 7032388: guarantee(VM_Version::supports_cmov()) failed: illegal instruction on i586 after 6919934 Summary: 6919934 added some unguarded cmov instructions which hit a guarantee on older hardware. Reviewed-by: never, iveresov, kvn, phh ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/c1_Runtime1_x86.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp Changeset: 38fea01eb669 Author: twisti Date: 2011-03-31 02:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/38fea01eb669 6817525: turn on method handle functionality by default for JSR 292 Summary: After appropriate testing, we need to turn on EnableMethodHandles and EnableInvokeDynamic by default. Reviewed-by: never, kvn, jrose, phh ! src/cpu/sparc/vm/cppInterpreter_sparc.cpp ! src/cpu/sparc/vm/interp_masm_sparc.cpp ! src/cpu/sparc/vm/interpreter_sparc.cpp ! src/cpu/sparc/vm/templateTable_sparc.cpp ! src/cpu/x86/vm/interp_masm_x86_32.cpp ! src/cpu/x86/vm/interp_masm_x86_64.cpp ! src/cpu/x86/vm/interpreter_x86_32.cpp ! src/cpu/x86/vm/interpreter_x86_64.cpp ! src/cpu/x86/vm/templateInterpreter_x86_32.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/classFileParser.hpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/oops/constantPoolOop.hpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/methodOop.hpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/unsafe.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/thread.cpp Changeset: cb162b348743 Author: kvn Date: 2011-03-31 13:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/cb162b348743 7032696: Fix for 7029152 broke VM Summary: StrIntrinsicNode::Ideal() should not optimize memory during Parse. Reviewed-by: jrose, never ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/memnode.cpp Changeset: 352622fd140a Author: never Date: 2011-03-31 14:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/352622fd140a 7032129: Native memory usage grow unexpectedly for vm/oom/*InternedString tests Reviewed-by: kvn, kamg, jcoomes ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/symbolTable.cpp ! src/share/vm/classfile/symbolTable.hpp ! src/share/vm/memory/dump.cpp Changeset: 2a5104162671 Author: never Date: 2011-03-31 15:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2a5104162671 Merge Changeset: 8010c8c623ac Author: kvn Date: 2011-03-31 16:54 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8010c8c623ac 7032849: 7022998 changes broke hs_err compile task print Summary: Initialize the time stamp on ostream used for hs_err dumping. Reviewed-by: never ! src/share/vm/utilities/ostream.cpp Changeset: 6b9eb6d07c62 Author: kvn Date: 2011-04-01 15:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/6b9eb6d07c62 Merge Changeset: 7ea7c9c0305c Author: trims Date: 2011-04-01 20:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/7ea7c9c0305c Merge Changeset: 2dbcb4a4d8da Author: trims Date: 2011-04-01 20:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2dbcb4a4d8da 7033237: Bump the HS21 build number to 07 Summary: Update the HS21 build number to 07 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 9e6733fb56f8 Author: schien Date: 2011-04-07 15:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/9e6733fb56f8 Added tag jdk7-b137 for changeset 2dbcb4a4d8da ! .hgtags Changeset: 987d9d10a30a Author: trims Date: 2011-04-08 15:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/987d9d10a30a Added tag hs21-b07 for changeset 2dbcb4a4d8da ! .hgtags Changeset: 1d1603768966 Author: trims Date: 2011-04-05 14:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1d1603768966 7010070: Update all 2010 Oracle-changed OpenJDK files to have the proper copyright dates - second pass Summary: Update the copyright to be 2010 on all changed files in OpenJDK Reviewed-by: ohair ! agent/src/share/classes/sun/jvm/hotspot/CommandProcessor.java ! agent/src/share/classes/sun/jvm/hotspot/HotSpotTypeDataBase.java ! agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeLoadConstant.java ! agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithKlass.java ! agent/src/share/classes/sun/jvm/hotspot/memory/DictionaryEntry.java ! agent/src/share/classes/sun/jvm/hotspot/memory/LoaderConstraintEntry.java ! agent/src/share/classes/sun/jvm/hotspot/memory/PlaceholderEntry.java ! agent/src/share/classes/sun/jvm/hotspot/memory/StringTable.java ! agent/src/share/classes/sun/jvm/hotspot/memory/SymbolTable.java ! agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java ! agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Klass.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Method.java ! agent/src/share/classes/sun/jvm/hotspot/oops/Symbol.java ! agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ClassWriter.java ! agent/src/share/classes/sun/jvm/hotspot/types/Field.java ! agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/Hashtable.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/HashtableEntry.java ! make/linux/Makefile ! make/linux/makefiles/arm.make ! make/linux/makefiles/gcc.make ! make/linux/makefiles/mapfile-vers-debug ! make/linux/makefiles/mapfile-vers-product ! make/linux/makefiles/ppc.make ! make/linux/makefiles/sparcWorks.make ! make/linux/makefiles/top.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/adlc.make ! make/solaris/makefiles/buildtree.make ! make/solaris/makefiles/rules.make ! make/solaris/makefiles/top.make ! make/solaris/makefiles/vm.make ! make/windows/create_obj_files.sh ! make/windows/makefiles/launcher.make ! make/windows/makefiles/vm.make ! src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp ! src/cpu/sparc/vm/dump_sparc.cpp ! src/cpu/sparc/vm/jni_sparc.h ! src/cpu/sparc/vm/nativeInst_sparc.cpp ! src/cpu/sparc/vm/nativeInst_sparc.hpp ! src/cpu/sparc/vm/relocInfo_sparc.cpp ! src/cpu/x86/vm/jni_x86.h ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/zero/vm/jni_zero.h ! src/os/linux/vm/jvm_linux.cpp ! src/os/linux/vm/osThread_linux.cpp ! src/os/linux/vm/os_linux.inline.hpp ! src/os/linux/vm/thread_linux.inline.hpp ! src/os/solaris/dtrace/generateJvmOffsets.cpp ! src/os/solaris/dtrace/jhelper.d ! src/os/solaris/dtrace/libjvm_db.c ! src/os/solaris/vm/dtraceJSDT_solaris.cpp ! src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/os_cpu/linux_zero/vm/os_linux_zero.cpp ! src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp ! src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp ! src/share/tools/hsdis/hsdis-demo.c ! src/share/tools/hsdis/hsdis.c ! src/share/vm/adlc/main.cpp ! src/share/vm/adlc/output_c.cpp ! src/share/vm/asm/assembler.cpp ! src/share/vm/asm/assembler.hpp ! src/share/vm/asm/codeBuffer.hpp ! src/share/vm/c1/c1_Compilation.hpp ! src/share/vm/c1/c1_Defs.hpp ! src/share/vm/c1/c1_FpuStackSim.hpp ! src/share/vm/c1/c1_FrameMap.cpp ! src/share/vm/c1/c1_FrameMap.hpp ! src/share/vm/c1/c1_LIRAssembler.cpp ! src/share/vm/c1/c1_LIRAssembler.hpp ! src/share/vm/c1/c1_LinearScan.cpp ! src/share/vm/c1/c1_LinearScan.hpp ! src/share/vm/c1/c1_MacroAssembler.hpp ! src/share/vm/c1/c1_globals.hpp ! src/share/vm/ci/ciClassList.hpp ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciEnv.hpp ! src/share/vm/ci/ciKlass.cpp ! src/share/vm/ci/ciObjArrayKlass.cpp ! src/share/vm/ci/ciObject.hpp ! src/share/vm/ci/ciObjectFactory.hpp ! src/share/vm/ci/ciSignature.cpp ! src/share/vm/ci/ciSignature.hpp ! src/share/vm/ci/ciSymbol.cpp ! src/share/vm/ci/ciSymbol.hpp ! src/share/vm/ci/compilerInterface.hpp ! src/share/vm/classfile/classFileError.cpp ! src/share/vm/classfile/classFileStream.hpp ! src/share/vm/classfile/classLoader.cpp ! src/share/vm/classfile/classLoader.hpp ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/classfile/dictionary.hpp ! src/share/vm/classfile/javaAssertions.cpp ! src/share/vm/classfile/loaderConstraints.cpp ! src/share/vm/classfile/loaderConstraints.hpp ! src/share/vm/classfile/placeholders.cpp ! src/share/vm/classfile/placeholders.hpp ! src/share/vm/classfile/resolutionErrors.cpp ! src/share/vm/classfile/resolutionErrors.hpp ! src/share/vm/classfile/stackMapFrame.cpp ! src/share/vm/classfile/stackMapFrame.hpp ! src/share/vm/classfile/stackMapTable.cpp ! src/share/vm/classfile/stackMapTable.hpp ! src/share/vm/classfile/verificationType.cpp ! src/share/vm/classfile/verificationType.hpp ! src/share/vm/classfile/verifier.hpp ! src/share/vm/code/codeBlob.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/code/compiledIC.cpp ! src/share/vm/code/compiledIC.hpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/icBuffer.cpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/relocInfo.hpp ! src/share/vm/code/vmreg.hpp ! src/share/vm/compiler/compileLog.hpp ! src/share/vm/compiler/compilerOracle.cpp ! src/share/vm/compiler/compilerOracle.hpp ! src/share/vm/compiler/disassembler.cpp ! src/share/vm/compiler/disassembler.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp ! src/share/vm/gc_implementation/parallelScavenge/pcTasks.cpp ! src/share/vm/gc_implementation/parallelScavenge/pcTasks.hpp ! src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp ! src/share/vm/gc_implementation/parallelScavenge/psScavenge.inline.hpp ! src/share/vm/gc_implementation/parallelScavenge/psTasks.cpp ! src/share/vm/gc_implementation/shared/allocationStats.hpp ! src/share/vm/gc_implementation/shared/concurrentGCThread.cpp ! src/share/vm/gc_implementation/shared/gcUtil.cpp ! src/share/vm/gc_implementation/shared/markSweep.cpp ! src/share/vm/gc_interface/collectedHeap.cpp ! src/share/vm/interpreter/bytecodeInterpreter.hpp ! src/share/vm/interpreter/bytecodeInterpreter.inline.hpp ! src/share/vm/interpreter/cppInterpreter.hpp ! src/share/vm/interpreter/cppInterpreterGenerator.hpp ! src/share/vm/interpreter/interpreter.hpp ! src/share/vm/interpreter/interpreterGenerator.hpp ! src/share/vm/interpreter/linkResolver.hpp ! src/share/vm/interpreter/templateInterpreter.hpp ! src/share/vm/interpreter/templateInterpreterGenerator.hpp ! src/share/vm/interpreter/templateTable.hpp ! src/share/vm/memory/barrierSet.cpp ! src/share/vm/memory/classify.cpp ! src/share/vm/memory/compactingPermGenGen.cpp ! src/share/vm/memory/genCollectedHeap.cpp ! src/share/vm/memory/genMarkSweep.cpp ! src/share/vm/memory/heap.cpp ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/iterator.hpp ! src/share/vm/memory/restore.cpp ! src/share/vm/memory/serialize.cpp ! src/share/vm/memory/sharedHeap.cpp ! src/share/vm/memory/universe.hpp ! src/share/vm/oops/arrayKlass.cpp ! src/share/vm/oops/arrayOop.cpp ! src/share/vm/oops/cpCacheKlass.hpp ! src/share/vm/oops/generateOopMap.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/oops/markOop.hpp ! src/share/vm/oops/symbol.cpp ! src/share/vm/oops/symbol.hpp ! src/share/vm/oops/typeArrayOop.hpp ! src/share/vm/opto/buildOopMap.cpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/c2compiler.cpp ! src/share/vm/opto/chaitin.cpp ! src/share/vm/opto/gcm.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/locknode.hpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopUnswitch.cpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/matcher.hpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/output.cpp ! src/share/vm/opto/output.hpp ! src/share/vm/opto/parse1.cpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/regmask.cpp ! src/share/vm/opto/regmask.hpp ! src/share/vm/opto/runtime.cpp ! src/share/vm/opto/stringopts.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/precompiled.hpp ! src/share/vm/prims/forte.cpp ! src/share/vm/prims/jni_md.h ! src/share/vm/prims/jvm_misc.hpp ! src/share/vm/prims/jvmtiClassFileReconstituter.cpp ! src/share/vm/prims/jvmtiClassFileReconstituter.hpp ! src/share/vm/prims/jvmtiEventController.cpp ! src/share/vm/prims/jvmtiRedefineClasses.hpp ! src/share/vm/prims/jvmtiTagMap.hpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/dtraceJSDT.hpp ! src/share/vm/runtime/fieldDescriptor.hpp ! src/share/vm/runtime/fieldType.cpp ! src/share/vm/runtime/fieldType.hpp ! src/share/vm/runtime/fprofiler.cpp ! src/share/vm/runtime/fprofiler.hpp ! src/share/vm/runtime/frame.hpp ! src/share/vm/runtime/frame.inline.hpp ! src/share/vm/runtime/handles.hpp ! src/share/vm/runtime/icache.hpp ! src/share/vm/runtime/interfaceSupport.cpp ! src/share/vm/runtime/interfaceSupport.hpp ! src/share/vm/runtime/javaCalls.cpp ! src/share/vm/runtime/javaCalls.hpp ! src/share/vm/runtime/javaFrameAnchor.hpp ! src/share/vm/runtime/jniHandles.cpp ! src/share/vm/runtime/objectMonitor.cpp ! src/share/vm/runtime/reflection.hpp ! src/share/vm/runtime/reflectionUtils.hpp ! src/share/vm/runtime/registerMap.hpp ! src/share/vm/runtime/rframe.cpp ! src/share/vm/runtime/safepoint.cpp ! src/share/vm/runtime/signature.cpp ! src/share/vm/runtime/signature.hpp ! src/share/vm/runtime/stackValueCollection.cpp ! src/share/vm/runtime/statSampler.cpp ! src/share/vm/runtime/stubCodeGenerator.cpp ! src/share/vm/runtime/sweeper.cpp ! src/share/vm/runtime/synchronizer.cpp ! src/share/vm/runtime/threadLocalStorage.hpp ! src/share/vm/runtime/vframe.cpp ! src/share/vm/runtime/vmStructs.hpp ! src/share/vm/runtime/vm_operations.cpp ! src/share/vm/runtime/vm_operations.hpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/runtime/vm_version.hpp ! src/share/vm/services/attachListener.cpp ! src/share/vm/services/attachListener.hpp ! src/share/vm/services/classLoadingService.cpp ! src/share/vm/services/management.hpp ! src/share/vm/services/memoryManager.cpp ! src/share/vm/services/memoryPool.cpp ! src/share/vm/services/memoryService.cpp ! src/share/vm/shark/sharkNativeWrapper.cpp ! src/share/vm/utilities/copy.hpp ! src/share/vm/utilities/debug.cpp ! src/share/vm/utilities/debug.hpp ! src/share/vm/utilities/elfSymbolTable.cpp ! src/share/vm/utilities/exceptions.cpp ! src/share/vm/utilities/exceptions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp ! src/share/vm/utilities/globalDefinitions_sparcWorks.hpp ! src/share/vm/utilities/globalDefinitions_visCPP.hpp ! src/share/vm/utilities/hashtable.cpp ! src/share/vm/utilities/hashtable.hpp ! src/share/vm/utilities/hashtable.inline.hpp ! src/share/vm/utilities/ostream.hpp ! src/share/vm/utilities/taskqueue.hpp ! src/share/vm/utilities/utf8.cpp ! src/share/vm/utilities/utf8.hpp ! src/share/vm/utilities/xmlstream.cpp ! src/share/vm/utilities/xmlstream.hpp Changeset: a0de1dfd1933 Author: ysr Date: 2011-03-24 15:45 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a0de1dfd1933 7030435: Some oop_oop_iterate_m() methods iterate outside of specified memory bounds Summary: Filter ref-containing locations through the memory-interval specified in the call. Reviewed-by: jcoomes, jwilhelm, tonyp ! src/share/vm/oops/constantPoolKlass.cpp Changeset: 5134fa1cfe63 Author: ysr Date: 2011-03-24 15:47 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/5134fa1cfe63 7029036: Card-table verification hangs with all framework collectors, except G1, even before the first GC Summary: When verifying clean card ranges, use memory-range-bounded iteration over oops of objects overlapping that range, thus avoiding the otherwise quadratic worst-case cost of scanning large object arrays. Reviewed-by: jmasa, jwilhelm, tonyp ! src/share/vm/memory/cardTableRS.cpp Changeset: c6580380076b Author: jcoomes Date: 2011-03-25 17:39 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c6580380076b Merge Changeset: 5c0b591e1074 Author: brutisso Date: 2011-03-23 14:12 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/5c0b591e1074 6948149: G1: Imbalance in termination times Summary: Changed default value of WorkStealingYieldsBeforeSleep from 1000 to 5000. Added more information to G1 pause logging. Reviewed-by: jwilhelm, tonyp, jmasa ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/runtime/globals.hpp Changeset: 02f49b66361a Author: johnc Date: 2011-03-28 10:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/02f49b66361a 7026932: G1: No need to abort VM when card count cache expansion fails Summary: Manage allocation/freeing of the card cache counts and epochs arrays directly so that an allocation failure while attempting to expand these arrays does not abort the JVM. Failure to expand these arrays is not fatal. Reviewed-by: iveresov, tonyp ! src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp ! src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp Changeset: 455328d90876 Author: tonyp Date: 2011-03-29 22:36 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/455328d90876 7029458: G1: Add newly-reclaimed regions to the beginning of the region free list, not the end Summary: What the synopsis says. Reviewed-by: jwilhelm, iveresov, johnc ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.cpp ! src/share/vm/gc_implementation/g1/heapRegionSet.hpp ! src/share/vm/gc_implementation/g1/heapRegionSet.inline.hpp Changeset: abdfc822206f Author: tonyp Date: 2011-03-30 10:26 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/abdfc822206f 7023069: G1: Introduce symmetric locking in the slow allocation path 7023151: G1: refactor the code that operates on _cur_alloc_region to be re-used for allocs by the GC threads 7018286: G1: humongous allocation attempts should take the GC locker into account Summary: First, this change replaces the asymmetric locking scheme in the G1 slow alloc path by a summetric one. Second, it factors out the code that operates on _cur_alloc_region so that it can be re-used for allocations by the GC threads in the future. Reviewed-by: stefank, brutisso, johnc + src/share/vm/gc_implementation/g1/g1AllocRegion.cpp + src/share/vm/gc_implementation/g1/g1AllocRegion.hpp + src/share/vm/gc_implementation/g1/g1AllocRegion.inline.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp ! src/share/vm/gc_implementation/g1/heapRegion.cpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp ! src/share/vm/gc_implementation/g1/heapRegion.inline.hpp ! src/share/vm/memory/cardTableModRefBS.hpp ! src/share/vm/memory/space.cpp Changeset: c84ee870e0b9 Author: tonyp Date: 2011-04-04 13:18 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c84ee870e0b9 7033292: G1: nightly failure: Non-dirty cards in region that should be dirty Summary: The epochs on the card cache array are initialized to 0 and our initial epoch also starts at 0. So, until the first GC, it might be possible to successfully "claim" a card which was in fact never initialized. Reviewed-by: johnc, iveresov, ysr ! src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp Changeset: 371bbc844bf1 Author: tonyp Date: 2011-04-04 14:23 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/371bbc844bf1 7027766: G1: introduce flag to dump the liveness information per region at the end of marking Summary: Repurpose the existing flag G1PrintRegionLivenessInfo to print out the liveness distribution across the regions in the heap at the end of marking. Reviewed-by: iveresov, jwilhelm ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp ! src/share/vm/gc_implementation/g1/collectionSetChooser.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/concurrentMark.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/heapRegion.hpp Changeset: 8f1042ff784d Author: johnc Date: 2011-02-18 10:07 -0800 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8f1042ff784d 7020042: G1: Partially remove fix for 6994628 Summary: Disable reference discovery and processing during concurrent marking by disabling fix for 6994628. Reviewed-by: tonyp, ysr ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp Changeset: 4f978fb6c81a Author: jmasa Date: 2011-04-06 16:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4f978fb6c81a Merge ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/runtime/globals.hpp Changeset: 24fbb4b7c2d3 Author: trims Date: 2011-04-08 16:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/24fbb4b7c2d3 Merge Changeset: 0930dc920c18 Author: trims Date: 2011-04-08 16:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/0930dc920c18 7035259: Bump the HS21 build number to 08 Summary: Update the HS21 build number to 08 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 2705303a05c4 Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/2705303a05c4 Added tag jdk7-b138 for changeset 0930dc920c18 ! .hgtags Changeset: d6d9b537f2c6 Author: trims Date: 2011-04-14 17:53 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/d6d9b537f2c6 Added tag hs21-b08 for changeset 0930dc920c18 ! .hgtags From lana.steuck at oracle.com Mon Apr 18 04:48:47 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Mon, 18 Apr 2011 04:48:47 +0000 Subject: hg: jdk7/tl/jdk: 87 new changesets Message-ID: <20110418050326.A6B2B47BB1@hg.openjdk.java.net> Changeset: bf018f850da0 Author: ogino Date: 2011-03-29 22:59 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/bf018f850da0 7032334: Update Font2DTest demo to support Unicode 6 Reviewed-by: naoto ! src/share/demo/jfc/Font2DTest/README.txt ! src/share/demo/jfc/Font2DTest/RangeMenu.java Changeset: c410d6550b20 Author: yhuang Date: 2011-03-30 22:46 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c410d6550b20 7025837: fix plural currency display names in sr_Latn_(BA|ME|RS).properties Reviewed-by: naoto ! src/share/classes/sun/util/resources/CurrencyNames.properties ! src/share/classes/sun/util/resources/CurrencyNames_pt.properties ! src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_BA.properties ! src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_ME.properties ! src/share/classes/sun/util/resources/CurrencyNames_sr_Latn_RS.properties ! src/share/classes/sun/util/resources/CurrencyNames_sr_RS.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: a820f6db6eba Author: yhuang Date: 2011-03-30 22:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a820f6db6eba Merge Changeset: 7cff80a57422 Author: mfang Date: 2011-04-04 12:54 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7cff80a57422 Merge Changeset: da5e33af0e61 Author: resii Date: 2011-04-04 18:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/da5e33af0e61 6989729: jarreorder warnings (classlists files are out of date) Reviewed-by: ohair ! make/tools/sharing/classlist.linux ! make/tools/sharing/classlist.solaris ! make/tools/sharing/classlist.windows Changeset: 9d1f5ad258f8 Author: ohair Date: 2011-04-04 15:11 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9d1f5ad258f8 7029905: demo applets missing some html files Reviewed-by: omajid, mchung, igor ! make/mkdemo/jfc/Font2DTest/Makefile ! make/mkdemo/jfc/Java2D/Makefile ! make/mkdemo/jfc/SwingApplet/Makefile ! make/mkdemo/jfc/SwingSet2/Makefile Changeset: 570ea44f50cb Author: ohair Date: 2011-04-05 07:43 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/570ea44f50cb Merge Changeset: 61d9af63ff0e Author: ohair Date: 2011-04-05 08:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/61d9af63ff0e Merge Changeset: 29296ea6529a Author: ohair Date: 2011-04-05 17:24 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/29296ea6529a 7033960: Do not check for mapfiles when fastdebug building Reviewed-by: dcubed ! make/common/shared/Defs-linux.gmk ! make/common/shared/Defs-solaris.gmk Changeset: 376a971344a3 Author: schien Date: 2011-04-07 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/376a971344a3 Added tag jdk7-b137 for changeset 29296ea6529a ! .hgtags Changeset: 7e0c4c994e2e Author: bae Date: 2011-03-22 11:22 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7e0c4c994e2e 6993561: java.awt.image.SampleModel.setSamples() methods not always throw ArrayIndexOutOfBoundsException Reviewed-by: jgodinez, prr ! src/share/classes/java/awt/image/SampleModel.java ! test/java/awt/image/GetSamplesTest.java Changeset: 77a8566be102 Author: bae Date: 2011-03-22 12:28 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/77a8566be102 6773586: java.awt.image.SampleModel.getPixels() methods not allways throw ArrayIndexOutOfBoundsException Reviewed-by: jgodinez, prr ! src/share/classes/java/awt/image/BandedSampleModel.java ! src/share/classes/java/awt/image/ComponentSampleModel.java ! src/share/classes/java/awt/image/SampleModel.java ! src/share/classes/java/awt/image/SinglePixelPackedSampleModel.java Changeset: 8ab1b6226eed Author: bae Date: 2011-03-25 12:50 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8ab1b6226eed 6989717: media native code compiler warnings Reviewed-by: jgodinez, prr ! src/share/native/sun/awt/medialib/mlib_ImageAffine.c ! src/share/native/sun/awt/medialib/mlib_ImageAffineEdge.c ! src/share/native/sun/awt/medialib/mlib_ImageColorTrue2Index.c ! src/share/native/sun/awt/medialib/mlib_ImageConvMxN.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_32nw.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_D64nw.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_F32nw.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c ! src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c ! src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c ! src/share/native/sun/awt/medialib/mlib_ImageCreate.c Changeset: 0f7256505703 Author: bae Date: 2011-03-27 15:51 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0f7256505703 6985593: Crash in Java_sun_java2d_loops_MaskBlit_MaskBlit on oel5.5-x64 Reviewed-by: ceisserer, jgodinez, prr ! src/solaris/classes/sun/java2d/xr/XRPMBlitLoops.java + test/sun/java2d/XRenderBlitsTest.java Changeset: d1ec8c106dda Author: bae Date: 2011-03-29 13:10 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d1ec8c106dda 7030147: java.awt.image.SampleModel.setDataElements() does't throw ArrayIndexOutOfBoundsEx for Integer.MAX_VA Reviewed-by: jgodinez, prr ! src/share/classes/java/awt/image/SampleModel.java Changeset: 5a0c0ae1c85b Author: bae Date: 2011-03-29 17:11 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5a0c0ae1c85b 7003516: Methods java.awt.geom.Line2D.Double/Float.getBounds2D() don't satisfy inherited spec Reviewed-by: flar, prr ! src/share/classes/java/awt/Shape.java Changeset: 81c8b844e917 Author: prr Date: 2011-03-31 15:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/81c8b844e917 7026407: Broken in javax.imageio.metadata.IIOMetadataNode.getTagName() Reviewed-by: jgodinez ! src/share/classes/javax/imageio/metadata/IIOMetadataNode.java Changeset: 8df5b67cc694 Author: prr Date: 2011-04-01 12:45 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8df5b67cc694 7029934: Xrender: Text is truncated with 64 bit Linux JRE Reviewed-by: bae, flar, ceisserer Contributed-by: linuxhippy at gmail.com ! src/solaris/native/sun/java2d/x11/XRBackendNative.c Changeset: 50d62d0a7a2e Author: prr Date: 2011-04-01 20:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/50d62d0a7a2e 7032930: A way to specify MS Mincho to be used in dialoginput on windows JA locale Reviewed-by: igor, jgodinez ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/font/FontManagerForSGE.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/windows/classes/sun/awt/Win32GraphicsEnvironment.java + test/sun/java2d/SunGraphicsEnvironment/TestSGEuseAlternateFontforJALocales.java Changeset: 3c576689e0ce Author: lana Date: 2011-04-01 23:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3c576689e0ce Merge - make/com/sun/xml/Makefile - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: ddf1f385bf4b Author: dav Date: 2011-03-28 15:25 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ddf1f385bf4b 7023011: Toolkit.getPrintJob(Frame,String,Properties) throws HE instead of specified NPE Reviewed-by: dcherepanov, art ! src/share/classes/java/awt/Toolkit.java ! src/share/classes/sun/awt/HeadlessToolkit.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/windows/classes/sun/awt/windows/WToolkit.java + test/java/awt/Toolkit/Headless/GetPrintJob/GetPrintJob.java + test/java/awt/Toolkit/Headless/GetPrintJob/GetPrintJobHeadless.java Changeset: 44c31bdf4d72 Author: dav Date: 2011-04-01 12:56 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/44c31bdf4d72 6984540: closed/java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.html test fails Reviewed-by: uta, art ! src/windows/native/sun/windows/awt_Toolkit.cpp Changeset: 346b4438a7d6 Author: anthony Date: 2011-04-01 15:43 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/346b4438a7d6 6903034: java.awt.Robot.createScreenCapture() doesn't work for translucent windows Summary: Use the composite overlay window to take the screenshot Reviewed-by: art, dcherepanov ! src/solaris/classes/sun/awt/X11/XRobotPeer.java ! src/solaris/native/sun/awt/awt_Robot.c Changeset: d7ab8deea646 Author: lana Date: 2011-04-01 16:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d7ab8deea646 Merge - make/com/sun/xml/Makefile - make/java/dyn/Makefile - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: 8859d18cb3aa Author: anthony Date: 2011-04-04 23:01 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8859d18cb3aa 7033579: XRobotPeer._dispose() native method should be added to the make/sun/xawt/mapfile-vers Reviewed-by: art, dcherepanov ! make/sun/xawt/mapfile-vers Changeset: 3b2378b84d5e Author: lana Date: 2011-04-04 17:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3b2378b84d5e Merge Changeset: b055e2ef5a97 Author: peytoia Date: 2011-03-24 15:29 +0900 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b055e2ef5a97 4715085: [Ch] Doc: java.lang.Character.digit documentation unclear regarding fullwidth characters Reviewed-by: okutsu ! src/share/classes/java/lang/Character.java Changeset: 707f3c6e66af Author: alexp Date: 2011-03-24 17:00 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/707f3c6e66af 6735285: "Zero" x,y springs passed to SpringLayout.Constraints constructor are not returned from getters Reviewed-by: rupashka ! src/share/classes/javax/swing/SpringLayout.java Changeset: ee0b74ec50f3 Author: alexp Date: 2011-03-24 17:01 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ee0b74ec50f3 6992716: Typos in JLayer files Reviewed-by: rupashka ! src/share/classes/javax/swing/JLayer.java ! src/share/classes/javax/swing/plaf/LayerUI.java Changeset: b52d96e7e125 Author: mrkam Date: 2011-03-24 17:45 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b52d96e7e125 7027676: /applets/CardTest demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/CardTest/CardTest.java Changeset: 49e67bb5782c Author: mrkam Date: 2011-03-24 18:03 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/49e67bb5782c 7027677: /applets/Clock demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/Clock/Clock.java Changeset: 98b66b617c31 Author: mrkam Date: 2011-03-24 18:07 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/98b66b617c31 7027688: /applets/SimpleGraph demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/SimpleGraph/GraphApplet.java Changeset: f296a7c17120 Author: mrkam Date: 2011-03-24 18:09 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f296a7c17120 7027689: /applets/SortDemo demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/SortDemo/BidirBubbleSortAlgorithm.java ! src/share/demo/applets/SortDemo/BubbleSortAlgorithm.java ! src/share/demo/applets/SortDemo/QSortAlgorithm.java ! src/share/demo/applets/SortDemo/SortAlgorithm.java ! src/share/demo/applets/SortDemo/SortItem.java ! src/share/demo/applets/SortDemo/example1.html Changeset: 291505740de9 Author: mrkam Date: 2011-03-24 18:13 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/291505740de9 7027678: /applets/DitherTest demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/DitherTest/DitherTest.java Changeset: 010dc79258da Author: mrkam Date: 2011-03-24 18:15 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/010dc79258da 7027696: /jfc/Metalworks demo needs to be improved Reviewed-by: rupashka ! src/share/demo/jfc/Metalworks/AquaMetalTheme.java ! src/share/demo/jfc/Metalworks/BigContrastMetalTheme.java ! src/share/demo/jfc/Metalworks/ContrastMetalTheme.java ! src/share/demo/jfc/Metalworks/DemoMetalTheme.java ! src/share/demo/jfc/Metalworks/GreenMetalTheme.java ! src/share/demo/jfc/Metalworks/KhakiMetalTheme.java ! src/share/demo/jfc/Metalworks/MetalThemeMenu.java ! src/share/demo/jfc/Metalworks/Metalworks.java ! src/share/demo/jfc/Metalworks/MetalworksDocumentFrame.java ! src/share/demo/jfc/Metalworks/MetalworksFrame.java ! src/share/demo/jfc/Metalworks/MetalworksHelp.java ! src/share/demo/jfc/Metalworks/MetalworksInBox.java ! src/share/demo/jfc/Metalworks/MetalworksPrefs.java ! src/share/demo/jfc/Metalworks/PropertiesMetalTheme.java ! src/share/demo/jfc/Metalworks/UISwitchListener.java ! src/share/demo/jfc/Metalworks/resources/HelpFiles/credits.html ! src/share/demo/jfc/Metalworks/resources/HelpFiles/metal.html ! src/share/demo/jfc/Metalworks/resources/HelpFiles/metalworks.html ! src/share/demo/jfc/Metalworks/resources/HelpFiles/swing.html ! src/share/demo/jfc/Metalworks/resources/HelpFiles/toc.html Changeset: 3ed1b13ba934 Author: mrkam Date: 2011-03-24 18:20 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3ed1b13ba934 7027680: /applets/DrawTest demo needs to be improved Reviewed-by: rupashka ! src/share/demo/applets/DrawTest/DrawTest.java Changeset: f293a36f05fe Author: mrkam Date: 2011-03-24 18:54 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f293a36f05fe 7027849: New demo for Shaped/Translucent windows feature needs to be created Reviewed-by: rupashka + src/share/demo/jfc/TransparentRuler/README.txt + src/share/demo/jfc/TransparentRuler/transparentruler/Ruler.java + src/share/demo/nbproject/jfc/TransparentRuler/build.properties + src/share/demo/nbproject/jfc/TransparentRuler/build.xml + src/share/demo/nbproject/jfc/TransparentRuler/nbproject/file-targets.xml + src/share/demo/nbproject/jfc/TransparentRuler/nbproject/jdk.xml + src/share/demo/nbproject/jfc/TransparentRuler/nbproject/netbeans-targets.xml + src/share/demo/nbproject/jfc/TransparentRuler/nbproject/project.xml Changeset: cc4c80d4e85a Author: malenkov Date: 2011-03-24 21:45 +0300 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cc4c80d4e85a 6825739: jdk regression test failing on linux: java/lang/reflect/Method/InheritedMethods.java Reviewed-by: rupashka ! test/java/lang/reflect/Method/InheritedMethods.java Changeset: 5d96d28e8b41 Author: mrkam Date: 2011-03-25 13:17 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5d96d28e8b41 7030792: /jfc/TransparentRuler needs to be included into build process Reviewed-by: rupashka, ohair ! make/mkdemo/jfc/Makefile + make/mkdemo/jfc/TransparentRuler/Makefile ! src/share/demo/nbproject/project.xml Changeset: 26ff800b75ad Author: mrkam Date: 2011-03-25 13:23 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/26ff800b75ad 7027698: /jfc/SampleTree demo needs to be improved Reviewed-by: rupashka ! src/share/demo/jfc/SampleTree/DynamicTreeNode.java ! src/share/demo/jfc/SampleTree/SampleData.java ! src/share/demo/jfc/SampleTree/SampleTree.java ! src/share/demo/jfc/SampleTree/SampleTreeCellRenderer.java ! src/share/demo/jfc/SampleTree/SampleTreeModel.java Changeset: 098a8c2e9bd2 Author: mrkam Date: 2011-03-25 13:24 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/098a8c2e9bd2 7027697: /jfc/Notepad demo needs to be improved Reviewed-by: rupashka ! src/share/demo/jfc/Notepad/ElementTreePanel.java ! src/share/demo/jfc/Notepad/Notepad.java Changeset: 35fba3254594 Author: mrkam Date: 2011-03-25 13:27 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/35fba3254594 7027694: /jfc/FileChooserDemo demo needs to be improved Reviewed-by: rupashka ! src/share/demo/jfc/FileChooserDemo/ExampleFileSystemView.java ! src/share/demo/jfc/FileChooserDemo/ExampleFileView.java ! src/share/demo/jfc/FileChooserDemo/FileChooserDemo.java Changeset: a92ab497d39c Author: mrkam Date: 2011-03-25 17:52 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a92ab497d39c 7027675: /applets/Blink demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/Blink/Blink.java Changeset: 584dde6ffd1f Author: mrkam Date: 2011-03-25 17:55 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/584dde6ffd1f 7027683: /applets/GraphicsTest demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/GraphicsTest/AppletFrame.java ! src/share/demo/applets/GraphicsTest/GraphicsTest.java Changeset: 6b560dd15705 Author: mrkam Date: 2011-03-25 17:56 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6b560dd15705 7027686: /applets/MoleculeViewer demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/MoleculeViewer/Matrix3D.java ! src/share/demo/applets/MoleculeViewer/XYZApp.java ! src/share/demo/applets/MoleculeViewer/example1.html ! src/share/demo/applets/MoleculeViewer/example2.html ! src/share/demo/applets/MoleculeViewer/example3.html Changeset: 489a9669a344 Author: mrkam Date: 2011-03-25 17:57 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/489a9669a344 7027674: /applets/BarChart demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/BarChart/BarChart.java Changeset: db5fea7fbf76 Author: mrkam Date: 2011-03-25 17:59 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/db5fea7fbf76 7027692: /applets/WireFrame demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/WireFrame/Matrix3D.java ! src/share/demo/applets/WireFrame/ThreeD.java ! src/share/demo/applets/WireFrame/example1.html ! src/share/demo/applets/WireFrame/example2.html ! src/share/demo/applets/WireFrame/example3.html ! src/share/demo/applets/WireFrame/example4.html Changeset: e72a348f25c9 Author: mrkam Date: 2011-03-25 18:00 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e72a348f25c9 7027673: /applets/ArcTest demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/ArcTest/ArcTest.java Changeset: cf381d73bd1f Author: peytoia Date: 2011-03-28 18:00 +0900 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cf381d73bd1f 6957870: Monospaced font mapped to proportional font (David) for Hebrew Reviewed-by: okutsu ! src/windows/classes/sun/awt/windows/fontconfig.properties Changeset: 9024198193ce Author: alexp Date: 2011-03-29 21:02 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9024198193ce 7027486: JPopupMenu doesn't take window shape into account Reviewed-by: rupashka ! src/share/classes/javax/swing/PopupFactory.java Changeset: bdd09379168e Author: mrkam Date: 2011-03-30 08:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/bdd09379168e 7027687: /applets/NervousText demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/NervousText/NervousText.java Changeset: 08bd29e16159 Author: mrkam Date: 2011-03-30 08:54 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/08bd29e16159 7027690: /applets/SpreadSheet demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/SpreadSheet/SpreadSheet.java Changeset: 10f3161ff33f Author: mrkam Date: 2011-03-30 08:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/10f3161ff33f 7027701: /jfc/TableExample demo needs to be improved Reviewed-by: alexp ! src/share/demo/jfc/TableExample/JDBCAdapter.java ! src/share/demo/jfc/TableExample/OldJTable.java ! src/share/demo/jfc/TableExample/TableExample.java ! src/share/demo/jfc/TableExample/TableExample2.java ! src/share/demo/jfc/TableExample/TableExample3.java ! src/share/demo/jfc/TableExample/TableExample4.java ! src/share/demo/jfc/TableExample/TableMap.java ! src/share/demo/jfc/TableExample/TableSorter.java Changeset: 7e4ce6c1e58b Author: mrkam Date: 2011-03-30 08:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7e4ce6c1e58b 7027682: /applets/Fractal demo needs to be improved Reviewed-by: alexp ! src/share/demo/applets/Fractal/CLSFractal.java ! src/share/demo/applets/Fractal/example1.html Changeset: f29110bbcaa2 Author: mrkam Date: 2011-03-30 15:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f29110bbcaa2 7027693: /jfc/CodePointIM demo needs to be improved Reviewed-by: alexp ! src/share/demo/jfc/CodePointIM/CodePointIM.java ! src/share/demo/jfc/CodePointIM/CodePointInputMethod.java ! src/share/demo/jfc/CodePointIM/CodePointInputMethodDescriptor.java Changeset: fe5623afdbfe Author: rupashka Date: 2011-03-31 17:04 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fe5623afdbfe 7009422: Two dead links in Swing API documentation Reviewed-by: darcy, art ! src/share/classes/java/awt/Component.java ! src/share/classes/java/lang/CharSequence.java Changeset: 3ced4a33c831 Author: mrkam Date: 2011-03-31 10:15 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3ced4a33c831 7027700: /jfc/SwingApplet demo needs to be improved Reviewed-by: alexp ! src/share/demo/jfc/SwingApplet/SwingApplet.java Changeset: f007fa22625d Author: mrkam Date: 2011-03-31 10:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f007fa22625d Merge Changeset: 379a6504216e Author: lana Date: 2011-04-01 14:47 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/379a6504216e Merge - make/com/sun/xml/Makefile - make/java/dyn/Makefile ! src/share/classes/java/awt/Component.java - src/share/classes/java/dyn/CallSite.java - src/share/classes/java/dyn/ClassValue.java - src/share/classes/java/dyn/ConstantCallSite.java - src/share/classes/java/dyn/InvokeDynamic.java - src/share/classes/java/dyn/InvokeDynamicBootstrapError.java - src/share/classes/java/dyn/Linkage.java - src/share/classes/java/dyn/MethodHandle.java - src/share/classes/java/dyn/MethodHandles.java - src/share/classes/java/dyn/MethodType.java - src/share/classes/java/dyn/MethodTypeForm.java - src/share/classes/java/dyn/MutableCallSite.java - src/share/classes/java/dyn/SwitchPoint.java - src/share/classes/java/dyn/VolatileCallSite.java - src/share/classes/java/dyn/WrongMethodTypeException.java - src/share/classes/java/dyn/package-info.java - src/share/classes/org/relaxng/datatype/Datatype.java - src/share/classes/org/relaxng/datatype/DatatypeBuilder.java - src/share/classes/org/relaxng/datatype/DatatypeException.java - src/share/classes/org/relaxng/datatype/DatatypeLibrary.java - src/share/classes/org/relaxng/datatype/DatatypeLibraryFactory.java - src/share/classes/org/relaxng/datatype/DatatypeStreamingValidator.java - src/share/classes/org/relaxng/datatype/ValidationContext.java - src/share/classes/org/relaxng/datatype/helpers/DatatypeLibraryLoader.java - src/share/classes/org/relaxng/datatype/helpers/ParameterlessDatatypeBuilder.java - src/share/classes/org/relaxng/datatype/helpers/StreamingValidatorImpl.java - src/share/classes/sun/dyn/Access.java - src/share/classes/sun/dyn/AdapterMethodHandle.java - src/share/classes/sun/dyn/BoundMethodHandle.java - src/share/classes/sun/dyn/CallSiteImpl.java - src/share/classes/sun/dyn/DirectMethodHandle.java - src/share/classes/sun/dyn/FilterGeneric.java - src/share/classes/sun/dyn/FilterOneArgument.java - src/share/classes/sun/dyn/FromGeneric.java - src/share/classes/sun/dyn/InvokeGeneric.java - src/share/classes/sun/dyn/Invokers.java - src/share/classes/sun/dyn/MemberName.java - src/share/classes/sun/dyn/MethodHandleImpl.java - src/share/classes/sun/dyn/MethodHandleNatives.java - src/share/classes/sun/dyn/MethodTypeImpl.java - src/share/classes/sun/dyn/SpreadGeneric.java - src/share/classes/sun/dyn/ToGeneric.java - src/share/classes/sun/dyn/WrapperInstance.java - src/share/classes/sun/dyn/anon/AnonymousClassLoader.java - src/share/classes/sun/dyn/anon/ConstantPoolParser.java - src/share/classes/sun/dyn/anon/ConstantPoolPatch.java - src/share/classes/sun/dyn/anon/ConstantPoolVisitor.java - src/share/classes/sun/dyn/anon/InvalidConstantPoolFormatException.java - src/share/classes/sun/dyn/empty/Empty.java - src/share/classes/sun/dyn/package-info.java - src/share/classes/sun/dyn/util/BytecodeDescriptor.java - src/share/classes/sun/dyn/util/BytecodeName.java - src/share/classes/sun/dyn/util/ValueConversions.java - src/share/classes/sun/dyn/util/VerifyAccess.java - src/share/classes/sun/dyn/util/VerifyType.java - src/share/classes/sun/dyn/util/Wrapper.java - src/share/classes/sun/dyn/util/package-info.java - src/solaris/bin/ergo_sparc.c - src/solaris/bin/ergo_zero.c - test/java/dyn/ClassValueTest.java - test/java/dyn/InvokeDynamicPrintArgs.java - test/java/dyn/InvokeGenericTest.java - test/java/dyn/JavaDocExamplesTest.java - test/java/dyn/MethodHandlesTest.java - test/java/dyn/MethodTypeTest.java - test/java/dyn/indify/Indify.java Changeset: 8093f407d57d Author: peytoia Date: 2011-04-04 15:24 +0900 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8093f407d57d 7033174: (tz) Support tzdata2011e Reviewed-by: okutsu ! make/sun/javazic/tzdata/VERSION ! make/sun/javazic/tzdata/africa ! make/sun/javazic/tzdata/southamerica Changeset: 3549cec980ff Author: amenkov Date: 2011-04-04 13:22 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3549cec980ff 7026275: TEST_BUG: test/javax/sound/sampled/Clip/ClipSetPos.java throws uncatched IllegalArgumentException Reviewed-by: dav ! test/javax/sound/sampled/Clip/ClipSetPos.java Changeset: 8e21bec188ae Author: malenkov Date: 2011-04-04 19:55 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8e21bec188ae 7025987: Nimbus L&F increases insets unexpectedly Reviewed-by: alexp ! src/share/classes/javax/swing/plaf/nimbus/LoweredBorder.java ! test/javax/swing/border/Test4856008.java ! test/javax/swing/border/Test6978482.java Changeset: 39a71949f1a4 Author: alexp Date: 2011-04-04 21:37 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/39a71949f1a4 7032791: TableCellRenderer.getTableCellRendererComponent() doesn't accept null JTable with GTK+ L&F Reviewed-by: rupashka ! src/share/classes/javax/swing/plaf/synth/SynthTableUI.java Changeset: 6230c920833f Author: lana Date: 2011-04-04 17:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6230c920833f Merge Changeset: a6677292a936 Author: lana Date: 2011-04-04 17:28 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a6677292a936 Merge ! src/share/classes/java/awt/Toolkit.java - src/share/classes/java/nio/BufferPoolMXBean.java - src/share/classes/java/util/logging/PlatformLoggingMXBean.java ! src/solaris/classes/sun/awt/X11/XToolkit.java - src/windows/native/java/net/NetworkInterface_win9x.c - test/java/nio/BufferPoolMXBean/Basic.java - test/java/util/logging/PlatformLoggingMXBean/PlatformLoggingMXBeanTest.java Changeset: ef4492cbf1d7 Author: dholmes Date: 2011-04-09 15:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ef4492cbf1d7 7035109: Regression: awt SplashScreen/test18.sh fails - missing mapfile entry Reviewed-by: alanb, ksrini ! make/sun/xawt/mapfile-vers Changeset: 6ff36c6e0cf4 Author: lana Date: 2011-04-10 10:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6ff36c6e0cf4 Merge - src/share/classes/java/nio/BufferPoolMXBean.java - src/share/classes/java/util/logging/PlatformLoggingMXBean.java - src/windows/native/java/net/NetworkInterface_win9x.c - test/java/nio/BufferPoolMXBean/Basic.java - test/java/util/logging/PlatformLoggingMXBean/PlatformLoggingMXBeanTest.java Changeset: fa9c8e314f10 Author: jrose Date: 2011-04-07 22:07 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fa9c8e314f10 6817525: turn on method handle functionality by default for JSR 292 Summary: JVM bug 6817525 requires changes to some JDK unit tests; update test invocation flags and "Indify" snapshot Reviewed-by: kvn, twisti ! test/java/lang/invoke/6987555/Test6987555.java ! test/java/lang/invoke/6991596/Test6991596.java ! test/java/lang/invoke/InvokeDynamicPrintArgs.java ! test/java/lang/invoke/InvokeGenericTest.java ! test/java/lang/invoke/JavaDocExamplesTest.java ! test/java/lang/invoke/MethodHandlesTest.java ! test/java/lang/invoke/MethodTypeTest.java ! test/java/lang/invoke/indify/Indify.java Changeset: f1ebf4c57417 Author: trims Date: 2011-04-12 16:37 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f1ebf4c57417 Merge Changeset: 272483f6650b Author: ohair Date: 2011-04-06 22:06 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/272483f6650b 7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes ! make/Makefile ! make/com/sun/crypto/provider/Makefile ! make/com/sun/java/pack/Makefile ! make/com/sun/java/pack/prop/Makefile ! make/com/sun/jndi/cosnaming/Makefile ! make/com/sun/jndi/dns/Makefile ! make/com/sun/jndi/ldap/Makefile ! make/com/sun/jndi/rmi/registry/Makefile ! make/com/sun/nio/sctp/Makefile ! make/com/sun/org/apache/xml/Makefile ! make/com/sun/rowset/Makefile ! make/com/sun/script/Makefile ! make/com/sun/security/auth/module/Makefile ! make/com/sun/servicetag/Makefile ! make/com/sun/tools/attach/Makefile ! make/common/Defs-solaris.gmk ! make/common/Defs-windows.gmk ! make/common/Demo.gmk ! make/common/Library.gmk ! make/common/Program.gmk ! make/common/Sanity.gmk ! make/common/Subdirs.gmk ! make/common/shared/Compiler-msvc.gmk ! make/common/shared/Defs-control.gmk ! make/common/shared/Defs-javadoc.gmk ! make/common/shared/Defs-windows.gmk ! make/common/shared/Defs.gmk ! make/docs/Makefile ! make/docs/NON_CORE_PKGS.gmk ! make/java/awt/Makefile ! make/java/fdlibm/Makefile ! make/java/java/FILES_java.gmk ! make/java/java/Makefile ! make/java/java_crw_demo/Makefile ! make/java/java_hprof_demo/Makefile ! make/java/jli/Makefile ! make/java/logging/Makefile ! make/java/main/java/Makefile ! make/java/main/javaw/Makefile ! make/java/management/Makefile ! make/java/net/Makefile ! make/java/nio/FILES_java.gmk ! make/java/nio/mapfile-linux ! make/java/nio/mapfile-solaris ! make/java/npt/Makefile ! make/java/redist/Makefile ! make/java/redist/fonts/Makefile ! make/java/redist/sajdi/Makefile ! make/java/sql/Makefile ! make/java/text/base/FILES_java.gmk ! make/java/text/base/Makefile ! make/java/util/FILES_properties.gmk ! make/java/verify/Makefile ! make/java/zip/Makefile ! make/javax/crypto/Defs-jce.gmk ! make/javax/crypto/Makefile ! make/javax/imageio/Makefile ! make/javax/print/Makefile ! make/javax/sound/Makefile ! make/javax/sound/jsoundalsa/Makefile ! make/javax/sound/jsoundds/Makefile ! make/javax/sql/Makefile ! make/javax/swing/Makefile ! make/javax/swing/plaf/Makefile ! make/jdk_generic_profile.sh ! make/jpda/back/Makefile ! make/jpda/transport/Makefile ! make/jpda/transport/shmem/Makefile ! make/jpda/transport/socket/Makefile ! make/jpda/tty/Makefile ! make/launchers/Makefile ! make/mkdemo/Makefile ! make/mkdemo/jfc/Font2DTest/Makefile ! make/mkdemo/jfc/Java2D/Makefile ! make/mkdemo/jfc/Makefile ! make/mkdemo/jfc/SwingApplet/Makefile ! make/mkdemo/jfc/SwingSet2/Makefile ! make/mkdemo/jfc/SwingSet3/Makefile ! make/mkdemo/jpda/Makefile ! make/mkdemo/jvmti/Makefile ! make/mkdemo/management/Makefile ! make/mksample/dtrace/Makefile ! make/mksample/jmx/jmx-scandir/Makefile ! make/mksample/nbproject/Makefile ! make/mksample/nio/file/Makefile ! make/mksample/nio/multicast/Makefile ! make/mksample/nio/server/Makefile ! make/mksample/scripting/scriptpad/Makefile ! make/mksample/webservices/EbayClient/Makefile ! make/mksample/webservices/EbayServer/Makefile ! make/netbeans/common/java-data-native.ent ! make/netbeans/common/java-data-no-native.ent ! make/sun/Makefile ! make/sun/applet/Makefile ! make/sun/awt/Makefile ! make/sun/awt/mapfile-mawt-vers ! make/sun/awt/mapfile-vers-linux ! make/sun/cmm/Makefile ! make/sun/cmm/kcms/Makefile ! make/sun/cmm/lcms/Makefile ! make/sun/dcpr/Makefile ! make/sun/font/Makefile ! make/sun/font/t2k/Makefile ! make/sun/headless/Makefile ! make/sun/headless/mapfile-vers ! make/sun/image/generic/Makefile ! make/sun/image/vis/Makefile ! make/sun/jar/Makefile ! make/sun/javazic/Makefile ! make/sun/jawt/Makefile ! make/sun/jconsole/Makefile ! make/sun/jdbc/Makefile ! make/sun/jdga/Makefile ! make/sun/jpeg/Makefile ! make/sun/launcher/Makefile ! make/sun/management/Makefile ! make/sun/native2ascii/Makefile ! make/sun/net/others/Makefile ! make/sun/net/spi/nameservice/dns/Makefile ! make/sun/nio/cs/FILES_java.gmk ! make/sun/nio/cs/Makefile ! make/sun/org/mozilla/javascript/Makefile ! make/sun/pisces/Makefile ! make/sun/rmi/cgi/Makefile ! make/sun/rmi/oldtools/Makefile ! make/sun/rmi/registry/Makefile ! make/sun/rmi/rmi/Makefile ! make/sun/rmi/rmic/Makefile ! make/sun/rmi/rmid/Makefile ! make/sun/security/ec/Makefile ! make/sun/security/jgss/wrapper/Makefile ! make/sun/security/krb5/Makefile ! make/sun/security/mscapi/Makefile ! make/sun/security/pkcs11/Makefile ! make/sun/security/smartcardio/Makefile ! make/sun/security/tools/Makefile ! make/sun/serialver/Makefile ! make/sun/splashscreen/Makefile ! make/sun/text/Makefile ! make/sun/tools/Makefile ! make/sun/tracing/dtrace/Makefile ! make/sun/xawt/Makefile ! make/sun/xawt/mapfile-vers ! make/tools/reorder/Makefile ! make/tools/src/build/tools/javazic/Zoneinfo.java ! src/share/back/debugInit.c ! src/share/back/eventFilter.c ! src/share/bin/java.c ! src/share/bin/java.h ! src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ! src/share/classes/com/sun/java/util/jar/pack/Driver.java ! src/share/classes/com/sun/java/util/jar/pack/NativeUnpack.java ! src/share/classes/com/sun/java/util/jar/pack/PropMap.java ! src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java ! src/share/classes/com/sun/java/util/jar/pack/Utils.java ! src/share/classes/com/sun/jndi/toolkit/ctx/Continuation.java ! src/share/classes/com/sun/media/sound/AiffFileWriter.java ! src/share/classes/com/sun/media/sound/AlawCodec.java ! src/share/classes/com/sun/media/sound/AuFileWriter.java ! src/share/classes/com/sun/media/sound/DirectAudioDevice.java ! src/share/classes/com/sun/media/sound/RealTimeSequencer.java ! src/share/classes/com/sun/media/sound/StandardMidiFileReader.java ! src/share/classes/com/sun/media/sound/SunFileWriter.java ! src/share/classes/com/sun/media/sound/WaveFileWriter.java ! src/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_es.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_fr.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_it.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_ko.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_pt_BR.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_zh_CN.properties ! src/share/classes/com/sun/rowset/RowSetResourceBundle_zh_TW.properties ! src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java ! src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java ! src/share/classes/com/sun/script/javascript/RhinoTopLevel.java ! src/share/classes/com/sun/script/util/InterfaceImplementor.java ! src/share/classes/com/sun/security/auth/PolicyFile.java ! src/share/classes/com/sun/security/auth/callback/DialogCallbackHandler.java ! src/share/classes/com/sun/security/auth/login/ConfigFile.java ! src/share/classes/com/sun/security/auth/module/JndiLoginModule.java ! src/share/classes/com/sun/security/auth/module/KeyStoreLoginModule.java ! src/share/classes/com/sun/security/auth/module/SolarisLoginModule.java ! src/share/classes/com/sun/security/auth/module/UnixLoginModule.java ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java ! src/share/classes/com/sun/tools/script/shell/init.js ! src/share/classes/java/awt/AWTEvent.java ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/java/awt/Font.java ! src/share/classes/java/awt/LinearGradientPaint.java ! src/share/classes/java/awt/MenuComponent.java ! src/share/classes/java/awt/MultipleGradientPaint.java ! src/share/classes/java/awt/RadialGradientPaint.java ! src/share/classes/java/awt/TrayIcon.java ! src/share/classes/java/awt/Window.java ! src/share/classes/java/awt/color/ICC_Profile.java ! src/share/classes/java/awt/doc-files/FocusSpec.html ! src/share/classes/java/awt/geom/CubicCurve2D.java ! src/share/classes/java/awt/image/PackedColorModel.java ! src/share/classes/java/awt/image/SinglePixelPackedSampleModel.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/beans/DesignMode.java ! src/share/classes/java/beans/IndexedPropertyChangeEvent.java ! src/share/classes/java/beans/Introspector.java ! src/share/classes/java/beans/VetoableChangeSupport.java ! src/share/classes/java/beans/package.html ! src/share/classes/java/io/BufferedReader.java ! src/share/classes/java/io/BufferedWriter.java ! src/share/classes/java/io/Console.java ! src/share/classes/java/io/DeleteOnExitHook.java ! src/share/classes/java/io/File.java ! src/share/classes/java/io/FileInputStream.java ! src/share/classes/java/io/FileOutputStream.java ! src/share/classes/java/io/FilePermission.java ! src/share/classes/java/io/FilterOutputStream.java ! src/share/classes/java/io/ObjectStreamClass.java ! src/share/classes/java/io/PushbackInputStream.java ! src/share/classes/java/io/PushbackReader.java ! src/share/classes/java/lang/ApplicationShutdownHooks.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/Package.java ! src/share/classes/java/lang/StackTraceElement.java ! src/share/classes/java/lang/StringCoding.java ! src/share/classes/java/lang/System.java ! src/share/classes/java/lang/Thread.java ! src/share/classes/java/lang/ThreadGroup.java ! src/share/classes/java/lang/management/ManagementFactory.java ! src/share/classes/java/lang/management/PlatformComponent.java ! src/share/classes/java/lang/reflect/Proxy.java ! src/share/classes/java/lang/reflect/ReflectAccess.java ! src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java ! src/share/classes/java/net/AbstractPlainSocketImpl.java ! src/share/classes/java/net/HttpURLConnection.java ! src/share/classes/java/net/InetAddress.java ! src/share/classes/java/net/NetPermission.java ! src/share/classes/java/net/NetworkInterface.java ! src/share/classes/java/net/URI.java ! src/share/classes/java/net/URLClassLoader.java ! src/share/classes/java/net/doc-files/net-properties.html ! src/share/classes/java/net/package.html ! src/share/classes/java/nio/channels/AsynchronousFileChannel.java ! src/share/classes/java/nio/channels/FileChannel.java ! src/share/classes/java/nio/channels/SeekableByteChannel.java ! src/share/classes/java/nio/channels/SocketChannel.java ! src/share/classes/java/nio/file/AccessMode.java ! src/share/classes/java/nio/file/CopyOption.java ! src/share/classes/java/nio/file/DirectoryIteratorException.java ! src/share/classes/java/nio/file/DirectoryStream.java ! src/share/classes/java/nio/file/FileStore.java ! src/share/classes/java/nio/file/FileSystem.java ! src/share/classes/java/nio/file/FileSystems.java ! src/share/classes/java/nio/file/FileTreeWalker.java ! src/share/classes/java/nio/file/FileVisitor.java ! src/share/classes/java/nio/file/Files.java ! src/share/classes/java/nio/file/LinkOption.java ! src/share/classes/java/nio/file/LinkPermission.java ! src/share/classes/java/nio/file/OpenOption.java ! src/share/classes/java/nio/file/Path.java ! src/share/classes/java/nio/file/PathMatcher.java ! src/share/classes/java/nio/file/Paths.java ! src/share/classes/java/nio/file/SecureDirectoryStream.java ! src/share/classes/java/nio/file/SimpleFileVisitor.java ! src/share/classes/java/nio/file/TempFileHelper.java ! src/share/classes/java/nio/file/WatchEvent.java ! src/share/classes/java/nio/file/WatchKey.java ! src/share/classes/java/nio/file/WatchService.java ! src/share/classes/java/nio/file/attribute/AclEntry.java ! src/share/classes/java/nio/file/attribute/AclFileAttributeView.java ! src/share/classes/java/nio/file/attribute/BasicFileAttributeView.java ! src/share/classes/java/nio/file/attribute/BasicFileAttributes.java ! src/share/classes/java/nio/file/attribute/DosFileAttributeView.java ! src/share/classes/java/nio/file/attribute/DosFileAttributes.java ! src/share/classes/java/nio/file/attribute/FileAttribute.java ! src/share/classes/java/nio/file/attribute/FileAttributeView.java ! src/share/classes/java/nio/file/attribute/FileOwnerAttributeView.java ! src/share/classes/java/nio/file/attribute/FileTime.java ! src/share/classes/java/nio/file/attribute/PosixFileAttributeView.java ! src/share/classes/java/nio/file/attribute/PosixFileAttributes.java ! src/share/classes/java/nio/file/attribute/PosixFilePermission.java ! src/share/classes/java/nio/file/attribute/PosixFilePermissions.java ! src/share/classes/java/nio/file/attribute/UserDefinedFileAttributeView.java ! src/share/classes/java/nio/file/attribute/package-info.java ! src/share/classes/java/nio/file/package-info.java ! src/share/classes/java/nio/file/spi/FileSystemProvider.java ! src/share/classes/java/nio/file/spi/FileTypeDetector.java ! src/share/classes/java/security/AccessControlContext.java ! src/share/classes/java/security/AlgorithmParameterGenerator.java ! src/share/classes/java/security/AlgorithmParameters.java ! src/share/classes/java/security/BasicPermission.java ! src/share/classes/java/security/KeyFactory.java ! src/share/classes/java/security/KeyPairGenerator.java ! src/share/classes/java/security/KeyStore.java ! src/share/classes/java/security/MessageDigest.java ! src/share/classes/java/security/Permissions.java ! src/share/classes/java/security/Policy.java ! src/share/classes/java/security/ProtectionDomain.java ! src/share/classes/java/security/Provider.java ! src/share/classes/java/security/SecureClassLoader.java ! src/share/classes/java/security/SecureRandom.java ! src/share/classes/java/security/Security.java ! src/share/classes/java/security/Signature.java ! src/share/classes/java/security/UnresolvedPermission.java ! src/share/classes/java/security/UnresolvedPermissionCollection.java ! src/share/classes/java/security/cert/CertPath.java ! src/share/classes/java/security/cert/CertPathBuilder.java ! src/share/classes/java/security/cert/CertPathValidator.java ! src/share/classes/java/security/cert/CertStore.java ! src/share/classes/java/security/cert/Certificate.java ! src/share/classes/java/security/cert/CertificateFactory.java ! src/share/classes/java/security/cert/CertificateFactorySpi.java ! src/share/classes/java/security/cert/package.html ! src/share/classes/java/security/package.html ! src/share/classes/java/sql/Timestamp.java ! src/share/classes/java/text/SimpleDateFormat.java ! src/share/classes/java/util/Arrays.java ! src/share/classes/java/util/Collections.java ! src/share/classes/java/util/Currency.java ! src/share/classes/java/util/DualPivotQuicksort.java ! src/share/classes/java/util/EnumMap.java ! src/share/classes/java/util/EnumSet.java ! src/share/classes/java/util/HashMap.java ! src/share/classes/java/util/HashSet.java ! src/share/classes/java/util/Hashtable.java ! src/share/classes/java/util/IdentityHashMap.java ! src/share/classes/java/util/JumboEnumSet.java ! src/share/classes/java/util/LinkedHashMap.java ! src/share/classes/java/util/LinkedList.java ! src/share/classes/java/util/Locale.java ! src/share/classes/java/util/Objects.java ! src/share/classes/java/util/RegularEnumSet.java ! src/share/classes/java/util/ServiceLoader.java ! src/share/classes/java/util/TreeMap.java ! src/share/classes/java/util/UUID.java ! src/share/classes/java/util/Vector.java ! src/share/classes/java/util/WeakHashMap.java ! src/share/classes/java/util/concurrent/CopyOnWriteArrayList.java ! src/share/classes/java/util/logging/FileHandler.java ! src/share/classes/java/util/logging/Level.java ! src/share/classes/java/util/logging/Logger.java ! src/share/classes/java/util/logging/Logging.java ! src/share/classes/java/util/prefs/AbstractPreferences.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/java/util/spi/LocaleNameProvider.java ! src/share/classes/java/util/zip/Inflater.java ! src/share/classes/java/util/zip/ZipEntry.java ! src/share/classes/java/util/zip/ZipFile.java ! src/share/classes/java/util/zip/ZipOutputStream.java ! src/share/classes/java/util/zip/package.html ! src/share/classes/javax/crypto/Cipher.java ! src/share/classes/javax/crypto/ExemptionMechanism.java ! src/share/classes/javax/crypto/KeyAgreement.java ! src/share/classes/javax/crypto/KeyGenerator.java ! src/share/classes/javax/crypto/Mac.java ! src/share/classes/javax/crypto/package.html ! src/share/classes/javax/net/ssl/SSLContext.java ! src/share/classes/javax/net/ssl/package.html ! src/share/classes/javax/print/attribute/standard/DialogTypeSelection.java ! src/share/classes/javax/script/CompiledScript.java ! src/share/classes/javax/script/ScriptEngineFactory.java ! src/share/classes/javax/security/auth/PrivateCredentialPermission.java ! src/share/classes/javax/security/auth/SubjectDomainCombiner.java ! src/share/classes/javax/security/auth/kerberos/DelegationPermission.java ! src/share/classes/javax/security/auth/kerberos/ServicePermission.java ! src/share/classes/javax/security/auth/login/Configuration.java ! src/share/classes/javax/security/auth/login/package.html ! src/share/classes/javax/sound/midi/MidiSystem.java ! src/share/classes/javax/sound/sampled/AudioSystem.java ! src/share/classes/javax/sql/rowset/serial/SerialClob.java ! src/share/classes/javax/sql/rowset/spi/SyncFactory.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/BorderFactory.java ! src/share/classes/javax/swing/BufferStrategyPaintManager.java ! src/share/classes/javax/swing/DefaultDesktopManager.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JFileChooser.java ! src/share/classes/javax/swing/JLayer.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JViewport.java ! src/share/classes/javax/swing/LookAndFeel.java ! src/share/classes/javax/swing/RepaintManager.java ! src/share/classes/javax/swing/SizeSequence.java ! src/share/classes/javax/swing/SwingUtilities.java ! src/share/classes/javax/swing/SwingWorker.java ! src/share/classes/javax/swing/Timer.java ! src/share/classes/javax/swing/ToolTipManager.java ! src/share/classes/javax/swing/TransferHandler.java ! src/share/classes/javax/swing/border/BevelBorder.java ! src/share/classes/javax/swing/border/StrokeBorder.java ! src/share/classes/javax/swing/event/InternalFrameAdapter.java ! src/share/classes/javax/swing/event/InternalFrameListener.java ! src/share/classes/javax/swing/plaf/LayerUI.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSpinnerUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSplitPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTreeUI.java ! src/share/classes/javax/swing/plaf/nimbus/skin.laf ! src/share/classes/javax/swing/plaf/synth/SynthGraphicsUtils.java ! src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java ! src/share/classes/javax/swing/text/AsyncBoxView.java ! src/share/classes/javax/swing/text/DefaultCaret.java ! src/share/classes/javax/swing/text/JTextComponent.java ! src/share/classes/javax/swing/text/Keymap.java ! src/share/classes/javax/swing/text/TableView.java ! src/share/classes/javax/swing/text/Utilities.java ! src/share/classes/javax/swing/text/View.java ! src/share/classes/javax/swing/text/WrappedPlainView.java ! src/share/classes/javax/swing/text/html/CSSBorder.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/ParagraphView.java ! src/share/classes/javax/swing/text/html/StyleSheet.java ! src/share/classes/javax/swing/text/html/parser/ParserDelegator.java ! src/share/classes/overview-core.html ! src/share/classes/sun/applet/AppletClassLoader.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_de.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_es.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_fr.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_it.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ja.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ko.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java ! src/share/classes/sun/awt/AWTAccessor.java ! src/share/classes/sun/awt/SunToolkit.java ! src/share/classes/sun/awt/image/ImageFetcher.java ! src/share/classes/sun/awt/image/InputStreamImageSource.java ! src/share/classes/sun/dc/DuctusRenderingEngine.java ! src/share/classes/sun/font/FileFont.java ! src/share/classes/sun/font/FileFontStrike.java ! src/share/classes/sun/font/Font2D.java ! src/share/classes/sun/font/FontScaler.java ! src/share/classes/sun/font/FontUtilities.java ! src/share/classes/sun/font/FreetypeFontScaler.java ! src/share/classes/sun/font/NullFontScaler.java ! src/share/classes/sun/font/StrikeCache.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/font/TrueTypeFont.java ! src/share/classes/sun/font/Type1Font.java ! src/share/classes/sun/invoke/package-info.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/share/classes/sun/java2d/loops/CompositeType.java ! src/share/classes/sun/java2d/loops/MaskFill.java ! src/share/classes/sun/java2d/pipe/AAShapePipe.java ! src/share/classes/sun/java2d/pipe/AlphaColorPipe.java ! src/share/classes/sun/java2d/pipe/RenderingEngine.java ! src/share/classes/sun/java2d/pisces/Curve.java ! src/share/classes/sun/java2d/pisces/Dasher.java ! src/share/classes/sun/java2d/pisces/Helpers.java ! src/share/classes/sun/java2d/pisces/PiscesCache.java ! src/share/classes/sun/java2d/pisces/PiscesRenderingEngine.java ! src/share/classes/sun/java2d/pisces/PiscesTileGenerator.java ! src/share/classes/sun/java2d/pisces/Renderer.java ! src/share/classes/sun/java2d/pisces/Stroker.java ! src/share/classes/sun/java2d/pisces/TransformingPathConsumer2D.java ! src/share/classes/sun/jvmstat/monitor/MonitoredVmUtil.java ! src/share/classes/sun/launcher/LauncherHelper.java ! src/share/classes/sun/launcher/resources/launcher.properties ! src/share/classes/sun/management/resources/agent_de.properties ! src/share/classes/sun/management/resources/agent_es.properties ! src/share/classes/sun/management/resources/agent_fr.properties ! src/share/classes/sun/management/resources/agent_it.properties ! src/share/classes/sun/management/resources/agent_ja.properties ! src/share/classes/sun/management/resources/agent_ko.properties ! src/share/classes/sun/management/resources/agent_pt_BR.properties ! src/share/classes/sun/management/resources/agent_sv.properties ! src/share/classes/sun/management/resources/agent_zh_CN.properties ! src/share/classes/sun/management/resources/agent_zh_TW.properties ! src/share/classes/sun/misc/FloatingDecimal.java ! src/share/classes/sun/misc/JavaSecurityAccess.java ! src/share/classes/sun/misc/Launcher.java ! src/share/classes/sun/misc/URLClassPath.java ! src/share/classes/sun/misc/VM.java ! src/share/classes/sun/misc/resources/Messages_de.java ! src/share/classes/sun/misc/resources/Messages_es.java ! src/share/classes/sun/misc/resources/Messages_fr.java ! src/share/classes/sun/misc/resources/Messages_it.java ! src/share/classes/sun/misc/resources/Messages_ja.java ! src/share/classes/sun/misc/resources/Messages_ko.java ! src/share/classes/sun/misc/resources/Messages_pt_BR.java ! src/share/classes/sun/misc/resources/Messages_sv.java ! src/share/classes/sun/misc/resources/Messages_zh_CN.java ! src/share/classes/sun/misc/resources/Messages_zh_TW.java ! src/share/classes/sun/net/httpserver/ChunkedInputStream.java ! src/share/classes/sun/net/spi/DefaultProxySelector.java ! src/share/classes/sun/net/www/http/KeepAliveCache.java ! src/share/classes/sun/net/www/http/KeepAliveStream.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java ! src/share/classes/sun/net/www/protocol/http/NTLMAuthenticationProxy.java ! src/share/classes/sun/net/www/protocol/jar/URLJarFile.java ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/nio/ch/FileChannelImpl.java ! src/share/classes/sun/nio/ch/Net.java ! src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java ! src/share/classes/sun/nio/fs/AbstractAclFileAttributeView.java ! src/share/classes/sun/nio/fs/AbstractBasicFileAttributeView.java ! src/share/classes/sun/nio/fs/AbstractFileTypeDetector.java ! src/share/classes/sun/nio/fs/AbstractPath.java ! src/share/classes/sun/nio/fs/AbstractPoller.java ! src/share/classes/sun/nio/fs/AbstractUserDefinedFileAttributeView.java ! src/share/classes/sun/nio/fs/AbstractWatchKey.java ! src/share/classes/sun/nio/fs/AbstractWatchService.java ! src/share/classes/sun/nio/fs/DynamicFileAttributeView.java ! src/share/classes/sun/nio/fs/FileOwnerAttributeViewImpl.java ! src/share/classes/sun/nio/fs/PollingWatchService.java ! src/share/classes/sun/nio/fs/Util.java ! src/share/classes/sun/rmi/registry/resources/rmiregistry_de.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_es.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_fr.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_it.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_ja.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_ko.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_pt_BR.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_sv.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_zh_CN.properties ! src/share/classes/sun/rmi/registry/resources/rmiregistry_zh_TW.properties ! src/share/classes/sun/rmi/rmic/resources/rmic_ja.properties ! src/share/classes/sun/rmi/rmic/resources/rmic_zh_CN.properties ! src/share/classes/sun/rmi/server/resources/rmid_de.properties ! src/share/classes/sun/rmi/server/resources/rmid_es.properties ! src/share/classes/sun/rmi/server/resources/rmid_fr.properties ! src/share/classes/sun/rmi/server/resources/rmid_it.properties ! src/share/classes/sun/rmi/server/resources/rmid_ja.properties ! src/share/classes/sun/rmi/server/resources/rmid_ko.properties ! src/share/classes/sun/rmi/server/resources/rmid_pt_BR.properties ! src/share/classes/sun/rmi/server/resources/rmid_sv.properties ! src/share/classes/sun/rmi/server/resources/rmid_zh_CN.properties ! src/share/classes/sun/rmi/server/resources/rmid_zh_TW.properties ! src/share/classes/sun/security/acl/AclEntryImpl.java ! src/share/classes/sun/security/acl/AclImpl.java ! src/share/classes/sun/security/acl/GroupImpl.java ! src/share/classes/sun/security/jca/ProviderList.java ! src/share/classes/sun/security/jca/Providers.java ! src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java ! src/share/classes/sun/security/krb5/Config.java ! src/share/classes/sun/security/krb5/KdcComm.java ! src/share/classes/sun/security/krb5/KrbAsRep.java ! src/share/classes/sun/security/krb5/PrincipalName.java ! src/share/classes/sun/security/krb5/Realm.java ! src/share/classes/sun/security/krb5/internal/HostAddresses.java ! src/share/classes/sun/security/krb5/internal/KRBError.java ! src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java ! src/share/classes/sun/security/krb5/internal/crypto/EType.java ! src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java ! src/share/classes/sun/security/pkcs11/Config.java ! src/share/classes/sun/security/pkcs11/P11Key.java ! src/share/classes/sun/security/provider/PolicyFile.java ! src/share/classes/sun/security/provider/SeedGenerator.java ! src/share/classes/sun/security/provider/Sun.java ! src/share/classes/sun/security/provider/VerificationProvider.java ! src/share/classes/sun/security/provider/X509Factory.java ! src/share/classes/sun/security/rsa/RSACore.java ! src/share/classes/sun/security/rsa/SunRsaSign.java ! src/share/classes/sun/security/ssl/CipherSuite.java ! src/share/classes/sun/security/ssl/CipherSuiteList.java ! src/share/classes/sun/security/ssl/DefaultSSLContextImpl.java ! src/share/classes/sun/security/ssl/Handshaker.java ! src/share/classes/sun/security/ssl/HelloExtensions.java ! src/share/classes/sun/security/ssl/ProtocolList.java ! src/share/classes/sun/security/ssl/SSLAlgorithmConstraints.java ! src/share/classes/sun/security/ssl/SSLSessionImpl.java ! src/share/classes/sun/security/ssl/SignatureAndHashAlgorithm.java ! src/share/classes/sun/security/ssl/SunX509KeyManagerImpl.java ! src/share/classes/sun/security/ssl/TrustManagerFactoryImpl.java ! src/share/classes/sun/security/ssl/X509KeyManagerImpl.java ! src/share/classes/sun/security/tools/JarSignerResources_ja.java ! src/share/classes/sun/security/tools/JarSignerResources_zh_CN.java ! src/share/classes/sun/security/tools/policytool/PolicyTool.java ! src/share/classes/sun/security/util/AuthResources_de.java ! src/share/classes/sun/security/util/AuthResources_es.java ! src/share/classes/sun/security/util/AuthResources_fr.java ! src/share/classes/sun/security/util/AuthResources_it.java ! src/share/classes/sun/security/util/AuthResources_ja.java ! src/share/classes/sun/security/util/AuthResources_ko.java ! src/share/classes/sun/security/util/AuthResources_pt_BR.java ! src/share/classes/sun/security/util/AuthResources_sv.java ! src/share/classes/sun/security/util/AuthResources_zh_CN.java ! src/share/classes/sun/security/util/AuthResources_zh_TW.java ! src/share/classes/sun/security/util/Resources_de.java ! src/share/classes/sun/security/util/Resources_es.java ! src/share/classes/sun/security/util/Resources_fr.java ! src/share/classes/sun/security/util/Resources_it.java ! src/share/classes/sun/security/util/Resources_ja.java ! src/share/classes/sun/security/util/Resources_ko.java ! src/share/classes/sun/security/util/Resources_pt_BR.java ! src/share/classes/sun/security/util/Resources_sv.java ! src/share/classes/sun/security/util/Resources_zh_CN.java ! src/share/classes/sun/security/util/Resources_zh_TW.java ! src/share/classes/sun/swing/AccumulativeRunnable.java ! src/share/classes/sun/swing/WindowsPlacesBar.java ! src/share/classes/sun/text/resources/CollationData_sr_Latn.java ! src/share/classes/sun/tools/attach/HotSpotAttachProvider.java ! src/share/classes/sun/tools/jar/Main.java ! src/share/classes/sun/tools/jar/resources/jar_de.properties ! src/share/classes/sun/tools/jar/resources/jar_es.properties ! src/share/classes/sun/tools/jar/resources/jar_fr.properties ! src/share/classes/sun/tools/jar/resources/jar_it.properties ! src/share/classes/sun/tools/jar/resources/jar_ja.properties ! src/share/classes/sun/tools/jar/resources/jar_ko.properties ! src/share/classes/sun/tools/jar/resources/jar_pt_BR.properties ! src/share/classes/sun/tools/jar/resources/jar_sv.properties ! src/share/classes/sun/tools/jar/resources/jar_zh_CN.properties ! src/share/classes/sun/tools/jar/resources/jar_zh_TW.properties ! src/share/classes/sun/tools/javac/resources/javac_ja.properties ! src/share/classes/sun/tools/javac/resources/javac_zh_CN.properties ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java ! src/share/classes/sun/tools/native2ascii/Main.java ! src/share/classes/sun/tools/native2ascii/resources/MsgNative2ascii_ja.java ! src/share/classes/sun/tools/native2ascii/resources/MsgNative2ascii_zh_CN.java ! src/share/classes/sun/util/calendar/LocalGregorianCalendar.java ! src/share/classes/sun/util/locale/LanguageTag.java ! src/share/classes/sun/util/logging/PlatformLogger.java ! src/share/classes/sun/util/logging/resources/logging.properties ! src/share/classes/sun/util/logging/resources/logging_de.properties ! src/share/classes/sun/util/logging/resources/logging_es.properties ! src/share/classes/sun/util/logging/resources/logging_fr.properties ! src/share/classes/sun/util/logging/resources/logging_it.properties ! src/share/classes/sun/util/logging/resources/logging_ja.properties ! src/share/classes/sun/util/logging/resources/logging_ko.properties ! src/share/classes/sun/util/logging/resources/logging_pt_BR.properties ! src/share/classes/sun/util/logging/resources/logging_sv.properties ! src/share/classes/sun/util/logging/resources/logging_zh_CN.properties ! src/share/classes/sun/util/logging/resources/logging_zh_TW.properties ! src/share/classes/sun/util/resources/LocaleData.java ! src/share/classes/sun/util/resources/TimeZoneNames.java ! src/share/classes/sun/util/resources/TimeZoneNames_de.java ! src/share/classes/sun/util/resources/TimeZoneNames_es.java ! src/share/classes/sun/util/resources/TimeZoneNames_fr.java ! src/share/classes/sun/util/resources/TimeZoneNames_it.java ! src/share/classes/sun/util/resources/TimeZoneNames_ja.java ! src/share/classes/sun/util/resources/TimeZoneNames_ko.java ! src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java ! src/share/classes/sun/util/resources/TimeZoneNames_sv.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java ! src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java ! src/share/demo/jvmti/heapTracker/heapTracker.c ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileAttributeView.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileStore.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystem.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java ! src/share/instrument/JPLISAgent.c ! src/share/javavm/export/jvmti.h ! src/share/native/com/sun/java/util/jar/pack/unpack.cpp ! src/share/native/common/check_code.c ! src/share/native/java/io/io_util.c ! src/share/native/sun/awt/image/awt_parseImage.c ! src/share/native/sun/awt/image/jpeg/imageioJPEG.c ! src/share/native/sun/awt/image/jpeg/jpegdecoder.c ! src/share/native/sun/awt/splashscreen/splashscreen_gfx_impl.h ! src/share/native/sun/font/FontInstanceAdapter.cpp ! src/share/native/sun/java2d/cmm/lcms/LCMS.c ! src/share/native/sun/java2d/loops/MaskFill.c ! src/share/native/sun/java2d/loops/ParallelogramUtils.h ! src/share/native/sun/java2d/loops/ProcessPath.c ! src/share/native/sun/java2d/pipe/BufferedMaskBlit.c ! src/share/native/sun/security/ec/ECC_JNI.cpp ! src/share/native/sun/security/ec/impl/ec.c ! src/share/native/sun/security/ec/impl/ec.h ! src/share/native/sun/security/ec/impl/ec2.h ! src/share/native/sun/security/ec/impl/ec2_163.c ! src/share/native/sun/security/ec/impl/ec2_193.c ! src/share/native/sun/security/ec/impl/ec2_233.c ! src/share/native/sun/security/ec/impl/ec2_aff.c ! src/share/native/sun/security/ec/impl/ec2_mont.c ! src/share/native/sun/security/ec/impl/ec_naf.c ! src/share/native/sun/security/ec/impl/ecc_impl.h ! src/share/native/sun/security/ec/impl/ecdecode.c ! src/share/native/sun/security/ec/impl/ecl-curve.h ! src/share/native/sun/security/ec/impl/ecl-exp.h ! src/share/native/sun/security/ec/impl/ecl-priv.h ! src/share/native/sun/security/ec/impl/ecl.c ! src/share/native/sun/security/ec/impl/ecl.h ! src/share/native/sun/security/ec/impl/ecl_curve.c ! src/share/native/sun/security/ec/impl/ecl_gf.c ! src/share/native/sun/security/ec/impl/ecl_mult.c ! src/share/native/sun/security/ec/impl/ecp.h ! src/share/native/sun/security/ec/impl/ecp_192.c ! src/share/native/sun/security/ec/impl/ecp_224.c ! src/share/native/sun/security/ec/impl/ecp_256.c ! src/share/native/sun/security/ec/impl/ecp_384.c ! src/share/native/sun/security/ec/impl/ecp_521.c ! src/share/native/sun/security/ec/impl/ecp_aff.c ! src/share/native/sun/security/ec/impl/ecp_jac.c ! src/share/native/sun/security/ec/impl/ecp_jm.c ! src/share/native/sun/security/ec/impl/ecp_mont.c ! src/share/native/sun/security/ec/impl/logtab.h ! src/share/native/sun/security/ec/impl/mp_gf2m-priv.h ! src/share/native/sun/security/ec/impl/mp_gf2m.c ! src/share/native/sun/security/ec/impl/mp_gf2m.h ! src/share/native/sun/security/ec/impl/mpi-config.h ! src/share/native/sun/security/ec/impl/mpi-priv.h ! src/share/native/sun/security/ec/impl/mpi.c ! src/share/native/sun/security/ec/impl/mpi.h ! src/share/native/sun/security/ec/impl/mplogic.c ! src/share/native/sun/security/ec/impl/mplogic.h ! src/share/native/sun/security/ec/impl/mpmontg.c ! src/share/native/sun/security/ec/impl/mpprime.h ! src/share/native/sun/security/ec/impl/oid.c ! src/share/native/sun/security/ec/impl/secitem.c ! src/share/native/sun/security/ec/impl/secoidt.h ! src/share/sample/nio/file/AclEdit.java ! src/share/sample/nio/file/Chmod.java ! src/share/sample/nio/file/Copy.java ! src/share/sample/nio/file/DiskUsage.java ! src/share/sample/nio/file/FileType.java ! src/share/sample/nio/file/WatchDir.java ! src/share/sample/nio/file/Xdd.java ! src/solaris/classes/java/lang/ProcessEnvironment.java ! src/solaris/classes/java/util/prefs/FileSystemPreferences.java ! src/solaris/classes/sun/awt/X11/GtkFileDialogPeer.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XDesktopPeer.java ! src/solaris/classes/sun/awt/X11/XGlobalCursorManager.java ! src/solaris/classes/sun/awt/X11/XSelection.java ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/motif/MFontConfiguration.java ! src/solaris/classes/sun/awt/motif/MToolkit.java ! src/solaris/classes/sun/font/FcFontConfiguration.java ! src/solaris/classes/sun/font/FontConfigManager.java ! src/solaris/classes/sun/font/XRGlyphCache.java ! src/solaris/classes/sun/java2d/xr/XRSurfaceData.java ! src/solaris/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java ! src/solaris/classes/sun/nio/ch/UnixAsynchronousServerSocketChannelImpl.java ! src/solaris/classes/sun/nio/ch/UnixAsynchronousSocketChannelImpl.java ! src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java ! src/solaris/classes/sun/nio/fs/LinuxDosFileAttributeView.java ! src/solaris/classes/sun/nio/fs/LinuxFileSystem.java ! src/solaris/classes/sun/nio/fs/LinuxFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/LinuxUserDefinedFileAttributeView.java ! src/solaris/classes/sun/nio/fs/LinuxWatchService.java ! src/solaris/classes/sun/nio/fs/SolarisAclFileAttributeView.java ! src/solaris/classes/sun/nio/fs/SolarisFileSystem.java ! src/solaris/classes/sun/nio/fs/SolarisFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/SolarisUserDefinedFileAttributeView.java ! src/solaris/classes/sun/nio/fs/SolarisWatchService.java ! src/solaris/classes/sun/nio/fs/UnixChannelFactory.java ! src/solaris/classes/sun/nio/fs/UnixCopyFile.java ! src/solaris/classes/sun/nio/fs/UnixFileAttributeViews.java ! src/solaris/classes/sun/nio/fs/UnixFileAttributes.java ! src/solaris/classes/sun/nio/fs/UnixFileStore.java ! src/solaris/classes/sun/nio/fs/UnixFileSystem.java ! src/solaris/classes/sun/nio/fs/UnixFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! src/solaris/classes/sun/nio/fs/UnixSecureDirectoryStream.java ! src/solaris/classes/sun/nio/fs/UnixUriUtils.java ! src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_CommonUtils.c ! src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_MidiIn.c ! src/solaris/native/java/net/Inet6AddressImpl.c ! src/solaris/native/java/net/NetworkInterface.c ! src/solaris/native/java/net/PlainDatagramSocketImpl.c ! src/solaris/native/java/net/PlainSocketImpl.c ! src/solaris/native/java/net/linux_close.c ! src/solaris/native/java/net/net_util_md.c ! src/solaris/native/sun/awt/awt_DrawingSurface.c ! src/solaris/native/sun/awt/awt_GraphicsEnv.c ! src/solaris/native/sun/awt/fontpath.c ! src/solaris/native/sun/awt/gtk2_interface.c ! src/solaris/native/sun/awt/gtk2_interface.h ! src/solaris/native/sun/java2d/loops/vis_IntArgbPre_Mask.c ! src/solaris/native/sun/java2d/loops/vis_SrcMaskFill.c ! src/solaris/native/sun/java2d/x11/X11SurfaceData.c ! src/solaris/native/sun/java2d/x11/X11SurfaceData.h ! src/solaris/native/sun/java2d/x11/XRBackendNative.c ! src/solaris/native/sun/java2d/x11/XRSurfaceData.c ! src/solaris/native/sun/nio/ch/FileChannelImpl.c ! src/solaris/native/sun/nio/ch/Net.c ! src/solaris/native/sun/nio/fs/UnixNativeDispatcher.c ! src/solaris/native/sun/xawt/XToolkit.c ! src/solaris/native/sun/xawt/awt_Desktop.c ! src/windows/bin/java_md.c ! src/windows/classes/java/lang/ProcessEnvironment.java ! src/windows/classes/java/net/PlainSocketImpl.java ! src/windows/classes/java/net/TwoStacksPlainDatagramSocketImpl.java ! src/windows/classes/sun/awt/Win32FontManager.java ! src/windows/classes/sun/awt/windows/WPathGraphics.java ! src/windows/classes/sun/awt/windows/WPrinterJob.java ! src/windows/classes/sun/awt/windows/WToolkit.java ! src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java ! src/windows/classes/sun/java2d/opengl/WGLVolatileSurfaceManager.java ! src/windows/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java ! src/windows/classes/sun/nio/ch/PendingIoCache.java ! src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java ! src/windows/classes/sun/nio/ch/WindowsAsynchronousSocketChannelImpl.java ! src/windows/classes/sun/nio/fs/RegistryFileTypeDetector.java ! src/windows/classes/sun/nio/fs/WindowsFileAttributeViews.java ! src/windows/classes/sun/nio/fs/WindowsFileCopy.java ! src/windows/classes/sun/nio/fs/WindowsFileStore.java ! src/windows/classes/sun/nio/fs/WindowsFileSystem.java ! src/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! src/windows/classes/sun/nio/fs/WindowsPath.java ! src/windows/classes/sun/nio/fs/WindowsPathParser.java ! src/windows/classes/sun/nio/fs/WindowsSecurityDescriptor.java ! src/windows/classes/sun/nio/fs/WindowsUserDefinedFileAttributeView.java ! src/windows/classes/sun/nio/fs/WindowsWatchService.java ! src/windows/classes/sun/print/Win32PrintService.java ! src/windows/demo/jvmti/hprof/hprof_md.c ! src/windows/native/java/io/WinNTFileSystem_md.c ! src/windows/native/java/io/canonicalize_md.c ! src/windows/native/java/io/io_util_md.c ! src/windows/native/java/net/Inet4AddressImpl.c ! src/windows/native/java/net/Inet6AddressImpl.c ! src/windows/native/java/net/TwoStacksPlainSocketImpl.c ! src/windows/native/sun/java2d/d3d/D3DGraphicsDevice.cpp ! src/windows/native/sun/java2d/windows/GDIBlitLoops.cpp ! src/windows/native/sun/nio/ch/Iocp.c ! src/windows/native/sun/nio/ch/Net.c ! src/windows/native/sun/nio/fs/RegistryFileTypeDetector.c ! src/windows/native/sun/nio/fs/WindowsNativeDispatcher.c ! src/windows/native/sun/windows/Devices.h ! src/windows/native/sun/windows/awt_Debug.cpp ! src/windows/native/sun/windows/awt_Debug.h ! src/windows/native/sun/windows/awt_Dialog.h ! src/windows/native/sun/windows/awt_Frame.cpp ! src/windows/native/sun/windows/awt_Frame.h ! src/windows/native/sun/windows/awt_PrintJob.cpp ! src/windows/native/sun/windows/awt_TextArea.h ! src/windows/native/sun/windows/awt_Toolkit.cpp ! src/windows/native/sun/windows/awt_TrayIcon.cpp ! src/windows/native/sun/windows/awt_Win32GraphicsEnv.cpp ! src/windows/native/sun/windows/awt_Window.cpp ! test/Makefile ! test/ProblemList.txt ! test/com/sun/awt/Translucency/WindowOpacity.java ! test/com/sun/jdi/NativeInstanceFilter.java ! test/com/sun/jdi/NativeInstanceFilterTarg.java ! test/com/sun/jdi/ProcessAttachTest.sh ! test/com/sun/security/auth/module/LdapLoginModule/CheckConfigs.java ! test/com/sun/security/auth/module/LdapLoginModule/CheckOptions.java ! test/com/sun/tools/attach/ApplicationSetup.sh ! test/com/sun/tools/attach/BasicTests.sh ! test/com/sun/tools/attach/CommonSetup.sh ! test/com/sun/tools/attach/PermissionTests.sh ! test/demo/zipfs/Basic.java ! test/demo/zipfs/PathOps.java ! test/demo/zipfs/basic.sh ! test/java/awt/Container/CheckZOrderChange/CheckZOrderChange.java ! test/java/awt/FontClass/LCDScale.java ! test/java/awt/Graphics2D/RenderClipTest/RenderClipTest.java ! test/java/awt/PrintJob/Text/StringWidth.java ! test/java/awt/font/FontNames/LocaleFamilyNames.java ! test/java/awt/xembed/server/TestXEmbedServer.java ! test/java/io/File/IsHidden.java ! test/java/io/File/SetAccess.java ! test/java/io/File/SetLastModified.java ! test/java/io/File/SymLinks.java ! test/java/io/File/basic.sh ! test/java/io/FileInputStream/LargeFileAvailable.java ! test/java/io/FileOutputStream/AtomicAppend.java ! test/java/io/OutputStreamWriter/Encode.java ! test/java/io/PrintStream/EncodingConstructor.java ! test/java/io/Serializable/NPEProvoker/NPEProvoker.java ! test/java/io/Serializable/evolution/RenamePackage/install/SerialDriver.java ! test/java/io/Serializable/evolution/RenamePackage/test/SerialDriver.java ! test/java/lang/Double/ParseDouble.java ! test/java/lang/ProcessBuilder/Basic.java ! test/java/lang/Runtime/exec/Duped.java ! test/java/lang/Runtime/shutdown/ShutdownHooks.java ! test/java/lang/System/finalization/FinExit.sh ! test/java/lang/Thread/StartOOMTest.java ! test/java/lang/annotation/loaderLeak/LoaderLeak.sh ! test/java/lang/instrument/BootClassPath/Setup.java ! test/java/lang/instrument/appendToClassLoaderSearch/CommonSetup.sh ! test/java/lang/instrument/ilib/Inject.java ! test/java/lang/instrument/ilib/InjectBytecodes.java ! test/java/lang/invoke/indify/Indify.java ! test/java/lang/reflect/Generics/TestPlainArrayNotGeneric.java ! test/java/math/BigInteger/BigIntegerTest.java ! test/java/net/URI/Test.java ! test/java/net/URLClassLoader/closetest/CloseTest.java ! test/java/nio/MappedByteBuffer/Force.java ! test/java/nio/MappedByteBuffer/ZeroMap.java ! test/java/nio/channels/AsynchronousSocketChannel/Basic.java ! test/java/nio/channels/DatagramChannel/MulticastSendReceiveTests.java ! test/java/nio/channels/FileChannel/AtomicAppend.java ! test/java/nio/channels/FileChannel/Position.java ! test/java/nio/channels/FileChannel/Transfer.java ! test/java/nio/charset/coders/CheckSJISMappingProp.sh ! test/java/nio/file/DirectoryStream/Basic.java ! test/java/nio/file/DirectoryStream/DriveLetter.java ! test/java/nio/file/DirectoryStream/SecureDS.java ! test/java/nio/file/FileStore/Basic.java ! test/java/nio/file/Files/CheckPermissions.java ! test/java/nio/file/Files/CopyAndMove.java ! test/java/nio/file/Files/DeleteOnClose.java ! test/java/nio/file/Files/FileAttributes.java ! test/java/nio/file/Files/InterruptCopy.java ! test/java/nio/file/Files/Links.java ! test/java/nio/file/Files/Misc.java ! test/java/nio/file/Files/PassThroughFileSystem.java ! test/java/nio/file/Files/SBC.java ! test/java/nio/file/Files/TemporaryFiles.java ! test/java/nio/file/Files/delete_on_close.sh ! test/java/nio/file/Files/probeContentType/Basic.java ! test/java/nio/file/Files/probeContentType/ForceLoad.java ! test/java/nio/file/Files/probeContentType/SimpleFileTypeDetector.java ! test/java/nio/file/Files/walkFileTree/CreateFileTree.java ! test/java/nio/file/Files/walkFileTree/MaxDepth.java ! test/java/nio/file/Files/walkFileTree/PrintFileTree.java ! test/java/nio/file/Files/walkFileTree/SkipSiblings.java ! test/java/nio/file/Files/walkFileTree/TerminateWalk.java ! test/java/nio/file/Files/walkFileTree/WalkWithSecurity.java ! test/java/nio/file/Files/walkFileTree/walk_file_tree.sh ! test/java/nio/file/Path/Misc.java ! test/java/nio/file/Path/PathOps.java ! test/java/nio/file/Path/UriImportExport.java ! test/java/nio/file/TestUtil.java ! test/java/nio/file/WatchService/Basic.java ! test/java/nio/file/WatchService/FileTreeModifier.java ! test/java/nio/file/WatchService/LotsOfEvents.java ! test/java/nio/file/WatchService/SensitivityModifier.java ! test/java/nio/file/attribute/AclFileAttributeView/Basic.java ! test/java/nio/file/attribute/BasicFileAttributeView/Basic.java ! test/java/nio/file/attribute/DosFileAttributeView/Basic.java ! test/java/nio/file/attribute/FileTime/Basic.java ! test/java/nio/file/attribute/PosixFileAttributeView/Basic.java ! test/java/nio/file/attribute/UserDefinedFileAttributeView/Basic.java ! test/java/nio/file/spi/SetDefaultProvider.java ! test/java/nio/file/spi/TestProvider.java ! test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh ! test/java/util/Arrays/Sorting.java ! test/java/util/Collection/MOAT.java ! test/java/util/Currency/ValidateISO4217.java ! test/java/util/Locale/LocaleEnhanceTest.java ! test/java/util/Locale/LocaleTest.java ! test/java/util/Objects/BasicObjectsTest.java ! test/java/util/ResourceBundle/Bug6204853.java ! test/java/util/WeakHashMap/GCDuringIteration.java ! test/java/util/concurrent/Executors/AutoShutdown.java ! test/java/util/concurrent/ThreadPoolExecutor/CoreThreadTimeOut.java ! test/java/util/jar/JarEntry/GetMethodsReturnClones.java ! test/java/util/jar/JarFile/ScanSignedJar.java ! test/java/util/logging/ClassLoaderLeakTest.java ! test/java/util/regex/RegExTest.java ! test/java/util/zip/Available.java ! test/java/util/zip/FileBuilder.java ! test/java/util/zip/GZIP/Accordion.java ! test/java/util/zip/GZIP/GZIPInputStreamRead.java ! test/java/util/zip/InfoZip.java ! test/java/util/zip/LargeZip.java ! test/java/util/zip/TestEmptyZip.java ! test/java/util/zip/ZipCoding.java ! test/java/util/zip/ZipFile/Assortment.java ! test/java/util/zip/ZipFile/Comment.java ! test/java/util/zip/ZipFile/CopyJar.java ! test/java/util/zip/ZipFile/CorruptedZipFiles.java ! test/java/util/zip/ZipFile/DeleteTempJar.java ! test/java/util/zip/ZipFile/EnumAfterClose.java ! test/java/util/zip/ZipFile/FinalizeZipFile.java ! test/java/util/zip/ZipFile/GetDirEntry.java ! test/java/util/zip/ZipFile/LargeZipFile.java ! test/java/util/zip/ZipFile/ManyEntries.java ! test/java/util/zip/ZipFile/ManyZipFiles.java ! test/java/util/zip/ZipFile/ReadAfterClose.java ! test/java/util/zip/ZipFile/ReadZip.java ! test/java/util/zip/ZipFile/ShortRead.java ! test/java/util/zip/zip.java ! test/javax/imageio/stream/StreamCloserLeak/run_test.sh ! test/javax/print/DialogMargins.java ! test/javax/print/attribute/ServiceDialogTest.java ! test/javax/script/CommonSetup.sh ! test/javax/script/VersionTest.java ! test/javax/swing/JFileChooser/6342301/bug6342301.java ! test/javax/swing/JFileChooser/6798062/bug6798062.java ! test/javax/swing/JLabel/7004134/bug7004134.java ! test/javax/swing/JScrollBar/6542335/bug6542335.java ! test/javax/swing/UIDefaults/6795356/bug6795356.java ! test/javax/swing/text/NavigationFilter/6735293/bug6735293.java ! test/javax/swing/text/html/parser/Parser/6990651/bug6990651.java ! test/sun/java2d/pipe/RegionOps.java ! test/sun/misc/URLClassPath/ClassnameCharTest.sh ! test/sun/net/InetAddress/nameservice/chaining/Providers.java ! test/sun/net/InetAddress/nameservice/chaining/Simple1NameServiceDescriptor.java ! test/sun/net/InetAddress/nameservice/chaining/Simple2NameServiceDescriptor.java ! test/sun/net/InetAddress/nameservice/chaining/SimpleNameService.java ! test/sun/net/InetAddress/nameservice/simple/CacheTest.java ! test/sun/net/InetAddress/nameservice/simple/DefaultCaching.java ! test/sun/net/InetAddress/nameservice/simple/SimpleNameService.java ! test/sun/net/InetAddress/nameservice/simple/SimpleNameServiceDescriptor.java ! test/sun/security/krb5/IPv6.java ! test/sun/security/krb5/auto/Context.java ! test/sun/security/krb5/auto/KDC.java ! test/sun/security/krb5/tools/KtabCheck.java ! test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/CookieHandlerTest.java ! test/sun/text/resources/LocaleDataTest.java ! test/sun/tools/native2ascii/Native2AsciiTests.sh ! test/tools/launcher/Arrrghs.java ! test/tools/launcher/ClassPathWildCard.sh ! test/tools/launcher/MiscTests.java Changeset: eaca823dd3fe Author: ohair Date: 2011-04-07 19:59 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/eaca823dd3fe 7019210: Fix misc references to /bugreport websites Reviewed-by: skannan ! make/docs/Makefile ! src/share/classes/com/sun/beans/TypeResolver.java ! src/share/classes/java/awt/doc-files/AWTThreadIssues.html ! src/share/classes/javax/sql/rowset/package.html ! src/share/classes/javax/swing/package.html ! src/share/classes/sun/tools/javac/resources/javac.properties ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/JarFileSystemProvider.java ! src/share/native/java/lang/System.c Changeset: 712dff1413c0 Author: schien Date: 2011-04-12 13:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/712dff1413c0 7022841: LocaleNames_no_NO_NY.class is missing in rt.jar Reviewed-by: katleman, ohair ! make/java/util/FILES_properties.gmk Changeset: 19c6e9043934 Author: yhuang Date: 2011-04-05 21:09 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/19c6e9043934 7020583: Some currency names are missing in some locales Reviewed-by: naoto ! src/share/classes/sun/util/resources/CurrencyNames_de.properties ! src/share/classes/sun/util/resources/CurrencyNames_es.properties ! src/share/classes/sun/util/resources/CurrencyNames_fr.properties ! src/share/classes/sun/util/resources/CurrencyNames_it.properties ! src/share/classes/sun/util/resources/CurrencyNames_ja.properties ! src/share/classes/sun/util/resources/CurrencyNames_ko.properties ! src/share/classes/sun/util/resources/CurrencyNames_sv.properties ! src/share/classes/sun/util/resources/CurrencyNames_zh_CN.properties ! src/share/classes/sun/util/resources/CurrencyNames_zh_TW.properties ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 0aa16a3c5c95 Author: mfang Date: 2011-04-06 22:54 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0aa16a3c5c95 6384973: Incorrect translations in awt.properties Reviewed-by: yhuang ! src/share/classes/sun/awt/resources/awt_fr.properties Changeset: b2e8a6e414c4 Author: mfang Date: 2011-04-07 20:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b2e8a6e414c4 7034932: Merging src/share/classes/sun/util/resources/CurrencyNames.properties and CurrencyNames_pt.propertie Reviewed-by: yhuang ! src/share/classes/sun/util/resources/CurrencyNames.properties ! src/share/classes/sun/util/resources/CurrencyNames_pt.properties Changeset: fe4701bfdf26 Author: mfang Date: 2011-04-08 14:48 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fe4701bfdf26 7034940: message drop 2 translation integration Reviewed-by: yhuang ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_de.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_es.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_fr.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_it.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ja.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_ko.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_pt_BR.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_sv.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.properties ! src/share/classes/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_de.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_es.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_it.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_de.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_es.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_it.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ja.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_ko.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_pt_BR.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_sv.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.properties ! src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.properties ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_de.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_es.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_fr.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_it.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ja.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ko.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java ! src/share/classes/sun/launcher/resources/launcher_de.properties ! src/share/classes/sun/launcher/resources/launcher_es.properties ! src/share/classes/sun/launcher/resources/launcher_fr.properties ! src/share/classes/sun/launcher/resources/launcher_it.properties ! src/share/classes/sun/launcher/resources/launcher_ja.properties ! src/share/classes/sun/launcher/resources/launcher_ko.properties ! src/share/classes/sun/launcher/resources/launcher_pt_BR.properties ! src/share/classes/sun/launcher/resources/launcher_sv.properties ! src/share/classes/sun/launcher/resources/launcher_zh_CN.properties ! src/share/classes/sun/launcher/resources/launcher_zh_TW.properties ! src/share/classes/sun/print/resources/serviceui_de.properties ! src/share/classes/sun/print/resources/serviceui_es.properties ! src/share/classes/sun/print/resources/serviceui_fr.properties ! src/share/classes/sun/print/resources/serviceui_it.properties ! src/share/classes/sun/print/resources/serviceui_ja.properties ! src/share/classes/sun/print/resources/serviceui_ko.properties ! src/share/classes/sun/print/resources/serviceui_pt_BR.properties ! src/share/classes/sun/print/resources/serviceui_sv.properties ! src/share/classes/sun/print/resources/serviceui_zh_CN.properties ! src/share/classes/sun/print/resources/serviceui_zh_TW.properties ! src/share/classes/sun/rmi/server/resources/rmid_de.properties ! src/share/classes/sun/rmi/server/resources/rmid_sv.properties ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java ! src/share/classes/sun/util/logging/resources/logging_de.properties ! src/share/classes/sun/util/logging/resources/logging_es.properties ! src/share/classes/sun/util/logging/resources/logging_fr.properties ! src/share/classes/sun/util/logging/resources/logging_it.properties ! src/share/classes/sun/util/logging/resources/logging_ja.properties ! src/share/classes/sun/util/logging/resources/logging_ko.properties ! src/share/classes/sun/util/logging/resources/logging_pt_BR.properties ! src/share/classes/sun/util/logging/resources/logging_sv.properties ! src/share/classes/sun/util/logging/resources/logging_zh_CN.properties ! src/share/classes/sun/util/logging/resources/logging_zh_TW.properties Changeset: a17b92c217e8 Author: mfang Date: 2011-04-08 15:04 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a17b92c217e8 7024528: [sv] format error in appletviewer usage translation Reviewed-by: yhuang ! src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java Changeset: 708070751be6 Author: mfang Date: 2011-04-08 16:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/708070751be6 Merge Changeset: cb3a6795cca5 Author: mfang Date: 2011-04-11 13:59 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cb3a6795cca5 Merge Changeset: 3cda8aa91ae4 Author: mfang Date: 2011-04-11 14:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3cda8aa91ae4 Merge Changeset: 14898478f33f Author: mfang Date: 2011-04-11 16:19 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/14898478f33f Merge ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_de.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_es.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_fr.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_it.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ja.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_ko.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_CN.java ! src/share/classes/sun/applet/resources/MsgAppletViewer_zh_TW.java ! src/share/classes/sun/rmi/server/resources/rmid_de.properties ! src/share/classes/sun/rmi/server/resources/rmid_sv.properties ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_ja.java ! src/share/classes/sun/tools/jconsole/resources/JConsoleResources_zh_CN.java ! src/share/classes/sun/util/logging/resources/logging_de.properties ! src/share/classes/sun/util/logging/resources/logging_es.properties ! src/share/classes/sun/util/logging/resources/logging_fr.properties ! src/share/classes/sun/util/logging/resources/logging_it.properties ! src/share/classes/sun/util/logging/resources/logging_ja.properties ! src/share/classes/sun/util/logging/resources/logging_ko.properties ! src/share/classes/sun/util/logging/resources/logging_pt_BR.properties ! src/share/classes/sun/util/logging/resources/logging_sv.properties ! src/share/classes/sun/util/logging/resources/logging_zh_CN.properties ! src/share/classes/sun/util/logging/resources/logging_zh_TW.properties ! test/sun/text/resources/LocaleDataTest.java Changeset: cdd6e256d831 Author: mfang Date: 2011-04-12 18:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/cdd6e256d831 Merge Changeset: 03d8d1eaaf6d Author: ohair Date: 2011-04-12 14:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/03d8d1eaaf6d 7033957: Library built without a mapfile: libxinerama.so Reviewed-by: ksrini ! make/common/shared/Defs-solaris.gmk Changeset: 0069845a086c Author: ohair Date: 2011-04-12 22:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0069845a086c Merge Changeset: 60d3d55dcc9c Author: ohair Date: 2011-04-13 16:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/60d3d55dcc9c Merge ! make/common/Library.gmk ! make/java/java/Makefile ! make/java/management/Makefile ! make/java/net/Makefile ! make/java/zip/Makefile ! make/launchers/Makefile ! make/mkdemo/jfc/Makefile ! make/sun/Makefile ! make/sun/jawt/Makefile ! make/sun/jpeg/Makefile ! make/sun/nio/cs/Makefile ! make/sun/security/tools/Makefile ! make/sun/xawt/Makefile ! make/sun/xawt/mapfile-vers ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/image/SinglePixelPackedSampleModel.java ! src/share/classes/java/lang/management/ManagementFactory.java ! src/share/classes/java/lang/management/PlatformComponent.java ! src/share/classes/java/nio/file/Files.java ! src/share/classes/java/nio/file/Path.java ! src/share/classes/java/util/Collections.java ! src/share/classes/javax/swing/JLayer.java ! src/share/classes/javax/swing/plaf/LayerUI.java ! src/share/classes/sun/font/SunFontManager.java ! src/share/classes/sun/java2d/SunGraphicsEnvironment.java ! src/share/classes/sun/nio/fs/Util.java ! src/share/classes/sun/security/krb5/Realm.java ! src/share/classes/sun/util/logging/PlatformLogger.java ! src/share/demo/nio/zipfs/src/com/sun/nio/zipfs/ZipFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/LinuxFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/SolarisFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/UnixFileSystemProvider.java ! src/solaris/classes/sun/nio/fs/UnixPath.java ! src/solaris/classes/sun/nio/fs/UnixSecureDirectoryStream.java ! src/solaris/native/sun/java2d/x11/XRBackendNative.c ! src/solaris/native/sun/xawt/XToolkit.c ! src/windows/classes/sun/awt/windows/WToolkit.java ! src/windows/classes/sun/nio/fs/WindowsFileSystemProvider.java ! src/windows/classes/sun/nio/fs/WindowsPath.java ! src/windows/native/java/io/WinNTFileSystem_md.c ! src/windows/native/java/net/Inet6AddressImpl.c ! src/windows/native/sun/nio/fs/WindowsNativeDispatcher.c ! src/windows/native/sun/windows/awt_Toolkit.cpp ! test/Makefile ! test/ProblemList.txt ! test/java/lang/invoke/indify/Indify.java ! test/java/nio/file/Files/CheckPermissions.java ! test/java/nio/file/Files/PassThroughFileSystem.java ! test/java/nio/file/Path/Misc.java ! test/sun/security/krb5/IPv6.java Changeset: 6e099ee5c6f5 Author: schien Date: 2011-04-14 15:21 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6e099ee5c6f5 Added tag jdk7-b138 for changeset 60d3d55dcc9c ! .hgtags Changeset: caebdaf362ee Author: lana Date: 2011-04-17 16:19 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/caebdaf362ee Merge ! make/com/sun/java/pack/Makefile ! make/common/Program.gmk ! make/docs/Makefile ! make/java/main/java/Makefile ! make/javax/crypto/Defs-jce.gmk ! src/share/classes/com/sun/beans/TypeResolver.java ! src/share/classes/java/awt/doc-files/AWTThreadIssues.html ! src/share/classes/java/io/Console.java ! src/share/classes/java/lang/Character.java ! src/share/classes/java/lang/Class.java ! src/share/classes/java/lang/Package.java ! src/share/classes/java/security/SecureClassLoader.java ! src/share/classes/java/util/EnumMap.java ! src/share/classes/java/util/IdentityHashMap.java ! src/share/classes/java/util/logging/FileHandler.java ! src/share/classes/java/util/regex/Pattern.java ! src/share/classes/javax/crypto/Cipher.java ! src/share/classes/javax/swing/plaf/LayerUI.java ! src/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/share/classes/sun/security/pkcs11/Config.java ! src/share/classes/sun/security/ssl/CipherSuiteList.java ! src/share/classes/sun/security/ssl/ProtocolList.java ! src/windows/classes/sun/nio/fs/WindowsFileSystem.java ! test/ProblemList.txt ! test/com/sun/tools/attach/ApplicationSetup.sh ! test/com/sun/tools/attach/BasicTests.sh ! test/sun/security/krb5/auto/KDC.java From joe.darcy at oracle.com Mon Apr 18 05:52:46 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Mon, 18 Apr 2011 05:52:46 +0000 Subject: hg: jdk7/tl/jdk: 7021568: Double.parseDouble() returns architecture dependent results Message-ID: <20110418055255.F0AE647BB3@hg.openjdk.java.net> Changeset: bcc6e4c28684 Author: darcy Date: 2011-04-17 22:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/bcc6e4c28684 7021568: Double.parseDouble() returns architecture dependent results Reviewed-by: alanb ! src/share/classes/sun/misc/FloatingDecimal.java ! src/share/classes/sun/misc/FormattedFloatingDecimal.java ! test/java/lang/Double/ParseDouble.java From chris.hegarty at oracle.com Mon Apr 18 10:16:25 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Mon, 18 Apr 2011 10:16:25 +0000 Subject: hg: jdk7/tl/jdk: 7030649: URL.equals() fails to compare jar urls Message-ID: <20110418101654.2F8A447BBD@hg.openjdk.java.net> Changeset: 7e7bb0a97c40 Author: chegar Date: 2011-04-18 11:14 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7e7bb0a97c40 7030649: URL.equals() fails to compare jar urls Reviewed-by: michaelm ! src/share/classes/sun/net/www/protocol/jar/Handler.java ! test/java/net/URL/Equals.java From chris.hegarty at oracle.com Mon Apr 18 14:51:02 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Mon, 18 Apr 2011 14:51:02 +0000 Subject: hg: jdk7/tl/jdk: 7037436: CR 7035020 fails to check shutdown Message-ID: <20110418145112.54B7947BC9@hg.openjdk.java.net> Changeset: 603e70836e74 Author: dl Date: 2011-04-18 15:50 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/603e70836e74 7037436: CR 7035020 fails to check shutdown Reviewed-by: chegar ! src/share/classes/java/util/concurrent/ForkJoinPool.java ! src/share/classes/java/util/concurrent/ForkJoinWorkerThread.java From chris.hegarty at oracle.com Mon Apr 18 15:11:37 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Mon, 18 Apr 2011 15:11:37 +0000 Subject: hg: jdk7/tl/jdk: 7036559: ConcurrentHashMap footprint and contention improvements Message-ID: <20110418151146.DE37047BCB@hg.openjdk.java.net> Changeset: 005c0c85b0de Author: dl Date: 2011-04-18 16:10 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/005c0c85b0de 7036559: ConcurrentHashMap footprint and contention improvements Reviewed-by: chegar ! src/share/classes/java/util/concurrent/ConcurrentHashMap.java From lance.andersen at oracle.com Mon Apr 18 16:08:20 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Mon, 18 Apr 2011 16:08:20 +0000 Subject: hg: jdk7/tl/jdk: 7037085: Add hashCode() to Timestamp to address Findbugs warning Message-ID: <20110418160830.0121347BCF@hg.openjdk.java.net> Changeset: 9b3e6baad033 Author: lancea Date: 2011-04-18 12:07 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9b3e6baad033 7037085: Add hashCode() to Timestamp to address Findbugs warning Reviewed-by: darcy, alanb, emcmanus ! src/share/classes/java/sql/Timestamp.java From xueming.shen at oracle.com Mon Apr 18 17:45:31 2011 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Mon, 18 Apr 2011 17:45:31 +0000 Subject: hg: jdk7/tl/jdk: 7031076: Retained ZipFile InputStreams increase heap demand Message-ID: <20110418174542.0EBDE47BD4@hg.openjdk.java.net> Changeset: 98688c4be64b Author: sherman Date: 2011-04-18 10:51 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/98688c4be64b 7031076: Retained ZipFile InputStreams increase heap demand Summary: Allow unreferenced ZipFile InputStreams to be finalized, GC'd Reviewed-by: sherman, dholmes Contributed-by: neil.richards at ngmr.net ! src/share/classes/java/util/zip/ZipFile.java + test/java/util/zip/ZipFile/ClearStaleZipFileInputStreams.java From mike.duigou at oracle.com Mon Apr 18 18:32:52 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Mon, 18 Apr 2011 18:32:52 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110418183312.434F447BD6@hg.openjdk.java.net> Changeset: 60a457a944c4 Author: mduigou Date: 2011-04-18 11:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/60a457a944c4 7035160: Disable broken test cases for test/java/lang/reflect/Generics/Probe.java Reviewed-by: alanb ! test/java/lang/reflect/Generics/Probe.java Changeset: b38b204748c1 Author: mduigou Date: 2011-04-18 11:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/b38b204748c1 Merge From valerie.peng at oracle.com Mon Apr 18 18:58:51 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Mon, 18 Apr 2011 11:58:51 -0700 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4DA679B2.9050107@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> <4DA651D7.9000503@oracle.com> <4DA679B2.9050107@oracle.com> Message-ID: <4DAC89EB.8030908@oracle.com> Ok, I have no more comments. Thanks, Valerie On 04/13/11 09:36 PM, Weijun Wang wrote: > webrev updated at > > http://cr.openjdk.java.net/~weijun/6894072/webrev.06/ > > changes: > > 1. Remove Krb5AcceptCredentials in manipulation cred priv set > 2. Add codes to ServiceCreds.destroy() (See below) > 3. javadoc of sun..KeyTab.getInstance(s) (mentioned in your other mail) > 4. Copyright year of Handshaker and ServerHandsshaker (mentioned in > your other mail) > > Comments inline below: > > On 04/14/2011 09:45 AM, Valerie (Yu-Ching) Peng wrote: >> >> >> On 04/09/11 03:00 AM, Weijun Wang wrote: >>>> src/share/classes/sun/security/jgss/krb5/Krb5Util.java >>>> => 1) So, since when do we populate the Subject w/ >>>> Krb5AcceptCredential objects? I thought only Krb5LoginModule would >>>> "write" the subject's private cred set and I didn't find >>>> Krb5AcceptCredential objects added there. >>>> 224 Krb5AcceptCredential k5ac = SubjectComber.find( >>>> 225 subj, serverPrincipal, null, >>>> Krb5AcceptCredential.class); >>>> > >>> So, I'd prefer we just remove this special handling altogether. > > OK. Removed. > >> >>> >>>> => 2) Inside the getKKeys() method, you refresh the set of >>>> KerberoKey objects in the subject when the subject isn't read only. >>>> However, in Krb5LoginModule, KerberosKey objects are only stored >>>> into the Subject's private cred set when "storeKey" is true. Seems >>>> inconsistent? >>>> 271 public KerberosKey[] getKKeys() { >>>> >>> >>> I think not. In a normal krb5 login with JAAS, KeyTab and >>> KerberosKey are only stored when both "storeKey" and >>> subject.isReadOnly() are true. Since we now only deal with >>> KeysFromKeyTab type of keys, we can be sure they are read from >>> KeyTab. On the other hand, the reason we still store keys here is >>> because we are afraid that the user is directly manipulating the >>> subject, which means he/she is not using JAAS and therefore no >>> Krb5LoginModule involved at all. >>> >>> >> Let me rephrase my question: If he/she is only using JAAS, e.g. >> Krb5LoginModule and has storeKey set to false, will >> ServiceCreds.getKKeys() put KerberosKey objects into Subject's priv cred >> set? If yes, is this the expected behavior? > > If storeKey=false, there will be no KeyTab object in the priv cred > set, and there is no chance for these KerberosKey objects to be added. > >> >>>> => 3) I don't quite understand why there is a destroy() method >>>> that does nothing... At a minimum, I'd expect we need to reset the >>>> fields, so that they aren't usable or empty, right? Perhaps, we >>>> also need to destroy the individual KeyTab and KerberosKey objects >>>> in the lists? >>>> 316 public void destroy() { >>>> 317 // Nothing to do now >>>> 318 } >>>> >>> >>> I'll think about this. >>> >> Ok, let me know if you have more thoughts. > > I added > > kp = null; > ktabs = null; > kk = null; > > to the method. Since the keys and keytabs are directly taken out of > subject's priv cred set, I cannot destroy them. Otherwise, the same > subject cannot doAs another JGSS session. > > The destroy() method should be called by > Krb5AcceptCredential.dispose() and then called by > Krb5Context.dispose(). Unfortunately, Krb5Context has not made the > call. This is something we should fix later, but I don't want to touch > it now. > > Thanks > Max > > >> Thanks, >> Valerie >>> >>>> src/share/classes/sun/security/jgss/krb5/SubjectComber.java >>>> >>>> => I wonder why do you add this? The previous impl only search for >>>> publicly defined Kerberos objects, i.e. KerberosKey, >>>> KerberosTicket, etc. I thought you said in previous email that we >>>> don't populate Subject's private credential set w/ >>>> Krb5AcceptCredential objects? >>>> >>>> 100 credClass == Krb5AcceptCredential.class) { >>>> src/share/classes/sun/security/krb5/Config.java >>>> src/share/classes/sun/security/krb5/EncryptionKey.java >>>> src/share/classes/sun/security/krb5/KrbAsRep.java >>>> => All look fine >>>> >>>> src/share/classes/sun/security/krb5/KrbAsReqBuilder.java >>>> => 1) This class does store its own copy of password, so shouldn't >>>> you move the "does not" on line 49 to line 50? >>>> 49 * This class does not: >>>> >>>> 50 * 1. Deal with real communications (KdcComm does it, and >>>> TGS-REQ) >>>> 51 * a. Name of KDCs for a realm >>>> 52 * b. Server availability, timeout, UDP or TCP >>>> 53 * d. KRB_ERR_RESPONSE_TOO_BIG >>>> >>>> 54 * 2. Stores its own copy of password, this means: >>>> 55 * a. Do not change/wipe it before Builder finish >>>> 56 * b. Builder will not wipe it for you >>>> >>> >>> I'll remove lines 54-56. Maybe I meant to do that some time ago. >>> >>> Thanks >>> Max >>> >>> >>>> I am still looking at the rest of changes, just want to send what I >>>> have now, so you don't wait too long. >>>> >>>> Thanks, >>>> Valerie >>>> >>>> On 04/02/11 02:18 AM, Weijun Wang wrote: >>>> >>>>> Updated again: >>>>> >>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >>>>> >>>>> Changes: >>>>> >>>>> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we >>>>> will add to and remove from private credentials set. Add and >>>>> remove are only done when !subject.isReadOnly(). Only remove keys >>>>> for this principal. >>>>> >>>>> 2. Use the class above in KeyTab.getKeys(). >>>>> >>>>> 3. Remove a uselss method in KDC.java test. >>>>> >>>>> 4. Update new test KeyTabCompat.java, make sure after keytab >>>>> refresh, the old key in priv cred set is removed. >>>>> >>>>> Thanks >>>>> Max >>>>> >>>>> >>>>> >>>>> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>>>> >>>>>> I think we need to clean up the old ones if we added it there. >>>>>> Conceptually, this would fit closer w/ the "dynamic key tab" >>>>>> support. >>>>>> One straightforward way for us to do this is to subclass KerberosKey >>>>>> class and then we can remove all KerberosKey objects which are >>>>>> implemented using this class at refresh time. >>>>>> Just an idea. >>>>>> Valerie >>>>>> >>>>>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>>>> >>>>>>> Hi Valerie >>>>>>> >>>>>>> Updated again: >>>>>>> >>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>>>>> >>>>>>> 1. KeyTab can be used by anyone >>>>>>> 2. The two compatibility support >>>>>>> >>>>>>> As for adding keys (from keytab) into private credentials set, I >>>>>>> haven't cleaned up old ones. Since it's a set, this means if old >>>>>>> keys >>>>>>> are removed from the keytab, they stay in the set. The set is never >>>>>>> really used by our code, so I think it's harmless. I really >>>>>>> don't know >>>>>>> how to clean up. Remove all keys for this principal? But we do this >>>>>>> because we want to keep compatibility and worry about people >>>>>>> directly >>>>>>> manipulating the set, and I cannot predict what they will do >>>>>>> with the >>>>>>> set. >>>>>>> >>>>>>> Thanks >>>>>>> Max >>>>>>> >>>>>>> >>>>>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>>>> >>>>>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>> >>>>>>>>> Max, >>>>>>>>> >>>>>>>>> I like this new approach of yours better. >>>>>>>>> As for compatibility, you mentioned only one aspect, i.e. apps >>>>>>>>> which >>>>>>>>> put >>>>>>>>> KerberosKeys inside a subject's private cred set. >>>>>>>>> There is also a possibility that apps may read the subject's >>>>>>>>> private >>>>>>>>> credentials set for KerberosKeys that we used to put in and >>>>>>>>> they won't >>>>>>>>> find the keys anymore since it's the KeyTab objects that we >>>>>>>>> put into >>>>>>>>> the >>>>>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>>>>>> >>>>>>>> No, I haven't thought about it. >>>>>>>> >>>>>>>> We can put a snapshot of keys there at the beginning and >>>>>>>> refresh them >>>>>>>> whenever a getKeys() is called. This should be harmless because >>>>>>>> we don't >>>>>>>> really use the keys if keytab objects (not keytab files) exist. >>>>>>>> I can do >>>>>>>> that. >>>>>>>> >>>>>>>> Thanks >>>>>>>> Max >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Valerie >>>>>>>>> >>>>>>>>> >>>>>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>>>> >>>>>>>>>> Hi Valerie >>>>>>>>>> >>>>>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>>>>> >>>>>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's >>>>>>>>>> resolved, >>>>>>>>>> we have a list of keys with different etypes as the private >>>>>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>>>>> resolved, it's resolved into multiple keys. Also, there was a >>>>>>>>>> simple >>>>>>>>>> mapping between KerberosKey and EncryptionKey. The resolving >>>>>>>>>> process >>>>>>>>>> is not always at the same time as the mapping (converting >>>>>>>>>> from one to >>>>>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>>>>> unresolved. >>>>>>>>>> >>>>>>>>>> Another solution is to revert back to my original KeyTab >>>>>>>>>> without an >>>>>>>>>> intended user. This means several changes: >>>>>>>>>> >>>>>>>>>> In my latest version of ServiceCreds, there were multiple >>>>>>>>>> keys and >>>>>>>>>> *one* keytab, now we also need multiple keytabs, because >>>>>>>>>> there might >>>>>>>>>> be multiple keytabs in the subject's private credentials set >>>>>>>>>> and we >>>>>>>>>> cannot tell which is for who. Therefore we collect all of >>>>>>>>>> them, when >>>>>>>>>> the keys are needed at AP-REP time, we call getKeys() on all >>>>>>>>>> of them, >>>>>>>>>> and return the combination. Hopefully there won't be two keys >>>>>>>>>> for the >>>>>>>>>> same principal with same kvno and same etype. I regard that >>>>>>>>>> as an >>>>>>>>>> abuse. >>>>>>>>>> >>>>>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from >>>>>>>>>> the >>>>>>>>>> private credentials set and use the KerberosPrincipal info >>>>>>>>>> inside, and >>>>>>>>>> then get all KerberosKeys for the same principal. We have >>>>>>>>>> never really >>>>>>>>>> looked at any KerberosPrincipal objects in the subject's >>>>>>>>>> principal >>>>>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. >>>>>>>>>> Now this >>>>>>>>>> will have a big change: the first step is always finding a >>>>>>>>>> KerberosPrincipal in the principal sets first. If >>>>>>>>>> serverPrincipal is >>>>>>>>>> specified, we find a matched one, otherwise, we just pick one >>>>>>>>>> and use >>>>>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>>>>> >>>>>>>>>> I think this is the correct way to go. Of course, for >>>>>>>>>> compatibility >>>>>>>>>> reason, we assume there are third party codes that put >>>>>>>>>> KerberosKeys >>>>>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do >>>>>>>>>> it, but we >>>>>>>>>> can accept it. >>>>>>>>>> >>>>>>>>>> Here is a partial webrev: >>>>>>>>>> >>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>>>>> >>>>>>>>>> It only contains changes for Krb5Util.java, and hasn't >>>>>>>>>> included the >>>>>>>>>> compatibility codes I mentioned above. As you can see, the >>>>>>>>>> KeyTab >>>>>>>>>> objects are now retrieved by >>>>>>>>>> >>>>>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>>>>> + subj, null, null, KeyTab.class); >>>>>>>>>> >>>>>>>>>> so no principal name is used, and we retrive "many". >>>>>>>>>> >>>>>>>>>> If you think this is OK, I'll clean up other codes. One >>>>>>>>>> benefit is >>>>>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>>>>> introduce new hashCode/equals/toString methods, but I think >>>>>>>>>> they do >>>>>>>>>> not deserve a CCC. >>>>>>>>>> >>>>>>>>>> Thanks >>>>>>>>>> Max >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>>>> >>>>>>>>>>> Max, >>>>>>>>>>> >>>>>>>>>>> Well, I find it a bit awkward that the KeyTab class has to >>>>>>>>>>> have the >>>>>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>>>>> Have you considered a different approach like: >>>>>>>>>>> Instead of adding the whole KeyTab object into the Subject's >>>>>>>>>>> private >>>>>>>>>>> credential set, we add a "to-be-resolved" KerberosKey >>>>>>>>>>> object. When we >>>>>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>>>>> object to >>>>>>>>>>> re-fresh its value if needed. This approach is conceptually >>>>>>>>>>> closer to >>>>>>>>>>> what we had and the changes aren't as dramatic and seems to >>>>>>>>>>> meet the >>>>>>>>>>> need required by 6894072. >>>>>>>>>>> >>>>>>>>>>> I'll continue to review your webrev, but just want to kick >>>>>>>>>>> this idea >>>>>>>>>>> off >>>>>>>>>>> w/ you and see if it may work. >>>>>>>>>>> Valerie >>>>>>>>>>> >>>>>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Valerie >>>>>>>>>>>> >>>>>>>>>>>> Updated webrev: >>>>>>>>>>>> >>>>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>>>>> >>>>>>>>>>>> Changes since last version: >>>>>>>>>>>> >>>>>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New >>>>>>>>>>>> getInstance() >>>>>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>>>>> >>>>>>>>>>>> It can only be non-null now, but I didn't say anything in >>>>>>>>>>>> the spec. >>>>>>>>>>>> I'm hoping it can be null in the future to support multiple >>>>>>>>>>>> service >>>>>>>>>>>> principal in a single service. >>>>>>>>>>>> >>>>>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it >>>>>>>>>>>> will be put >>>>>>>>>>>> inside private credentials set. >>>>>>>>>>>> >>>>>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>>>>> a) Generics for find() and findMany() >>>>>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>>>>> >>>>>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside >>>>>>>>>>>> both >>>>>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>>>>> getInstance(), there is still a field inside to save the >>>>>>>>>>>> value. >>>>>>>>>>>> >>>>>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now >>>>>>>>>>>> valid. >>>>>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>>>>> >>>>>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 >>>>>>>>>>>> KerberosPrincipal >>>>>>>>>>>> after >>>>>>>>>>>> JAAS commit. >>>>>>>>>>>> >>>>>>>>>>>> This time I'd like to first make sure implementation is >>>>>>>>>>>> correct, and >>>>>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>>>>> >>>>>>>>>>>> Thanks >>>>>>>>>>>> Max >>>>>>>>>>>> >>> >>> >> From valerie.peng at oracle.com Mon Apr 18 22:25:18 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Mon, 18 Apr 2011 15:25:18 -0700 Subject: Code review request for 7035115 In-Reply-To: <4DA7960E.3040901@oracle.com> References: <4DA783FE.1090105@oracle.com> <4DA7960E.3040901@oracle.com> Message-ID: <4DACBA4E.7060102@oracle.com> Thanks for the review! Valerie On 04/14/11 05:49 PM, Weijun Wang wrote: > Changes look fine. > > Are you going to backport the fix to earlier JDKs? Otherwise, you can > simplify > > cons = clazz.getConstructor(new Class[] {String.class}); > Object obj = cons.newInstance(new Object[] {configFile}); > > to > > cons = clazz.getConstructor(String.class); > cons.newInstance(configFile); > > Thanks > Max > > On 04/15/2011 07:32 AM, Valerie (Yu-Ching) Peng wrote: >> Max, >> >> Do you have cycles to review this following trivial test bug? >> 7035115: sun/security/pkcs11/Provider/ConfigShortPath.java compilation >> failed >> >> Webrev at: >> http://cr.openjdk.java.net/~valeriep/7035115/webrev.00/ >> >> This only occurs on windows 64-bit machines where SunPKCS11 provider >> isn't built. >> This wasn't caught in my previous JPRT job since pkcs11 regression tests >> aren't run w/ default JPRT settings. >> >> Thanks, >> Valerie From weijun.wang at oracle.com Mon Apr 18 22:53:19 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Tue, 19 Apr 2011 06:53:19 +0800 Subject: code review request: 6894072: always refresh keytab In-Reply-To: <4DAC89EB.8030908@oracle.com> References: <4CF6195A.6000301@oracle.com> <4D7A9D02.40106@oracle.com> <4D801157.6070009@oracle.com> <4D83F0B9.3050201@oracle.com> <4D86E217.7050709@oracle.com> <4D89B6BE.4020003@oracle.com> <4D8D313D.4080808@oracle.com> <4D945A51.30100@oracle.com> <4D9533BD.7040709@oracle.com> <4D95370C.6090107@oracle.com> <4D959771.50403@oracle.com> <4D962130.3000003@oracle.com> <4D96E9F0.2070909@oracle.com> <4D9FA971.303@oracle.com> <72BF9E77-45C3-4B76-9685-295E89BB4B65@oracle.com> <4DA651D7.9000503@oracle.com> <4DA679B2.9050107@oracle.com> <4DAC89EB.8030908@oracle.com> Message-ID: <4DACC0DF.9050502@oracle.com> Thanks for the careful review. It has been a long one. Max On 04/19/2011 02:58 AM, Valerie (Yu-Ching) Peng wrote: > > Ok, I have no more comments. > Thanks, > Valerie > > On 04/13/11 09:36 PM, Weijun Wang wrote: >> webrev updated at >> >> http://cr.openjdk.java.net/~weijun/6894072/webrev.06/ >> >> changes: >> >> 1. Remove Krb5AcceptCredentials in manipulation cred priv set >> 2. Add codes to ServiceCreds.destroy() (See below) >> 3. javadoc of sun..KeyTab.getInstance(s) (mentioned in your other mail) >> 4. Copyright year of Handshaker and ServerHandsshaker (mentioned in >> your other mail) >> >> Comments inline below: >> >> On 04/14/2011 09:45 AM, Valerie (Yu-Ching) Peng wrote: >>> >>> >>> On 04/09/11 03:00 AM, Weijun Wang wrote: >>>>> src/share/classes/sun/security/jgss/krb5/Krb5Util.java >>>>> => 1) So, since when do we populate the Subject w/ >>>>> Krb5AcceptCredential objects? I thought only Krb5LoginModule would >>>>> "write" the subject's private cred set and I didn't find >>>>> Krb5AcceptCredential objects added there. >>>>> 224 Krb5AcceptCredential k5ac = SubjectComber.find( >>>>> 225 subj, serverPrincipal, null, Krb5AcceptCredential.class); >>>>> >> >>>> So, I'd prefer we just remove this special handling altogether. >> >> OK. Removed. >> >>> >>>> >>>>> => 2) Inside the getKKeys() method, you refresh the set of >>>>> KerberoKey objects in the subject when the subject isn't read only. >>>>> However, in Krb5LoginModule, KerberosKey objects are only stored >>>>> into the Subject's private cred set when "storeKey" is true. Seems >>>>> inconsistent? >>>>> 271 public KerberosKey[] getKKeys() { >>>>> >>>> >>>> I think not. In a normal krb5 login with JAAS, KeyTab and >>>> KerberosKey are only stored when both "storeKey" and >>>> subject.isReadOnly() are true. Since we now only deal with >>>> KeysFromKeyTab type of keys, we can be sure they are read from >>>> KeyTab. On the other hand, the reason we still store keys here is >>>> because we are afraid that the user is directly manipulating the >>>> subject, which means he/she is not using JAAS and therefore no >>>> Krb5LoginModule involved at all. >>>> >>>> >>> Let me rephrase my question: If he/she is only using JAAS, e.g. >>> Krb5LoginModule and has storeKey set to false, will >>> ServiceCreds.getKKeys() put KerberosKey objects into Subject's priv cred >>> set? If yes, is this the expected behavior? >> >> If storeKey=false, there will be no KeyTab object in the priv cred >> set, and there is no chance for these KerberosKey objects to be added. >> >>> >>>>> => 3) I don't quite understand why there is a destroy() method that >>>>> does nothing... At a minimum, I'd expect we need to reset the >>>>> fields, so that they aren't usable or empty, right? Perhaps, we >>>>> also need to destroy the individual KeyTab and KerberosKey objects >>>>> in the lists? >>>>> 316 public void destroy() { >>>>> 317 // Nothing to do now >>>>> 318 } >>>>> >>>> >>>> I'll think about this. >>>> >>> Ok, let me know if you have more thoughts. >> >> I added >> >> kp = null; >> ktabs = null; >> kk = null; >> >> to the method. Since the keys and keytabs are directly taken out of >> subject's priv cred set, I cannot destroy them. Otherwise, the same >> subject cannot doAs another JGSS session. >> >> The destroy() method should be called by >> Krb5AcceptCredential.dispose() and then called by >> Krb5Context.dispose(). Unfortunately, Krb5Context has not made the >> call. This is something we should fix later, but I don't want to touch >> it now. >> >> Thanks >> Max >> >> >>> Thanks, >>> Valerie >>>> >>>>> src/share/classes/sun/security/jgss/krb5/SubjectComber.java >>>>> >>>>> => I wonder why do you add this? The previous impl only search for >>>>> publicly defined Kerberos objects, i.e. KerberosKey, >>>>> KerberosTicket, etc. I thought you said in previous email that we >>>>> don't populate Subject's private credential set w/ >>>>> Krb5AcceptCredential objects? >>>>> >>>>> 100 credClass == Krb5AcceptCredential.class) { >>>>> src/share/classes/sun/security/krb5/Config.java >>>>> src/share/classes/sun/security/krb5/EncryptionKey.java >>>>> src/share/classes/sun/security/krb5/KrbAsRep.java >>>>> => All look fine >>>>> >>>>> src/share/classes/sun/security/krb5/KrbAsReqBuilder.java >>>>> => 1) This class does store its own copy of password, so shouldn't >>>>> you move the "does not" on line 49 to line 50? >>>>> 49 * This class does not: >>>>> >>>>> 50 * 1. Deal with real communications (KdcComm does it, and TGS-REQ) >>>>> 51 * a. Name of KDCs for a realm >>>>> 52 * b. Server availability, timeout, UDP or TCP >>>>> 53 * d. KRB_ERR_RESPONSE_TOO_BIG >>>>> >>>>> 54 * 2. Stores its own copy of password, this means: >>>>> 55 * a. Do not change/wipe it before Builder finish >>>>> 56 * b. Builder will not wipe it for you >>>>> >>>> >>>> I'll remove lines 54-56. Maybe I meant to do that some time ago. >>>> >>>> Thanks >>>> Max >>>> >>>> >>>>> I am still looking at the rest of changes, just want to send what I >>>>> have now, so you don't wait too long. >>>>> >>>>> Thanks, >>>>> Valerie >>>>> >>>>> On 04/02/11 02:18 AM, Weijun Wang wrote: >>>>> >>>>>> Updated again: >>>>>> >>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.05/ >>>>>> >>>>>> Changes: >>>>>> >>>>>> 1. New Krb5Util.KeysFromKeyTab as a special kind of KerebrosKey we >>>>>> will add to and remove from private credentials set. Add and >>>>>> remove are only done when !subject.isReadOnly(). Only remove keys >>>>>> for this principal. >>>>>> >>>>>> 2. Use the class above in KeyTab.getKeys(). >>>>>> >>>>>> 3. Remove a uselss method in KDC.java test. >>>>>> >>>>>> 4. Update new test KeyTabCompat.java, make sure after keytab >>>>>> refresh, the old key in priv cred set is removed. >>>>>> >>>>>> Thanks >>>>>> Max >>>>>> >>>>>> >>>>>> >>>>>> On 04/02/2011 03:02 AM, Valerie (Yu-Ching) Peng wrote: >>>>>> >>>>>>> I think we need to clean up the old ones if we added it there. >>>>>>> Conceptually, this would fit closer w/ the "dynamic key tab" >>>>>>> support. >>>>>>> One straightforward way for us to do this is to subclass KerberosKey >>>>>>> class and then we can remove all KerberosKey objects which are >>>>>>> implemented using this class at refresh time. >>>>>>> Just an idea. >>>>>>> Valerie >>>>>>> >>>>>>> On 04/01/11 02:14 AM, Weijun Wang wrote: >>>>>>> >>>>>>>> Hi Valerie >>>>>>>> >>>>>>>> Updated again: >>>>>>>> >>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.04/ >>>>>>>> >>>>>>>> 1. KeyTab can be used by anyone >>>>>>>> 2. The two compatibility support >>>>>>>> >>>>>>>> As for adding keys (from keytab) into private credentials set, I >>>>>>>> haven't cleaned up old ones. Since it's a set, this means if old >>>>>>>> keys >>>>>>>> are removed from the keytab, they stay in the set. The set is never >>>>>>>> really used by our code, so I think it's harmless. I really >>>>>>>> don't know >>>>>>>> how to clean up. Remove all keys for this principal? But we do this >>>>>>>> because we want to keep compatibility and worry about people >>>>>>>> directly >>>>>>>> manipulating the set, and I cannot predict what they will do >>>>>>>> with the >>>>>>>> set. >>>>>>>> >>>>>>>> Thanks >>>>>>>> Max >>>>>>>> >>>>>>>> >>>>>>>> On 04/01/2011 10:23 AM, Weijun Wang wrote: >>>>>>>> >>>>>>>>> On 04/01/2011 10:09 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>>> >>>>>>>>>> Max, >>>>>>>>>> >>>>>>>>>> I like this new approach of yours better. >>>>>>>>>> As for compatibility, you mentioned only one aspect, i.e. apps >>>>>>>>>> which >>>>>>>>>> put >>>>>>>>>> KerberosKeys inside a subject's private cred set. >>>>>>>>>> There is also a possibility that apps may read the subject's >>>>>>>>>> private >>>>>>>>>> credentials set for KerberosKeys that we used to put in and >>>>>>>>>> they won't >>>>>>>>>> find the keys anymore since it's the KeyTab objects that we >>>>>>>>>> put into >>>>>>>>>> the >>>>>>>>>> private cred set after this dynamic keytab support. Thoughts? >>>>>>>>>> >>>>>>>>> No, I haven't thought about it. >>>>>>>>> >>>>>>>>> We can put a snapshot of keys there at the beginning and >>>>>>>>> refresh them >>>>>>>>> whenever a getKeys() is called. This should be harmless because >>>>>>>>> we don't >>>>>>>>> really use the keys if keytab objects (not keytab files) exist. >>>>>>>>> I can do >>>>>>>>> that. >>>>>>>>> >>>>>>>>> Thanks >>>>>>>>> Max >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Valerie >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 03/31/11 03:41 AM, Weijun Wang wrote: >>>>>>>>>> >>>>>>>>>>> Hi Valerie >>>>>>>>>>> >>>>>>>>>>> Sorry for the late reply. I've considered some alternatives. >>>>>>>>>>> >>>>>>>>>>> A "to-be-resolved" KerberosKey is quite difficult. When it's >>>>>>>>>>> resolved, >>>>>>>>>>> we have a list of keys with different etypes as the private >>>>>>>>>>> credentials. If it's not resolved, we can only create one, whose >>>>>>>>>>> encoding and etype are both unresolved, and when it finally gets >>>>>>>>>>> resolved, it's resolved into multiple keys. Also, there was a >>>>>>>>>>> simple >>>>>>>>>>> mapping between KerberosKey and EncryptionKey. The resolving >>>>>>>>>>> process >>>>>>>>>>> is not always at the same time as the mapping (converting >>>>>>>>>>> from one to >>>>>>>>>>> another) time, so it seems EncryptionKey might also needs to be >>>>>>>>>>> unresolved. >>>>>>>>>>> >>>>>>>>>>> Another solution is to revert back to my original KeyTab >>>>>>>>>>> without an >>>>>>>>>>> intended user. This means several changes: >>>>>>>>>>> >>>>>>>>>>> In my latest version of ServiceCreds, there were multiple >>>>>>>>>>> keys and >>>>>>>>>>> *one* keytab, now we also need multiple keytabs, because >>>>>>>>>>> there might >>>>>>>>>>> be multiple keytabs in the subject's private credentials set >>>>>>>>>>> and we >>>>>>>>>>> cannot tell which is for who. Therefore we collect all of >>>>>>>>>>> them, when >>>>>>>>>>> the keys are needed at AP-REP time, we call getKeys() on all >>>>>>>>>>> of them, >>>>>>>>>>> and return the combination. Hopefully there won't be two keys >>>>>>>>>>> for the >>>>>>>>>>> same principal with same kvno and same etype. I regard that >>>>>>>>>>> as an >>>>>>>>>>> abuse. >>>>>>>>>>> >>>>>>>>>>> Currently when there is no serverPrincipal specified in the >>>>>>>>>>> Krb5AcceptCredential construction, we pick a KerberosKey from >>>>>>>>>>> the >>>>>>>>>>> private credentials set and use the KerberosPrincipal info >>>>>>>>>>> inside, and >>>>>>>>>>> then get all KerberosKeys for the same principal. We have >>>>>>>>>>> never really >>>>>>>>>>> looked at any KerberosPrincipal objects in the subject's >>>>>>>>>>> principal >>>>>>>>>>> set. I had tried to do the same to KeyTabs in my webrev.02. >>>>>>>>>>> Now this >>>>>>>>>>> will have a big change: the first step is always finding a >>>>>>>>>>> KerberosPrincipal in the principal sets first. If >>>>>>>>>>> serverPrincipal is >>>>>>>>>>> specified, we find a matched one, otherwise, we just pick one >>>>>>>>>>> and use >>>>>>>>>>> it. And then, from the private credentials set, we fetch all >>>>>>>>>>> KerberosKeys for this principal and all KeyTabs. >>>>>>>>>>> >>>>>>>>>>> I think this is the correct way to go. Of course, for >>>>>>>>>>> compatibility >>>>>>>>>>> reason, we assume there are third party codes that put >>>>>>>>>>> KerberosKeys >>>>>>>>>>> inside a subject's private credentials set but hasn't put any >>>>>>>>>>> KerberosPrincipal there. Our Krb5LoginModule will never do >>>>>>>>>>> it, but we >>>>>>>>>>> can accept it. >>>>>>>>>>> >>>>>>>>>>> Here is a partial webrev: >>>>>>>>>>> >>>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.03 >>>>>>>>>>> >>>>>>>>>>> It only contains changes for Krb5Util.java, and hasn't >>>>>>>>>>> included the >>>>>>>>>>> compatibility codes I mentioned above. As you can see, the >>>>>>>>>>> KeyTab >>>>>>>>>>> objects are now retrieved by >>>>>>>>>>> >>>>>>>>>>> + sc.ktabs = SubjectComber.findMany( >>>>>>>>>>> + subj, null, null, KeyTab.class); >>>>>>>>>>> >>>>>>>>>>> so no principal name is used, and we retrive "many". >>>>>>>>>>> >>>>>>>>>>> If you think this is OK, I'll clean up other codes. One >>>>>>>>>>> benefit is >>>>>>>>>>> that we don't need to update CCC with this solution. Yes we do >>>>>>>>>>> introduce new hashCode/equals/toString methods, but I think >>>>>>>>>>> they do >>>>>>>>>>> not deserve a CCC. >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> Max >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On 03/26/2011 08:20 AM, Valerie (Yu-Ching) Peng wrote: >>>>>>>>>>> >>>>>>>>>>>> Max, >>>>>>>>>>>> >>>>>>>>>>>> Well, I find it a bit awkward that the KeyTab class has to >>>>>>>>>>>> have the >>>>>>>>>>>> KerberosPrincipal info which "intends" to use it. >>>>>>>>>>>> Have you considered a different approach like: >>>>>>>>>>>> Instead of adding the whole KeyTab object into the Subject's >>>>>>>>>>>> private >>>>>>>>>>>> credential set, we add a "to-be-resolved" KerberosKey >>>>>>>>>>>> object. When we >>>>>>>>>>>> need to use this kind of key, we'd check the associated KeyTab >>>>>>>>>>>> object to >>>>>>>>>>>> re-fresh its value if needed. This approach is conceptually >>>>>>>>>>>> closer to >>>>>>>>>>>> what we had and the changes aren't as dramatic and seems to >>>>>>>>>>>> meet the >>>>>>>>>>>> need required by 6894072. >>>>>>>>>>>> >>>>>>>>>>>> I'll continue to review your webrev, but just want to kick >>>>>>>>>>>> this idea >>>>>>>>>>>> off >>>>>>>>>>>> w/ you and see if it may work. >>>>>>>>>>>> Valerie >>>>>>>>>>>> >>>>>>>>>>>> On 03/23/11 02:00 AM, Weijun Wang wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Valerie >>>>>>>>>>>>> >>>>>>>>>>>>> Updated webrev: >>>>>>>>>>>>> >>>>>>>>>>>>> http://cr.openjdk.java.net/~weijun/6894072/webrev.02 >>>>>>>>>>>>> >>>>>>>>>>>>> Changes since last version: >>>>>>>>>>>>> >>>>>>>>>>>>> 1. A KerberosPrincipal inside javax..KeyTab class. New >>>>>>>>>>>>> getInstance() >>>>>>>>>>>>> arguments, new getPrincipal() method. >>>>>>>>>>>>> >>>>>>>>>>>>> It can only be non-null now, but I didn't say anything in >>>>>>>>>>>>> the spec. >>>>>>>>>>>>> I'm hoping it can be null in the future to support multiple >>>>>>>>>>>>> service >>>>>>>>>>>>> principal in a single service. >>>>>>>>>>>>> >>>>>>>>>>>>> 2. toString(), hashCode(), equals() for KeyTab, since it >>>>>>>>>>>>> will be put >>>>>>>>>>>>> inside private credentials set. >>>>>>>>>>>>> >>>>>>>>>>>>> 3. Enhancement to SubjectComber: >>>>>>>>>>>>> a) Generics for find() and findMany() >>>>>>>>>>>>> b) findAux() now support Krb5AcceptCredential >>>>>>>>>>>>> >>>>>>>>>>>>> 4. Krb5Util.ServiceCreds: since principal is already inside >>>>>>>>>>>>> both >>>>>>>>>>>>> KeyTab and KerberosKey, no more KerberosPrincipal argument in >>>>>>>>>>>>> getInstance(), there is still a field inside to save the >>>>>>>>>>>>> value. >>>>>>>>>>>>> >>>>>>>>>>>>> 5. sun..KeyTab and javax..KeyTab: isMissing==true is now >>>>>>>>>>>>> valid. >>>>>>>>>>>>> Changes to the javadoc of javax..KeyTab.getKeys(). >>>>>>>>>>>>> >>>>>>>>>>>>> 6. New TwoPrinces.java test, a subject with 2 >>>>>>>>>>>>> KerberosPrincipal >>>>>>>>>>>>> after >>>>>>>>>>>>> JAAS commit. >>>>>>>>>>>>> >>>>>>>>>>>>> This time I'd like to first make sure implementation is >>>>>>>>>>>>> correct, and >>>>>>>>>>>>> then I'll update the CCC. Is this OK? >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks >>>>>>>>>>>>> Max >>>>>>>>>>>>> >>>> >>>> >>> > From xueming.shen at oracle.com Tue Apr 19 04:37:41 2011 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Tue, 19 Apr 2011 04:37:41 +0000 Subject: hg: jdk7/tl/jdk: 7027900: (fs) glob syntax under-specified Message-ID: <20110419043750.91DB747BF0@hg.openjdk.java.net> Changeset: e9760efb5110 Author: sherman Date: 2011-04-18 21:44 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e9760efb5110 7027900: (fs) glob syntax under-specified Summary: Clarify how leading dots are treated in nio2 glob Reviewed-by: alanb ! src/share/classes/java/nio/file/FileSystem.java From maurizio.cimadamore at oracle.com Tue Apr 19 12:57:46 2011 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Tue, 19 Apr 2011 12:57:46 +0000 Subject: hg: jdk7/tl/langtools: 7036906: Scope: CompoundScope.getElements() doesn't pass scope filter to subscopes Message-ID: <20110419125752.5CAEB47C12@hg.openjdk.java.net> Changeset: 671bb63f3ed5 Author: mcimadamore Date: 2011-04-19 13:57 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/671bb63f3ed5 7036906: Scope: CompoundScope.getElements() doesn't pass scope filter to subscopes Summary: CompoundScope.getElements() is not filtering elements according to the ScopeFilter argument Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Scope.java ! test/tools/javac/scope/7017664/CompoundScopeTest.java From mike.duigou at oracle.com Tue Apr 19 17:48:13 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Tue, 19 Apr 2011 17:48:13 +0000 Subject: hg: jdk7/tl/jdk: 7030579: Extra words in documentation of ListIterator may cause confusion Message-ID: <20110419174823.6DAA347C20@hg.openjdk.java.net> Changeset: 495dcc360214 Author: mduigou Date: 2011-04-19 10:47 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/495dcc360214 7030579: Extra words in documentation of ListIterator may cause confusion Reviewed-by: dholmes, alanb ! src/share/classes/java/util/ListIterator.java From weijun.wang at oracle.com Wed Apr 20 11:03:30 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Wed, 20 Apr 2011 11:03:30 +0000 Subject: hg: jdk7/tl/jdk: 6894072: always refresh keytab Message-ID: <20110420110354.6127847C66@hg.openjdk.java.net> Changeset: f8956ba13b37 Author: weijun Date: 2011-04-20 18:41 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/f8956ba13b37 6894072: always refresh keytab Reviewed-by: valeriep ! src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java + src/share/classes/javax/security/auth/kerberos/JavaxSecurityAuthKerberosAccessImpl.java ! src/share/classes/javax/security/auth/kerberos/KerberosKey.java + src/share/classes/javax/security/auth/kerberos/KeyTab.java + src/share/classes/sun/misc/JavaxSecurityAuthKerberosAccess.java ! src/share/classes/sun/misc/SharedSecrets.java ! src/share/classes/sun/security/jgss/krb5/Krb5AcceptCredential.java ! src/share/classes/sun/security/jgss/krb5/Krb5Util.java ! src/share/classes/sun/security/jgss/krb5/SubjectComber.java ! src/share/classes/sun/security/krb5/Config.java ! src/share/classes/sun/security/krb5/EncryptionKey.java ! src/share/classes/sun/security/krb5/KrbAsRep.java ! src/share/classes/sun/security/krb5/KrbAsReqBuilder.java ! src/share/classes/sun/security/krb5/internal/ktab/KeyTab.java ! src/share/classes/sun/security/ssl/ServerHandshaker.java ! src/share/classes/sun/security/ssl/krb5/Krb5ProxyImpl.java ! src/windows/classes/sun/security/krb5/internal/tools/Kinit.java ! src/windows/classes/sun/security/krb5/internal/tools/Klist.java ! src/windows/classes/sun/security/krb5/internal/tools/Ktab.java ! test/sun/security/krb5/auto/Context.java + test/sun/security/krb5/auto/DynamicKeytab.java ! test/sun/security/krb5/auto/KDC.java + test/sun/security/krb5/auto/KeyTabCompat.java ! test/sun/security/krb5/auto/LoginModuleOptions.java ! test/sun/security/krb5/auto/SSL.java + test/sun/security/krb5/auto/TwoPrinces.java ! test/sun/security/krb5/ktab/KeyTabIndex.java From michael.x.mcmahon at oracle.com Wed Apr 20 11:06:08 2011 From: michael.x.mcmahon at oracle.com (michael.x.mcmahon at oracle.com) Date: Wed, 20 Apr 2011 11:06:08 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110420110627.BF53047C68@hg.openjdk.java.net> Changeset: ed01737a2e9a Author: michaelm Date: 2011-04-20 12:03 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ed01737a2e9a 7034570: java.lang.Runtime.exec(String[] cmd, String[] env) can not work properly if SystemRoot not inherited Reviewed-by: dholmes, alanb ! src/share/classes/java/lang/ProcessBuilder.java ! src/share/classes/java/lang/Runtime.java ! src/windows/classes/java/lang/ProcessEnvironment.java ! test/java/lang/ProcessBuilder/Basic.java Changeset: 31aa8c35a4df Author: michaelm Date: 2011-04-20 12:05 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/31aa8c35a4df Merge From stuart.marks at oracle.com Wed Apr 20 23:58:08 2011 From: stuart.marks at oracle.com (stuart.marks at oracle.com) Date: Wed, 20 Apr 2011 23:58:08 +0000 Subject: hg: jdk7/tl/jdk: 6896297: (rmi) fix ConcurrentModificationException causing TCK failure Message-ID: <20110420235818.E681B47CC1@hg.openjdk.java.net> Changeset: 00f3997e6aeb Author: smarks Date: 2011-04-20 16:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/00f3997e6aeb 6896297: (rmi) fix ConcurrentModificationException causing TCK failure Reviewed-by: alanb, dholmes, peterjones ! src/share/classes/sun/rmi/log/ReliableLog.java ! src/share/classes/sun/rmi/server/Activation.java From mike.duigou at oracle.com Thu Apr 21 00:20:20 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Thu, 21 Apr 2011 00:20:20 +0000 Subject: hg: jdk7/tl/jdk: 6546713: link the word (optional) in exception specifications to the text which provides explanation and context. Message-ID: <20110421002029.D473647CC5@hg.openjdk.java.net> Changeset: d5a7ed4e72a4 Author: mduigou Date: 2011-04-20 17:20 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d5a7ed4e72a4 6546713: link the word (optional) in exception specifications to the text which provides explanation and context. Reviewed-by: dholmes, dl ! src/share/classes/java/util/AbstractSet.java ! src/share/classes/java/util/ArrayList.java ! src/share/classes/java/util/Collection.java ! src/share/classes/java/util/Collections.java ! src/share/classes/java/util/Deque.java ! src/share/classes/java/util/List.java ! src/share/classes/java/util/Map.java ! src/share/classes/java/util/Set.java ! src/share/classes/java/util/Vector.java From chris.hegarty at oracle.com Thu Apr 21 12:54:50 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Thu, 21 Apr 2011 12:54:50 +0000 Subject: hg: jdk7/tl/jdk: 7038501: Clarify meaning of "(optional)" in javadoc Message-ID: <20110421125518.A7C5A47D2E@hg.openjdk.java.net> Changeset: 7fd31e477313 Author: dl Date: 2011-04-21 13:53 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7fd31e477313 7038501: Clarify meaning of "(optional)" in javadoc Reviewed-by: chegar ! src/share/classes/java/util/concurrent/BlockingDeque.java ! src/share/classes/java/util/concurrent/BlockingQueue.java ! src/share/classes/java/util/concurrent/ConcurrentMap.java ! src/share/classes/java/util/concurrent/CopyOnWriteArrayList.java From vincent.x.ryan at oracle.com Thu Apr 21 13:26:15 2011 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Thu, 21 Apr 2011 13:26:15 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110421132635.CB23447D34@hg.openjdk.java.net> Changeset: 7cd0403492b6 Author: vinnie Date: 2011-04-21 14:23 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7cd0403492b6 6888925: SunMSCAPI's Cipher can't use RSA public keys obtained from other sources. Reviewed-by: mullan ! src/windows/classes/sun/security/mscapi/RSACipher.java ! src/windows/classes/sun/security/mscapi/RSAPublicKey.java ! src/windows/classes/sun/security/mscapi/RSASignature.java + test/sun/security/mscapi/PublicKeyInterop.java + test/sun/security/mscapi/PublicKeyInterop.sh Changeset: 401ef8c488e0 Author: vinnie Date: 2011-04-21 14:25 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/401ef8c488e0 Merge From bhavesh.patel at sun.com Mon Apr 18 22:41:38 2011 From: bhavesh.patel at sun.com (bhavesh.patel at sun.com) Date: Mon, 18 Apr 2011 22:41:38 +0000 Subject: hg: jdk7/tl/langtools: 6758050: javadoc handles nested generic types incorrectly Message-ID: <20110418224140.3794147BE0@hg.openjdk.java.net> Changeset: bbd053476ec3 Author: bpatel Date: 2011-04-18 15:39 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/bbd053476ec3 6758050: javadoc handles nested generic types incorrectly Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java + test/com/sun/javadoc/testNestedGenerics/TestNestedGenerics.java + test/com/sun/javadoc/testNestedGenerics/pkg/NestedGenerics.java From chris.hegarty at oracle.com Thu Apr 21 16:01:18 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Thu, 21 Apr 2011 16:01:18 +0000 Subject: hg: jdk7/tl/jdk: 7038542: Small performace regression in ConcurrentHashMap on c1 since CR 703655 Message-ID: <20110421160129.A244C47D4A@hg.openjdk.java.net> Changeset: e9ec52c63a9f Author: dl Date: 2011-04-21 17:00 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e9ec52c63a9f 7038542: Small performace regression in ConcurrentHashMap on c1 since CR 703655 Reviewed-by: chegar ! src/share/classes/java/util/concurrent/ConcurrentHashMap.java From vincent.x.ryan at oracle.com Thu Apr 21 18:09:05 2011 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Thu, 21 Apr 2011 18:09:05 +0000 Subject: hg: jdk7/tl/jdk: 6732372: Some MSCAPI native methods not returning correct exceptions. Message-ID: <20110421180915.D495147D59@hg.openjdk.java.net> Changeset: 69fead598c1b Author: vinnie Date: 2011-04-21 19:05 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/69fead598c1b 6732372: Some MSCAPI native methods not returning correct exceptions. Reviewed-by: mullan ! src/share/classes/sun/security/ec/ECKeyPairGenerator.java ! src/windows/classes/sun/security/mscapi/KeyStore.java ! src/windows/classes/sun/security/mscapi/RSACipher.java ! src/windows/classes/sun/security/mscapi/RSAKeyPairGenerator.java ! src/windows/classes/sun/security/mscapi/RSAPublicKey.java ! src/windows/classes/sun/security/mscapi/RSASignature.java ! src/windows/native/sun/security/mscapi/security.cpp From lana.steuck at oracle.com Thu Apr 21 20:35:36 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 21 Apr 2011 20:35:36 +0000 Subject: hg: jdk7/tl/hotspot: 46 new changesets Message-ID: <20110421203701.787E147D6D@hg.openjdk.java.net> Changeset: c2323e2ea62b Author: never Date: 2011-03-31 21:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c2323e2ea62b 6385687: UseFastEmptyMethods/UseFastAccessorMethods considered harmful Reviewed-by: kvn, jrose, phh ! src/share/vm/prims/jvmtiManageCapabilities.cpp ! src/share/vm/runtime/globals.hpp Changeset: f8b038506985 Author: never Date: 2011-04-01 21:45 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/f8b038506985 6909440: C2 fails with assertion (_always_cold->is_cold(),"must always be cold") Reviewed-by: kvn ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp Changeset: 07acc51c1d2a Author: kvn Date: 2011-04-02 09:49 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/07acc51c1d2a 7032314: Allow to generate CallLeafNoFPNode in IdealKit Summary: Added CallLeafNoFPNode generation to IdealKit. Added i_o synchronization. Reviewed-by: never ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/library_call.cpp Changeset: 08eb13460b3a Author: kvn Date: 2011-04-02 10:54 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/08eb13460b3a 7004535: Clone loop predicate during loop unswitch Summary: Clone loop predicate for clonned loops Reviewed-by: never ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/ifnode.cpp + src/share/vm/opto/loopPredicate.cpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopUnswitch.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/phaseX.hpp ! src/share/vm/opto/split_if.cpp ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/vectornode.hpp Changeset: 13bc79b5c9c8 Author: roland Date: 2011-04-03 12:00 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/13bc79b5c9c8 7033154: Improve C1 arraycopy performance Summary: better static analysis. Take advantage of array copy stubs. Reviewed-by: never ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/share/vm/c1/c1_GraphBuilder.cpp ! src/share/vm/c1/c1_Instruction.cpp ! src/share/vm/c1/c1_Instruction.hpp ! src/share/vm/c1/c1_LIR.hpp ! src/share/vm/c1/c1_LIRGenerator.cpp ! src/share/vm/c1/c1_Optimizer.cpp ! src/share/vm/c1/c1_Runtime1.cpp ! src/share/vm/c1/c1_Runtime1.hpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/stubRoutines.hpp Changeset: e863062e521d Author: twisti Date: 2011-04-04 03:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/e863062e521d 7032458: Zero and Shark fixes Reviewed-by: twisti Contributed-by: Gary Benson ! src/cpu/zero/vm/globals_zero.hpp ! src/cpu/zero/vm/relocInfo_zero.cpp ! src/cpu/zero/vm/sharedRuntime_zero.cpp ! src/share/vm/ci/ciTypeFlow.hpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/shark/sharkCompiler.cpp ! src/share/vm/shark/sharkCompiler.hpp ! src/share/vm/utilities/globalDefinitions.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp Changeset: 8b2317d732ec Author: never Date: 2011-04-04 12:57 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8b2317d732ec 7026957: assert(type2aelembytes(store->as_Mem()->memory_type(), true) == 1 << shift->in(2)->get_int()) failed Reviewed-by: kvn, jrose ! src/share/vm/opto/loopTransform.cpp Changeset: bb22629531fa Author: iveresov Date: 2011-04-04 16:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/bb22629531fa 7033732: C1: When calling c2 arraycopy stubs offsets and length must have clear upper 32bits Summary: With 7033154 we started calling c2 arraycopy stubs from c1. On sparcv9 we must clear the upper 32bits for offset (src_pos, dst_pos) and length parameters when calling them. Reviewed-by: never, kvn ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp Changeset: a54519951ff6 Author: iveresov Date: 2011-04-04 18:48 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/a54519951ff6 Merge Changeset: 87ce328c6a21 Author: never Date: 2011-04-04 19:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/87ce328c6a21 6528013: C1 CTW failure with -XX:+VerifyOops assert(allocates2(pc),"") Reviewed-by: kvn, iveresov ! src/share/vm/c1/c1_LIRAssembler.cpp Changeset: fb37e3eabfd0 Author: never Date: 2011-04-04 22:17 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/fb37e3eabfd0 Merge Changeset: d7a3fed1c1c9 Author: kvn Date: 2011-04-04 19:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/d7a3fed1c1c9 7004547: regular loop unroll should not unroll more than max unrolling Summary: Take into account that after unroll conjoined heads and tails will fold. Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp Changeset: 03f2be00fa21 Author: kvn Date: 2011-04-05 00:27 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/03f2be00fa21 Merge Changeset: 479b4b4b6950 Author: never Date: 2011-04-05 00:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/479b4b4b6950 6777083: assert(target != __null,"must not be null") Reviewed-by: iveresov, kvn ! src/cpu/x86/vm/assembler_x86.hpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/relocInfo.hpp Changeset: 8e77e1f26188 Author: never Date: 2011-04-05 02:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/8e77e1f26188 Merge Changeset: 527977d4f740 Author: never Date: 2011-04-05 19:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/527977d4f740 7033779: CodeCache::largest_free_block may need to hold the CodeCache lock Reviewed-by: kvn ! src/share/vm/code/codeCache.cpp ! src/share/vm/code/codeCache.hpp Changeset: 98c560260039 Author: never Date: 2011-04-06 16:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/98c560260039 7034513: enable fast accessors and empty methods for ZERO and -Xint Reviewed-by: kvn, iveresov ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 55973726c600 Author: kvn Date: 2011-04-06 17:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/55973726c600 6992789: assert(phi->_idx >= nodes_size()) failed: only new Phi per instance memory slice Summary: Swap checks: check for regular memory slice first and keep input phi. Reviewed-by: never ! src/share/vm/opto/escape.cpp Changeset: ed69575596ac Author: jrose Date: 2011-04-07 17:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/ed69575596ac 6981791: remove experimental code for JSR 292 Reviewed-by: twisti ! agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java ! agent/src/share/classes/sun/jvm/hotspot/runtime/ClassConstants.java ! agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ClassWriter.java ! agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java ! agent/src/share/classes/sun/jvm/hotspot/utilities/ConstantTag.java ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/systemDictionary.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/verifier.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/interpreter/bytecodeTracer.cpp ! src/share/vm/interpreter/interpreterRuntime.cpp ! src/share/vm/interpreter/linkResolver.cpp ! src/share/vm/interpreter/rewriter.cpp ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/oops/constantPoolOop.cpp ! src/share/vm/oops/constantPoolOop.hpp ! src/share/vm/oops/cpCacheOop.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/oops/instanceKlassKlass.cpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/prims/jvm.h ! src/share/vm/prims/methodHandleWalk.cpp ! src/share/vm/prims/methodHandles.cpp ! src/share/vm/prims/nativeLookup.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/utilities/constantTag.cpp ! src/share/vm/utilities/constantTag.hpp Changeset: 758ba0bf7bcc Author: jrose Date: 2011-04-07 17:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/758ba0bf7bcc 7012087: JSR 292 Misleading exception message for a non-bound MH for a virtual method Summary: Improve error message formatting to give more information to user. Also, catch a corner case related to 6930553 and 6844449. Reviewed-by: kvn ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: 4124a5a27707 Author: jrose Date: 2011-04-07 17:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4124a5a27707 7009600: JSR 292 Server compiler crashes in Compile::find_intrinsic(ciMethod*, bool) Summary: catch errors during the compile-time processing of method handles; back out cleanly Reviewed-by: twisti ! src/share/vm/ci/ciMethodHandle.cpp ! src/share/vm/opto/doCall.cpp Changeset: 3f49d30f8184 Author: never Date: 2011-04-07 21:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3f49d30f8184 7034957: acquiring lock CodeCache_lock/1 out of order with lock tty_lock/0 -- possible deadlock Reviewed-by: iveresov ! src/share/vm/code/codeCache.cpp Changeset: d86923d96dca Author: iveresov Date: 2011-04-08 17:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/d86923d96dca 7034967: C1: assert(false) failed: error (assembler_sparc.cpp:2043) Summary: Fix -XX:+VerifyOops Reviewed-by: kvn, never ! src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/assembler_x86.hpp ! src/cpu/x86/vm/c1_CodeStubs_x86.cpp ! src/share/vm/c1/c1_LIRGenerator.cpp Changeset: 3af54845df98 Author: kvn Date: 2011-04-08 14:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3af54845df98 7004555: Add new policy for one iteration loops Summary: Add new policy for one iteration loops (mostly formal pre- loops). Reviewed-by: never ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp Changeset: 46d145ee8e68 Author: kvn Date: 2011-04-08 20:52 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/46d145ee8e68 Merge Changeset: 3fa3c7e4d4f3 Author: never Date: 2011-04-08 23:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3fa3c7e4d4f3 7035161: assert(!o->is_null_object()) failed: null object not yet handled here. Reviewed-by: kvn ! src/share/vm/ci/ciInstance.cpp Changeset: 6c97c830fb6f Author: jrose Date: 2011-04-09 21:16 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/6c97c830fb6f Merge ! agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPool.java ! agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ClassWriter.java ! agent/src/share/classes/sun/jvm/hotspot/ui/classbrowser/HTMLGenerator.java ! src/cpu/sparc/vm/c1_MacroAssembler_sparc.cpp ! src/share/vm/c1/c1_LIRAssembler.cpp ! src/share/vm/code/codeCache.hpp ! src/share/vm/code/relocInfo.cpp ! src/share/vm/code/relocInfo.hpp ! src/share/vm/oops/constantPoolKlass.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/idealKit.cpp ! src/share/vm/opto/idealKit.hpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopUnswitch.cpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/utilities/globalDefinitions_gcc.hpp Changeset: 677234770800 Author: dsamersoff Date: 2011-03-30 19:38 +0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/677234770800 7017193: Small memory leak in get_stack_bounds os::create_stack_guard_pages Summary: getline() returns -1 but still allocate memory for str Reviewed-by: dcubed, coleenp ! src/os/linux/vm/os_linux.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp Changeset: b025bffd6c2c Author: dholmes Date: 2011-03-31 06:54 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/b025bffd6c2c 7032775: Include Shark code in the build again Reviewed-by: ohair Contributed-by: gbenson at redhat.com, ahughes at redhat.com ! make/linux/makefiles/vm.make Changeset: 37be97a58393 Author: andrew Date: 2011-04-01 15:15 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/37be97a58393 7010849: 5/5 Extraneous javac source/target options when building sa-jdi Summary: Make code changes necessary to get rid of the '-source 1.4 -target 1.4' options. Reviewed-by: dholmes, dcubed ! agent/src/share/classes/sun/jvm/hotspot/HelloWorld.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/ByteValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/CharValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/ConnectorImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/DoubleValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/FieldImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/FloatValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/IntegerValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/LocalVariableImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/LocationImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/LongValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/MethodImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/ReferenceTypeImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/ShortValueImpl.java ! agent/src/share/classes/sun/jvm/hotspot/jdi/VirtualMachineImpl.java ! make/linux/makefiles/sa.make ! make/solaris/makefiles/sa.make ! make/windows/makefiles/sa.make Changeset: 7144a1d6e0a9 Author: kamg Date: 2011-03-31 08:08 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/7144a1d6e0a9 7030388: JCK test failed to reject invalid class check01304m10n. Summary: Restrict fix for 7020118 to only when checking exception handlers Reviewed-by: dcubed, dholmes ! src/share/vm/classfile/stackMapFrame.cpp ! src/share/vm/classfile/stackMapFrame.hpp ! src/share/vm/classfile/stackMapTable.cpp Changeset: 11427f216063 Author: dholmes Date: 2011-04-04 18:15 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/11427f216063 7009276: Add -XX:+IgnoreUnrecognizedVMOptions to several tests Reviewed-by: kvn ! test/compiler/6795161/Test.java Changeset: 1dac0f3af89f Author: ohair Date: 2011-04-07 20:26 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1dac0f3af89f 7019210: Fix misc references to /bugreport websites Reviewed-by: skannan ! src/share/vm/runtime/arguments.cpp Changeset: c49c3947b98a Author: brutisso Date: 2011-04-11 11:12 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/c49c3947b98a 7034625: Product builds in Visual Studio projects should produce full symbol information Summary: Add the /debug flag to the linker command in Visual Studio Reviewed-by: mgronlun, poonam, hosterda ! src/share/tools/ProjectCreator/WinGammaPlatformVC10.java Changeset: 6a615eae2f34 Author: dholmes Date: 2011-04-12 02:53 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/6a615eae2f34 7034585: Adjust fillInStackTrace filtering to assist 6998871 Summary: Allow for one or more fillInStackTrace frames to be skipped Reviewed-by: mchung, kvn ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/vmSymbols.hpp Changeset: 3449f5e02cc4 Author: coleenp Date: 2011-04-12 14:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3449f5e02cc4 Merge ! make/linux/makefiles/vm.make ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/stackMapFrame.cpp ! src/share/vm/classfile/stackMapFrame.hpp ! src/share/vm/classfile/stackMapTable.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/runtime/arguments.cpp Changeset: 328926869b15 Author: jrose Date: 2011-04-09 22:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/328926869b15 6987991: JSR 292 phpreboot test/testtracefun2.phpr segfaults Summary: Make MH verification tests more correct, robust, and informative. Fix lingering symbol refcount problems. Reviewed-by: twisti ! src/share/vm/oops/methodOop.cpp ! src/share/vm/prims/methodHandleWalk.hpp ! src/share/vm/prims/methodHandles.cpp Changeset: 15c9a0e16269 Author: kvn Date: 2011-04-11 15:30 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/15c9a0e16269 7035713: 3DNow Prefetch Instruction Support Summary: The upcoming processors from AMD are the first that support 3dnow prefetch without supporting the 3dnow instruction set. Reviewed-by: kvn Contributed-by: tom.deneau at amd.com ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/vm_version_x86.cpp ! src/cpu/x86/vm/vm_version_x86.hpp ! src/cpu/x86/vm/x86_32.ad Changeset: 4b95bbb36464 Author: twisti Date: 2011-04-12 02:40 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/4b95bbb36464 7035870: JSR 292: Zero support Summary: This adds support for JSR 292 to Zero. Reviewed-by: twisti Contributed-by: Gary Benson ! src/cpu/zero/vm/bytecodeInterpreter_zero.hpp ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/cpu/zero/vm/cppInterpreter_zero.hpp ! src/cpu/zero/vm/interpreter_zero.cpp ! src/cpu/zero/vm/methodHandles_zero.cpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/interpreter/bytecodeInterpreter.hpp Changeset: 3a808be061ff Author: iveresov Date: 2011-04-13 14:33 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/3a808be061ff 6988308: assert((cnt > 0.0f) && (prob > 0.0f)) failed: Bad frequency assignment in if Summary: Make sure cnt doesn't become negative and integer overflow doesn't happen. Reviewed-by: kvn, twisti ! src/share/vm/opto/parse2.cpp Changeset: dbccacb79c63 Author: iveresov Date: 2011-04-14 00:02 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/dbccacb79c63 7036236: VM crashes assert((!inside_attrs()) || is_error_reported()) failed ... Summary: Eliminate the race condition. Reviewed-by: kvn ! src/share/vm/code/codeCache.cpp ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/runtime/sweeper.cpp Changeset: 1fcd6e9c3965 Author: twisti Date: 2011-04-14 01:53 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/1fcd6e9c3965 7036220: Shark fails to find LLVM 2.9 System headers during build Reviewed-by: gbenson, twisti Contributed-by: Xerxes Ranby ! src/share/vm/shark/llvmHeaders.hpp Changeset: e9b9554f7fc3 Author: twisti Date: 2011-04-14 06:46 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/e9b9554f7fc3 Merge Changeset: 97e8046e2562 Author: jrose Date: 2011-04-15 08:29 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/97e8046e2562 Merge Changeset: da7f1093a6b7 Author: trims Date: 2011-04-15 18:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/da7f1093a6b7 Merge Changeset: 611e19a16519 Author: trims Date: 2011-04-15 18:23 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/hotspot/rev/611e19a16519 7037174: Bump the HS21 build number to 09 Summary: Update the HS21 build number to 09 Reviewed-by: jcoomes ! make/hotspot_version From lana.steuck at oracle.com Thu Apr 21 20:35:39 2011 From: lana.steuck at oracle.com (lana.steuck at oracle.com) Date: Thu, 21 Apr 2011 20:35:39 +0000 Subject: hg: jdk7/tl/jdk: 9 new changesets Message-ID: <20110421203713.78E6A47D70@hg.openjdk.java.net> Changeset: fb1d421c1e97 Author: jrose Date: 2011-04-09 21:38 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/fb1d421c1e97 7019529: JSR292: java/dyn/ClassValueTest.java depends on sub-test execution order Summary: Test should not use static variables, because they may contain stale values. Reviewed-by: twisti ! test/java/lang/invoke/ClassValueTest.java Changeset: 861e16acfea7 Author: trims Date: 2011-04-19 18:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/861e16acfea7 Merge Changeset: c7452722c57d Author: yhuang Date: 2011-04-18 23:00 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c7452722c57d 7036905: [de] dem - the german mark display name is incorrect Reviewed-by: naoto ! src/share/classes/sun/util/resources/CurrencyNames_de.properties ! src/share/classes/sun/util/resources/CurrencyNames_it.properties ! test/java/util/Currency/CurrencyTest.java ! test/sun/text/resources/LocaleData ! test/sun/text/resources/LocaleDataTest.java Changeset: 114089fb817c Author: mfang Date: 2011-04-19 10:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/114089fb817c Merge ! test/sun/text/resources/LocaleDataTest.java Changeset: 7e7c898b6352 Author: mfang Date: 2011-04-19 11:24 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7e7c898b6352 Merge Changeset: 5f6f3175decc Author: asaha Date: 2011-04-20 14:22 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5f6f3175decc 7018125: Reverting the JFB version string for JDK releases Reviewed-by: katleman ! make/common/shared/Defs.gmk Changeset: d80954a89b49 Author: cl Date: 2011-04-20 16:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d80954a89b49 Merge Changeset: ca4f216c0bae Author: lana Date: 2011-04-21 11:11 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/ca4f216c0bae Merge Changeset: 3669d17e7799 Author: lana Date: 2011-04-21 13:32 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/3669d17e7799 Merge From sean.mullan at oracle.com Thu Apr 21 21:45:15 2011 From: sean.mullan at oracle.com (sean.mullan at oracle.com) Date: Thu, 21 Apr 2011 21:45:15 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110421214535.53B6C47D7F@hg.openjdk.java.net> Changeset: 2c46bf0a462c Author: mullan Date: 2011-04-21 17:39 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/2c46bf0a462c 7038175: Expired PKITS certificates causing CertPathBuilder and CertPathValidator regression test failures Reviewed-by: xuelei ! src/share/classes/sun/security/provider/certpath/CrlRevocationChecker.java ! src/share/classes/sun/security/provider/certpath/DistributionPointFetcher.java Changeset: 34b2c8e0ac85 Author: mullan Date: 2011-04-21 17:44 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/34b2c8e0ac85 Merge From joe.darcy at oracle.com Thu Apr 21 22:56:19 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Thu, 21 Apr 2011 22:56:19 +0000 Subject: hg: jdk7/tl/jdk: 6998871: Support making the Throwable.stackTrace field immutable Message-ID: <20110421225629.3651047DB8@hg.openjdk.java.net> Changeset: a5bb55c7cfde Author: darcy Date: 2011-04-21 15:55 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a5bb55c7cfde 6998871: Support making the Throwable.stackTrace field immutable Reviewed-by: dholmes, mchung, forax ! src/share/classes/java/lang/ArithmeticException.java ! src/share/classes/java/lang/Error.java ! src/share/classes/java/lang/Exception.java ! src/share/classes/java/lang/NullPointerException.java ! src/share/classes/java/lang/OutOfMemoryError.java ! src/share/classes/java/lang/RuntimeException.java ! src/share/classes/java/lang/Throwable.java ! src/share/native/java/lang/Throwable.c ! test/java/lang/Throwable/ChainedExceptions.java ! test/java/lang/Throwable/StackTraceSerialization.java ! test/java/lang/Throwable/SuppressedExceptions.java From sean.coffey at oracle.com Fri Apr 22 09:20:08 2011 From: sean.coffey at oracle.com (=?ISO-8859-1?Q?Se=E1n_Coffey?=) Date: Fri, 22 Apr 2011 10:20:08 +0100 Subject: codereview request for 7025227 & 6932403 Message-ID: <4DB14848.7050608@oracle.com> Andrew, this is a code review request for the recent SSLSocketImpl issues that we've been working on. 7025227 SSLSocketImpl does not close the TCP layer socket if a close notify cannot be sent to the peer 6932403 SSLSocketImpl state issue http://cr.openjdk.java.net/~coffeys/7025227/webrev.00/ regards, Sean. From xuelei.fan at oracle.com Fri Apr 22 09:25:47 2011 From: xuelei.fan at oracle.com (Xuelei Fan) Date: Fri, 22 Apr 2011 17:25:47 +0800 Subject: codereview request for 7025227 & 6932403 In-Reply-To: <4DB14848.7050608@oracle.com> References: <4DB14848.7050608@oracle.com> Message-ID: <4DB1499B.2000406@oracle.com> Looks fine to me. Thanks, Xuelei (Andrew) On 4/22/2011 5:20 PM, Se?n Coffey wrote: > Andrew, > > this is a code review request for the recent SSLSocketImpl > issues that we've been working on. > > 7025227 SSLSocketImpl does not close the TCP layer socket if a close > notify cannot be sent to the peer > 6932403 SSLSocketImpl state issue > > http://cr.openjdk.java.net/~coffeys/7025227/webrev.00/ > > regards, > Sean. From sean.coffey at oracle.com Fri Apr 22 10:00:05 2011 From: sean.coffey at oracle.com (sean.coffey at oracle.com) Date: Fri, 22 Apr 2011 10:00:05 +0000 Subject: hg: jdk7/tl/jdk: 7025227: SSLSocketImpl does not close the TCP layer socket if a close notify cannot be sent to the peer; ... Message-ID: <20110422100100.71B3B47E19@hg.openjdk.java.net> Changeset: 48f659a09ed4 Author: coffeys Date: 2011-04-22 11:03 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/48f659a09ed4 7025227: SSLSocketImpl does not close the TCP layer socket if a close notify cannot be sent to the peer 6932403: SSLSocketImpl state issue Reviewed-by: xuelei ! src/share/classes/sun/security/ssl/SSLSocketImpl.java From chris.hegarty at oracle.com Fri Apr 22 15:34:17 2011 From: chris.hegarty at oracle.com (chris.hegarty at oracle.com) Date: Fri, 22 Apr 2011 15:34:17 +0000 Subject: hg: jdk7/tl/jdk: 7038885: Improved bulk operation disclaimers for concurrent collections Message-ID: <20110422153428.C61F147E48@hg.openjdk.java.net> Changeset: 7c1cdb9c81a6 Author: dl Date: 2011-04-22 16:33 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7c1cdb9c81a6 7038885: Improved bulk operation disclaimers for concurrent collections Reviewed-by: chegar ! src/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java ! src/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java ! src/share/classes/java/util/concurrent/ConcurrentSkipListMap.java ! src/share/classes/java/util/concurrent/ConcurrentSkipListSet.java ! src/share/classes/java/util/concurrent/LinkedTransferQueue.java From keith.mcguigan at oracle.com Fri Apr 22 15:48:06 2011 From: keith.mcguigan at oracle.com (keith.mcguigan at oracle.com) Date: Fri, 22 Apr 2011 15:48:06 +0000 Subject: hg: jdk7/tl/jdk: 3 new changesets Message-ID: <20110422154835.82C2C47E4E@hg.openjdk.java.net> Changeset: 7cd61feb3ec6 Author: kamg Date: 2011-04-15 10:17 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7cd61feb3ec6 6519228: JDWP Spec: need references at capability canRequestMonitorEvents for JDWP 1.6 Monitor* events Summary: Add descriptions in event type table Reviewed-by: ohair, jjh, acorn, dcubed ! make/jpda/jdwp/jdwp.spec Changeset: e56922f50d1c Author: kamg Date: 2011-04-22 04:57 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/e56922f50d1c Merge Changeset: 9cc0045191ed Author: kamg Date: 2011-04-22 08:46 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/9cc0045191ed Merge From vincent.x.ryan at oracle.com Fri Apr 22 16:04:56 2011 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Fri, 22 Apr 2011 16:04:56 +0000 Subject: hg: jdk7/tl/jdk: 6931562: Support SunMSCAPI Security Provider in Windows 64-bit releases of JVM Message-ID: <20110422160506.2084D47E51@hg.openjdk.java.net> Changeset: d64f9348c7ca Author: vinnie Date: 2011-04-22 17:03 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/d64f9348c7ca 6931562: Support SunMSCAPI Security Provider in Windows 64-bit releases of JVM Reviewed-by: mullan ! make/java/security/Makefile ! make/sun/security/Makefile ! test/sun/security/mscapi/AccessKeyStore.sh ! test/sun/security/mscapi/IsSunMSCAPIAvailable.sh ! test/sun/security/mscapi/KeyStoreCompatibilityMode.sh ! test/sun/security/mscapi/KeytoolChangeAlias.sh ! test/sun/security/mscapi/RSAEncryptDecrypt.sh From weijun.wang at oracle.com Mon Apr 25 08:58:18 2011 From: weijun.wang at oracle.com (Weijun Wang) Date: Mon, 25 Apr 2011 16:58:18 +0800 Subject: code review request: 6950929: Failures on Solaris sparc 64bit sun/security/krb5/auto/BadKdc4.java (and linux?) Message-ID: <4DB537AA.1010105@oracle.com> Hi Valerie Code change for the BadKdc.java test: http://cr.openjdk.java.net/~weijun/6950929/webrev.00/ As described in the lines 44-69 of the new file, the test might fail due to 2 reasons: 1. KDC port opened by some other process (1%) 2. KDC cannot receive the first UDP packet (99%) The fix includes: 1. Catch possible exceptions from cause #1 and ignore them 2. Send a packet to the KDC to warm it up. I really don't know why this is useful, but after this change, I've seen no more such failure. 3. More debug output if fail again Thanks Max From jonathan.gibbons at oracle.com Mon Apr 25 22:51:39 2011 From: jonathan.gibbons at oracle.com (jonathan.gibbons at oracle.com) Date: Mon, 25 Apr 2011 22:51:39 +0000 Subject: hg: jdk7/tl/langtools: 7039019: test cannot run standalone Message-ID: <20110425225142.4C1C147FCB@hg.openjdk.java.net> Changeset: fb84cfca28a1 Author: jjg Date: 2011-04-25 15:50 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/fb84cfca28a1 7039019: test cannot run standalone Reviewed-by: dlsmith ! test/tools/javac/processing/model/TestSymtabItems.java From jonathan.gibbons at oracle.com Mon Apr 25 22:56:27 2011 From: jonathan.gibbons at oracle.com (jonathan.gibbons at oracle.com) Date: Mon, 25 Apr 2011 22:56:27 +0000 Subject: hg: jdk7/tl/langtools: 7038363: cast from object to primitive should be for source >= 1.7 Message-ID: <20110425225629.C1B4D47FCC@hg.openjdk.java.net> Changeset: 4c5f13798b8d Author: jjg Date: 2011-04-25 15:56 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/4c5f13798b8d 7038363: cast from object to primitive should be for source >= 1.7 Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/types/CastObjectToPrimitiveTest.java + test/tools/javac/types/CastObjectToPrimitiveTest.out From nils.loodin at oracle.com Tue Apr 26 10:48:15 2011 From: nils.loodin at oracle.com (nils.loodin at oracle.com) Date: Tue, 26 Apr 2011 10:48:15 +0000 Subject: hg: jdk7/tl/jdk: 7029383: Refresh of non-client demos Message-ID: <20110426104825.6B5EF47FE8@hg.openjdk.java.net> Changeset: 8b36b1c4bb7f Author: nloodin Date: 2011-04-26 12:49 +0200 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/8b36b1c4bb7f 7029383: Refresh of non-client demos Reviewed-by: mchung, ohair ! src/share/classes/com/sun/tools/example/debug/bdi/AccessWatchpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/AmbiguousMethodException.java ! src/share/classes/com/sun/tools/example/debug/bdi/BreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/ChildSession.java ! src/share/classes/com/sun/tools/example/debug/bdi/EvaluationException.java ! src/share/classes/com/sun/tools/example/debug/bdi/EventRequestSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/ExceptionSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/ExecutionManager.java ! src/share/classes/com/sun/tools/example/debug/bdi/FrameIndexOutOfBoundsException.java ! src/share/classes/com/sun/tools/example/debug/bdi/JDIEventSource.java ! src/share/classes/com/sun/tools/example/debug/bdi/LineBreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/LineNotFoundException.java ! src/share/classes/com/sun/tools/example/debug/bdi/MalformedMemberNameException.java ! src/share/classes/com/sun/tools/example/debug/bdi/MethodBreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/MethodNotFoundException.java ! src/share/classes/com/sun/tools/example/debug/bdi/ModificationWatchpointSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/NoSessionException.java ! src/share/classes/com/sun/tools/example/debug/bdi/NoThreadException.java ! src/share/classes/com/sun/tools/example/debug/bdi/PatternReferenceTypeSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/ReferenceTypeSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/Session.java ! src/share/classes/com/sun/tools/example/debug/bdi/SourceNameReferenceTypeSpec.java ! src/share/classes/com/sun/tools/example/debug/bdi/SpecErrorEvent.java ! src/share/classes/com/sun/tools/example/debug/bdi/SpecEvent.java ! src/share/classes/com/sun/tools/example/debug/bdi/ThreadGroupIterator.java ! src/share/classes/com/sun/tools/example/debug/bdi/ThreadInfo.java ! src/share/classes/com/sun/tools/example/debug/bdi/ThreadIterator.java ! src/share/classes/com/sun/tools/example/debug/bdi/Utils.java ! src/share/classes/com/sun/tools/example/debug/bdi/VMLaunchFailureException.java ! src/share/classes/com/sun/tools/example/debug/bdi/VMNotInterruptedException.java ! src/share/classes/com/sun/tools/example/debug/bdi/WatchpointSpec.java ! src/share/classes/com/sun/tools/example/debug/event/AbstractEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/AccessWatchpointEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ClassPrepareEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ClassUnloadEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ExceptionEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/JDIAdapter.java ! src/share/classes/com/sun/tools/example/debug/event/LocatableEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/LocationTriggerEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ModificationWatchpointEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ThreadDeathEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/ThreadStartEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/VMDeathEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/VMDisconnectEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/VMStartEventSet.java ! src/share/classes/com/sun/tools/example/debug/event/WatchpointEventSet.java ! src/share/classes/com/sun/tools/example/debug/expr/ExpressionParser.java ! src/share/classes/com/sun/tools/example/debug/expr/ExpressionParserTokenManager.java ! src/share/classes/com/sun/tools/example/debug/expr/LValue.java ! src/share/classes/com/sun/tools/example/debug/expr/ParseException.java ! src/share/classes/com/sun/tools/example/debug/expr/Token.java ! src/share/classes/com/sun/tools/example/debug/expr/TokenMgrError.java ! src/share/classes/com/sun/tools/example/debug/gui/ApplicationTool.java ! src/share/classes/com/sun/tools/example/debug/gui/ClassTreeTool.java ! src/share/classes/com/sun/tools/example/debug/gui/CommandInterpreter.java ! src/share/classes/com/sun/tools/example/debug/gui/CommandTool.java ! src/share/classes/com/sun/tools/example/debug/gui/ContextManager.java ! src/share/classes/com/sun/tools/example/debug/gui/CurrentFrameChangedEvent.java ! src/share/classes/com/sun/tools/example/debug/gui/Environment.java ! src/share/classes/com/sun/tools/example/debug/gui/GUI.java ! src/share/classes/com/sun/tools/example/debug/gui/JDBFileFilter.java ! src/share/classes/com/sun/tools/example/debug/gui/JDBMenuBar.java ! src/share/classes/com/sun/tools/example/debug/gui/JDBToolBar.java ! src/share/classes/com/sun/tools/example/debug/gui/LaunchTool.java ! src/share/classes/com/sun/tools/example/debug/gui/MonitorListModel.java ! src/share/classes/com/sun/tools/example/debug/gui/MonitorTool.java ! src/share/classes/com/sun/tools/example/debug/gui/SearchPath.java ! src/share/classes/com/sun/tools/example/debug/gui/SingleLeafTreeSelectionModel.java ! src/share/classes/com/sun/tools/example/debug/gui/SourceManager.java ! src/share/classes/com/sun/tools/example/debug/gui/SourceModel.java ! src/share/classes/com/sun/tools/example/debug/gui/SourceTool.java ! src/share/classes/com/sun/tools/example/debug/gui/SourceTreeTool.java ! src/share/classes/com/sun/tools/example/debug/gui/SourcepathChangedEvent.java ! src/share/classes/com/sun/tools/example/debug/gui/StackTraceTool.java ! src/share/classes/com/sun/tools/example/debug/gui/ThreadTreeTool.java ! src/share/classes/com/sun/tools/example/debug/gui/TypeScript.java ! src/share/classes/com/sun/tools/example/debug/gui/TypeScriptOutputListener.java ! src/share/classes/com/sun/tools/example/debug/gui/TypeScriptWriter.java ! src/share/classes/com/sun/tools/example/debug/tty/AccessWatchpointSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/AmbiguousMethodException.java ! src/share/classes/com/sun/tools/example/debug/tty/BreakpointSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/Commands.java ! src/share/classes/com/sun/tools/example/debug/tty/Env.java ! src/share/classes/com/sun/tools/example/debug/tty/EventHandler.java ! src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/EventRequestSpecList.java ! src/share/classes/com/sun/tools/example/debug/tty/ExceptionSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/LineNotFoundException.java ! src/share/classes/com/sun/tools/example/debug/tty/MalformedMemberNameException.java ! src/share/classes/com/sun/tools/example/debug/tty/ModificationWatchpointSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/PatternReferenceTypeSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/ReferenceTypeSpec.java ! src/share/classes/com/sun/tools/example/debug/tty/SourceMapper.java ! src/share/classes/com/sun/tools/example/debug/tty/TTY.java ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources.java ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_ja.java ! src/share/classes/com/sun/tools/example/debug/tty/TTYResources_zh_CN.java ! src/share/classes/com/sun/tools/example/debug/tty/ThreadGroupIterator.java ! src/share/classes/com/sun/tools/example/debug/tty/ThreadInfo.java ! src/share/classes/com/sun/tools/example/debug/tty/ThreadIterator.java ! src/share/classes/com/sun/tools/example/debug/tty/VMConnection.java ! src/share/classes/com/sun/tools/example/debug/tty/VMNotConnectedException.java ! src/share/classes/com/sun/tools/example/debug/tty/WatchpointSpec.java ! src/share/classes/com/sun/tools/example/trace/EventThread.java ! src/share/classes/com/sun/tools/example/trace/StreamRedirectThread.java ! src/share/classes/com/sun/tools/example/trace/Trace.java ! src/share/demo/jvmti/minst/Minst.java ! src/share/demo/management/FullThreadDump/Deadlock.java ! src/share/demo/management/FullThreadDump/ThreadMonitor.java ! src/share/demo/management/JTop/JTop.java ! src/share/demo/management/JTop/JTopPlugin.java ! src/share/demo/management/MemoryMonitor/MemoryMonitor.java ! src/share/demo/management/VerboseGC/PrintGCStat.java ! src/share/demo/management/VerboseGC/VerboseGC.java ! src/share/demo/nio/zipfs/Demo.java ! src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java ! src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java ! src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java From joe.darcy at oracle.com Tue Apr 26 17:35:27 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Tue, 26 Apr 2011 17:35:27 +0000 Subject: hg: jdk7/tl/jdk: 7039369: Limit range of strictfp in FloatingDecimal Message-ID: <20110426173545.3697A47FF8@hg.openjdk.java.net> Changeset: 147da2c8b749 Author: darcy Date: 2011-04-26 10:35 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/147da2c8b749 7039369: Limit range of strictfp in FloatingDecimal Summary: Additional reviews by sergey.kuksenko at oracle.com Reviewed-by: alanb ! src/share/classes/sun/misc/FloatingDecimal.java ! src/share/classes/sun/misc/FormattedFloatingDecimal.java ! test/java/lang/Double/ParseDouble.java From tomas at primekey.se Wed Apr 27 08:34:35 2011 From: tomas at primekey.se (Tomas Gustavsson) Date: Wed, 27 Apr 2011 10:34:35 +0200 Subject: NSA Suite B ciphers and JDK7, i.e. review 7031343 In-Reply-To: <4D9D41B8.4010207@oracle.com> References: <4D9D41B8.4010207@oracle.com> Message-ID: <4DB7D51B.20806@primekey.se> Hi, (changed subject as to not mess up review threads). Just a question weather this NSA Suite B effort will mean that some attention will be given to ECC ciphers and PKCS#11 in JDK 7? We have a few fix requests submitted in this area. Regards, Tomas On 04/07/2011 06:46 AM, Brad Wetmore wrote: > Hi Xuelei/Valerie, > > Our JDK 7 freeze window is fast closing and I'd like to get this in for > b140, so will need a quick turnaround to make this happen. > > 7031343: Provide API changes to support future GCM AEAD ciphers > > As we talked about, as part of the National Security Agency's Suite B > effort [1] (modernization of the national crypto infrastructure), the > JDK will soon need to support the Galois Counter Mode (GCM) cipher mode > [2] for ciphers like AES. (e.g. GCM is also being used in some new TLS > ciphersuites [3][4]). > > We will not be able to provide a full implementation of GCM in JDK 7 > FCS, but we would like to be able to add this as a potential enhancement > in a future JDK 7 Update Release (UR). Adding GCM in an JDK 7 UR will > require API changes in JDK 7 now. > > The changes are fairly small, low risk, and localized. There are some > minor changes to Cipher/CipherSpi, and two new classes for an AEAD > Exception and a GCMParameterSpec. > > http://cr.openjdk.java.net/~wetmore/7031343/javadocs.00/ > http://cr.openjdk.java.net/~wetmore/7031343/webrev.00/ > > A few points worth calling out: > > 1) The API's were designed with an eye to both CCM and GCM. GCM is the > important one now from the Suite B perspective. We'll probably add > similar CCM Parameters in JDK 8. > > 2) If algorithm parameters are not derivable from the supplied inputs, > Cipher.init() will normally trigger the generation of algorithm > parameters based on provider-specific default values. But note that XML > GCM is using 128 bit tags, and TLS 1.2 is using 96 bit tags, so there > really isn't a completely clear-cut default. And in GCM for IV, that > would push IV generation down into the CSP provider, which means the > provider must keep track of all previously used IV's, which could be > perceived as a 128-bit memory leak for each GCM operation on reused > Cipher objects. Language was added to allow providers to select IV if > they really want to, but in most cases and for interoperability, the > caller really should be specifying the tagLen/IV in a GCMParameterSpec. > > 3) AEAD (GCM/CCM) tags are appended to the ciphertext on encryption, and > verified/removed during decryption, as is done in RFC 5116[5], and is > reflected in other GCM APIs. Because Ciphers are reset after each > doFinal(), we would have had to create an intermediate state/getTag(), > or add some kind of outbound data structure. Appending was far cleaner. > > 4) AEADBadTagException is a subclass of BadPaddingException, which is a > checked exception currently thrown by the doFinal methods. While it's > not exactly BadPadding in the true sense of padding, it is close and was > the best option for a checked Exception. A RunTimeException really > should be reserved for programming mistakes, not normal operations. > > 5) AAD can be supplied to the cipher in chunks, and is not restricted to > a single shot as in PKCS11. This will allow applications with huge AADs > the flexibility to not have to store everything in memory (media files). > Also, the underlying GCM/CCM algorithms process all AAD before the > plain/ciphertext, so we require updateAAD() to be called before > plain/ciphertext is handled. > > 6) As usual for adding new methods to these engine classes, for > backwards source and binary compatibility with older providers, the new > updateAAD() methods in CipherSpi will throw > UnsupportedOperationExceptions unless the provider overrides the method. > > Thanks, > > Brad > > [1]: http://www.nsa.gov/ia/programs/suiteb_cryptography/ > [2]: http://csrc.nist.gov/publications/nistpubs/800-38D/SP-800-38D.pdf > [3]: http://www.rfc-editor.org/info/rfc5288 > [4]: http://www.rfc-editor.org/info/rfc5289 > [5]: http://www.rfc-editor.org/info/rfc5116 From weijun.wang at oracle.com Wed Apr 27 09:15:53 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Wed, 27 Apr 2011 09:15:53 +0000 Subject: hg: jdk7/tl/jdk: 6950929: Failures on Solaris sparc 64bit sun/security/krb5/auto/BadKdc4.java (and linux?) Message-ID: <20110427091614.1383847038@hg.openjdk.java.net> Changeset: 0e0db3421e8f Author: weijun Date: 2011-04-27 17:11 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0e0db3421e8f 6950929: Failures on Solaris sparc 64bit sun/security/krb5/auto/BadKdc4.java (and linux?) Reviewed-by: xuelei ! test/sun/security/krb5/auto/BadKdc.java From alan.bateman at oracle.com Wed Apr 27 12:50:56 2011 From: alan.bateman at oracle.com (alan.bateman at oracle.com) Date: Wed, 27 Apr 2011 12:50:56 +0000 Subject: hg: jdk7/tl/jdk: 7039186: (ch) EPoll based asynchronous I/O implementation should be portable to linux-arm and linux-ppc Message-ID: <20110427125120.A5E8147046@hg.openjdk.java.net> Changeset: a0dde3ff1dfd Author: alanb Date: 2011-04-27 13:46 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/a0dde3ff1dfd 7039186: (ch) EPoll based asynchronous I/O implementation should be portable to linux-arm and linux-ppc Reviewed-by: dholmes ! make/java/nio/mapfile-linux ! src/solaris/classes/sun/nio/ch/EPoll.java ! src/solaris/classes/sun/nio/fs/LinuxWatchService.java ! src/solaris/native/sun/nio/ch/EPoll.c ! src/solaris/native/sun/nio/fs/LinuxWatchService.c From vincent.x.ryan at oracle.com Wed Apr 27 19:24:56 2011 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Wed, 27 Apr 2011 19:24:56 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110427192526.9596547059@hg.openjdk.java.net> Changeset: 5a4e2a734f1d Author: vinnie Date: 2011-04-27 20:21 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5a4e2a734f1d 6753664: Support SHA256 (and higher) in SunMSCAPI Reviewed-by: mullan ! src/windows/classes/sun/security/mscapi/RSASignature.java ! src/windows/classes/sun/security/mscapi/SunMSCAPI.java ! src/windows/native/sun/security/mscapi/security.cpp + test/sun/security/mscapi/SignUsingSHA2withRSA.java + test/sun/security/mscapi/SignUsingSHA2withRSA.sh Changeset: 7c109d060365 Author: vinnie Date: 2011-04-27 20:24 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7c109d060365 Merge From mike.duigou at oracle.com Wed Apr 27 21:18:57 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Wed, 27 Apr 2011 21:18:57 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110427211930.A90834705F@hg.openjdk.java.net> Changeset: 5b05f8d1c0e5 Author: mduigou Date: 2011-04-26 14:25 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/5b05f8d1c0e5 4884238: Adds java.nio.charset.StandardCharset to provide static final constants for the standard charsets. Reviewed-by: alanb, sherman, darcy ! src/share/classes/java/nio/charset/Charset.java + src/share/classes/java/nio/charset/StandardCharset.java ! src/share/classes/java/nio/file/Path.java ! src/share/classes/java/util/zip/ZipCoder.java ! src/share/classes/java/util/zip/ZipFile.java ! src/share/classes/java/util/zip/ZipInputStream.java ! src/share/classes/java/util/zip/ZipOutputStream.java ! src/share/classes/sun/awt/FontDescriptor.java + test/java/nio/charset/StandardCharset/Standard.java Changeset: bf2a12c1ffe3 Author: mduigou Date: 2011-04-27 14:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/bf2a12c1ffe3 Merge From joe.darcy at oracle.com Thu Apr 28 00:04:12 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Thu, 28 Apr 2011 00:04:12 +0000 Subject: hg: jdk7/tl/langtools: 7039822: Project Coin: add explicit tests for the lub of an exception parameter Message-ID: <20110428000415.9A9DC47065@hg.openjdk.java.net> Changeset: a8f5cad1e6bb Author: darcy Date: 2011-04-27 17:03 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/a8f5cad1e6bb 7039822: Project Coin: add explicit tests for the lub of an exception parameter Reviewed-by: mcimadamore, jjg + test/tools/javac/multicatch/Neg07.java + test/tools/javac/multicatch/Neg07.out + test/tools/javac/multicatch/Pos10.java From bhavesh.patel at sun.com Thu Apr 28 00:16:21 2011 From: bhavesh.patel at sun.com (bhavesh.patel at sun.com) Date: Thu, 28 Apr 2011 00:16:21 +0000 Subject: hg: jdk7/tl/langtools: 7028815: Missing styles for some bulleted items in the new stylesheet Message-ID: <20110428001623.5630847067@hg.openjdk.java.net> Changeset: 5c81ba0eddff Author: bpatel Date: 2011-04-27 17:13 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/5c81ba0eddff 7028815: Missing styles for some bulleted items in the new stylesheet Reviewed-by: jjg ! src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css ! test/com/sun/javadoc/testStylesheet/TestStylesheet.java From weijun.wang at oracle.com Thu Apr 28 12:36:29 2011 From: weijun.wang at oracle.com (weijun.wang at oracle.com) Date: Thu, 28 Apr 2011 12:36:29 +0000 Subject: hg: jdk7/tl/jdk: 7037201: regression: invalid signed jar file not detected Message-ID: <20110428123656.913574709B@hg.openjdk.java.net> Changeset: 76703c84b3a2 Author: weijun Date: 2011-04-28 20:34 +0800 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/76703c84b3a2 7037201: regression: invalid signed jar file not detected Reviewed-by: mullan ! src/share/classes/java/util/jar/JarFile.java ! src/share/classes/java/util/jar/JarInputStream.java ! src/share/classes/java/util/jar/JarVerifier.java ! src/share/classes/sun/security/pkcs/PKCS7.java ! src/share/classes/sun/security/pkcs/SignerInfo.java ! src/share/classes/sun/security/util/ManifestEntryVerifier.java - src/share/classes/sun/security/util/SignatureFileManifest.java ! src/share/classes/sun/security/util/SignatureFileVerifier.java ! test/java/util/jar/JarInputStream/ScanSignedJar.java ! test/java/util/jar/JarInputStream/TestIndexedJarWithBadSignature.java From lance.andersen at oracle.com Thu Apr 28 13:47:01 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Thu, 28 Apr 2011 13:47:01 +0000 Subject: hg: jdk7/tl/jdk: 7038565: address Findbugs issue in BatchUpdateException Message-ID: <20110428134721.BA14E470A1@hg.openjdk.java.net> Changeset: 28caa191884a Author: lancea Date: 2011-04-28 09:46 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/28caa191884a 7038565: address Findbugs issue in BatchUpdateException Reviewed-by: alanb, forax ! src/share/classes/java/sql/BatchUpdateException.java From mandy.chung at oracle.com Thu Apr 28 15:52:12 2011 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 28 Apr 2011 15:52:12 +0000 Subject: hg: jdk7/tl/jdk: 7037081: Remove com.sun.tracing from NON_CORE_PKGS Message-ID: <20110428155230.6DA0E470A8@hg.openjdk.java.net> Changeset: c3f5333e10e3 Author: mchung Date: 2011-04-28 08:51 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/c3f5333e10e3 7037081: Remove com.sun.tracing from NON_CORE_PKGS Reviewed-by: ohair, jjg, jmasa ! make/docs/Makefile ! make/docs/NON_CORE_PKGS.gmk From mandy.chung at oracle.com Thu Apr 28 15:53:01 2011 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Thu, 28 Apr 2011 15:53:01 +0000 Subject: hg: jdk7/tl/langtools: 7037081: Remove com.sun.tracing from NON_CORE_PKGS Message-ID: <20110428155304.BA077470A9@hg.openjdk.java.net> Changeset: c7841bbe1227 Author: mchung Date: 2011-04-28 08:46 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/c7841bbe1227 7037081: Remove com.sun.tracing from NON_CORE_PKGS Reviewed-by: ohair, jjg, jmasa ! src/share/classes/com/sun/tools/javac/resources/legacy.properties From mike.duigou at oracle.com Thu Apr 28 17:14:26 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Thu, 28 Apr 2011 17:14:26 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110428171447.42D64470AD@hg.openjdk.java.net> Changeset: 37722a0a1c65 Author: mduigou Date: 2011-04-28 10:12 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/37722a0a1c65 7040381: Add StandardCharset.java to FILES_java.gmk Reviewed-by: alanb ! make/java/nio/FILES_java.gmk Changeset: 7b7c1ffd0752 Author: mduigou Date: 2011-04-28 10:14 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/7b7c1ffd0752 Merge - src/share/classes/sun/security/util/SignatureFileManifest.java From jonathan.gibbons at oracle.com Thu Apr 28 22:06:33 2011 From: jonathan.gibbons at oracle.com (jonathan.gibbons at oracle.com) Date: Thu, 28 Apr 2011 22:06:33 +0000 Subject: hg: jdk7/tl/langtools: 7029150: Project Coin: present union types from the tree API through to javax.lang.model Message-ID: <20110428220637.9E4F9470BE@hg.openjdk.java.net> Changeset: 7ae6c0fd479b Author: jjg Date: 2011-04-28 15:05 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/7ae6c0fd479b 7029150: Project Coin: present union types from the tree API through to javax.lang.model Reviewed-by: mcimadamore ! src/share/classes/com/sun/source/util/Trees.java ! src/share/classes/com/sun/tools/javac/api/JavacTrees.java ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/comp/Attr.java ! src/share/classes/com/sun/tools/javac/model/JavacTypes.java ! test/tools/javac/multicatch/model/Model01.java ! test/tools/javac/multicatch/model/ModelChecker.java + test/tools/javac/multicatch/model/UnionTypeInfo.java + test/tools/javac/processing/model/type/TestUnionType.java From vincent.x.ryan at oracle.com Thu Apr 28 23:22:23 2011 From: vincent.x.ryan at oracle.com (vincent.x.ryan at oracle.com) Date: Thu, 28 Apr 2011 23:22:23 +0000 Subject: hg: jdk7/tl/jdk: 6578658: Request for raw RSA (NONEwithRSA) Signature support in SunMSCAPI Message-ID: <20110428232243.84AB8470C4@hg.openjdk.java.net> Changeset: 67f411052dd6 Author: vinnie Date: 2011-04-29 00:21 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/67f411052dd6 6578658: Request for raw RSA (NONEwithRSA) Signature support in SunMSCAPI Reviewed-by: wetmore ! src/windows/classes/sun/security/mscapi/RSASignature.java ! src/windows/classes/sun/security/mscapi/SunMSCAPI.java ! src/windows/native/sun/security/mscapi/security.cpp + test/sun/security/mscapi/SignUsingNONEwithRSA.java + test/sun/security/mscapi/SignUsingNONEwithRSA.sh From joe.darcy at oracle.com Fri Apr 29 00:45:51 2011 From: joe.darcy at oracle.com (joe.darcy at oracle.com) Date: Fri, 29 Apr 2011 00:45:51 +0000 Subject: hg: jdk7/tl/jdk: 7038843: IIOP serialization fails with NullPointerException when serializing Throwable Message-ID: <20110429004601.3090A470C8@hg.openjdk.java.net> Changeset: 6c8ae62463a3 Author: darcy Date: 2011-04-28 17:51 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/6c8ae62463a3 7038843: IIOP serialization fails with NullPointerException when serializing Throwable Reviewed-by: dholmes, mchung ! src/share/classes/java/lang/Throwable.java From valerie.peng at oracle.com Fri Apr 29 00:59:39 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Thu, 28 Apr 2011 17:59:39 -0700 Subject: Code review request for 7036252: sunpkcs11-solaris.cfg needs a review Message-ID: <4DBA0D7B.5050100@oracle.com> Sean, Could you please review this PKCS11 configuration file change before next Monday? http://cr.openjdk.java.net/~valeriep/7036252/webrev.00/ I have run the regression tests against the new config file and things look fine. More information can be found in the bugster record. Thanks, Valerie From xueming.shen at oracle.com Fri Apr 29 03:53:29 2011 From: xueming.shen at oracle.com (xueming.shen at oracle.com) Date: Fri, 29 Apr 2011 03:53:29 +0000 Subject: hg: jdk7/tl/jdk: 2 new changesets Message-ID: <20110429035357.BCDBB470D1@hg.openjdk.java.net> Changeset: 775b77e74bec Author: sherman Date: 2011-04-28 20:18 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/775b77e74bec 7037261: j.l.Character.isLowerCase/isUpperCase need to match the Unicode Standard Summary: updated j.l.c.lsLowerCase/isUpperCase Reviewed-by: okutsu ! make/java/java/FILES_java.gmk ! make/java/java/Makefile ! make/tools/GenerateCharacter/CharacterData00.java.template ! make/tools/GenerateCharacter/CharacterData01.java.template ! make/tools/GenerateCharacter/CharacterData02.java.template ! make/tools/GenerateCharacter/CharacterData0E.java.template ! make/tools/GenerateCharacter/CharacterDataLatin1.java.template + make/tools/UnicodeData/PropList.txt ! make/tools/src/build/tools/generatecharacter/GenerateCharacter.java + make/tools/src/build/tools/generatecharacter/PropList.java ! src/share/classes/java/lang/Character.java ! src/share/classes/java/lang/CharacterData.java + test/java/lang/Character/CheckProp.java + test/java/lang/Character/PropList.txt Changeset: 94d02b3c5ac4 Author: sherman Date: 2011-04-28 20:48 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/94d02b3c5ac4 7039066: j.u.rgex does not match TR18 RL1.4 Simple Word Boundaries and RL1.2 Properties Summary: updated the regex Unicode property support Reviewed-by: alanb ! src/share/classes/java/util/regex/Pattern.java + src/share/classes/java/util/regex/UnicodeProp.java + test/java/util/regex/POSIX_ASCII.java + test/java/util/regex/POSIX_Unicode.java ! test/java/util/regex/RegExTest.java From sean.mullan at oracle.com Fri Apr 29 12:45:04 2011 From: sean.mullan at oracle.com (Sean Mullan) Date: Fri, 29 Apr 2011 08:45:04 -0400 Subject: Code review request for 7036252: sunpkcs11-solaris.cfg needs a review In-Reply-To: <4DBA0D7B.5050100@oracle.com> References: <4DBA0D7B.5050100@oracle.com> Message-ID: <4DBAB2D0.8090601@oracle.com> This looks fine. However, the bug report never mentions why it is ok to remove the CKM_SSL3_KEY_AND_MAC_DERIVE and CKM_TLS_KEY_AND_MAC_DERIVE mechanisms. I think it should be updated. Also, isn't this the kind of thing we should periodically review each release? If so, maybe we should create a sub-CR for JDK 8, keep that open, and re-evaluate later. --Sean On 4/28/11 8:59 PM, Valerie (Yu-Ching) Peng wrote: > Sean, > > Could you please review this PKCS11 configuration file change before next Monday? > > http://cr.openjdk.java.net/~valeriep/7036252/webrev.00/ > > I have run the regression tests against the new config file and things look fine. > More information can be found in the bugster record. > > Thanks, > Valerie From lance.andersen at oracle.com Fri Apr 29 13:04:43 2011 From: lance.andersen at oracle.com (lance.andersen at oracle.com) Date: Fri, 29 Apr 2011 13:04:43 +0000 Subject: hg: jdk7/tl/jdk: 7040150: Indexing Error in CachedRowSetImpl.removeCurrentRow Message-ID: <20110429130510.A740B470EC@hg.openjdk.java.net> Changeset: 0b1354ecf5a3 Author: lancea Date: 2011-04-29 09:04 -0400 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/0b1354ecf5a3 7040150: Indexing Error in CachedRowSetImpl.removeCurrentRow Reviewed-by: smarks ! src/share/classes/com/sun/rowset/CachedRowSetImpl.java From mandy.chung at oracle.com Fri Apr 29 15:51:50 2011 From: mandy.chung at oracle.com (mandy.chung at oracle.com) Date: Fri, 29 Apr 2011 15:51:50 +0000 Subject: hg: jdk7/tl/jdk: 7039809: Remove @ConstructorProperties annotation from java.io.File class Message-ID: <20110429155208.F40A2470F5@hg.openjdk.java.net> Changeset: 24ad188dc46c Author: mchung Date: 2011-04-29 08:51 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/24ad188dc46c 7039809: Remove @ConstructorProperties annotation from java.io.File class Reviewed-by: alanb, malenkov ! src/share/classes/java/io/File.java - test/java/beans/XMLEncoder/java_io_File.java From maurizio.cimadamore at oracle.com Fri Apr 29 15:11:35 2011 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Fri, 29 Apr 2011 15:11:35 +0000 Subject: hg: jdk7/tl/langtools: 4 new changesets Message-ID: <20110429151145.E97A0470F1@hg.openjdk.java.net> Changeset: 4c03383f6529 Author: mcimadamore Date: 2011-04-29 16:05 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/4c03383f6529 7040104: javac NPE on Object a[]; Object o = (a=null)[0]; Summary: When a null literal is found on top of stack, if expected type is 1-dimension array no checkcast is emitted Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/jvm/Code.java + test/tools/javac/T7040104.java Changeset: 9a847a77205d Author: mcimadamore Date: 2011-04-29 16:05 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/9a847a77205d 7039937: Improved catch analysis fails to handle a common idiom in the libraries Summary: Disable generation of 'unreachable catch' warnings for catch statements catching Exception/Throwable Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Flow.java ! test/tools/javac/6558548/T6558548.java ! test/tools/javac/6558548/T6558548_6.out ! test/tools/javac/6558548/T6558548_latest.out ! test/tools/javac/diags/examples/UnreachableCatch1.java Changeset: 1092b67b3cad Author: mcimadamore Date: 2011-04-29 16:05 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/1092b67b3cad 7034495: Javac asserts on usage of wildcards in bounds Summary: Problem with intersection types and wildcards causing javac to crash Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/wildcards/7034495/T7034495.java + test/tools/javac/generics/wildcards/7034495/T7034495.out Changeset: dc3d9ef880a1 Author: mcimadamore Date: 2011-04-29 16:06 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/dc3d9ef880a1 6550655: com.sun.tools.javac.code.Symbol$CompletionFailure Summary: Accessing a non-existing enum constant from an annotation whose class is available results in an internal error Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Annotate.java ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/annotations/6550655/T6550655.java ! test/tools/javac/diags/examples.not-yet.txt From kelly.ohair at oracle.com Fri Apr 29 17:58:33 2011 From: kelly.ohair at oracle.com (kelly.ohair at oracle.com) Date: Fri, 29 Apr 2011 17:58:33 +0000 Subject: hg: jdk7/tl/jaxp: 7040147: jaxp 1.4.5 jdk7 integration Message-ID: <20110429175834.0BDC5470FD@hg.openjdk.java.net> Changeset: 30129a58aacc Author: ohair Date: 2011-04-29 10:58 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jaxp/rev/30129a58aacc 7040147: jaxp 1.4.5 jdk7 integration Reviewed-by: joehw ! jaxp.properties From valerie.peng at oracle.com Fri Apr 29 18:14:09 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Fri, 29 Apr 2011 11:14:09 -0700 Subject: Code review request for 7036252: sunpkcs11-solaris.cfg needs a review In-Reply-To: <4DBAB2D0.8090601@oracle.com> References: <4DBA0D7B.5050100@oracle.com> <4DBAB2D0.8090601@oracle.com> Message-ID: <4DBAFFF1.2070508@oracle.com> Right, good point. I'll update the bugster w/ evaluation on CKM_SSL3_KEY_AND_MAC_DERIVE and CKM_TLS_KEY_AND_MAC_DERIVE. True, conceptually this should be done for every release. Although, realistically, I don't think we'll need to adjust this again for jdk8 given that the remaining Solaris bugs have already been closed. But still, I'll add a sub-CR for jdk8, so we can check and cross it off later (not really worthy of a P2 for jdk 8 though). Thanks, Valerie On 04/29/11 05:45 AM, Sean Mullan wrote: > This looks fine. However, the bug report never mentions why it is ok > to remove the CKM_SSL3_KEY_AND_MAC_DERIVE and > CKM_TLS_KEY_AND_MAC_DERIVE mechanisms. I think it should be updated. > > Also, isn't this the kind of thing we should periodically review each > release? If so, maybe we should create a sub-CR for JDK 8, keep that > open, and re-evaluate later. > > --Sean > > On 4/28/11 8:59 PM, Valerie (Yu-Ching) Peng wrote: >> Sean, >> >> Could you please review this PKCS11 configuration file change before >> next Monday? >> >> http://cr.openjdk.java.net/~valeriep/7036252/webrev.00/ >> >> I have run the regression tests against the new config file and >> things look fine. >> More information can be found in the bugster record. >> >> Thanks, >> Valerie From frances.ho at oracle.com Fri Apr 29 20:38:22 2011 From: frances.ho at oracle.com (Frances Ho) Date: Fri, 29 Apr 2011 13:38:22 -0700 Subject: Code review request for 7036252: sunpkcs11-solaris.cfg needs a review In-Reply-To: <4DBAFFF1.2070508@oracle.com> References: <4DBA0D7B.5050100@oracle.com> <4DBAB2D0.8090601@oracle.com> <4DBAFFF1.2070508@oracle.com> Message-ID: <4DBB21BE.1080408@oracle.com> So what were the results from your run on the T4? performance wise. On 4/29/2011 11:14 AM, Valerie (Yu-Ching) Peng wrote: > Right, good point. I'll update the bugster w/ evaluation on > CKM_SSL3_KEY_AND_MAC_DERIVE and CKM_TLS_KEY_AND_MAC_DERIVE. > True, conceptually this should be done for every release. Although, > realistically, I don't think we'll need to adjust this again for jdk8 > given that the remaining Solaris bugs have already been closed. But > still, I'll add a sub-CR for jdk8, so we can check and cross it off > later (not really worthy of a P2 for jdk 8 though). > > Thanks, > Valerie > > On 04/29/11 05:45 AM, Sean Mullan wrote: >> This looks fine. However, the bug report never mentions why it is ok >> to remove the CKM_SSL3_KEY_AND_MAC_DERIVE and >> CKM_TLS_KEY_AND_MAC_DERIVE mechanisms. I think it should be updated. >> >> Also, isn't this the kind of thing we should periodically review each >> release? If so, maybe we should create a sub-CR for JDK 8, keep that >> open, and re-evaluate later. >> >> --Sean >> >> On 4/28/11 8:59 PM, Valerie (Yu-Ching) Peng wrote: >>> Sean, >>> >>> Could you please review this PKCS11 configuration file change before >>> next Monday? >>> >>> http://cr.openjdk.java.net/~valeriep/7036252/webrev.00/ >>> >>> I have run the regression tests against the new config file and >>> things look fine. >>> More information can be found in the bugster record. >>> >>> Thanks, >>> Valerie > From valerie.peng at oracle.com Fri Apr 29 20:48:46 2011 From: valerie.peng at oracle.com (valerie.peng at oracle.com) Date: Fri, 29 Apr 2011 20:48:46 +0000 Subject: hg: jdk7/tl/jdk: 7036252: sunpkcs11-solaris.cfg needs a review Message-ID: <20110429204855.E3C514710F@hg.openjdk.java.net> Changeset: 40e2b3a25533 Author: valeriep Date: 2011-04-29 13:31 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/40e2b3a25533 7036252: sunpkcs11-solaris.cfg needs a review Summary: Updated the disabled mechanisms section since Solaris bug 6306708 has been fixed. Reviewed-by: mullan ! src/share/lib/security/sunpkcs11-solaris.cfg From valerie.peng at oracle.com Fri Apr 29 20:59:25 2011 From: valerie.peng at oracle.com (Valerie (Yu-Ching) Peng) Date: Fri, 29 Apr 2011 13:59:25 -0700 Subject: Code review request for 7036252: sunpkcs11-solaris.cfg needs a review In-Reply-To: <4DBB21BE.1080408@oracle.com> References: <4DBA0D7B.5050100@oracle.com> <4DBAB2D0.8090601@oracle.com> <4DBAFFF1.2070508@oracle.com> <4DBB21BE.1080408@oracle.com> Message-ID: <4DBB26AD.3080708@oracle.com> In general, T4 runs much faster, this goes not just for PKCS11 provider, but for pure java provider as well. My run is focused on the settings of disabled mechanism section. Based on the run results, message digests excluded, performance numbers are similar between the default one and the special one which doesn't disable any mechanisms. Valerie On 04/29/11 01:38 PM, Frances Ho wrote: > > So what were the results from your run on the T4? performance wise. > > > On 4/29/2011 11:14 AM, Valerie (Yu-Ching) Peng wrote: >> Right, good point. I'll update the bugster w/ evaluation on >> CKM_SSL3_KEY_AND_MAC_DERIVE and CKM_TLS_KEY_AND_MAC_DERIVE. >> True, conceptually this should be done for every release. Although, >> realistically, I don't think we'll need to adjust this again for jdk8 >> given that the remaining Solaris bugs have already been closed. But >> still, I'll add a sub-CR for jdk8, so we can check and cross it off >> later (not really worthy of a P2 for jdk 8 though). >> >> Thanks, >> Valerie >> >> On 04/29/11 05:45 AM, Sean Mullan wrote: >>> This looks fine. However, the bug report never mentions why it is ok >>> to remove the CKM_SSL3_KEY_AND_MAC_DERIVE and >>> CKM_TLS_KEY_AND_MAC_DERIVE mechanisms. I think it should be updated. >>> >>> Also, isn't this the kind of thing we should periodically review each >>> release? If so, maybe we should create a sub-CR for JDK 8, keep that >>> open, and re-evaluate later. >>> >>> --Sean >>> >>> On 4/28/11 8:59 PM, Valerie (Yu-Ching) Peng wrote: >>>> Sean, >>>> >>>> Could you please review this PKCS11 configuration file change before >>>> next Monday? >>>> >>>> http://cr.openjdk.java.net/~valeriep/7036252/webrev.00/ >>>> >>>> I have run the regression tests against the new config file and >>>> things look fine. >>>> More information can be found in the bugster record. >>>> >>>> Thanks, >>>> Valerie >> From mike.duigou at oracle.com Fri Apr 29 21:19:25 2011 From: mike.duigou at oracle.com (mike.duigou at oracle.com) Date: Fri, 29 Apr 2011 21:19:25 +0000 Subject: hg: jdk7/tl/jdk: 7040572: Fix broken java/nio/charset/StandardCharset/Standard.java and add more tests. Message-ID: <20110429211934.BBF5547111@hg.openjdk.java.net> Changeset: 36dd30b5f85d Author: mduigou Date: 2011-04-29 14:09 -0700 URL: http://hg.openjdk.java.net/jdk7/tl/jdk/rev/36dd30b5f85d 7040572: Fix broken java/nio/charset/StandardCharset/Standard.java and add more tests. Reviewed-by: alanb ! test/java/nio/charset/StandardCharset/Standard.java From maurizio.cimadamore at oracle.com Sat Apr 30 10:59:51 2011 From: maurizio.cimadamore at oracle.com (maurizio.cimadamore at oracle.com) Date: Sat, 30 Apr 2011 10:59:51 +0000 Subject: hg: jdk7/tl/langtools: 7039931: Project Coin: diamond inference fail with generic constructor explicit type-arguments Message-ID: <20110430105953.3E47347142@hg.openjdk.java.net> Changeset: 4caf17560ae0 Author: mcimadamore Date: 2011-04-30 11:57 +0100 URL: http://hg.openjdk.java.net/jdk7/tl/langtools/rev/4caf17560ae0 7039931: Project Coin: diamond inference fail with generic constructor explicit type-arguments Summary: diamond should be disallowed in cases where explicit generic constructor parameters are specified Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Check.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/diags/examples/DiamondAndExplicitParams.java ! test/tools/javac/generics/diamond/7030150/GenericConstructorAndDiamondTest.java - test/tools/javac/generics/diamond/7030150/Neg01.java - test/tools/javac/generics/diamond/7030150/Neg01.out - test/tools/javac/generics/diamond/7030150/Neg02.java - test/tools/javac/generics/diamond/7030150/Neg02.out - test/tools/javac/generics/diamond/7030150/Neg03.java - test/tools/javac/generics/diamond/7030150/Neg03.out - test/tools/javac/generics/diamond/7030150/Pos01.java - test/tools/javac/generics/diamond/7030150/Pos02.java