ossl_pw_passphrase_callback_dec,
&pwdata);
} else {
- loader_ctx = fetched_loader->p_open(provctx, uri);
- if (loader_ctx != NULL &&
+ if (fetched_loader->p_open != NULL &&
+ (loader_ctx = fetched_loader->p_open(provctx, uri)) != NULL &&
!loader_set_params(fetched_loader, loader_ctx,
params, propq)) {
(void)fetched_loader->p_close(loader_ctx);
OSSL_CORE_BIO *cbio = ossl_core_bio_new_from_bio(bp);
if (cbio == NULL
+ || fetched_loader->p_attach == NULL
|| (loader_ctx = fetched_loader->p_attach(provctx, cbio)) == NULL) {
OSSL_STORE_LOADER_free(fetched_loader);
fetched_loader = NULL;