ME Connectivity: socks-url

Co-Authored-By: brekotis <93345790+brekotis@users.noreply.github.com>
This commit is contained in:
Alexey
2026-02-28 13:38:30 +03:00
parent 8b39a4ef6d
commit 6c12af2b94
2 changed files with 26 additions and 10 deletions

View File

@@ -101,16 +101,26 @@ fn route_from_egress(egress: Option<UpstreamEgressInfo>) -> Option<String> {
parts.push(format!("src={ip}"));
Some(format!("direct {}", parts.join(" ")))
}
UpstreamRouteKind::Socks4 => Some(
info.socks_bound_addr
.map(|addr| format!("socks4 bnd={addr}"))
.unwrap_or_else(|| "socks4".to_string()),
),
UpstreamRouteKind::Socks5 => Some(
info.socks_bound_addr
.map(|addr| format!("socks5 bnd={addr}"))
.unwrap_or_else(|| "socks5".to_string()),
),
UpstreamRouteKind::Socks4 => {
let route = info
.socks_proxy_addr
.map(|addr| format!("socks4://{addr}"))
.unwrap_or_else(|| "socks4://unknown".to_string());
Some(match info.socks_bound_addr {
Some(bound) => format!("{route} bnd={bound}"),
None => route,
})
}
UpstreamRouteKind::Socks5 => {
let route = info
.socks_proxy_addr
.map(|addr| format!("socks5://{addr}"))
.unwrap_or_else(|| "socks5://unknown".to_string());
Some(match info.socks_bound_addr {
Some(bound) => format!("{route} bnd={bound}"),
None => route,
})
}
}
}