fixes #73
Change-Id: I97addd9600ef073b9c7d305b2a4a755b332fec91
import org.cacert.gigi.output.template.Outputable;
import org.cacert.gigi.output.template.TranslateCommand;
import org.cacert.gigi.util.KeyStorage;
import org.cacert.gigi.output.template.Outputable;
import org.cacert.gigi.output.template.TranslateCommand;
import org.cacert.gigi.util.KeyStorage;
-import org.cacert.gigi.util.Notary;
public class Certificate implements IdCachable {
public class Certificate implements IdCachable {
if (getStatus() != CertificateStatus.DRAFT) {
throw new IllegalStateException();
}
if (getStatus() != CertificateStatus.DRAFT) {
throw new IllegalStateException();
}
- Notary.writeUserAgreement(actor, "ToS", "certificate issuance", "", true, 0);
return Job.sign(this, start, period);
return Job.sign(this, start, period);
} catch (GigiApiException e) {
error.mergeInto(e);
}
} catch (GigiApiException e) {
error.mergeInto(e);
}
- if (req.getParameter("tos_agree") == null) {
- error.mergeInto(new GigiApiException("You need to accept the ToS."));
- }
Certificate result = null;
try {
result = cr.draft();
Certificate result = null;
try {
result = cr.draft();
@Override
protected void outputContent(PrintWriter out, Language l, Map<String, Object> vars) {
HashMap<String, Object> vars2 = new HashMap<String, Object>(vars);
@Override
protected void outputContent(PrintWriter out, Language l, Map<String, Object> vars) {
HashMap<String, Object> vars2 = new HashMap<String, Object>(vars);
- vars2.put("ToS", "<a href='/policy/TermsOfService.html'>ToS</a>");
StringBuffer content = new StringBuffer();
for (SubjectAlternateName SAN : cr.getSANs()) {
StringBuffer content = new StringBuffer();
for (SubjectAlternateName SAN : cr.getSANs()) {
<td>
<?=$validity?>(<?=_start: "now" or YYYY-MM-DD date, end: e.g. 2y, 6m or YYYY-MM-DD date?>)
</td>
<td>
<?=$validity?>(<?=_start: "now" or YYYY-MM-DD date, end: e.g. 2y, 6m or YYYY-MM-DD date?>)
</td>
- </tr>
- <tr>
- <td class='check'>
- <input type="checkbox" id="tos_agree" name="tos_agree" />
- </td>
- <td align="left">
- <label for="tos_agree"><strong><?=_I accept the Terms of Service ($!{ToS}).?> </strong><br />
- <?=_Please note: You need to accept the ToS to proceed.?></label>
- </td>
</tr>
<tr><td colspan='2'> </td></tr>
</tr>
<tr><td colspan='2'> </td></tr>
OutputStream out = huc.getOutputStream();
out.write(("csrf=" + URLEncoder.encode(csrf, "UTF-8")).getBytes("UTF-8"));
out.write(("&CN=CAcert+WoT+User&profile=client&SANs=" + URLEncoder.encode("email:" + email + "\n", "UTF-8")).getBytes("UTF-8"));
OutputStream out = huc.getOutputStream();
out.write(("csrf=" + URLEncoder.encode(csrf, "UTF-8")).getBytes("UTF-8"));
out.write(("&CN=CAcert+WoT+User&profile=client&SANs=" + URLEncoder.encode("email:" + email + "\n", "UTF-8")).getBytes("UTF-8"));
- out.write(("&hash_alg=SHA512&tos_agree=y").getBytes("UTF-8"));
+ out.write(("&hash_alg=SHA512").getBytes("UTF-8"));
URLConnection uc = authenticate(new URL(huc.getHeaderField("Location") + ".crt"));
String crt = IOUtils.readURL(new InputStreamReader(uc.getInputStream(), "UTF-8"));
URLConnection uc = authenticate(new URL(huc.getHeaderField("Location") + ".crt"));
String crt = IOUtils.readURL(new InputStreamReader(uc.getInputStream(), "UTF-8"));
OutputStream out = huc.getOutputStream();
out.write(("csrf=" + URLEncoder.encode(csrf, "UTF-8")).getBytes("UTF-8"));
out.write(("&profile=client&CN=" + CertificateRequest.DEFAULT_CN + "&SANs=" + URLEncoder.encode("email:" + email + "\n", "UTF-8")).getBytes("UTF-8"));
OutputStream out = huc.getOutputStream();
out.write(("csrf=" + URLEncoder.encode(csrf, "UTF-8")).getBytes("UTF-8"));
out.write(("&profile=client&CN=" + CertificateRequest.DEFAULT_CN + "&SANs=" + URLEncoder.encode("email:" + email + "\n", "UTF-8")).getBytes("UTF-8"));
- out.write(("&hash_alg=SHA512&tos_agree=y&").getBytes("UTF-8"));
+ out.write(("&hash_alg=SHA512&").getBytes("UTF-8"));
out.write(validity.getBytes("UTF-8"));
String certurl = huc.getHeaderField("Location");
out.write(validity.getBytes("UTF-8"));
String certurl = huc.getHeaderField("Location");