File: AssertFailureTest.policy

package info (click to toggle)
derby 10.14.2.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 79,056 kB
  • sloc: java: 691,961; sql: 42,686; xml: 20,512; sh: 3,373; sed: 96; makefile: 60
file content (117 lines) | stat: -rw-r--r-- 5,022 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
//
//   Licensed to the Apache Software Foundation (ASF) under one or more
//   contributor license agreements.  See the NOTICE file distributed with
//   this work for additional information regarding copyright ownership.
//   The ASF licenses this file to You under the Apache License, Version 2.0
//   (the "License"); you may not use this file except in compliance with
//   the License.  You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
//   Unless required by applicable law or agreed to in writing, software
//   distributed under the License is distributed on an "AS IS" BASIS,
//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//   See the License for the specific language governing permissions and
//   limitations under the License.
//

// Policy file with minimal set of permissions to run unit test for
// AssertFailureTest with ThreadDump permissions.


// The test harness sets up four variables used by this policy file
//
// derbyTesting.codejar - URL to the jar files when they are in the classpath
// derbyTesting.codeclasses - URL to the classes directory when it is in the classpath
//
// Only one of derbyTesting.codejar and derbyTesting.codeclasses will be valid, the
// other will be set to a bogus URL like file://unused
//
// derbyTesting.codedir - File location of either derbyTesting.codejar or derbyTesting.codeclasses.
// Only required due to a BUG (see below for more info).
//
// derbyTesting.jaxpjar - URL to the jar file containing the JAXP implementation
//     for XML-based tests (ex. lang/XMLBindingTest.java).
//
// derbyTesting.serverhost - Host name or ip where network server is started 
// derbyTesting.clienthost - specifies the clients ip address/hostName. 
//     when testing with networkserver on a remote host, this needs to be passed in 
//     with the NetworkServerControl start command


//
// Permissions for the tests (derbyTesting.jar)
//
grant codeBase "${derbyTesting.testjar}derbyTesting.jar" {
  // Allow tests to install and uninstall the security manager and
  // to refresh the policy
  permission java.util.PropertyPermission "java.security.policy", "read,write";
  permission java.lang.RuntimePermission "setSecurityManager";
  permission java.security.SecurityPermission "getPolicy";
  
  // derbyTesting.junit.TestConfiguration... modifies System properties
  permission java.util.PropertyPermission "*", "read,write";

  //needs to run "doAsPrivileged"
  permission javax.security.auth.AuthPermission "doAsPrivileged";
  
};


//
// Permissions for running the test on the class files
//
grant codeBase "${derbyTesting.codeclasses}" {
  // Allow tests to install and uninstall the security manager and
  // to refresh the policy
  permission java.util.PropertyPermission "java.security.policy", "read,write";
  permission java.lang.RuntimePermission "setSecurityManager";
  permission java.security.SecurityPermission "getPolicy";

  // derbyTesting.junit.TestConfiguration... modifies System properties
  permission java.util.PropertyPermission "*", "read,write";

//These are the ones that matters:
//-----------------------------------------------------------------------------
  permission java.lang.RuntimePermission "getStackTrace";
  permission java.lang.RuntimePermission "modifyThreadGroup";
//-----------------------------------------------------------------------------
};

grant codeBase "${derbyTesting.junit}" {
    // This permission is needed when running the tests using ant 1.7
    permission java.io.FilePermission "${user.dir}${/}*", "write";
};

// Ant's junit runner requires setOut to redirect the System output streams
// to the forked JVM used when running junit tests inside Ant. Ant requires
// forking the JVM if you want to run tests in a different directory than the
// current one.
grant codeBase "${derbyTesting.antjunit}" {
    permission java.lang.RuntimePermission "setIO";
    
    // This permission is needed when running the tests using ant 1.7
    permission java.io.FilePermission "${user.dir}${/}*", "write";
};


grant codeBase "${derbyTesting.codejar}derby.jar" {
//These are the ones that matters:
//-----------------------------------------------------------------------------
  permission java.lang.RuntimePermission "getStackTrace";
  permission java.lang.RuntimePermission "modifyThreadGroup";
//-----------------------------------------------------------------------------

// getProtectionDomain is an optional permission needed for printing classpath 
// information to derby.log
  permission java.lang.RuntimePermission "getProtectionDomain";
};


grant codeBase "${derbyTesting.codejar}derbyclient.jar" {
//These are the ones that matters:
//-----------------------------------------------------------------------------
  permission java.lang.RuntimePermission "getStackTrace";
  permission java.lang.RuntimePermission "modifyThreadGroup";
//-----------------------------------------------------------------------------
};