various fixes, including node_ref last_connection sorting problem
This commit is contained in:
@@ -255,6 +255,13 @@ impl DiscoveryContext {
|
||||
{
|
||||
return Some(external_mapped_dial_info);
|
||||
} else {
|
||||
warn!("UPNP port mapping succeeded but port {}/{} is still unreachable.\nYou may need to add a local firewall allowed port on this machine.\n",
|
||||
local_port, match llpt {
|
||||
LowLevelProtocolType::UDP => "udp",
|
||||
LowLevelProtocolType::TCP => "tcp",
|
||||
}
|
||||
);
|
||||
|
||||
// release the mapping if we're still unreachable
|
||||
let _ = self
|
||||
.net
|
||||
@@ -628,6 +635,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![udpv4_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check UDPv4"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
@@ -647,6 +655,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![udpv6_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check UDPv6"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
@@ -669,6 +678,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![tcpv4_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check TCPv4"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
@@ -688,6 +698,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![wsv4_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check WSv4"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
@@ -710,6 +721,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![tcpv6_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check TCPv6"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
@@ -729,6 +741,7 @@ impl Network {
|
||||
}
|
||||
Some(vec![wsv6_context])
|
||||
}
|
||||
.instrument(trace_span!("do_public_dial_info_check WSv6"))
|
||||
.boxed(),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -109,11 +109,11 @@ impl Network {
|
||||
};
|
||||
|
||||
// XXX
|
||||
warn!(
|
||||
"DEBUGACCEPT: local={} remote={}",
|
||||
tcp_stream.local_addr().unwrap(),
|
||||
tcp_stream.peer_addr().unwrap(),
|
||||
);
|
||||
// warn!(
|
||||
// "DEBUGACCEPT: local={} remote={}",
|
||||
// tcp_stream.local_addr().unwrap(),
|
||||
// tcp_stream.peer_addr().unwrap(),
|
||||
// );
|
||||
|
||||
let listener_state = listener_state.clone();
|
||||
let connection_manager = connection_manager.clone();
|
||||
|
||||
@@ -84,7 +84,7 @@ impl Network {
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
}.instrument(Span::current());
|
||||
|
||||
protocol_handlers_unordered.push(ph_future);
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ pub async fn nonblocking_connect(
|
||||
let socket2_addr = socket2::SockAddr::from(addr);
|
||||
|
||||
// XXX
|
||||
let bind_local_addr = socket.local_addr().unwrap().as_socket().unwrap();
|
||||
//let bind_local_addr = socket.local_addr().unwrap().as_socket().unwrap();
|
||||
|
||||
// Connect to the remote address
|
||||
match socket.connect(&socket2_addr) {
|
||||
@@ -197,24 +197,24 @@ pub async fn nonblocking_connect(
|
||||
}
|
||||
.map_err(|e| {
|
||||
// XXX
|
||||
warn!(
|
||||
"DEBUGCONNECT XXXFAILXXX: bind={} local={} remote={}\nbacktrace={:?}",
|
||||
bind_local_addr,
|
||||
socket.local_addr().unwrap().as_socket().unwrap(),
|
||||
addr,
|
||||
backtrace::Backtrace::new(),
|
||||
);
|
||||
// warn!(
|
||||
// "DEBUGCONNECT XXXFAILXXX: bind={} local={} remote={}\nbacktrace={:?}",
|
||||
// bind_local_addr,
|
||||
// socket.local_addr().unwrap().as_socket().unwrap(),
|
||||
// addr,
|
||||
// backtrace::Backtrace::new(),
|
||||
// );
|
||||
e
|
||||
})?;
|
||||
|
||||
// XXX
|
||||
warn!(
|
||||
"DEBUGCONNECT: bind={} local={} remote={}\nbacktrace={:?}",
|
||||
bind_local_addr,
|
||||
socket.local_addr().unwrap().as_socket().unwrap(),
|
||||
addr,
|
||||
backtrace::Backtrace::new(),
|
||||
);
|
||||
// warn!(
|
||||
// "DEBUGCONNECT: bind={} local={} remote={}\nbacktrace={:?}",
|
||||
// bind_local_addr,
|
||||
// socket.local_addr().unwrap().as_socket().unwrap(),
|
||||
// addr,
|
||||
// backtrace::Backtrace::new(),
|
||||
// );
|
||||
|
||||
let async_stream = Async::new(std::net::TcpStream::from(socket))?;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user