提交 5c2ec54f 编写于 作者: B Bodo Möller

Make sure the return value of by_file_ctrl(..., X509_L_FILE_LOAD, ...)

aka X509_LOOKUP_load_file(...) is always 0 or 1, not the counter
returned from the recently introduced function X509_load_cert_crl_file.
X509_STORE_load_locations expects X509_LOOKUP_load_file to return 1 on
success, and possibly there's other software that relies on this too.
上级 73c55919
......@@ -100,8 +100,8 @@ static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl,
case X509_L_FILE_LOAD:
if (argl == X509_FILETYPE_DEFAULT)
{
ok=X509_load_cert_crl_file(ctx,X509_get_default_cert_file(),
X509_FILETYPE_PEM);
ok = (X509_load_cert_crl_file(ctx,X509_get_default_cert_file(),
X509_FILETYPE_PEM) != 0);
if (!ok)
{
X509err(X509_F_BY_FILE_CTRL,X509_R_LOADING_DEFAULTS);
......@@ -109,16 +109,17 @@ static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argp, long argl,
else
{
file=(char *)Getenv(X509_get_default_cert_file_env());
ok=X509_load_cert_crl_file(ctx,file,
X509_FILETYPE_PEM);
ok = (X509_load_cert_crl_file(ctx,file,
X509_FILETYPE_PEM) != 0);
}
}
else
{
if(argl == X509_FILETYPE_PEM)
ok=X509_load_cert_crl_file(ctx,argp,
X509_FILETYPE_PEM);
else ok=X509_load_cert_file(ctx,argp,(int)argl);
ok = (X509_load_cert_crl_file(ctx,argp,
X509_FILETYPE_PEM) != 0);
else
ok = (X509_load_cert_file(ctx,argp,(int)argl) != 0);
}
break;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册