@@ -916,21 +916,20 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref, CMH: Deref> P
916
916
if peer. pending_read_buffer_pos == peer. pending_read_buffer . len ( ) {
917
917
peer. pending_read_buffer_pos = 0 ;
918
918
919
- macro_rules! insert_node_id {
920
- ( ) => {
921
- match self . node_id_to_descriptor. lock( ) . unwrap( ) . entry( peer. their_node_id. unwrap( ) ) {
922
- hash_map:: Entry :: Occupied ( _) => {
923
- log_trace!( self . logger, "Got second connection with {}, closing" , log_pubkey!( peer. their_node_id. unwrap( ) ) ) ;
924
- peer. their_node_id = None ; // Unset so that we don't generate a peer_disconnected event
925
- return Err ( PeerHandleError { no_connection_possible: false } )
926
- } ,
927
- hash_map:: Entry :: Vacant ( entry) => {
928
- log_debug!( self . logger, "Finished noise handshake for connection with {}" , log_pubkey!( peer. their_node_id. unwrap( ) ) ) ;
929
- entry. insert( peer_descriptor. clone( ) )
930
- } ,
931
- } ;
919
+ let insert_node_id = || {
920
+ match self . node_id_to_descriptor . lock ( ) . unwrap ( ) . entry ( peer. their_node_id . unwrap ( ) ) {
921
+ hash_map:: Entry :: Occupied ( _) => {
922
+ log_trace ! ( self . logger, "Got second connection with {}, closing" , log_pubkey!( peer. their_node_id. unwrap( ) ) ) ;
923
+ peer. their_node_id = None ; // Unset so that we don't generate a peer_disconnected event
924
+ Err ( PeerHandleError { no_connection_possible : false } )
925
+ } ,
926
+ hash_map:: Entry :: Vacant ( entry) => {
927
+ log_debug ! ( self . logger, "Finished noise handshake for connection with {}" , log_pubkey!( peer. their_node_id. unwrap( ) ) ) ;
928
+ entry. insert ( peer_descriptor. clone ( ) ) ;
929
+ Ok ( ( ) )
930
+ } ,
932
931
}
933
- }
932
+ } ;
934
933
935
934
let next_step = peer. channel_encryptor . get_noise_step ( ) ;
936
935
match next_step {
@@ -948,7 +947,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref, CMH: Deref> P
948
947
peer. pending_read_is_header = true ;
949
948
950
949
peer. their_node_id = Some ( their_node_id) ;
951
- insert_node_id ! ( ) ;
950
+ insert_node_id ( ) ? ;
952
951
let features = InitFeatures :: known ( ) ;
953
952
let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
954
953
self . enqueue_message ( peer, & resp) ;
@@ -960,7 +959,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, L: Deref, CMH: Deref> P
960
959
peer. pending_read_buffer = [ 0 ; 18 ] . to_vec ( ) ; // Message length header is 18 bytes
961
960
peer. pending_read_is_header = true ;
962
961
peer. their_node_id = Some ( their_node_id) ;
963
- insert_node_id ! ( ) ;
962
+ insert_node_id ( ) ? ;
964
963
let features = InitFeatures :: known ( ) ;
965
964
let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
966
965
self . enqueue_message ( peer, & resp) ;
0 commit comments