@@ -922,11 +922,6 @@ impl PeerNetworkManager {
922922 Ok ( ( ) )
923923 }
924924
925- /// Get the number of connected peers (async version).
926- pub async fn peer_count_async ( & self ) -> usize {
927- self . pool . peer_count ( ) . await
928- }
929-
930925 /// Get reputation information for all peers
931926 pub async fn get_peer_reputations ( & self ) -> HashMap < SocketAddr , ( i32 , bool ) > {
932927 let reputations = self . reputation_manager . get_all_reputations ( ) . await ;
@@ -1230,74 +1225,6 @@ impl NetworkManager for PeerNetworkManager {
12301225 } )
12311226 }
12321227
1233- async fn send_ping ( & mut self ) -> NetworkResult < u64 > {
1234- // Send ping to all peers, return first nonce
1235- let peers = self . pool . get_all_peers ( ) . await ;
1236-
1237- if peers. is_empty ( ) {
1238- return Err ( NetworkError :: ConnectionFailed ( "No connected peers" . to_string ( ) ) ) ;
1239- }
1240-
1241- let ( _, peer) = & peers[ 0 ] ;
1242- let mut peer_guard = peer. write ( ) . await ;
1243- peer_guard. send_ping ( ) . await
1244- }
1245-
1246- async fn handle_ping ( & mut self , _nonce : u64 ) -> NetworkResult < ( ) > {
1247- // This is handled in the peer reader
1248- Ok ( ( ) )
1249- }
1250-
1251- fn handle_pong ( & mut self , _nonce : u64 ) -> NetworkResult < ( ) > {
1252- // This is handled in the peer reader
1253- Ok ( ( ) )
1254- }
1255-
1256- fn should_ping ( & self ) -> bool {
1257- // Individual peers handle their own ping timing
1258- false
1259- }
1260-
1261- fn cleanup_old_pings ( & mut self ) {
1262- // Individual peers handle their own ping cleanup
1263- }
1264-
1265- fn get_message_sender ( & self ) -> mpsc:: Sender < NetworkMessage > {
1266- // Create a sender that routes messages to our internal send_message logic
1267- let ( tx, mut rx) = mpsc:: channel ( 1000 ) ;
1268- let pool = Arc :: clone ( & self . pool ) ;
1269-
1270- tokio:: spawn ( async move {
1271- while let Some ( message) = rx. recv ( ) . await {
1272- // Route message through the peer network logic
1273- // For sync messages that require consistent responses, send to only one peer
1274- match & message {
1275- NetworkMessage :: GetHeaders ( _)
1276- | NetworkMessage :: GetCFHeaders ( _)
1277- | NetworkMessage :: GetCFilters ( _)
1278- | NetworkMessage :: GetData ( _) => {
1279- // Send to a single peer for sync messages including GetData for block downloads
1280- let peers = pool. get_all_peers ( ) . await ;
1281- if let Some ( ( _, peer) ) = peers. first ( ) {
1282- let mut peer_guard = peer. write ( ) . await ;
1283- let _ = peer_guard. send_message ( message) . await ;
1284- }
1285- }
1286- _ => {
1287- // Broadcast to all peers for other messages
1288- let peers = pool. get_all_peers ( ) . await ;
1289- for ( _, peer) in peers {
1290- let mut peer_guard = peer. write ( ) . await ;
1291- let _ = peer_guard. send_message ( message. clone ( ) ) . await ;
1292- }
1293- }
1294- }
1295- }
1296- } ) ;
1297-
1298- tx
1299- }
1300-
13011228 async fn get_peer_best_height ( & self ) -> NetworkResult < Option < u32 > > {
13021229 let peers = self . pool . get_all_peers ( ) . await ;
13031230
@@ -1368,28 +1295,6 @@ impl NetworkManager for PeerNetworkManager {
13681295 false
13691296 }
13701297
1371- async fn get_peers_with_service (
1372- & self ,
1373- service_flags : dashcore:: network:: constants:: ServiceFlags ,
1374- ) -> Vec < PeerInfo > {
1375- let peers = self . pool . get_all_peers ( ) . await ;
1376- let mut matching_peers = Vec :: new ( ) ;
1377-
1378- for ( _, peer) in peers. iter ( ) {
1379- let peer_guard = peer. read ( ) . await ;
1380- let peer_info = peer_guard. peer_info ( ) ;
1381- if peer_info
1382- . services
1383- . map ( |s| dashcore:: network:: constants:: ServiceFlags :: from ( s) . has ( service_flags) )
1384- . unwrap_or ( false )
1385- {
1386- matching_peers. push ( peer_info) ;
1387- }
1388- }
1389-
1390- matching_peers
1391- }
1392-
13931298 async fn has_headers2_peer ( & self ) -> bool {
13941299 // Headers2 is currently disabled due to protocol compatibility issues
13951300 // TODO: Fix headers2 decompression before re-enabling
0 commit comments