< prev index next >

src/java.base/share/classes/sun/net/www/protocol/jrt/JavaRuntimeURLConnection.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 24,35 **** */ package sun.net.www.protocol.jrt; import java.io.ByteArrayInputStream; - import java.io.File; - import java.io.FilePermission; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.security.AccessController; --- 24,33 ----
*** 42,52 **** import jdk.internal.loader.URLClassPath; import jdk.internal.loader.Resource; import sun.net.www.ParseUtil; import sun.net.www.URLConnection; - import sun.security.action.GetPropertyAction; /** * URLConnection implementation that can be used to connect to resources * contained in the runtime image. */ --- 40,49 ----
*** 64,76 **** private final String name; // the Resource when connected private volatile Resource resource; - // the permission to access resources in the runtime image, created lazily - private static volatile Permission permission; - JavaRuntimeURLConnection(URL url) throws IOException { super(url); String path = url.getPath(); if (path.length() == 0 || path.charAt(0) != '/') throw new MalformedURLException(url + " missing path or /"); --- 61,70 ----
*** 162,179 **** long len = getContentLengthLong(); return len > Integer.MAX_VALUE ? -1 : (int)len; } @Override ! public Permission getPermission() throws IOException { ! Permission p = permission; ! if (p == null) { ! String home = GetPropertyAction.privilegedGetProperty("java.home"); ! p = new FilePermission(home + File.separator + "-", "read"); ! permission = p; ! } ! return p; } /** * Returns a jrt URL for the given module and resource name. */ --- 156,167 ---- long len = getContentLengthLong(); return len > Integer.MAX_VALUE ? -1 : (int)len; } @Override ! public Permission getPermission() { ! return new RuntimePermission("accessSystemModules"); } /** * Returns a jrt URL for the given module and resource name. */
< prev index next >