diff options
| author | luigi1111 <luigi1111w@gmail.com> | 2021-03-30 12:03:56 -0400 |
|---|---|---|
| committer | luigi1111 <luigi1111w@gmail.com> | 2021-03-30 12:03:56 -0400 |
| commit | 39ce27b5d5f29698f5f22f4e30a53961b7dc4a71 (patch) | |
| tree | 8c95cdd666db10f66daec6fb35284e3b61115057 | |
| parent | a7663f4ba1f78e78e8beea00186be0307d42c260 (diff) | |
| parent | 57edfd78fde75d1532acebbf33446a3e3f902c36 (diff) | |
| download | monzero-core-39ce27b5d5f29698f5f22f4e30a53961b7dc4a71.tar.gz monzero-core-39ce27b5d5f29698f5f22f4e30a53961b7dc4a71.tar.xz monzero-core-39ce27b5d5f29698f5f22f4e30a53961b7dc4a71.zip | |
Merge pull request #7332
57edfd7 p2p: allow CIDR notation in DNS blocklist (moneromooo-monero)
| -rw-r--r-- | src/p2p/net_node.inl | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl index cf0b1db10..4571743a2 100644 --- a/src/p2p/net_node.inl +++ b/src/p2p/net_node.inl @@ -2002,15 +2002,22 @@ namespace nodetool { if (ip.empty()) continue; + auto subnet = net::get_ipv4_subnet_address(ip); + if (subnet) + { + block_subnet(*subnet, DNS_BLOCKLIST_LIFETIME); + ++good; + continue; + } const expect<epee::net_utils::network_address> parsed_addr = net::get_network_address(ip, 0); - if (!parsed_addr) + if (parsed_addr) { - MWARNING("Invalid IP address from DNS blocklist: " << ip << " - " << parsed_addr.error()); - ++bad; + block_host(*parsed_addr, DNS_BLOCKLIST_LIFETIME, true); + ++good; continue; } - block_host(*parsed_addr, DNS_BLOCKLIST_LIFETIME, true); - ++good; + MWARNING("Invalid IP address or subnet from DNS blocklist: " << ip << " - " << parsed_addr.error()); + ++bad; } } if (good > 0) |
