X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Fclub%2Fwpia%2Fgigi%2Fapi%2FRevokeCertificate.java;h=e8e8b9643eb1e19b2ef781ba987dda97ee7edda4;hb=3889444cb95132e342e4b7156245dd032ed3b16b;hp=1b21e240f4f7d1877eab27bd8803afd114e27758;hpb=bccd4cc0dba0f89aa045b113bac46eb8cc1dab4e;p=gigi.git diff --git a/src/club/wpia/gigi/api/RevokeCertificate.java b/src/club/wpia/gigi/api/RevokeCertificate.java index 1b21e240..e8e8b964 100644 --- a/src/club/wpia/gigi/api/RevokeCertificate.java +++ b/src/club/wpia/gigi/api/RevokeCertificate.java @@ -1,14 +1,16 @@ package club.wpia.gigi.api; import java.io.IOException; +import java.math.BigInteger; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import club.wpia.gigi.dbObjects.Certificate; +import club.wpia.gigi.dbObjects.Certificate.CertificateStatus; +import club.wpia.gigi.dbObjects.Certificate.RevocationType; import club.wpia.gigi.dbObjects.Job; import club.wpia.gigi.dbObjects.User; -import club.wpia.gigi.dbObjects.Certificate.CertificateStatus; public class RevokeCertificate extends APIPoint { @@ -28,19 +30,19 @@ public class RevokeCertificate extends APIPoint { } String tserial = req.getParameter("serial"); - if (tserial == null) { + if (tserial == null || tserial.isEmpty()) { resp.sendError(500, "Error, no Serial found"); return; } - Certificate c = Certificate.getBySerial(tserial); + Certificate c = Certificate.getBySerial(new BigInteger(tserial, 16)); if (c == null || c.getOwner() != u) { resp.sendError(403, "Access Denied"); return; } - Job job = c.revoke(); - job.waitFor(60000); + Job job = c.revoke(RevocationType.USER); + job.waitFor(Job.WAIT_MIN); if (c.getStatus() != CertificateStatus.REVOKED) { resp.sendError(510, "Error, issuing timed out"); return;