@@ -1240,8 +1240,9 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1240
1240
while !peer. awaiting_write_event {
1241
1241
if peer. should_buffer_onion_message ( ) {
1242
1242
if let Some ( ( peer_node_id, _) ) = peer. their_node_id {
1243
+ let handler = & self . message_handler . onion_message_handler ;
1243
1244
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) {
1245
1246
self . enqueue_message ( peer, & next_onion_message) ;
1246
1247
}
1247
1248
}
@@ -1271,7 +1272,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1271
1272
}
1272
1273
} ,
1273
1274
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 ) {
1275
1277
self . enqueue_message ( peer, & msg) ;
1276
1278
peer. sync_status = InitSyncTracker :: NodesSyncing ( msg. contents . node_id ) ;
1277
1279
} else {
@@ -1280,7 +1282,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1280
1282
} ,
1281
1283
InitSyncTracker :: ChannelsSyncing ( _) => unreachable ! ( ) ,
1282
1284
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) ) {
1284
1287
self . enqueue_message ( peer, & msg) ;
1285
1288
peer. sync_status = InitSyncTracker :: NodesSyncing ( msg. contents . node_id ) ;
1286
1289
} else {
@@ -1688,7 +1691,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1688
1691
} ,
1689
1692
Some ( LogicalMessage :: CommitmentSignedBatch ( channel_id, batch) ) => {
1690
1693
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) ;
1692
1696
return Ok ( None ) ;
1693
1697
} ,
1694
1698
None => Ok ( None ) ,
@@ -1713,7 +1717,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1713
1717
if let wire:: Message :: Init ( msg) = message {
1714
1718
// Check if we have any compatible chains if the `networks` field is specified.
1715
1719
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 ( ) {
1717
1722
let mut have_compatible_chains = false ;
1718
1723
' our_chains: for our_chain in our_chains. iter ( ) {
1719
1724
for their_chain in networks {
@@ -1754,22 +1759,27 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1754
1759
peer_lock. sync_status = InitSyncTracker :: ChannelsSyncing ( 0 ) ;
1755
1760
}
1756
1761
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) {
1758
1765
log_debug ! ( logger, "Route Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
1759
1766
return Err ( PeerHandleError { } . into ( ) ) ;
1760
1767
}
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) {
1762
1770
log_debug ! ( logger, "Channel Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
1763
1771
self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
1764
1772
return Err ( PeerHandleError { } . into ( ) ) ;
1765
1773
}
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) {
1767
1776
log_debug ! ( logger, "Onion Message Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
1768
1777
self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
1769
1778
self . message_handler . chan_handler . peer_disconnected ( their_node_id) ;
1770
1779
return Err ( PeerHandleError { } . into ( ) ) ;
1771
1780
}
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) {
1773
1783
log_debug ! ( logger, "Custom Message Handler decided we couldn't communicate with peer {}" , log_pubkey!( their_node_id) ) ;
1774
1784
self . message_handler . route_handler . peer_disconnected ( their_node_id) ;
1775
1785
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
2011
2021
self . message_handler . chan_handler . handle_update_fail_htlc ( their_node_id, & msg) ;
2012
2022
} ,
2013
2023
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) ;
2015
2026
} ,
2016
2027
2017
2028
wire:: Message :: CommitmentSigned ( msg) => {
@@ -2029,46 +2040,54 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
2029
2040
2030
2041
// Routing messages:
2031
2042
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) ;
2033
2045
} ,
2034
2046
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)
2036
2049
. map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
2037
2050
should_forward = Some ( wire:: Message :: ChannelAnnouncement ( msg) ) ;
2038
2051
}
2039
2052
self . update_gossip_backlogged ( ) ;
2040
2053
} ,
2041
2054
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)
2043
2057
. map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
2044
2058
should_forward = Some ( wire:: Message :: NodeAnnouncement ( msg) ) ;
2045
2059
}
2046
2060
self . update_gossip_backlogged ( ) ;
2047
2061
} ,
2048
2062
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)
2051
2065
. map_err ( |e| -> MessageHandlingError { e. into ( ) } ) ? {
2052
2066
should_forward = Some ( wire:: Message :: ChannelUpdate ( msg) ) ;
2053
2067
}
2054
2068
self . update_gossip_backlogged ( ) ;
2055
2069
} ,
2056
2070
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) ?;
2058
2073
} ,
2059
2074
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) ?;
2061
2077
} ,
2062
2078
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) ?;
2064
2081
} ,
2065
2082
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) ?;
2067
2085
} ,
2068
2086
2069
2087
// Onion message:
2070
2088
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) ;
2072
2091
} ,
2073
2092
2074
2093
// Unknown messages:
@@ -2080,7 +2099,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
2080
2099
log_trace ! ( logger, "Received unknown odd message of type {}, ignoring" , type_id) ;
2081
2100
} ,
2082
2101
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) ?;
2084
2104
} ,
2085
2105
} ;
2086
2106
Ok ( should_forward)
0 commit comments