jdk/src/java.base/share/classes/java/util/jar/JarFile.java
changeset 37593 824750ada3d6
parent 37308 4c4141aac146
child 37781 71ed5645f17c
equal deleted inserted replaced
37592:c80f098887f4 37593:824750ada3d6
    32 import java.util.stream.Stream;
    32 import java.util.stream.Stream;
    33 import java.util.stream.StreamSupport;
    33 import java.util.stream.StreamSupport;
    34 import java.util.zip.*;
    34 import java.util.zip.*;
    35 import java.security.CodeSigner;
    35 import java.security.CodeSigner;
    36 import java.security.cert.Certificate;
    36 import java.security.cert.Certificate;
    37 import java.security.AccessController;
       
    38 import java.security.CodeSource;
    37 import java.security.CodeSource;
    39 import jdk.internal.misc.SharedSecrets;
    38 import jdk.internal.misc.SharedSecrets;
    40 import sun.security.action.GetPropertyAction;
    39 import sun.security.action.GetPropertyAction;
    41 import sun.security.util.ManifestEntryVerifier;
    40 import sun.security.util.ManifestEntryVerifier;
    42 import sun.security.util.SignatureFileVerifier;
    41 import sun.security.util.SignatureFileVerifier;
   153         // Set up JavaUtilJarAccess in SharedSecrets
   152         // Set up JavaUtilJarAccess in SharedSecrets
   154         SharedSecrets.setJavaUtilJarAccess(new JavaUtilJarAccessImpl());
   153         SharedSecrets.setJavaUtilJarAccess(new JavaUtilJarAccessImpl());
   155 
   154 
   156         BASE_VERSION = 8;  // one less than lowest version for versioned entries
   155         BASE_VERSION = 8;  // one less than lowest version for versioned entries
   157         int runtimeVersion = jdk.Version.current().major();
   156         int runtimeVersion = jdk.Version.current().major();
   158         String jarVersion = AccessController.doPrivileged(
   157         String jarVersion =
   159                 new GetPropertyAction("jdk.util.jar.version"));
   158                 GetPropertyAction.getProperty("jdk.util.jar.version");
   160         if (jarVersion != null) {
   159         if (jarVersion != null) {
   161             int jarVer = Integer.parseInt(jarVersion);
   160             int jarVer = Integer.parseInt(jarVersion);
   162             runtimeVersion = (jarVer > runtimeVersion)
   161             runtimeVersion = (jarVer > runtimeVersion)
   163                     ? runtimeVersion : Math.max(jarVer, 0);
   162                     ? runtimeVersion : Math.max(jarVer, 0);
   164         }
   163         }
   165         RUNTIME_VERSION = runtimeVersion;
   164         RUNTIME_VERSION = runtimeVersion;
   166         String enableMultiRelease = AccessController.doPrivileged(
   165         String enableMultiRelease = GetPropertyAction
   167                 new GetPropertyAction("jdk.util.jar.enableMultiRelease", "true"));
   166                 .getProperty("jdk.util.jar.enableMultiRelease", "true");
   168         switch (enableMultiRelease) {
   167         switch (enableMultiRelease) {
   169             case "true":
   168             case "true":
   170             default:
   169             default:
   171                 MULTI_RELEASE_ENABLED = true;
   170                 MULTI_RELEASE_ENABLED = true;
   172                 MULTI_RELEASE_FORCED = false;
   171                 MULTI_RELEASE_FORCED = false;