mirror of
https://github.com/rustdesk/rustdesk.git
synced 2024-11-25 13:19:04 +08:00
fix relay mac connections and cleanup
This commit is contained in:
parent
43b3a04f33
commit
f14faa85d2
@ -93,6 +93,14 @@ pub fn new() -> ServerPtr {
|
||||
Arc::new(RwLock::new(server))
|
||||
}
|
||||
|
||||
fn mac_wakeup(){
|
||||
#[cfg(target_os = "macos")]{
|
||||
use std::process::Command;
|
||||
Command::new("/usr/bin/caffeinate").arg("-u").arg("-t 5").spawn().expect("failed to execute caffeinate");
|
||||
println!("wake up macos");
|
||||
}
|
||||
}
|
||||
|
||||
async fn accept_connection_(server: ServerPtr, socket: Stream, secure: bool) -> ResultType<()> {
|
||||
let local_addr = socket.local_addr();
|
||||
drop(socket);
|
||||
@ -104,11 +112,7 @@ async fn accept_connection_(server: ServerPtr, socket: Stream, secure: bool) ->
|
||||
if let Ok((stream, addr)) = timeout(CONNECT_TIMEOUT, listener.accept()).await? {
|
||||
stream.set_nodelay(true).ok();
|
||||
let stream_addr = stream.local_addr()?;
|
||||
if cfg!(target_os = "macos") {
|
||||
use std::process::Command;
|
||||
Command::new("/usr/bin/caffeinate").arg("-u").arg("-t 5").spawn().expect("failed to execute caffeinate");
|
||||
println!("wake up macos...");
|
||||
}
|
||||
mac_wakeup();
|
||||
create_tcp_connection(server, Stream::from(stream, stream_addr), addr, secure).await?;
|
||||
}
|
||||
Ok(())
|
||||
@ -257,6 +261,7 @@ async fn create_relay_connection_(
|
||||
..Default::default()
|
||||
});
|
||||
stream.send(&msg_out).await?;
|
||||
mac_wakeup();
|
||||
create_tcp_connection(server, stream, peer_addr, secure).await?;
|
||||
Ok(())
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user