@@ -55,7 +55,10 @@ static constexpr int DEFAULT_WAIT_CLIENT_TIMEOUT = 0;
55
55
static const bool DEFAULT_NAMED=false ;
56
56
static const int CONTINUE_EXECUTION=-1 ;
57
57
static constexpr int8_t UNKNOWN_NETWORK{-1 };
58
- static constexpr std::array NETWORKS{" ipv4" , " ipv6" , " onion" , " i2p" , " cjdns" };
58
+ // See GetNetworkName() in netbase.cpp
59
+ static constexpr std::array NETWORKS{" not_publicly_routable" , " ipv4" , " ipv6" , " onion" , " i2p" , " cjdns" , " internal" };
60
+ static constexpr std::array NETWORK_SHORT_NAMES{" npr" , " ipv4" , " ipv6" , " onion" , " i2p" , " cjdns" , " int" };
61
+ static constexpr std::array UNREACHABLE_NETWORK_IDS{/* not_publicly_routable*/ 0 , /* internal*/ 6 };
59
62
60
63
/* * Default number of blocks to generate for RPC generatetoaddress. */
61
64
static const std::string DEFAULT_NBLOCKS = " 1" ;
@@ -289,7 +292,7 @@ class AddrinfoRequestHandler : public BaseRequestHandler
289
292
// Prepare result to return to user.
290
293
UniValue result{UniValue::VOBJ}, addresses{UniValue::VOBJ};
291
294
uint64_t total{0 }; // Total address count
292
- for (size_t i = 0 ; i < NETWORKS.size (); ++i) {
295
+ for (size_t i = 1 ; i < NETWORKS.size () - 1 ; ++i) {
293
296
addresses.pushKV (NETWORKS[i], counts.at (i));
294
297
total += counts.at (i);
295
298
}
@@ -506,7 +509,7 @@ class NetinfoRequestHandler : public BaseRequestHandler
506
509
const bool is_addr_relay_enabled{peer[" addr_relay_enabled" ].isNull () ? false : peer[" addr_relay_enabled" ].get_bool ()};
507
510
const bool is_bip152_hb_from{peer[" bip152_hb_from" ].get_bool ()};
508
511
const bool is_bip152_hb_to{peer[" bip152_hb_to" ].get_bool ()};
509
- m_peers.push_back ({addr, sub_version, conn_type, network , age, min_ping, ping, addr_processed, addr_rate_limited, last_blck, last_recv, last_send, last_trxn, peer_id, mapped_as, version, is_addr_relay_enabled, is_bip152_hb_from, is_bip152_hb_to, is_outbound, is_tx_relay});
512
+ m_peers.push_back ({addr, sub_version, conn_type, NETWORK_SHORT_NAMES[network_id] , age, min_ping, ping, addr_processed, addr_rate_limited, last_blck, last_recv, last_send, last_trxn, peer_id, mapped_as, version, is_addr_relay_enabled, is_bip152_hb_from, is_bip152_hb_to, is_outbound, is_tx_relay});
510
513
m_max_addr_length = std::max (addr.length () + 1 , m_max_addr_length);
511
514
m_max_addr_processed_length = std::max (ToString (addr_processed).length (), m_max_addr_processed_length);
512
515
m_max_addr_rate_limited_length = std::max (ToString (addr_rate_limited).length (), m_max_addr_rate_limited_length);
@@ -571,6 +574,13 @@ class NetinfoRequestHandler : public BaseRequestHandler
571
574
reachable_networks.push_back (network_id);
572
575
}
573
576
};
577
+
578
+ for (const size_t network_id : UNREACHABLE_NETWORK_IDS) {
579
+ if (m_counts.at (2 ).at (network_id) == 0 ) continue ;
580
+ result += strprintf (" %8s" , NETWORK_SHORT_NAMES.at (network_id)); // column header
581
+ reachable_networks.push_back (network_id);
582
+ }
583
+
574
584
result += " total block" ;
575
585
if (m_manual_peers_count) result += " manual" ;
576
586
@@ -636,7 +646,7 @@ class NetinfoRequestHandler : public BaseRequestHandler
636
646
" \" manual\" - peer we manually added using RPC addnode or the -addnode/-connect config options\n "
637
647
" \" feeler\" - short-lived connection for testing addresses\n "
638
648
" \" addr\" - address fetch; short-lived connection for requesting addresses\n "
639
- " net Network the peer connected through (\" ipv4\" , \" ipv6\" , \" onion\" , \" i2p\" , or \" cjdns \" )\n "
649
+ " net Network the peer connected through (\" ipv4\" , \" ipv6\" , \" onion\" , \" i2p\" , \" cjdns \" , or \" npr \" (not publicly routable) )\n "
640
650
" mping Minimum observed ping time, in milliseconds (ms)\n "
641
651
" ping Last observed ping time, in milliseconds (ms)\n "
642
652
" send Time since last message sent to the peer, in seconds\n "
0 commit comments