diff --git a/Cargo.lock b/Cargo.lock index e569c9e9f..3a821e298 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -231,9 +231,9 @@ dependencies = [ [[package]] name = "cargo-xwin" -version = "0.16.3" +version = "0.16.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6afd4dab5fb38f9ec394ff7cd2aab95e5ddf581448afb9c42349ff849daed858" +checksum = "5e6c3dd7f20fdd197397532ac882e918cfe1d56f262a97ded7460a50e031e06b" dependencies = [ "anyhow", "cargo-config2", @@ -838,6 +838,35 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "hoot" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df22a4d90f1b0e65fe3e0d6ee6a4608cc4d81f4b2eb3e670f44bb6bde711e452" +dependencies = [ + "httparse", + "log", +] + +[[package]] +name = "hootbin" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "354e60868e49ea1a39c44b9562ad207c4259dc6eabf9863bf3b0f058c55cfdb2" +dependencies = [ + "fastrand", + "hoot", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + [[package]] name = "humantime" version = "2.1.0" @@ -856,9 +885,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.5.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -1378,9 +1407,9 @@ dependencies = [ [[package]] name = "pep508_rs" -version = "0.2.3" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4516b53d9ea6112ebb38b4af08d5707d30b994fb7f98ff133c5dcf7ed8fa854" +checksum = "c0713d7bb861ca2b7d4c50a38e1f31a4b63a2e2df35ef1e5855cc29e108453e2" dependencies = [ "once_cell", "pep440_rs", @@ -1687,14 +1716,16 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.10" +version = "0.22.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41" dependencies = [ "log", "ring", + "rustls-pki-types", "rustls-webpki", - "sct", + "subtle", + "zeroize", ] [[package]] @@ -1715,11 +1746,12 @@ checksum = "9e9d979b3ce68192e42760c7810125eb6cf2ea10efae545a156063e61f314e2a" [[package]] name = "rustls-webpki" -version = "0.101.7" +version = "0.102.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +checksum = "ef4ca26037c909dedb327b48c3327d0ba91d3dd3c4e05dad328f210ffb68e95b" dependencies = [ "ring", + "rustls-pki-types", "untrusted", ] @@ -1779,16 +1811,6 @@ dependencies = [ "syn 2.0.48", ] -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "security-framework" version = "2.9.2" @@ -1984,6 +2006,12 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" +[[package]] +name = "subtle" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" + [[package]] name = "syn" version = "1.0.109" @@ -2340,16 +2368,18 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "2.9.1" +version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cdd25c339e200129fe4de81451814e5228c9b771d57378817d6117cc2b3f97" +checksum = "399dd89e2af196ae4f83a47bb37a1455e664fe2fed97b3ae68a1c4a3f8216e76" dependencies = [ "base64 0.21.7", "flate2", + "hootbin", "log", "native-tls", "once_cell", "rustls", + "rustls-pki-types", "rustls-webpki", "serde", "serde_json", @@ -2360,9 +2390,9 @@ dependencies = [ [[package]] name = "url" -version = "2.5.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" dependencies = [ "form_urlencoded", "idna", @@ -2437,9 +2467,12 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "webpki-roots" -version = "0.25.3" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10" +checksum = "0de2cfda980f21be5a7ed2eadb3e6fe074d56022bea2cdeb1a62eb220fc04188" +dependencies = [ + "rustls-pki-types", +] [[package]] name = "which" diff --git a/Cargo.toml b/Cargo.toml index 03a106db0..9d4a51db0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -82,7 +82,7 @@ clap_complete_command = { version = "0.5.1", optional = true } # cross compile cargo-zigbuild = { version = "0.18.3", default-features = false, optional = true } -cargo-xwin = { version = "0.16.2", default-features = false, optional = true } +cargo-xwin = { version = "0.16.4", default-features = false, optional = true } # log tracing = "0.1.36" @@ -98,13 +98,13 @@ bytesize = { version = "1.0.1", optional = true } configparser = { version = "3.0.3", optional = true } dirs = { version = "5.0.0", optional = true } multipart = { version = "0.18.0", features = ["client"], default-features = false, optional = true } -ureq = { version = "2.9.1", features = ["gzip", "json", "socks-proxy"], default-features = false, optional = true } +ureq = { version = "2.9.4", features = ["gzip", "json", "socks-proxy"], default-features = false, optional = true } native-tls = { version = "0.2.8", optional = true } -rustls = { version = "0.21.9", optional = true } +rustls = { version = "0.22.2", optional = true } rustls-pemfile = { version = "2.0.0", optional = true } keyring = { version = "2.0.0", default-features = false, features = ["linux-no-secret-service"], optional = true } wild = { version = "2.1.0", optional = true } -url = { version = "2.5.0", optional = true } +url = { version = "2.3.0", optional = true } [dev-dependencies] expect-test = "1.4.1" diff --git a/src/upload.rs b/src/upload.rs index 8c53b7f0d..ef234aab7 100644 --- a/src/upload.rs +++ b/src/upload.rs @@ -390,9 +390,8 @@ fn http_agent() -> Result { let mut reader = io::BufReader::new(File::open(ca_bundle)?); let certs = rustls_pemfile::certs(&mut reader).collect::, _>>()?; let mut root_certs = rustls::RootCertStore::empty(); - root_certs.add_parsable_certificates(&certs); + root_certs.add_parsable_certificates(certs); let client_config = rustls::ClientConfig::builder() - .with_safe_defaults() .with_root_certificates(root_certs) .with_no_client_auth(); Ok(builder.tls_config(Arc::new(client_config)).build())