Skip to content

Commit 21708b5

Browse files
committed
Add PeerManager::init_features to DRY up code
1 parent 415973e commit 21708b5

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

lightning/src/ln/peer_handler.rs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -870,6 +870,13 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
870870
SecretKey::from_slice(&Sha256::from_engine(ephemeral_hash).into_inner()).expect("You broke SHA-256!")
871871
}
872872

873+
fn init_features(&self, their_node_id: &PublicKey) -> InitFeatures {
874+
self.message_handler.chan_handler.provided_init_features(their_node_id)
875+
| self.message_handler.route_handler.provided_init_features(their_node_id)
876+
| self.message_handler.onion_message_handler.provided_init_features(their_node_id)
877+
| self.message_handler.custom_message_handler.provided_init_features(their_node_id)
878+
}
879+
873880
/// Indicates a new outbound connection has been established to a node with the given `node_id`
874881
/// and an optional remote network address.
875882
///
@@ -1265,10 +1272,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
12651272

12661273
peer.set_their_node_id(their_node_id);
12671274
insert_node_id!();
1268-
let features = self.message_handler.chan_handler.provided_init_features(&their_node_id)
1269-
| self.message_handler.route_handler.provided_init_features(&their_node_id)
1270-
| self.message_handler.onion_message_handler.provided_init_features(&their_node_id)
1271-
| self.message_handler.custom_message_handler.provided_init_features(&their_node_id);
1275+
let features = self.init_features(&their_node_id);
12721276
let resp = msgs::Init { features, remote_network_address: filter_addresses(peer.their_net_address.clone()) };
12731277
self.enqueue_message(peer, &resp);
12741278
peer.awaiting_pong_timer_tick_intervals = 0;
@@ -1280,10 +1284,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
12801284
peer.pending_read_is_header = true;
12811285
peer.set_their_node_id(their_node_id);
12821286
insert_node_id!();
1283-
let features = self.message_handler.chan_handler.provided_init_features(&their_node_id)
1284-
| self.message_handler.route_handler.provided_init_features(&their_node_id)
1285-
| self.message_handler.onion_message_handler.provided_init_features(&their_node_id)
1286-
| self.message_handler.custom_message_handler.provided_init_features(&their_node_id);
1287+
let features = self.init_features(&their_node_id);
12871288
let resp = msgs::Init { features, remote_network_address: filter_addresses(peer.their_net_address.clone()) };
12881289
self.enqueue_message(peer, &resp);
12891290
peer.awaiting_pong_timer_tick_intervals = 0;

0 commit comments

Comments
 (0)