Code review request: 7064075 Security libraries don't build with javac -Xlint:all,-deprecation -Werror
Alexandre Boulgakov
alexandre.boulgakov at oracle.com
Tue Jul 19 01:21:07 UTC 2011
Hello,
Here's an updated webrev:
http://cr.openjdk.java.net/~smarks/aboulgak/7064075.2/
I've reexamined the @SuppressWarnings("unchecked") annotations, and
added comments to all of the ones I've added. I was was also able to
remove several of them by using covariant return types on
sun.security.x509.*Extension.get(String) inherited from Object
CertAttrSet<T>.get(String). I've also updated the consumers of
sun.security.x509.*Extension.get(String) to use the more specific return
type, removing several casts and @SuppressWarnings("unchecked") annotations.
Also, please take a closer look at my changes to
com.sun.security.auth.PolicyFile.getPrincipalInfo(PolicyParser.PrincipalEntry,
final CodeSource) in
src/share/classes/com/sun/security/auth/PolicyFile.java lines 1088-1094.
The preceding comment and the behavior of
Subject.getPrincipals(Class<T>) seem to be more consistent with the
updated version, but I wanted to make sure.
The classes where I added serialVersionUID's are either new or have the
same serialVersionUID as the original implementation.
Thanks,
Sasha
On 7/18/2011 5:33 PM, Brad Wetmore wrote:
> (Apologies to folks without access to the older sources.)
>
>
> On 07/18/11 15:00, Sean Mullan wrote:
>> On 7/18/11 5:35 PM, Alexandre Boulgakov wrote:
>>> Is there an easy way to see when a class was added to the JDK?
>>
>> For standard API classes, you can use the @since javadoc tag which
>> will indicate
>> the release it was first introduced in.
>
> Standard, exported API classes. Some of the underlying support
> classes for API packages like java.*.* weren't always @since'd properly.
>
>> For internal classes, there is no easy way, since most don't have an
>> @since tag.
>> I would probably write a script that checks the rt.jar of each of the
>> JREs that
>> are archived at /java/re/jdk. The pathnames should be fairly
>> consistent, just
>> the version number is different.
>
> Don't know which classes you're talking about here, but some classes
> started out in other jar files and eventually wound up in rt.jar.
> Also, some files live in files other than rt.jar. I usually go to the
> source when looking for something. If it's originally from
> JSSE/JGSS/JCE, you'll need to look on our restricted access machine.
>
> When I'm looking for something that is in the jdk/j2se workspaces, I
> go right to the old Codemgr data, specifically the nametable file,
> because many times the files you want may be in a src/<arch>/classes
> instead of src/share/classes.
>
> % grep -i SunMSCAPI.java
> <RE-repository>/5.0/latest/ws/j2se/Codemgr_wsdata/nametable
>
> % grep -i SunMSCAPI.java
> <RE-repository>/6.0/latest/ws/j2se/Codemgr_wsdata/nametable
> src/windows/classes/sun/security/mscapi/SunMSCAPI.java ada8dbe4
> a217f6b0 6c833bd3 d4ef32be
>
> That will usually give you a good starting point.
>
> Brad
>
>
>
>
> Depending on rt.jar or not.
>
>> Chris, do you have any other ideas?
>>
>> --Sean
More information about the security-dev
mailing list