From a316bcc84eae4e9b21166a2889e36fa8e48391b4 Mon Sep 17 00:00:00 2001 From: draoi Date: Mon, 22 Jul 2024 17:11:08 +0200 Subject: [PATCH] hosts: make peers() reject both seed and refine session channels --- src/net/hosts.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/net/hosts.rs b/src/net/hosts.rs index 3ac756bf1..6de656131 100644 --- a/src/net/hosts.rs +++ b/src/net/hosts.rs @@ -32,7 +32,11 @@ use rand::{prelude::IteratorRandom, rngs::OsRng, Rng}; use smol::lock::RwLock as AsyncRwLock; use url::Url; -use super::{session::SESSION_SEED, settings::Settings, ChannelPtr}; +use super::{ + session::{SESSION_REFINE, SESSION_SEED}, + settings::Settings, + ChannelPtr, +}; use crate::{ system::{Publisher, PublisherPtr, Subscription}, util::{ @@ -986,9 +990,11 @@ impl Hosts { for (_, state) in registry.iter() { if let HostState::Connected(c) = state { - if c.session_type_id() & SESSION_SEED == 0 { - channels.push(c.clone()); + // Skip this channel is it's a seed or refine session. + if c.session_type_id() & (SESSION_SEED | SESSION_REFINE) != 0 { + continue } + channels.push(c.clone()); } } channels