JWT_VRFY_INVALID_TOKEN = -3,
JWT_VRFY_OUT_OF_MEMORY = -4,
JWT_VRFY_UNKNOWN_CERT = -5,
- JWT_VRFY_INTERNAL_ERR = -6
+ JWT_VRFY_INTERNAL_ERR = -6,
+ JWT_VRFY_UNAVAIL_CERT = -7,
};
#endif /* USE_OPENSSL */
if (!HA_SPIN_TRYLOCK(CKCH_LOCK, &ckch_lock)) {
store = ckchs_lookup(ctx->key);
- if (store && store->conf.jwt) {
- pubkey = X509_get_pubkey(store->data->cert);
- if (pubkey)
- EVP_PKEY_up_ref(pubkey);
+ if (store) {
+ if (store->conf.jwt) {
+ pubkey = X509_get_pubkey(store->data->cert);
+ if (pubkey)
+ EVP_PKEY_up_ref(pubkey);
+ } else
+ retval = JWT_VRFY_UNAVAIL_CERT;
}
HA_SPIN_UNLOCK(CKCH_LOCK, &ckch_lock);
}
}
if (!pubkey) {
- retval = JWT_VRFY_UNKNOWN_CERT;
+ if (!retval)
+ retval = JWT_VRFY_UNKNOWN_CERT;
goto end;
}