1 /*
   2  * security policy used by the test process
   3  */
   4 
   5 grant codeBase "file:${java.home}/lib/ext/*" {
   6     permission java.security.AllPermission;
   7 };
   8 
   9 grant {
  10   // need to move some classes out of the tests classpath; specific to this test
  11   permission java.io.FilePermission "${test.classes}", "read,write,delete";
  12   permission java.io.FilePermission "${test.classes}${/}-", "read,write,delete";
  13 
  14   // need to load custom security manager and activation group from a new codebase
  15   permission java.io.FilePermission ".${/}implcb", "read,write,delete";
  16   permission java.io.FilePermission ".${/}implcb${/}-", "read,write,delete";
  17 
  18   // impl class needs to compare context class loader to its own class loader
  19   permission java.lang.RuntimePermission "getClassLoader";
  20 
  21   // standard test activation permissions
  22   permission java.io.FilePermission "..${/}..${/}test.props", "read";
  23 
  24   // test needs to cleanup rmid's log.
  25   permission java.io.FilePermission ".${/}log", "read,write,delete";
  26   permission java.io.FilePermission ".${/}log${/}-", "read,write,delete";
  27 
  28   // test needs to use java to exec an rmid
  29   permission java.io.FilePermission "${java.home}${/}bin${/}java", "execute";
  30 
  31   // test uses these permissions to propagate security values to rmid
  32   permission java.util.PropertyPermission "java.security.policy", "read";
  33   permission java.util.PropertyPermission "java.security.manager", "read";
  34 
  35   // used by TestLibrary to determine test environment 
  36   permission java.util.PropertyPermission "test.classes", "read";
  37   permission java.util.PropertyPermission "test.src", "read";
  38   permission java.util.PropertyPermission "user.dir", "read";
  39   permission java.util.PropertyPermission "java.home", "read";
  40 
  41   // required for test to create an ActivationGroup
  42   permission java.lang.RuntimePermission "setFactory";
  43 
  44   // test needs to export rmid and communicate with objects on arbitrary ports
  45   permission java.net.SocketPermission "*:1024-", "connect,accept,listen";
  46 };