src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Main.java
changeset 57766 81ce766c9111
parent 55312 d8942f5d6c75
child 58679 9c3209ff7550
equal deleted inserted replaced
57765:a89ec7fc99aa 57766:81ce766c9111
   683         try {
   683         try {
   684             jf = new JarFile(jarName, true);
   684             jf = new JarFile(jarName, true);
   685             Vector<JarEntry> entriesVec = new Vector<>();
   685             Vector<JarEntry> entriesVec = new Vector<>();
   686             byte[] buffer = new byte[8192];
   686             byte[] buffer = new byte[8192];
   687 
   687 
       
   688             String suffix1 = "-Digest-Manifest";
       
   689             String suffix2 = "-Digest-" + ManifestDigester.MF_MAIN_ATTRS;
       
   690 
       
   691             int suffixLength1 = suffix1.length();
       
   692             int suffixLength2 = suffix2.length();
       
   693 
   688             Enumeration<JarEntry> entries = jf.entries();
   694             Enumeration<JarEntry> entries = jf.entries();
   689             while (entries.hasMoreElements()) {
   695             while (entries.hasMoreElements()) {
   690                 JarEntry je = entries.nextElement();
   696                 JarEntry je = entries.nextElement();
   691                 entriesVec.addElement(je);
   697                 entriesVec.addElement(je);
   692                 try (InputStream is = jf.getInputStream(je)) {
   698                 try (InputStream is = jf.getInputStream(je)) {
   699                             if (name.endsWith(".SF")) {
   705                             if (name.endsWith(".SF")) {
   700                                 Manifest sf = new Manifest(is);
   706                                 Manifest sf = new Manifest(is);
   701                                 boolean found = false;
   707                                 boolean found = false;
   702                                 for (Object obj : sf.getMainAttributes().keySet()) {
   708                                 for (Object obj : sf.getMainAttributes().keySet()) {
   703                                     String key = obj.toString();
   709                                     String key = obj.toString();
   704                                     if (key.endsWith("-Digest-Manifest")) {
   710                                     if (key.endsWith(suffix1)) {
   705                                         digestMap.put(alias,
   711                                         digestMap.put(alias, key.substring(
   706                                                 key.substring(0, key.length() - 16));
   712                                                 0, key.length() - suffixLength1));
       
   713                                         found = true;
       
   714                                         break;
       
   715                                     } else if (key.endsWith(suffix2)) {
       
   716                                         digestMap.put(alias, key.substring(
       
   717                                                 0, key.length() - suffixLength2));
   707                                         found = true;
   718                                         found = true;
   708                                         break;
   719                                         break;
   709                                     }
   720                                     }
   710                                 }
   721                                 }
   711                                 if (!found) {
   722                                 if (!found) {