提交 ddbee460 编写于 作者: M mullan

7050329: test/java/security/Policy/GetPermissions/JarURL.java fails on Windows

Reviewed-by: alanb
上级 e41a27c6
...@@ -23,11 +23,13 @@ ...@@ -23,11 +23,13 @@
/* /*
* @test * @test
* @bug 7044443 * @bug 7044443 7050329
* @run main/othervm/policy=JarURL.policy JarURL
* @summary Permissions resolved incorrectly for jar protocol * @summary Permissions resolved incorrectly for jar protocol
*/ */
import java.net.URL; import java.net.URL;
import java.io.File;
import java.security.AllPermission; import java.security.AllPermission;
import java.security.CodeSource; import java.security.CodeSource;
import java.security.PermissionCollection; import java.security.PermissionCollection;
...@@ -35,11 +37,11 @@ import java.security.Policy; ...@@ -35,11 +37,11 @@ import java.security.Policy;
import java.security.cert.Certificate; import java.security.cert.Certificate;
public class JarURL { public class JarURL {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
URL codeSourceURL String userDir = System.getProperty("user.dir");
= new URL("jar:file:" String jarURL = "jar:file:" + userDir + File.separator + "foo.jar!/";
+ System.getProperty("java.ext.dirs").split(":")[0] URL codeSourceURL = new URL(jarURL);
+ "/foo.jar!/");
CodeSource cs = new CodeSource(codeSourceURL, new Certificate[0]); CodeSource cs = new CodeSource(codeSourceURL, new Certificate[0]);
PermissionCollection perms = Policy.getPolicy().getPermissions(cs); PermissionCollection perms = Policy.getPolicy().getPermissions(cs);
if (!perms.implies(new AllPermission())) if (!perms.implies(new AllPermission()))
......
grant codeBase "file:${user.dir}/*" {
permission java.security.AllPermission;
};
grant {
permission java.util.PropertyPermission "user.dir", "read";
permission java.security.SecurityPermission "getPolicy";
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册