mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-06 23:08:03 +00:00
Better reporting in libp2p (#337)
This commit is contained in:
committed by
Arkadiy Paronyan
parent
f775b38828
commit
bb8987df28
@@ -97,16 +97,20 @@ struct Shared {
|
||||
|
||||
impl NetworkService {
|
||||
/// Starts IO event loop
|
||||
pub fn new(config: NetworkConfiguration, filter: Option<Arc<ConnectionFilter>>)
|
||||
-> Result<NetworkService, Error> {
|
||||
pub fn new(
|
||||
config: NetworkConfiguration,
|
||||
filter: Option<Arc<ConnectionFilter>>
|
||||
) -> Result<NetworkService, Error> {
|
||||
// TODO: for now `filter` is always `None` ; remove it from the code or implement it
|
||||
assert!(filter.is_none());
|
||||
|
||||
let network_state = NetworkState::new(&config)?;
|
||||
|
||||
let local_peer_id = network_state.local_public_key().clone().into_peer_id();
|
||||
// TODO: debug! instead?
|
||||
info!(target: "sub-libp2p", "Local node id = {:?}", local_peer_id);
|
||||
let local_peer_id = network_state.local_public_key().clone()
|
||||
.into_peer_id();
|
||||
let mut listen_addr = config_to_listen_addr(&config);
|
||||
listen_addr.append(AddrComponent::P2P(local_peer_id.clone().into_bytes()));
|
||||
info!(target: "sub-libp2p", "Local node address is: {}", listen_addr);
|
||||
|
||||
let kad_system = KadSystem::without_init(KadSystemConfig {
|
||||
parallelism: 3,
|
||||
@@ -951,11 +955,12 @@ fn dial_peer_custom_proto<T, To, St, C>(
|
||||
Ok(socket)
|
||||
} else {
|
||||
debug!(target: "sub-libp2p", "Public key mismatch for \
|
||||
node {:?} with proto {:?}", expected_peer_id, proto_id);
|
||||
node {:?} with proto {:?}", expected_peer_id, proto_id);
|
||||
trace!(target: "sub-libp2p", "Removing addr {} for {:?}",
|
||||
original_addr, expected_peer_id);
|
||||
shared.network_state.set_invalid_kad_address(&expected_peer_id, &original_addr);
|
||||
Err(IoErrorKind::InvalidData.into()) // TODO: correct err
|
||||
Err(IoError::new(IoErrorKind::InvalidData, "public \
|
||||
key mismatch when identifyed peer"))
|
||||
}
|
||||
)
|
||||
.and_then(move |socket|
|
||||
@@ -1029,13 +1034,17 @@ fn process_identify_info(
|
||||
original_addr.clone())?; // TODO: wrong local addr
|
||||
|
||||
if let Some(ref original_listened_addr) = *shared.original_listened_addr.read() {
|
||||
if let Some(ext_addr) = transport.nat_traversal(original_listened_addr, &info.observed_addr) {
|
||||
if let Some(mut ext_addr) = transport.nat_traversal(original_listened_addr, &info.observed_addr) {
|
||||
let mut listened_addrs = shared.listened_addrs.write();
|
||||
if !listened_addrs.iter().any(|a| a == &ext_addr) {
|
||||
trace!(target: "sub-libp2p", "NAT traversal: remote observes us as \
|
||||
{} ; registering {} as one of our own addresses",
|
||||
info.observed_addr, ext_addr);
|
||||
listened_addrs.push(ext_addr);
|
||||
listened_addrs.push(ext_addr.clone());
|
||||
ext_addr.append(AddrComponent::P2P(shared.kad_system
|
||||
.local_peer_id().clone().into_bytes()));
|
||||
info!(target: "sub-libp2p", "New external node address: {}",
|
||||
ext_addr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user