From 813e48fd54a6482eb09ec418e507733d689663d9 Mon Sep 17 00:00:00 2001 From: jb-alvarado Date: Sun, 8 Oct 2023 22:06:16 +0200 Subject: [PATCH] remove openssl dependencies --- Cargo.lock | 110 ++++++++++++++++++++++++++++++++---- ffplayout-api/Cargo.toml | 2 +- ffplayout-engine/Cargo.toml | 5 +- lib/Cargo.toml | 7 +-- 4 files changed, 102 insertions(+), 22 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ed70a212..d3cf6f46 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1061,7 +1061,6 @@ dependencies = [ "futures", "notify", "notify-debouncer-full", - "openssl", "regex", "reqwest", "serde", @@ -1114,7 +1113,6 @@ dependencies = [ "file-rotate", "lettre", "log", - "openssl", "rand", "regex", "reqwest", @@ -1556,6 +1554,20 @@ dependencies = [ "want", ] +[[package]] +name = "hyper-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97" +dependencies = [ + "futures-util", + "http", + "hyper", + "rustls", + "tokio", + "tokio-rustls", +] + [[package]] name = "hyper-tls" version = "0.5.0" @@ -1788,8 +1800,11 @@ dependencies = [ "nom", "once_cell", "quoted_printable", + "rustls", + "rustls-pemfile", "socket2 0.4.9", "tokio", + "webpki-roots 0.23.1", ] [[package]] @@ -2122,15 +2137,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" -[[package]] -name = "openssl-src" -version = "300.1.5+3.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "559068e4c12950d7dcaa1857a61725c0d38d4fc03ff8e070ab31a75d6e316491" -dependencies = [ - "cc", -] - [[package]] name = "openssl-sys" version = "0.9.93" @@ -2139,7 +2145,6 @@ checksum = "db4d56a4c0478783083cfafcc42493dd4a981d41669da64b4572a2a089b51b1d" dependencies = [ "cc", "libc", - "openssl-src", "pkg-config", "vcpkg", ] @@ -2405,6 +2410,7 @@ dependencies = [ "http", "http-body", "hyper", + "hyper-rustls", "hyper-tls", "ipnet", "js-sys", @@ -2414,17 +2420,21 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "rustls", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", "system-configuration", "tokio", "tokio-native-tls", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots 0.25.2", "winreg", ] @@ -2519,6 +2529,47 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "rustls" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" +dependencies = [ + "log", + "ring", + "rustls-webpki 0.101.6", + "sct", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" +dependencies = [ + "base64 0.21.4", +] + +[[package]] +name = "rustls-webpki" +version = "0.100.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f6a5fc258f1c1276dfe3016516945546e2d5383911efc0fc4f1cdc5df3a4ae3" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "ryu" version = "1.0.15" @@ -2559,6 +2610,16 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +[[package]] +name = "sct" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "security-framework" version = "2.9.2" @@ -3235,6 +3296,16 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.14" @@ -3516,6 +3587,21 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "webpki-roots" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" +dependencies = [ + "rustls-webpki 0.100.3", +] + +[[package]] +name = "webpki-roots" +version = "0.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" + [[package]] name = "whoami" version = "1.4.1" diff --git a/ffplayout-api/Cargo.toml b/ffplayout-api/Cargo.toml index 937bb770..a1e7f663 100644 --- a/ffplayout-api/Cargo.toml +++ b/ffplayout-api/Cargo.toml @@ -27,7 +27,7 @@ once_cell = "1.10" rand = "0.8" regex = "1" relative-path = "1.6" -reqwest = { version = "0.11", features = ["blocking", "json"] } +reqwest = { version = "0.11", default-features = false, features = ["blocking", "json", "rustls-tls"] } rpassword = "6.0" sanitize-filename = "0.3" serde = { version = "1.0", features = ["derive"] } diff --git a/ffplayout-engine/Cargo.toml b/ffplayout-engine/Cargo.toml index 381594f1..4f7bb127 100644 --- a/ffplayout-engine/Cargo.toml +++ b/ffplayout-engine/Cargo.toml @@ -19,7 +19,7 @@ futures = "0.3" notify = "6.0" notify-debouncer-full = { version = "*", default-features = false } regex = "1" -reqwest = { version = "0.11", features = ["blocking", "json"] } +reqwest = { version = "0.11", default-features = false, features = ["blocking", "json", "rustls-tls"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" simplelog = { version = "^0.12", features = ["paris"] } @@ -29,9 +29,6 @@ zeromq = { git = "https://github.com/zeromq/zmq.rs.git", default-features = fals "tcp-transport", ] } -[target.x86_64-unknown-linux-musl.dependencies] -openssl = { version = "0.10", features = ["vendored"] } - [[bin]] name = "ffplayout" path = "src/main.rs" diff --git a/lib/Cargo.toml b/lib/Cargo.toml index 607b7114..bc8cf808 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -13,11 +13,11 @@ chrono = { version = "0.4", default-features = false, features = ["clock", "std" crossbeam-channel = "0.5" ffprobe = "0.3" file-rotate = "0.7.0" -lettre = "0.10" +lettre = { version = "0.10", features = ["builder", "rustls-tls", "smtp-transport"], default-features = false } log = "0.4" rand = "0.8" regex = "1" -reqwest = { version = "0.11", features = ["blocking", "json"] } +reqwest = { version = "0.11", default-features = false, features = ["blocking", "json", "rustls-tls"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" serde_yaml = "0.9" @@ -29,6 +29,3 @@ walkdir = "2" [target."cfg(windows)".dependencies.winapi] version = "0.3" features = ["shlobj", "std", "winerror"] - -[target.x86_64-unknown-linux-musl.dependencies] -openssl = { version = "0.10", features = ["vendored"] }