X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;ds=sidebyside;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FIssueCertificateForm.java;h=da3a85b3a6f945abfa56acd02f0674fe74e4f178;hb=2cbe88c14309c3a10dab336cb395c3e995d81ec5;hp=a0dad7fd3753131eca9f003964f52d8103c9d182;hpb=09f0476b47711ec02bb96bdd2090ea1930f434a5;p=gigi.git diff --git a/src/org/cacert/gigi/pages/account/IssueCertificateForm.java b/src/org/cacert/gigi/pages/account/IssueCertificateForm.java index a0dad7fd..da3a85b3 100644 --- a/src/org/cacert/gigi/pages/account/IssueCertificateForm.java +++ b/src/org/cacert/gigi/pages/account/IssueCertificateForm.java @@ -19,6 +19,7 @@ import org.cacert.gigi.Digest; import org.cacert.gigi.EmailAddress; import org.cacert.gigi.Language; import org.cacert.gigi.User; +import org.cacert.gigi.Certificate.CSRType; import org.cacert.gigi.output.Form; import org.cacert.gigi.output.template.HashAlgorithms; import org.cacert.gigi.output.template.IterableDataset; @@ -47,6 +48,7 @@ public class IssueCertificateForm extends Form { } Certificate result; + private CSRType csrType; public Certificate getResult() { return result; @@ -55,7 +57,7 @@ public class IssueCertificateForm extends Form { @Override public boolean submit(PrintWriter out, HttpServletRequest req) { String csr = req.getParameter("CSR"); - String spkac = req.getParameter("spkac"); + String spkac = req.getParameter("SPKAC"); try { if (csr != null) { PKCS10 parsed = parseCSR(csr); @@ -79,8 +81,10 @@ public class IssueCertificateForm extends Form { } out.println("
digest: sha256
"); this.csr = csr; + this.csrType = CSRType.CSR; } else if (spkac != null) { - + this.csr = "SPKAC=" + spkac.replaceAll("[\r\n]", ""); + this.csrType = CSRType.SPKAC; } else { login = "1".equals(req.getParameter("login")); String hashAlg = req.getParameter("hash_alg"); @@ -93,7 +97,7 @@ public class IssueCertificateForm extends Form { } System.out.println("issuing " + selectedDigest); result = new Certificate(LoginPage.getUser(req).getId(), "/commonName=CAcert WoT User", - selectedDigest.toString(), this.csr); + selectedDigest.toString(), this.csr, this.csrType); try { result.issue().waitFor(60000); return true;