Skip to content

Commit 1f8c9c1

Browse files
committed
try fix
1 parent a8bfa4c commit 1f8c9c1

4 files changed

Lines changed: 14 additions & 3 deletions

File tree

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ reqwest = { version = "0.13", features = [
9292
"rustls",
9393
"hickory-dns",
9494
], optional = true }
95+
rustls-native-certs = { version = "0.8", optional = true }
9596
semver = "1.0"
9697
serde = { version = "1.0", features = ["derive"] }
9798
serde_json = ">=1.0, <1.0.147" # zmij (used in 1.0.147+) requires Rust 1.84+
@@ -204,6 +205,7 @@ dist-client = [
204205
"reqwest",
205206
"url",
206207
"sha2",
208+
"rustls-native-certs",
207209
]
208210
# Enables the sccache-dist binary
209211
dist-server = [
@@ -216,6 +218,7 @@ dist-server = [
216218
"rouille",
217219
"syslog",
218220
"version-compare",
221+
"rustls-native-certs",
219222
]
220223
# Enables dist tests with external requirements
221224
dist-tests = ["dist-client", "dist-server"]

src/dist/http.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -367,8 +367,8 @@ mod server {
367367

368368
// Finish the certificate
369369
builder
370-
.sign(&privkey, openssl::hash::MessageDigest::sha1())
371-
.context("failed to sign x509 with sha1")?;
370+
.sign(&privkey, openssl::hash::MessageDigest::sha256())
371+
.context("failed to sign x509 with sha256")?;
372372
let cert: openssl::x509::X509 = builder.build();
373373
let cert_pem = cert.to_pem().context("failed to create pem from x509")?;
374374
let cert_digest = cert

src/util.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -990,7 +990,14 @@ pub fn daemonize() -> Result<()> {
990990
/// More details could be found at https://github.com/mozilla/sccache/pull/1563
991991
#[cfg(any(feature = "dist-server", feature = "dist-client"))]
992992
pub fn new_reqwest_blocking_client() -> reqwest::blocking::Client {
993-
reqwest::blocking::Client::builder()
993+
let mut builder = reqwest::blocking::Client::builder();
994+
995+
// Query the native store; fallback if it's completely empty
996+
if rustls_native_certs::load_native_certs().certs.is_empty() {
997+
builder = builder.tls_certs_only(Vec::new());
998+
}
999+
1000+
builder
9941001
.pool_max_idle_per_host(0)
9951002
.build()
9961003
.expect("http client must build with success")

0 commit comments

Comments
 (0)