@@ -1240,8 +1240,9 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
12401240 while !peer. awaiting_write_event {
12411241 if peer. should_buffer_onion_message ( ) {
12421242 if let Some ( ( peer_node_id, _) ) = peer. their_node_id {
1243+ let handler = & self . message_handler . onion_message_handler ;
12431244 if let Some ( next_onion_message) =
1244- self . message_handler . onion_message_handler . next_onion_message_for_peer ( peer_node_id) {
1245+ handler . next_onion_message_for_peer ( peer_node_id) {
12451246 self . enqueue_message ( peer, & next_onion_message) ;
12461247 }
12471248 }
@@ -1271,7 +1272,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
12711272 }
12721273 } ,
12731274 InitSyncTracker :: ChannelsSyncing ( c) if c == 0xffff_ffff_ffff_ffff => {
1274- if let Some ( msg) = self . message_handler . route_handler . get_next_node_announcement ( None ) {
1275+ let handler = & self . message_handler . route_handler ;
1276+ if let Some ( msg) = handler. get_next_node_announcement ( None ) {
12751277 self . enqueue_message ( peer, & msg) ;
12761278 peer. sync_status = InitSyncTracker :: NodesSyncing ( msg. contents . node_id ) ;
12771279 } else {
@@ -1280,7 +1282,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
12801282 } ,
12811283 InitSyncTracker :: ChannelsSyncing ( _) => unreachable ! ( ) ,
12821284 InitSyncTracker :: NodesSyncing ( sync_node_id) => {
1283- if let Some ( msg) = self . message_handler . route_handler . get_next_node_announcement ( Some ( & sync_node_id) ) {
1285+ let handler = & self . message_handler . route_handler ;
1286+ if let Some ( msg) = handler. get_next_node_announcement ( Some ( & sync_node_id) ) {
12841287 self . enqueue_message ( peer, & msg) ;
12851288 peer. sync_status = InitSyncTracker :: NodesSyncing ( msg. contents . node_id ) ;
12861289 } else {
@@ -1688,7 +1691,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
16881691 } ,
16891692 Some ( LogicalMessage :: CommitmentSignedBatch ( channel_id, batch) ) => {
16901693 log_trace ! ( logger, "Received commitment_signed batch {:?} from {}" , batch, log_pubkey!( their_node_id) ) ;
1691- self . message_handler . chan_handler . handle_commitment_signed_batch ( their_node_id, channel_id, batch) ;
1694+ let chan_handler = & self . message_handler . chan_handler ;
1695+ chan_handler. handle_commitment_signed_batch ( their_node_id, channel_id, batch) ;
16921696 return Ok ( None ) ;
16931697 } ,
16941698 None => Ok ( None ) ,
@@ -1713,7 +1717,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
17131717 if let wire:: Message :: Init ( msg) = message {
17141718 // Check if we have any compatible chains if the `networks` field is specified.
17151719 if let Some ( networks) = & msg. networks {
1716- if let Some ( our_chains) = self . message_handler . chan_handler . get_chain_hashes ( ) {
1720+ let chan_handler = & self . message_handler . chan_handler ;
1721+ if let Some ( our_chains) = chan_handler. get_chain_hashes ( ) {
17171722 let mut have_compatible_chains = false ;
17181723 ' our_chains: for our_chain in our_chains. iter ( ) {
17191724 for their_chain in networks {
@@ -1754,22 +1759,27 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
17541759 peer_lock. sync_status = InitSyncTracker :: ChannelsSyncing ( 0 ) ;
17551760 }
17561761
1757- if let Err ( ( ) ) = self . message_handler . route_handler . peer_connected ( their_node_id, & msg, peer_lock. inbound_connection ) {
1762+ let connection = peer_lock. inbound_connection ;
1763+ let route_handler = & self . message_handler . route_handler ;
1764+ if let Err ( ( ) ) = route_handler. peer_connected ( their_node_id, & msg, connection) {
17581765 log_debug ! ( logger, "Route Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
17591766 return Err ( PeerHandleError { } . into ( ) ) ;
17601767 }
1761- if let Err ( ( ) ) = self . message_handler . chan_handler . peer_connected ( their_node_id, & msg, peer_lock. inbound_connection ) {
1768+ let chan_handler = & self . message_handler . chan_handler ;
1769+ if let Err ( ( ) ) = chan_handler. peer_connected ( their_node_id, & msg, connection) {
17621770 log_debug ! ( logger, "Channel Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
17631771 self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
17641772 return Err ( PeerHandleError { } . into ( ) ) ;
17651773 }
1766- if let Err ( ( ) ) = self . message_handler . onion_message_handler . peer_connected ( their_node_id, & msg, peer_lock. inbound_connection ) {
1774+ let onion_message_handler = & self . message_handler . onion_message_handler ;
1775+ if let Err ( ( ) ) = onion_message_handler. peer_connected ( their_node_id, & msg, connection) {
17671776 log_debug ! ( logger, "Onion Message Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
17681777 self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
17691778 self . message_handler . chan_handler . peer_disconnected ( their_node_id) ;
17701779 return Err ( PeerHandleError { } . into ( ) ) ;
17711780 }
1772- if let Err ( ( ) ) = self . message_handler . custom_message_handler . peer_connected ( their_node_id, & msg, peer_lock. inbound_connection ) {
1781+ let custom_handler = & self . message_handler . custom_message_handler ;
1782+ if let Err ( ( ) ) = custom_handler. peer_connected ( their_node_id, & msg, connection) {
17731783 log_debug ! ( logger, "Custom Message Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
17741784 self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
17751785 self . message_handler . chan_handler . peer_disconnected ( their_node_id) ;
@@ -2011,7 +2021,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
20112021 self . message_handler . chan_handler . handle_update_fail_htlc ( their_node_id, & msg) ;
20122022 } ,
20132023 wire:: Message :: UpdateFailMalformedHTLC ( msg) => {
2014- self . message_handler . chan_handler . handle_update_fail_malformed_htlc ( their_node_id, & msg) ;
2024+ let chan_handler = & self . message_handler . chan_handler ;
2025+ chan_handler. handle_update_fail_malformed_htlc ( their_node_id, & msg) ;
20152026 } ,
20162027
20172028 wire:: Message :: CommitmentSigned ( msg) => {
@@ -2029,46 +2040,54 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
20292040
20302041 // Routing messages:
20312042 wire:: Message :: AnnouncementSignatures ( msg) => {
2032- self . message_handler . chan_handler . handle_announcement_signatures ( their_node_id, & msg) ;
2043+ let chan_handler = & self . message_handler . chan_handler ;
2044+ chan_handler. handle_announcement_signatures ( their_node_id, & msg) ;
20332045 } ,
20342046 wire:: Message :: ChannelAnnouncement ( msg) => {
2035- if self . message_handler . route_handler . handle_channel_announcement ( Some ( their_node_id) , & msg)
2047+ let route_handler = & self . message_handler . route_handler ;
2048+ if route_handler. handle_channel_announcement ( Some ( their_node_id) , & msg)
20362049 . map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
20372050 should_forward = Some ( wire:: Message :: ChannelAnnouncement ( msg) ) ;
20382051 }
20392052 self . update_gossip_backlogged ( ) ;
20402053 } ,
20412054 wire:: Message :: NodeAnnouncement ( msg) => {
2042- if self . message_handler . route_handler . handle_node_announcement ( Some ( their_node_id) , & msg)
2055+ let route_handler = & self . message_handler . route_handler ;
2056+ if route_handler. handle_node_announcement ( Some ( their_node_id) , & msg)
20432057 . map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
20442058 should_forward = Some ( wire:: Message :: NodeAnnouncement ( msg) ) ;
20452059 }
20462060 self . update_gossip_backlogged ( ) ;
20472061 } ,
20482062 wire:: Message :: ChannelUpdate ( msg) => {
2049- self . message_handler . chan_handler . handle_channel_update ( their_node_id , & msg ) ;
2050- if self . message_handler . route_handler . handle_channel_update ( Some ( their_node_id) , & msg)
2063+ let route_handler = & self . message_handler . route_handler ;
2064+ if route_handler. handle_channel_update ( Some ( their_node_id) , & msg)
20512065 . map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
20522066 should_forward = Some ( wire:: Message :: ChannelUpdate ( msg) ) ;
20532067 }
20542068 self . update_gossip_backlogged ( ) ;
20552069 } ,
20562070 wire:: Message :: QueryShortChannelIds ( msg) => {
2057- self . message_handler . route_handler . handle_query_short_channel_ids ( their_node_id, msg) ?;
2071+ let route_handler = & self . message_handler . route_handler ;
2072+ route_handler. handle_query_short_channel_ids ( their_node_id, msg) ?;
20582073 } ,
20592074 wire:: Message :: ReplyShortChannelIdsEnd ( msg) => {
2060- self . message_handler . route_handler . handle_reply_short_channel_ids_end ( their_node_id, msg) ?;
2075+ let route_handler = & self . message_handler . route_handler ;
2076+ route_handler. handle_reply_short_channel_ids_end ( their_node_id, msg) ?;
20612077 } ,
20622078 wire:: Message :: QueryChannelRange ( msg) => {
2063- self . message_handler . route_handler . handle_query_channel_range ( their_node_id, msg) ?;
2079+ let route_handler = & self . message_handler . route_handler ;
2080+ route_handler. handle_query_channel_range ( their_node_id, msg) ?;
20642081 } ,
20652082 wire:: Message :: ReplyChannelRange ( msg) => {
2066- self . message_handler . route_handler . handle_reply_channel_range ( their_node_id, msg) ?;
2083+ let route_handler = & self . message_handler . route_handler ;
2084+ route_handler. handle_reply_channel_range ( their_node_id, msg) ?;
20672085 } ,
20682086
20692087 // Onion message:
20702088 wire:: Message :: OnionMessage ( msg) => {
2071- self . message_handler . onion_message_handler . handle_onion_message ( their_node_id, & msg) ;
2089+ let onion_message_handler = & self . message_handler . onion_message_handler ;
2090+ onion_message_handler. handle_onion_message ( their_node_id, & msg) ;
20722091 } ,
20732092
20742093 // Unknown messages:
@@ -2080,7 +2099,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
20802099 log_trace ! ( logger, "Received unknown odd message of type {}, ignoring" , type_id) ;
20812100 } ,
20822101 wire:: Message :: Custom ( custom) => {
2083- self . message_handler . custom_message_handler . handle_custom_message ( custom, their_node_id) ?;
2102+ let custom_message_handler = & self . message_handler . custom_message_handler ;
2103+ custom_message_handler. handle_custom_message ( custom, their_node_id) ?;
20842104 } ,
20852105 } ;
20862106 Ok ( should_forward)
0 commit comments