]> WPIA git - gigi.git/commitdiff
CertificateIssue: SAN type guessing if it does not contain a ":".
authorFelix Dörre <felix@dogcraft.de>
Tue, 12 Aug 2014 20:51:45 +0000 (22:51 +0200)
committerFelix Dörre <felix@dogcraft.de>
Tue, 12 Aug 2014 22:13:11 +0000 (00:13 +0200)
src/org/cacert/gigi/pages/account/CertificateIssueForm.java

index 6e7592539f85a09ed34ac64454f21e29c075ef24..a5c738d22b7f00bb7f8b29d915b8f320c79109a1 100644 (file)
@@ -285,9 +285,20 @@ public class CertificateIssueForm extends Form {
         TreeSet<SubjectAlternateName> parsedNames = new TreeSet<>();
         for (String SANline : SANparts) {
             String[] parts = SANline.split(":", 2);
+            if (parts.length == 1) {
+                if (parts[0].trim().equals("")) {
+                    continue;
+                }
+                if (parts[0].contains("@")) {
+                    parsedNames.add(new SubjectAlternateName(SANType.EMAIL, parts[0]));
+                } else {
+                    parsedNames.add(new SubjectAlternateName(SANType.DNS, parts[0]));
+                }
+                continue;
+            }
             try {
                 SANType t = Certificate.SANType.valueOf(parts[0].toUpperCase());
-                if (t == null || parts.length == 1) {
+                if (t == null) {
                     continue;
                 }
                 parsedNames.add(new SubjectAlternateName(t, parts[1]));