mirror of
https://github.com/rustdesk/rustdesk-server.git
synced 2025-07-04 00:35:35 +00:00
debug!
This commit is contained in:
parent
2812effd6d
commit
2c35413d03
@ -2,11 +2,12 @@
|
|||||||
// https://blog.csdn.net/bytxl/article/details/44344855
|
// https://blog.csdn.net/bytxl/article/details/44344855
|
||||||
|
|
||||||
use hbbs::*;
|
use hbbs::*;
|
||||||
use std::error::Error;
|
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), Box<dyn Error>> {
|
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
env_logger::init();
|
env_logger::init();
|
||||||
RendezvousServer::start("0.0.0.0:21116").await?;
|
let addr = "0.0.0.0:21116";
|
||||||
|
log::info!("Start Server {}", addr);
|
||||||
|
RendezvousServer::start(&addr).await?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
@ -26,7 +26,6 @@ impl RendezvousServer {
|
|||||||
pub async fn start(addr: &str) -> ResultType {
|
pub async fn start(addr: &str) -> ResultType {
|
||||||
let socket = UdpSocket::bind(addr).await?;
|
let socket = UdpSocket::bind(addr).await?;
|
||||||
let mut socket = UdpFramed::new(socket, BytesCodec::new());
|
let mut socket = UdpFramed::new(socket, BytesCodec::new());
|
||||||
|
|
||||||
let mut rs = Self {
|
let mut rs = Self {
|
||||||
peer_map: PeerMap::new(),
|
peer_map: PeerMap::new(),
|
||||||
};
|
};
|
||||||
@ -46,6 +45,7 @@ impl RendezvousServer {
|
|||||||
match msg_in.union {
|
match msg_in.union {
|
||||||
Some(Message_oneof_union::register_peer(rp)) => {
|
Some(Message_oneof_union::register_peer(rp)) => {
|
||||||
if rp.hbb_addr.len() > 0 {
|
if rp.hbb_addr.len() > 0 {
|
||||||
|
log::debug!("New peer registered: {:?} {:?}", &rp.hbb_addr, &addr);
|
||||||
self.peer_map
|
self.peer_map
|
||||||
.insert(rp.hbb_addr, Peer { socket_addr: addr });
|
.insert(rp.hbb_addr, Peer { socket_addr: addr });
|
||||||
}
|
}
|
||||||
@ -53,6 +53,12 @@ impl RendezvousServer {
|
|||||||
Some(Message_oneof_union::punch_hole_request(ph)) => {
|
Some(Message_oneof_union::punch_hole_request(ph)) => {
|
||||||
// punch hole request from A, forward to B
|
// punch hole request from A, forward to B
|
||||||
if let Some(peer) = self.peer_map.get(&ph.hbb_addr) {
|
if let Some(peer) = self.peer_map.get(&ph.hbb_addr) {
|
||||||
|
log::debug!(
|
||||||
|
"Punch hole {:?} {:?} request from {:?}",
|
||||||
|
&ph.hbb_addr,
|
||||||
|
&peer.socket_addr,
|
||||||
|
&addr
|
||||||
|
);
|
||||||
let mut msg_out = Message::new();
|
let mut msg_out = Message::new();
|
||||||
msg_out.set_punch_hole(PunchHole {
|
msg_out.set_punch_hole(PunchHole {
|
||||||
socket_addr: AddrMangle::encode(&addr),
|
socket_addr: AddrMangle::encode(&addr),
|
||||||
@ -64,6 +70,7 @@ impl RendezvousServer {
|
|||||||
Some(Message_oneof_union::punch_hole_sent(phs)) => {
|
Some(Message_oneof_union::punch_hole_sent(phs)) => {
|
||||||
// punch hole sent from B, tell A that B ready
|
// punch hole sent from B, tell A that B ready
|
||||||
let addr_a = AddrMangle::decode(&phs.socket_addr);
|
let addr_a = AddrMangle::decode(&phs.socket_addr);
|
||||||
|
log::debug!("Punch hole response to {:?} from {:?}", &addr_a, &addr);
|
||||||
let mut msg_out = Message::new();
|
let mut msg_out = Message::new();
|
||||||
msg_out.set_punch_hole_response(PunchHoleResponse {
|
msg_out.set_punch_hole_response(PunchHoleResponse {
|
||||||
socket_addr: AddrMangle::encode(&addr),
|
socket_addr: AddrMangle::encode(&addr),
|
||||||
@ -165,7 +172,6 @@ mod tests {
|
|||||||
let msg_in = parse_from_bytes::<Message>(&bytes).unwrap();
|
let msg_in = parse_from_bytes::<Message>(&bytes).unwrap();
|
||||||
let remote_addr_b =
|
let remote_addr_b =
|
||||||
AddrMangle::decode(&msg_in.get_punch_hole_response().socket_addr[..]);
|
AddrMangle::decode(&msg_in.get_punch_hole_response().socket_addr[..]);
|
||||||
println!("{:?}", msg_in);
|
|
||||||
assert_eq!(local_addr_b, remote_addr_b);
|
assert_eq!(local_addr_b, remote_addr_b);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user