I have a question related.

There are some places in JDK that use doPrivileged to read "os.name" etc. This 
system property is in the default java.policy file
> On May 2, 2016, at 10:15 PM, Sean Mullan <sean.mul...@oracle.com> wrote:
> 
> This is not an issue in your changes, but the current javadoc for 
> Version.current() says:
> 
> 266      * @throws  SecurityException
> 267      *          If a security manager exists and its {@link
> 268      *          SecurityManager#checkPropertyAccess(String)
> 269      *          checkPropertyAccess} method does not allow access to the
> 270      *          system property "java.version"
> 
> but this can never occur since the code is wrapping the call to 
> System.getProperty("java.version") in doPrivileged, so the caller's 
> permissions are never checked.
> 
> I think that this is a bug in the javadoc of this method and that it should 
> not be specified to throw SecurityException. All code already has permission 
> to read "java.version" in the default java.policy file.

Can you clarify?

If a system property is listed in the default java.policy file, shall we use or 
not use doPrivileged() to read it inside JDK? I thought the answer is yes 
because the policy file could be modified.

Thanks
Max


Reply via email to