Hi,

[...]
> Is this an area where the current behavior cannot be used safely?  No.
>  Indeed, using CAs in circumstances where OpenSSL doesn't may create
> security issues for existing scripts using the openssl command.
> 
> *If* using the compiled in paths is correct, then I would think using the
> setup_verify() function and thus following the behavior of "smime" and
> "ocsp" would be a better choice, but changing that behavior seems unwise.

Ignoring the details of what the correct behaviour should look like for the
moment, but I think you fell victim to the confusion potential of the
current code? The current code most certainly does not do what users
expect, or what the documentation claims, or even what could make sense in
even the most contrived scenario, and can easily cause security problems if
you aren't extra careful (that is, unless you test whether it actually does
what you expect it to do):

|       if ((!SSL_CTX_load_verify_locations(ctx, CAfile, CApath)) ||
|           (!SSL_CTX_set_default_verify_paths(ctx))) {

If loading the CAs specified by the user succeeds, we next override that by
loading the default instead.

Florian

Reply via email to