X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMailCertificateAdd.java;h=97038898e8e704619dead0ded5b15f57eee6f66b;hp=35899c5da73e82ebf328f052dd30a41214f9282e;hb=ab88602bac4ff5c5540765a85a2013ecadb070df;hpb=38dff9a7533e8122d6758f9de18b006e3b3f8084;ds=sidebyside diff --git a/src/org/cacert/gigi/pages/account/MailCertificateAdd.java b/src/org/cacert/gigi/pages/account/MailCertificateAdd.java index 35899c5d..97038898 100644 --- a/src/org/cacert/gigi/pages/account/MailCertificateAdd.java +++ b/src/org/cacert/gigi/pages/account/MailCertificateAdd.java @@ -2,11 +2,14 @@ package org.cacert.gigi.pages.account; import java.io.IOException; import java.io.PrintWriter; +import java.security.GeneralSecurityException; +import java.sql.SQLException; import java.util.HashMap; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.cacert.gigi.Certificate; import org.cacert.gigi.output.ClientCSRGenerate; import org.cacert.gigi.pages.Page; @@ -21,6 +24,8 @@ public class MailCertificateAdd extends Page { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { HashMap vars = new HashMap(); + vars.put("CCA", + "CCA"); getDefaultTemplate().output(resp.getWriter(), getLanguage(req), vars); } @Override @@ -32,7 +37,25 @@ public class MailCertificateAdd extends Page { out.println("csr missing"); ClientCSRGenerate.output(req, resp); } - out.println("could now start processing the cert request"); + String csr = req.getParameter("optionalCSR"); + if (!"on".equals(req.getParameter("CCA"))) { + // Error. + return; + } + Certificate c = new Certificate("/commonName=felix@dogcraft.de", + "sha256", csr); + c.issue(); + try { + c.waitFor(60000); + out.println(c.getStatus()); + out.println(c.cert()); + } catch (SQLException e1) { + e1.printStackTrace(); + } catch (GeneralSecurityException e) { + e.printStackTrace(); + } catch (InterruptedException e) { + e.printStackTrace(); + } } }