浏览代码

hosts: reject peers from other hosts that already exist on our greylist

Previously we would update the last seen field, however it is better to
let the refinery do that and keep the insertion process strictly
seperate.
draoi 2 年之前
父节点
当前提交
4d0c36a508
共有 1 个文件被更改,包括 3 次插入4 次删除
  1. 3 4
      src/net/hosts.rs

+ 3 - 4
src/net/hosts.rs

@@ -1145,13 +1145,12 @@ impl Hosts {
                 continue
             }
 
-            // Reject this peer if it's already stored on the Gold or White list.
-            // If it exists on the Grey list, we will simply update its last_seen
-            // field.
+            // Reject this peer if it's already stored on the Gold, White or Grey list.
             //
             // We do this last since it is the most expensive operation.
             if self.container.contains(HostColor::Gold as usize, addr_).await ||
-                self.container.contains(HostColor::White as usize, addr_).await
+                self.container.contains(HostColor::White as usize, addr_).await ||
+                    self.container.contains(HostColor::Grey as usize, addr_).await
             {
                 debug!(target: "net::hosts::filter_addresses()",
                     "We already have {} in the hostlist. Skipping", addr_);