mirror of
https://github.com/tun2proxy/tun2proxy.git
synced 2025-04-19 21:39:09 +00:00
refine code
This commit is contained in:
parent
ba1615fcd1
commit
18f4689d21
1 changed files with 6 additions and 9 deletions
15
src/args.rs
15
src/args.rs
|
@ -12,7 +12,7 @@ pub struct Args {
|
||||||
/// Proxy URL in the form proto://[username[:password]@]host:port,
|
/// Proxy URL in the form proto://[username[:password]@]host:port,
|
||||||
/// where proto is one of socks4, socks5, http.
|
/// where proto is one of socks4, socks5, http.
|
||||||
/// Username and password are encoded in percent encoding. For example:
|
/// Username and password are encoded in percent encoding. For example:
|
||||||
/// socks5://myname:password@127.0.0.1:1080
|
/// socks5://myname:pass%40word@127.0.0.1:1080
|
||||||
#[arg(short, long, value_parser = ArgProxy::from_url, value_name = "URL")]
|
#[arg(short, long, value_parser = ArgProxy::from_url, value_name = "URL")]
|
||||||
pub proxy: ArgProxy,
|
pub proxy: ArgProxy,
|
||||||
|
|
||||||
|
@ -333,15 +333,12 @@ impl ArgProxy {
|
||||||
Some(UserKey::new(username, password))
|
Some(UserKey::new(username, password))
|
||||||
};
|
};
|
||||||
|
|
||||||
let scheme = url.scheme();
|
|
||||||
|
|
||||||
let proxy_type = match url.scheme().to_ascii_lowercase().as_str() {
|
let proxy_type = match url.scheme().to_ascii_lowercase().as_str() {
|
||||||
"socks4" => Some(ProxyType::Socks4),
|
"socks4" => Ok(ProxyType::Socks4),
|
||||||
"socks5" => Some(ProxyType::Socks5),
|
"socks5" => Ok(ProxyType::Socks5),
|
||||||
"http" => Some(ProxyType::Http),
|
"http" => Ok(ProxyType::Http),
|
||||||
_ => None,
|
scheme => Err(Error::from(&format!("`{scheme}` is an invalid proxy type"))),
|
||||||
}
|
}?;
|
||||||
.ok_or(Error::from(&format!("`{scheme}` is an invalid proxy type")))?;
|
|
||||||
|
|
||||||
Ok(ArgProxy {
|
Ok(ArgProxy {
|
||||||
proxy_type,
|
proxy_type,
|
||||||
|
|
Loading…
Add table
Reference in a new issue