From 0054c177c2aa24f2c348f5b60b7da977accde416 Mon Sep 17 00:00:00 2001 From: Gapestein Date: Sat, 9 May 2026 11:54:47 -0400 Subject: [PATCH] fix(stealth): gate wreq's prefix-symbols feature to Linux/Android (#39) (#106) Co-authored-by: SixSeven-Labs <204820308+SixSeven-Labs@users.noreply.github.com> --- crates/obscura-net/Cargo.toml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/crates/obscura-net/Cargo.toml b/crates/obscura-net/Cargo.toml index 189191a..c1889fa 100644 --- a/crates/obscura-net/Cargo.toml +++ b/crates/obscura-net/Cargo.toml @@ -16,5 +16,14 @@ serde_json = { workspace = true } tracing = { workspace = true } thiserror = { workspace = true } async-trait = "0.1" -wreq = { version = "6.0.0-rc.28", optional = true, features = ["prefix-symbols"] } wreq-util = { version = "3.0.0-rc.10", optional = true } + +# `prefix-symbols` renames BoringSSL exports to avoid clashes with system OpenSSL, +# but the renaming is only correct on Linux and Android (per wreq's README). +# Enabling it on other platforms produces unresolved `build_script_main_*` +# symbols at link time (see issue #39). +[target.'cfg(any(target_os = "linux", target_os = "android"))'.dependencies] +wreq = { version = "6.0.0-rc.28", optional = true, features = ["prefix-symbols"] } + +[target.'cfg(not(any(target_os = "linux", target_os = "android")))'.dependencies] +wreq = { version = "6.0.0-rc.28", optional = true }