mirror of
https://github.com/rustdesk/rustdesk-server.git
synced 2025-07-01 23:35:38 +00:00
fix
This commit is contained in:
parent
ea85fa0bb7
commit
a5b4d8027f
@ -1 +1 @@
|
||||
Subproject commit 58a0ca52b5340c29595aa1adcb9f7ee45e6ef4d3
|
||||
Subproject commit afce320583693795f971e081298528e32d2719bd
|
16
src/main.rs
16
src/main.rs
@ -44,23 +44,15 @@ async fn main() -> ResultType<()> {
|
||||
};
|
||||
let port = get_arg("port", DEFAULT_PORT);
|
||||
let mut relay_server = get_arg("relay-server", "");
|
||||
if !relay_server.contains(":") {
|
||||
relay_server = format!("{}:21117", relay_server);
|
||||
}
|
||||
if !relay_server.parse::<std::net::SocketAddr>().is_ok() {
|
||||
if let Err(err) = test_if_valid_server(&relay_server) {
|
||||
relay_server = "".to_owned();
|
||||
log::error!("Invalid relay-server: {}", err);
|
||||
}
|
||||
let serial: i32 = get_arg("serial", "").parse().unwrap_or(0);
|
||||
let rendezvous_servers: Vec<String> = get_arg("rendezvous-servers", "")
|
||||
.split(",")
|
||||
.map(|x| {
|
||||
if !x.contains(":") {
|
||||
format!("{}:21116", x)
|
||||
} else {
|
||||
x.to_owned()
|
||||
}
|
||||
})
|
||||
.filter(|x| x.parse::<std::net::SocketAddr>().is_ok())
|
||||
.filter(|x| test_if_valid_server(x).is_ok())
|
||||
.map(|x| x.to_owned())
|
||||
.collect();
|
||||
let addr = format!("0.0.0.0:{}", port);
|
||||
log::info!("Listening on {}", addr);
|
||||
|
@ -2,6 +2,7 @@ use hbb_common::{
|
||||
allow_err,
|
||||
bytes::{Bytes, BytesMut},
|
||||
bytes_codec::BytesCodec,
|
||||
config::Config,
|
||||
futures_util::{
|
||||
sink::SinkExt,
|
||||
stream::{SplitSink, StreamExt},
|
||||
@ -296,14 +297,7 @@ impl RendezvousServer {
|
||||
self.rendezvous_servers = cu
|
||||
.rendezvous_servers
|
||||
.drain(..)
|
||||
.map(|x| {
|
||||
if !x.contains(":") {
|
||||
format!("{}:21116", x)
|
||||
} else {
|
||||
x
|
||||
}
|
||||
})
|
||||
.filter(|x| x.parse::<std::net::SocketAddr>().is_ok())
|
||||
.filter(|x| test_if_valid_server(x).is_ok())
|
||||
.collect();
|
||||
log::info!(
|
||||
"configure updated: serial={} rendezvous-servers={:?}",
|
||||
@ -564,3 +558,11 @@ impl RendezvousServer {
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
pub fn test_if_valid_server(host: &str) -> ResultType<SocketAddr> {
|
||||
if host.contains(":") {
|
||||
Config::to_socket_addr(host)
|
||||
} else {
|
||||
Config::to_socket_addr(&format!("{}:{}", host, 0))
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user