Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable partial certificate chain validation #202

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

nicklan
Copy link

@nicklan nicklan commented Jul 16, 2021

This adds code to the Openssl implementation to set the X509_V_FLAG_PARTIAL_CHAIN flag (see here).

The way I've written it, it defaults to true. This is the behavior of curl (see here), and also seems to match the default go http client. The curl page also claims this is the more common behavior.

If you'd possible accept this I can see what happens on mac/windows, but I couldn't find anything related to it in the schannel or security-framework docs. I'm not sure what their default behavior is, and testing on those platforms is a bit tricky, but I can figure it out if needed.

@sfackler
Copy link
Owner

Configuration options need to apply to every backend.

@nicklan
Copy link
Author

nicklan commented Jul 16, 2021

i figured that would be an issue. so what about really useful features like this one that may not? just give up?

I'm guessing #cfging the higher level methods on the builder aren't an option?

@nicklan
Copy link
Author

nicklan commented Jul 16, 2021

btw, this page suggests to me that at least schannel defaults to this behavior, since curl provides an option to turn it OFF, which is only available to the openssl backend.

if that was the case, would you accept a pr to bring the openssl implementation in line with the schannel one?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants