diff options
| author | tb <> | 2026-04-07 12:52:19 +0000 |
|---|---|---|
| committer | tb <> | 2026-04-07 12:52:19 +0000 |
| commit | c8f25bd7366a35c48b23230ab0da4f3484424ba2 (patch) | |
| tree | c5520ebd0938ea7b3e5d0b47c44c720cd4eccd1e /src/lib/libcrypto | |
| parent | e0240e9ee3c8649869db81bfb1767d8a225d80f7 (diff) | |
| download | openbsd-c8f25bd7366a35c48b23230ab0da4f3484424ba2.tar.gz openbsd-c8f25bd7366a35c48b23230ab0da4f3484424ba2.tar.bz2 openbsd-c8f25bd7366a35c48b23230ab0da4f3484424ba2.zip | |
Add a few to-do items to the crl_cb()
Prompted by the "fix" fighting symptoms of misdesign in Delta CRL processing
rather than addressing the root cause. Probably the best fix is to remove
support for Indirect CRLs and Delta CRLs outright.
ok jsing
Diffstat (limited to 'src/lib/libcrypto')
| -rw-r--r-- | src/lib/libcrypto/asn1/x_crl.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/libcrypto/asn1/x_crl.c b/src/lib/libcrypto/asn1/x_crl.c index 59f867bc12..d95b044a89 100644 --- a/src/lib/libcrypto/asn1/x_crl.c +++ b/src/lib/libcrypto/asn1/x_crl.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: x_crl.c,v 1.51 2025/08/19 21:54:11 tb Exp $ */ | 1 | /* $OpenBSD: x_crl.c,v 1.52 2026/04/07 12:52:19 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -282,6 +282,11 @@ crl_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, void *exarg) | |||
| 282 | break; | 282 | break; |
| 283 | 283 | ||
| 284 | case ASN1_OP_D2I_POST: | 284 | case ASN1_OP_D2I_POST: |
| 285 | /* | ||
| 286 | * XXX - This sets EXFLAG_INVALID but there's no code checking | ||
| 287 | * it. The verifier treats CRLs with EXFLAG_INVALID as valid. | ||
| 288 | * Also fix all the missing and incomplete error checks here. | ||
| 289 | */ | ||
| 285 | X509_CRL_digest(crl, X509_CRL_HASH_EVP, crl->hash, NULL); | 290 | X509_CRL_digest(crl, X509_CRL_HASH_EVP, crl->hash, NULL); |
| 286 | crl->idp = X509_CRL_get_ext_d2i(crl, | 291 | crl->idp = X509_CRL_get_ext_d2i(crl, |
| 287 | NID_issuing_distribution_point, NULL, NULL); | 292 | NID_issuing_distribution_point, NULL, NULL); |
