Remove X509_TRUST_OCSP_SIGN and X509_TRUST_OCSP_REQUEST
These are unused and are the only options that remove the "compat"
self-signed fallback.
X509_TRUST_OCSP_REQUEST was intended for checking signed OCSP requests.
While OpenSSL's OCSP implementation (which we've dropped) does attempt
to configure it, it actually does nothing. They call
X509_STORE_CTX_set_trust after X509_STORE_CTX_set_purpose, but
X509_STORE_CTX_set_purpose already sets the trust parameter and
X509_STORE_CTX_set_trust only acts when trust is not configured.
X509_TRUST_OCSP_SIGN was briefly used in upstream's
30c278aa6bb614f4cfc5a26c7cbe66ad090f6896, by way of
X509_PURPOSE_OCSP_HELPER, but then immediately undone in
e9754726d236b74476cd0be5fa60acfef0c7024f.
Change-Id: I6d2cf9b88a6b013e74fe95cd88f94051111086df
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/65151
Reviewed-by: Bob Beck <bbe@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
diff --git a/crypto/x509/x509_trs.c b/crypto/x509/x509_trs.c
index 9db4bee..38dc96b 100644
--- a/crypto/x509/x509_trs.c
+++ b/crypto/x509/x509_trs.c
@@ -67,7 +67,6 @@
static int trust_1oidany(const X509_TRUST *trust, X509 *x, int flags);
-static int trust_1oid(const X509_TRUST *trust, X509 *x, int flags);
static int trust_compat(const X509_TRUST *trust, X509 *x, int flags);
static int obj_trust(int id, X509 *x, int flags);
@@ -82,10 +81,6 @@
NID_email_protect, NULL},
{X509_TRUST_OBJECT_SIGN, 0, trust_1oidany, (char *)"Object Signer",
NID_code_sign, NULL},
- {X509_TRUST_OCSP_SIGN, 0, trust_1oid, (char *)"OCSP responder",
- NID_OCSP_sign, NULL},
- {X509_TRUST_OCSP_REQUEST, 0, trust_1oid, (char *)"OCSP request",
- NID_ad_OCSP, NULL},
{X509_TRUST_TSA, 0, trust_1oidany, (char *)"TSA server", NID_time_stamp,
NULL}};
@@ -155,13 +150,6 @@
return trust_compat(trust, x, flags);
}
-static int trust_1oid(const X509_TRUST *trust, X509 *x, int flags) {
- if (x->aux) {
- return obj_trust(trust->arg1, x, flags);
- }
- return X509_TRUST_UNTRUSTED;
-}
-
static int trust_compat(const X509_TRUST *trust, X509 *x, int flags) {
if (!x509v3_cache_extensions(x)) {
return X509_TRUST_UNTRUSTED;
diff --git a/include/openssl/x509.h b/include/openssl/x509.h
index 1757e8e..099d5ef 100644
--- a/include/openssl/x509.h
+++ b/include/openssl/x509.h
@@ -3557,8 +3557,6 @@
#define X509_TRUST_SSL_SERVER 3
#define X509_TRUST_EMAIL 4
#define X509_TRUST_OBJECT_SIGN 5
-#define X509_TRUST_OCSP_SIGN 6
-#define X509_TRUST_OCSP_REQUEST 7
#define X509_TRUST_TSA 8
// check_trust return codes