Skip to content

Commit 0dce480

Browse files
committed
docs: update README revocation notes
* The Android revocation support has been changed to only check end-entity revocation status. * Upstream Rustls' webpki verifier now supports CRL revocation checking, but this isn't exposed via the rustls-platform-verifier fallback. Add some guidance for this.
1 parent ca41ec3 commit 0dce480

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

README.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,16 @@ This library supports the following platforms and flows:
2727
| WASM | webpki roots | webpki | No[^2] |
2828

2929
[^1]: On Android, revocation checking requires API version >= 24 (e.g. at least Android 7.0, August 2016).
30-
For newer devices that support revocation, Android requires certificates to specify a revocation provider
31-
for network fetch (including optionally stapled OSCP response only applies to chain's end-entity).
32-
This may cause revocation checking to fail for enterprise/internal CAs that don't properly issue an end-entity.
30+
When available, revocation checking is only performed for the end-entity certificate. If a stapled OCSP
31+
response for the end-entity cert isn't provided, and the certificate omits both a OCSP responder URL and
32+
CRL distribution point to fetch revocation information from, revocation checking may fail.
3333

34-
[^2]: <https://docs.rs/rustls/0.20.6/src/rustls/verify.rs.html#341>
34+
[^2]: The fall-back webpki verifier configured for Linux/WASM does not support providing CRLs for revocation
35+
checking. If you require revocation checking on these platforms, prefer constructing your own
36+
`WebPkiServerVerifier`, providing necessary CRLs. See the Rustls [`ServerCertVerifierBuilder`] docs for more
37+
information.
38+
39+
[ServerCertVerifierBuilder]: https://docs.rs/rustls/latest/rustls/client/struct.ServerCertVerifierBuilder.html
3540

3641
## Installation and setup
3742
On most platforms, no setup should be required beyond adding the dependency via `cargo`:

0 commit comments

Comments
 (0)