Skip to content

Commit 0f7a654

Browse files
Merge pull request #38490 from JuliaLang/sk/libgit2-ca-roots
LibGit2: use NetworkOptions to find CA root certificates
2 parents 77a1fe8 + ff565c0 commit 0f7a654

File tree

7 files changed

+8
-17
lines changed

7 files changed

+8
-17
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
8f5ccae9127103afb81b19f08f6be71b
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
f7f215e45bd306fb716aa868d674817ffc82ec5be465642e61ac451f3973f5b87a694ba6d71bf4a0d13c325f1a8f5dec83c9fe079df5e6a8cc9fe94a827e2e79

deps/checksums/NetworkOptions-e61363297db8cd87cd8e4fe087e299dd0f0b3551.tar.gz/md5

Lines changed: 0 additions & 1 deletion
This file was deleted.

deps/checksums/NetworkOptions-e61363297db8cd87cd8e4fe087e299dd0f0b3551.tar.gz/sha512

Lines changed: 0 additions & 1 deletion
This file was deleted.

stdlib/LibGit2/Project.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@ name = "LibGit2"
22
uuid = "76f85450-5226-5b5a-8eaa-529ad045b433"
33

44
[deps]
5+
NetworkOptions = "ca575930-c2e3-43a9-ace4-1e988b2c1908"
56
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
67

78
[extras]
8-
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
99
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
1010
Serialization = "9e88b42a-f829-5b0c-bbe9-9e923198166b"
1111
Sockets = "6462fe0b-24de-5631-8697-dd941f90decc"
12+
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
1213

1314
[targets]
1415
test = ["Test", "Random", "Serialization", "Sockets"]

stdlib/LibGit2/src/LibGit2.jl

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ module LibGit2
88
import Base: ==
99
using Base: something, notnothing
1010
using Printf: @printf
11+
import NetworkOptions
1112

1213
export with, GitRepo, GitConfig
1314

@@ -983,19 +984,8 @@ end
983984
end
984985
end
985986

986-
# Look for OpenSSL env variable for CA bundle (linux only)
987-
# windows and macOS use the OS native security backends
988-
@static if Sys.islinux()
989-
cert_loc = if "SSL_CERT_DIR" in keys(ENV)
990-
ENV["SSL_CERT_DIR"]
991-
elseif "SSL_CERT_FILE" in keys(ENV)
992-
ENV["SSL_CERT_FILE"]
993-
else
994-
# If we have a bundled ca cert file, point libgit2 at that so SSL connections work.
995-
abspath(ccall(:jl_get_julia_bindir, Any, ())::String, Base.DATAROOTDIR, "julia", "cert.pem")
996-
end
997-
set_ssl_cert_locations(cert_loc)
998-
end
987+
cert_loc = NetworkOptions.ca_roots()
988+
cert_loc !== nothing && set_ssl_cert_locations(cert_loc)
999989
end
1000990

1001991
function set_ssl_cert_locations(cert_loc)

stdlib/NetworkOptions.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
NETWORKOPTIONS_BRANCH = master
2-
NETWORKOPTIONS_SHA1 = e61363297db8cd87cd8e4fe087e299dd0f0b3551
2+
NETWORKOPTIONS_SHA1 = b7c9bb8627b2e6d62b32fe14faba7bd9d46b4b16

0 commit comments

Comments
 (0)