aboutsummaryrefslogtreecommitdiffstats
path: root/src/transport/libp2p/tests.rs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-31 22:00:19 +0100
committertv <tv@krebsco.de>2026-10-31 22:00:19 +0100
commitb7755803fb69ce7def7bb7eafcdbfa247bed036f (patch)
tree2d28382b775e282c17a5f18b8f9744290e5a364e /src/transport/libp2p/tests.rs
parent189cd36d9e015968b751117688fa4f0fd64bde36 (diff)
libp2p: don't keep ignored addresses
Diffstat (limited to 'src/transport/libp2p/tests.rs')
-rw-r--r--src/transport/libp2p/tests.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/transport/libp2p/tests.rs b/src/transport/libp2p/tests.rs
index f3c9374..bf538cd 100644
--- a/src/transport/libp2p/tests.rs
+++ b/src/transport/libp2p/tests.rs
@@ -669,6 +669,23 @@ fn identified_addresses_preferred_first() {
assert_eq!(book.direct(), [lan, bridges[0].clone()]);
}
+/// A peer's addresses in a range this node leaves out aren't kept: never dialled, they
+/// would take a place, and be passed on.
+#[test]
+fn ignored_addresses_not_kept() {
+ let mut book = Book {
+ ignored: vec!["10.244.0.0/16".parse().unwrap()],
+ ..Book::default()
+ };
+ let them = peer();
+ let vpn: Multiaddr = "/ip4/10.244.3.2/tcp/9661".parse().unwrap();
+ let lan: Multiaddr = "/ip4/10.23.1.144/tcp/9661".parse().unwrap();
+ book.remember(them, vpn.clone());
+ book.identified(them, vec![vpn.clone(), lan.clone()]);
+ assert!(book.knows(them, &[lan]));
+ assert!(!book.knows(them, &[vpn]));
+}
+
/// Peers nobody mentions any more are forgotten, but connected ones.
#[test]
fn stale_peers_are_forgotten() {