< prev index next >

src/share/classes/sun/security/tools/keytool/Main.java

Print this page
rev 13042 : [mq]: 8193171-keytool-list-displays-JKS-for-a-PKCS12-keystore

@@ -2207,11 +2207,23 @@
      * Prints all keystore entries.
      */
     private void doPrintEntries(PrintStream out)
         throws Exception
     {
-        out.println(rb.getString("Keystore.type.") + keyStore.getType());
+        // Adjust displayed keystore type if needed.
+        String keystoreTypeToPrint = keyStore.getType();
+        if ("JKS".equalsIgnoreCase(keystoreTypeToPrint)) {
+            if (ksfile != null && ksfile.exists()) {
+                String realType = keyStoreType(ksfile);
+                // If the magic number does not conform to JKS
+                // then it must be PKCS12
+                if (!"JKS".equalsIgnoreCase(realType)) {
+                    keystoreTypeToPrint = P12KEYSTORE;
+                }
+            }
+        }
+        out.println(rb.getString("Keystore.type.") + keystoreTypeToPrint);
         out.println(rb.getString("Keystore.provider.") +
                 keyStore.getProvider().getName());
         out.println();
 
         MessageFormat form;
< prev index next >