X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=util-testing%2Forg%2Fcacert%2Fgigi%2Futil%2FSimpleSigner.java;h=f2b97d7bcd958380088ebf432372f2e9eef36a62;hp=9a2fb1074f612bd62ce4f5f850d31ec644b87fd8;hb=cdea5a0765ccb868dc3f37d7e7a1b7cae357dfc6;hpb=dd08e76b61c848c75e6a8ca0d9f4a6b22ac112b9 diff --git a/util-testing/org/cacert/gigi/util/SimpleSigner.java b/util-testing/org/cacert/gigi/util/SimpleSigner.java index 9a2fb107..f2b97d7b 100644 --- a/util-testing/org/cacert/gigi/util/SimpleSigner.java +++ b/util-testing/org/cacert/gigi/util/SimpleSigner.java @@ -127,14 +127,14 @@ public class SimpleSigner { readyCerts = new GigiPreparedStatement("SELECT certs.id AS id, certs.csr_name, jobs.id AS jobid, csr_type, md, `executeFrom`, `executeTo`, profile FROM jobs " + // "INNER JOIN certs ON certs.id=jobs.`targetId` " + // "INNER JOIN profiles ON profiles.id=certs.profile " + // - "WHERE jobs.state='open' "// - + "AND task='sign'"); + "WHERE jobs.state='open' " + // + "AND task='sign'"); getSANSs = new GigiPreparedStatement("SELECT contents, type FROM `subjectAlternativeNames` " + // "WHERE `certId`=?"); updateMail = new GigiPreparedStatement("UPDATE certs SET crt_name=?," + " created=NOW(), serial=?, caid=? WHERE id=?"); - warnMail = new GigiPreparedStatement("UPDATE jobs SET warning=warning+1, state=IF(warning<3, 'open','error') WHERE id=?"); + warnMail = new GigiPreparedStatement("UPDATE jobs SET warning=warning+1, state=CASE WHEN warning<3 THEN 'open'::`jobState` ELSE 'error'::`jobState` END WHERE id=?"); revoke = new GigiPreparedStatement("SELECT certs.id, certs.csr_name,jobs.id FROM jobs INNER JOIN certs ON jobs.`targetId`=certs.id" + " WHERE jobs.state='open' AND task='revoke'"); revokeCompleted = new GigiPreparedStatement("UPDATE certs SET revoked=NOW() WHERE id=?"); @@ -335,10 +335,13 @@ public class SimpleSigner { if (null == caFiles) { caFiles = new File[0]; } - for (File f : caFiles) { - if (f.getName().startsWith(caP.getProperty("ca"))) { - ca = f.getName(); - break; + if ( !new File(parent, ca).exists()) { + System.out.println("CA " + ca + " not found. Searching for anything other remotely fitting."); + for (File f : caFiles) { + if (f.getName().startsWith(caP.getProperty("ca"))) { + ca = f.getName(); + break; + } } } File caKey = new File(parent, ca + "/ca.key"); @@ -511,6 +514,7 @@ public class SimpleSigner { try (DerOutputStream dos = new DerOutputStream()) { for (String name : eku.split(",")) { + name = name.trim(); ObjectIdentifier oid; switch (name) { case "serverAuth":