Certificate Verification Failed "unknown certificate lookup failure"

Open
#2,096 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
csharp, git
Domain
devtools, security

Research direction

Start at the Repository.Clone API and compare certificate-verification behavior between libgit2sharp v0.26.2 and v0.30.0. Reproduce the failure on Windows 11 with .NET Framework 4.7.2 in the affected environment; done means the internal repository can be cloned without the SSL/TLS verification error.

Written by the indexing model from the issue text.

Description

I recently updated libgit2sharp (v0.26.2) to the latest v0.30.0.

Some of my product users are located in Taiwan, some are in China, and some are from Europe and the United States.

Before the upgrade, the company's internal repository could be accessed normally through the Repository.Clone API.
(URL and WorkDir only, no other options)

After the upgrade, users located in China will fail and get an error about SSL/TLS being unable to verify, as shown below.
image

We tried to troubleshoot other network issues and confirmed that all users were on the same OS version and supported TLS 1.2/1.3 only.

And do cross comparison with git CLI (git v2.43.0).

Everyone can download normally through the CLI, and will not encounter SSL/TLS verification errors when using libgit2sharp v0.26.2.

Only users located in China will encounter SSL/TLS verification failure in libgit2sharp v0.30.0.

Version of LibGit2Sharp (release number or SHA1)

v0.30.0

Operating system(s) tested; .NET runtime tested

Windows11
OS Build 22631.3593
Windows Feature Experience Pack 1000.22700.1003.0

.NET Framework 4.7.2

Dominant language
C#
Stars
3.5k
Forks
925
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from libgit2/libgit2sharp

All issues in libgit2/libgit2sharp

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.