allow_expired_crl:: Accept an expired Certificate Revocation List.
+
+allow_not_yet_valid_crl:: Accept a not-yet-valid Certificate Revocation List.
+
+
+
### TLS Session resumption
Once authentication has completed the TLS client may be
# attribute_mode = client-and-issuer
# check_crl = yes
# allow_expired_crl = no
+# allow_not_yet_valid_crl = no
}
cache {
# mode = auto
+allow_not_yet_valid_crl:: See the `eap` module for common configuration explanation.
+
+
+
## tls { ... }
You SHOULD use different certificates than are used
# check_cert_issuer = "/C=GB/ST=Berkshire/L=Newbury/O=My Company Ltd"
# check_cert_cn = %{User-Name}
# allow_expired_crl = no
+# allow_not_yet_valid_crl = no
}
tls {
tls = tls-peer
allow_expired_crl = no
+Accept a not-yet-valid Certificate Revocation List
+
+allow_not_yet_valid_crl = no
+
If check_cert_issuer is set, the value will
be checked against the DN of the issuer in
# allow_expired_crl:: Accept an expired Certificate Revocation List.
#
# allow_expired_crl = no
+
+ #
+ # allow_not_yet_valid_crl:: Accept a not-yet-valid Certificate Revocation List.
+ #
+# allow_not_yet_valid_crl = no
}
#
# ### TLS Session resumption
# allow_expired_crl:: See the `eap` module for common configuration explanation.
#
# allow_expired_crl = no
+
+ #
+ # allow_not_yet_valid_crl:: See the `eap` module for common configuration explanation.
+ #
+# allow_not_yet_valid_crl = no
}
#
#
# allow_expired_crl = no
+ # Accept a not-yet-valid Certificate Revocation List
+ #
+ # allow_not_yet_valid_crl = no
+
#
# If check_cert_issuer is set, the value will
# be checked against the DN of the issuer in
bool check_crl; //!< Check certificate revocation lists.
bool allow_expired_crl; //!< Don't error out if CRL is expired.
+ bool allow_not_yet_valid_crl; //!< Don't error out if CRL is not-yet-valid.
} fr_tls_verify_conf_t;
/* configured values goes right here */
.dflt = "client-and-issuer" },
{ FR_CONF_OFFSET("check_crl", FR_TYPE_BOOL, fr_tls_verify_conf_t, check_crl), .dflt = "no" },
{ FR_CONF_OFFSET("allow_expired_crl", FR_TYPE_BOOL, fr_tls_verify_conf_t, allow_expired_crl) },
+ { FR_CONF_OFFSET("allow_not_yet_valid_crl", FR_TYPE_BOOL, fr_tls_verify_conf_t, allow_not_yet_valid_crl) },
CONF_PARSER_TERMINATOR
};
if (!my_ok) {
char const *p = X509_verify_cert_error_string(err);
if (!verify_applies(conf->verify.mode, depth, untrusted) ||
- ((conf->verify.allow_expired_crl) && (err == X509_V_ERR_CRL_HAS_EXPIRED))) {
+ ((conf->verify.allow_expired_crl) && (err == X509_V_ERR_CRL_HAS_EXPIRED)) ||
+ ((conf->verify.allow_not_yet_valid_crl) && (err == X509_V_ERR_CRL_NOT_YET_VALID))) {
RDEBUG2("Ignoring verification error - %s (%i)", p, err);
tls_verify_error_detail(request, ssl_ctx, err);