Skip to content

Commit 4c51d4e

Browse files
committed
Ensure handlers see a consistent set of peers on conn rejection
If a message handler decides to reject a connection, other handlers should see the disconnection if they've already seen the connection. We weren't previously doing that, and do it here.
1 parent 44f712d commit 4c51d4e

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

lightning/src/ln/peer_handler.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1561,10 +1561,13 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
15611561
}
15621562
if let Err(()) = self.message_handler.onion_message_handler.peer_connected(&their_node_id, &msg, peer_lock.inbound_connection) {
15631563
log_debug!(self.logger, "Onion Message Handler decided we couldn't communicate with peer {}", log_pubkey!(their_node_id));
1564+
self.message_handler.chan_handler.peer_disconnected(&their_node_id);
15641565
return Err(PeerHandleError { }.into());
15651566
}
15661567
if let Err(()) = self.message_handler.custom_message_handler.peer_connected(&their_node_id, &msg, peer_lock.inbound_connection) {
15671568
log_debug!(self.logger, "Custom Message Handler decided we couldn't communicate with peer {}", log_pubkey!(their_node_id));
1569+
self.message_handler.onion_message_handler.peer_disconnected(&their_node_id);
1570+
self.message_handler.chan_handler.peer_disconnected(&their_node_id);
15681571
return Err(PeerHandleError { }.into());
15691572
}
15701573

0 commit comments

Comments
 (0)