Author: gtrasuk
Date: Wed Sep 4 13:36:45 2013
New Revision: 1520020
URL: http://svn.apache.org/r1520020
Log:
>From JDK 7 Update 21, the RMI property java.rmi.server.useCodebaseOnly is set
>to true by default. In earlier releases, the default value was false.
The default behavior disables rmi classloading from sources called out in the
codebase, which is Jini uses extensively.
These fixes update the QA platform to include this property setting in the QA
harness properties. In addition, serializing dynamically-generated proxies now
appears to require the RuntimePermission "accessClassInPackage.com.sun.proxy",
so this fix also adds that permission to 'defaulttest.policy',
'jinitest.policy', and 'defaultmahalo.policy'.
Modified:
river/jtsk/branches/2.2/qa/harness/policy/defaultmahalo.policy
river/jtsk/branches/2.2/qa/harness/policy/defaulttest.policy
river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/jinitest.policy
river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/qaHarness.prop
Modified: river/jtsk/branches/2.2/qa/harness/policy/defaultmahalo.policy
URL:
http://svn.apache.org/viewvc/river/jtsk/branches/2.2/qa/harness/policy/defaultmahalo.policy?rev=1520020&r1=1520019&r2=1520020&view=diff
==============================================================================
--- river/jtsk/branches/2.2/qa/harness/policy/defaultmahalo.policy (original)
+++ river/jtsk/branches/2.2/qa/harness/policy/defaultmahalo.policy Wed Sep 4
13:36:45 2013
@@ -9,3 +9,9 @@ grant codebase "file:${com.sun.jini.jsk.
grant codebase "file:${com.sun.jini.jsk.home}${/}lib${/}jsk-lib.jar" {
permission java.security.AllPermission "", "";
};
+
+grant {
+ //Needed since JDK7u25 appears to have made the proxy inaccessible.
+ permission java.lang.RuntimePermission
+ "accessClassInPackage.com.sun.proxy";
+};
Modified: river/jtsk/branches/2.2/qa/harness/policy/defaulttest.policy
URL:
http://svn.apache.org/viewvc/river/jtsk/branches/2.2/qa/harness/policy/defaulttest.policy?rev=1520020&r1=1520019&r2=1520020&view=diff
==============================================================================
--- river/jtsk/branches/2.2/qa/harness/policy/defaulttest.policy (original)
+++ river/jtsk/branches/2.2/qa/harness/policy/defaulttest.policy Wed Sep 4
13:36:45 2013
@@ -63,6 +63,10 @@ grant codebase "file:${com.sun.jini.qa.h
// needed by various proxies
grant {
+ //Needed since JDK7u25 appears to have made the proxy inaccessible.
+ permission java.lang.RuntimePermission
+ "accessClassInPackage.com.sun.proxy";
+
permission java.lang.RuntimePermission
"accessClassInPackage.sun.util.logging.resources";
Modified:
river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/jinitest.policy
URL:
http://svn.apache.org/viewvc/river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/jinitest.policy?rev=1520020&r1=1520019&r2=1520020&view=diff
==============================================================================
--- river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/jinitest.policy
(original)
+++ river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/jinitest.policy
Wed Sep 4 13:36:45 2013
@@ -110,3 +110,12 @@ grant codebase "file:${com.sun.jini.jsk.
permission com.sun.jini.start.SharedActivationPolicyPermission
"file:${com.sun.jini.test.home}${/}src${/}com${/}sun${/}jini${/}test${/}impl${/}mahalo${/}bogusMahaloImpl.policy";
permission com.sun.jini.start.SharedActivationPolicyPermission
"jar:file:${com.sun.jini.qa.harness.testJar}!/com/sun/jini/test/impl/mahalo/bogusMahaloImpl.policy";
};
+
+// JDK7u21 and higher try to disallow remote codebase and proxy usage. This
grant
+// un-does that.
+grant {
+ //Needed since JDK7u25 appears to have made the proxy inaccessible.
+ permission java.lang.RuntimePermission
+ "accessClassInPackage.com.sun.proxy";
+};
+
Modified:
river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/qaHarness.prop
URL:
http://svn.apache.org/viewvc/river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/qaHarness.prop?rev=1520020&r1=1520019&r2=1520020&view=diff
==============================================================================
--- river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/qaHarness.prop
(original)
+++ river/jtsk/branches/2.2/qa/src/com/sun/jini/test/resources/qaHarness.prop
Wed Sep 4 13:36:45 2013
@@ -216,7 +216,8 @@ testOverrideProviders=${testOverrideProv
com.sun.jini.qa.harness.globalvmargs=${com.sun.jini.qa.harness.globalvmargs},\
-Dcom.sun.jini.test.home=${com.sun.jini.test.home},\
-Dcom.sun.jini.test.port=${com.sun.jini.test.port},\
--Dcom.sun.jini.qa.harness.policies=<url:
src/com/sun/jini/test/resources/jinitest.policy>
+-Dcom.sun.jini.qa.harness.policies=<url:
src/com/sun/jini/test/resources/jinitest.policy>,\
+-Djava.rmi.server.useCodebaseOnly=false
# make sure slave's use their local test home directory
com.sun.jini.qa.harness.slaveOverrides=${com.sun.jini.qa.harness.slaveOverrides}
com.sun.jini.test.home