import java.io.IOException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
+import java.math.BigInteger;
import java.security.KeyStore;
import java.security.cert.X509Certificate;
import java.util.Calendar;
import club.wpia.gigi.pages.admin.support.SupportUserDetailsPage;
import club.wpia.gigi.pages.error.AccessDenied;
import club.wpia.gigi.pages.error.PageNotFound;
+import club.wpia.gigi.pages.main.CertStatusRequestPage;
import club.wpia.gigi.pages.main.KeyCompromisePage;
import club.wpia.gigi.pages.main.RegisterPage;
import club.wpia.gigi.pages.orga.CreateOrgPage;
+import club.wpia.gigi.pages.orga.SwitchOrganisation;
import club.wpia.gigi.pages.orga.ViewOrgPage;
import club.wpia.gigi.pages.statistics.StatisticsRoles;
import club.wpia.gigi.pages.wot.Points;
putPage(StatisticsRoles.PATH, new StatisticsRoles(), mainMenu);
putPage("/about", new AboutPage(), mainMenu);
putPage(RegisterPage.PATH, new RegisterPage(), mainMenu);
+ putPage(CertStatusRequestPage.PATH, new CertStatusRequestPage(), mainMenu);
putPage(KeyCompromisePage.PATH, new KeyCompromisePage(), mainMenu);
putPage(Verify.PATH, new Verify(), null);
putPage(TTPAdminPage.PATH + "/*", new TTPAdminPage(), admMenu);
putPage(CreateOrgPage.DEFAULT_PATH, new CreateOrgPage(), orgAdm);
putPage(ViewOrgPage.DEFAULT_PATH + "/*", new ViewOrgPage(), orgAdm);
+ putPage(SwitchOrganisation.PATH, new SwitchOrganisation(), orgAdm);
Menu support = createMenu("Support Console");
putPage(SupportEnterTicketPage.PATH, new SupportEnterTicketPage(), support);
return;
}
HttpSession hs = req.getSession();
- String clientSerial = (String) hs.getAttribute(CERT_SERIAL);
+ BigInteger clientSerial = (BigInteger) hs.getAttribute(CERT_SERIAL);
if (clientSerial != null) {
X509Certificate[] cert = (X509Certificate[]) req.getAttribute("javax.servlet.request.X509Certificate");
if (cert == null || cert[0] == null//
- || !cert[0].getSerialNumber().toString(16).toLowerCase().equals(clientSerial) //
+ || !cert[0].getSerialNumber().equals(clientSerial) //
|| !cert[0].getIssuerDN().equals(hs.getAttribute(CERT_ISSUER))) {
hs.invalidate();
resp.sendError(403, "Certificate mismatch.");