Running with a security manager?
david.holmes at oracle.com
Sat Mar 10 11:03:05 UTC 2018
Thanks for all the responses.
On 10/03/2018 6:10 PM, Weijun Wang wrote:
> Or you can set policy to an empty file (maybe with a comment line). Unfortunately both secure and policy must have an argument.
Right. My issue is what policy do I have to set to make jtreg itself
work, regardless of what the test may or may not need? This seems to be
a problem to me - I don't know what permissions jtreg requires be added
to any policy.
Mandy's suggestion of just setting the security manager within the test
may be the way to go.
>> On Mar 10, 2018, at 2:37 PM, mandy chung <mandy.chung at oracle.com> wrote:
>> If you need to grant permission, you can do this:
>> * @run main/othervm/java.security.policy=<policy file> TestReflectionAPI
>> If no policy needed, you can set security manager (System::setSecurityManager) at the beginning of the test and run in othervm mode:
>> * @run main/othervm TestReflectionAPI
>> On 3/9/18 8:16 PM, David Holmes wrote:
>>> I want to run a test with a default security manager present. So I added it to the @run:
>>> @run main/othervm -Djava.security.manager TestReflectionAPI
>>> But this breaks jtreg:
>>> Exception in thread "main" java.security.AccessControlException: access denied ("java.io.FilePermission" "/export/users/dh198349/valhalla/repos/valhalla-exp/open/test/hotspot/jtreg/JTwork/runtime/Nestmates/reflectionAPI/TestReflectionAPI.d/main.2.jta" "read")
>>> at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
>>> at java.base/java.security.AccessController.checkPermission(AccessController.java:895)
>>> at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:335)
>>> at java.base/java.lang.SecurityManager.checkRead(SecurityManager.java:674)
>>> at java.base/java.io.FileInputStream.<init>(FileInputStream.java:147)
>>> at java.base/java.io.FileInputStream.<init>(FileInputStream.java:113)
>>> at java.base/java.io.FileReader.<init>(FileReader.java:58)
>>> at com.sun.javatest.regtest.agent.MainWrapper.main(MainWrapper.java:46)
>>> So I presume I need some kind of policy file that gives jtreg necessary permissions while trying to leave the actual test code with the normal default permissions.
>>> How do I do that?
More information about the jtreg-use