Option to pass a trusted server certificate when cloning #430
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This fixes #414 by allowing the user to pass a trusted root certificate when cloning. This is necessary on OS X in sandboxed apps, as the libgit2/OpenSSL in a sandboxed app cannot for some reason access the system trust store for root certificates, and cloning with HTTPS fails.
Since I saw that all remote operations already have an
options
dictionary, I figured it makes the most sense to just add this option there. The downside is that the server certificate must be specified for all operations. Another option would be to have some kind of global options/configuration, but Objective-Git does not seem to have this notion, and I wasn’t sure how to go about adding it.If we choose this API style to specify the cert, then I suppose a similar option should be added to all remote operations, but I figured I’d just start with one to kick this off.