skipPeer method
Implementation
bool skipPeer(List<MultiAddr> addrs) {
final List<String> localPublicIPs = [];
for (final lAddr in host.addrs) {
if (!lAddr.hasProtocol('p2p-circuit') && lAddr.isPublic()) {
final lIP = lAddr.toIP();
if (lIP != null) {
localPublicIPs.add(lIP.address);
}
}
}
bool goodPublicFound = false;
for (final addr in addrs) {
if (!addr.hasProtocol('p2p-circuit') && addr.isPublic()) {
final aIP = addr.toIP();
if (aIP == null) {
continue;
}
if (localPublicIPs.contains(aIP.address)) {
return true; // Peer has one of our public IPs
}
goodPublicFound = true;
}
}
if (allowSelfDials) {
return false;
}
return !goodPublicFound; // Skip if no usable public address was found that isn't ours
}