2016-04-26 89 views
1

我使用pygit2以編程方式從包含自簽名證書的內部服務器複製回購。 pygit2在證書上引發錯誤,我如何關閉驗證?如何在pygit2上禁用ssl驗證

+0

請你能發佈的代碼,嘗試做這行(S),它會更容易回答 – cjwfuller

回答

0

,辦理入住手續完成,因爲pygit2/remote.py#L170-L175

def _fill_fetch_options(self, fetch_opts): 
    fetch_opts.callbacks.certificate_check = self._certificate_cb 

作爲in this question,你可以覆蓋callback function with your own(這什麼都不做)爲git_fetch_options struct

git_fetch_options options = GIT_FETCH_OPTIONS_VERSION; 
options.git_remote_callbacks.certificate_check = my_own_cred_acquire_cb; 

這種做法相呼應,並確認在OP's own issue on pygit2

你不能告訴pygit2/libgit2無視一切,但你可以提供自己的證書驗證功能作爲一個回調。
如果您將certificate_check設置爲您編寫的某個函數,則可以忽略已知錯誤主機的證書。

+0

謝謝你,我推翻了certificate_check並始終返回true,但還是失敗了。與「許多重定向」這個說法一起引發了一個錯誤。 https://github.com/libgit2/pygit2/issues/627 – user3236929