goto end;
}
- xobj = X509_STORE_get_X509_by_subject(ctx, X509_LU_X509,
- X509_CRL_get_issuer(x));
+ xobj = X509_STORE_CTX_get_obj_by_subject(ctx, X509_LU_X509,
+ X509_CRL_get_issuer(x));
if (xobj == NULL) {
BIO_printf(bio_err, "Error getting CRL issuer certificate\n");
goto end;
}
}
+ if (badsig) {
+ const ASN1_BIT_STRING *sig;
+
+ X509_CRL_get0_signature(x, &sig, NULL);
+ corrupt_signature(sig);
+ }
+
if (num) {
for (i = 1; i <= num; i++) {
if (issuer == i) {
goto end;
}
- if (badsig) {
- ASN1_BIT_STRING *sig;
- unsigned char *psig;
- X509_CRL_get0_signature(&sig, NULL, x);
- psig = ASN1_STRING_data(sig);
- psig[ASN1_STRING_length(sig) - 1] ^= 0x1;
- }
-
if (outformat == FORMAT_ASN1)
i = (int)i2d_X509_CRL_bio(out, x);
else