@@ -89,6 +89,10 @@ impl OnionMessageHandler for IgnoringMessageHandler {
8989 fn handle_onion_message ( & self , _their_node_id : & PublicKey , _msg : & msgs:: OnionMessage ) { }
9090 fn peer_connected ( & self , _their_node_id : & PublicKey , _init : & msgs:: Init ) { }
9191 fn peer_disconnected ( & self , _their_node_id : & PublicKey , _no_connection_possible : bool ) { }
92+ fn provided_node_features ( & self ) -> NodeFeatures { NodeFeatures :: empty ( ) }
93+ fn provided_init_features ( & self , _their_node_id : & PublicKey ) -> InitFeatures {
94+ InitFeatures :: empty ( )
95+ }
9296}
9397impl Deref for IgnoringMessageHandler {
9498 type Target = IgnoringMessageHandler ;
@@ -1062,7 +1066,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
10621066 peer. their_node_id = Some ( their_node_id) ;
10631067 insert_node_id ! ( ) ;
10641068 let features = self . message_handler . chan_handler . provided_init_features ( & their_node_id)
1065- . or ( self . message_handler . route_handler . provided_init_features ( & their_node_id) ) ;
1069+ . or ( self . message_handler . route_handler . provided_init_features ( & their_node_id) )
1070+ . or ( self . message_handler . onion_message_handler . provided_init_features ( & their_node_id) ) ;
10661071 let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
10671072 self . enqueue_message ( peer, & resp) ;
10681073 peer. awaiting_pong_timer_tick_intervals = 0 ;
@@ -1075,7 +1080,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
10751080 peer. their_node_id = Some ( their_node_id) ;
10761081 insert_node_id ! ( ) ;
10771082 let features = self . message_handler . chan_handler . provided_init_features ( & their_node_id)
1078- . or ( self . message_handler . route_handler . provided_init_features ( & their_node_id) ) ;
1083+ . or ( self . message_handler . route_handler . provided_init_features ( & their_node_id) )
1084+ . or ( self . message_handler . onion_message_handler . provided_init_features ( & their_node_id) ) ;
10791085 let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
10801086 self . enqueue_message ( peer, & resp) ;
10811087 peer. awaiting_pong_timer_tick_intervals = 0 ;
@@ -1971,7 +1977,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
19711977 addresses. sort_by_key ( |addr| addr. get_id ( ) ) ;
19721978
19731979 let features = self . message_handler . chan_handler . provided_node_features ( )
1974- . or ( self . message_handler . route_handler . provided_node_features ( ) ) ;
1980+ . or ( self . message_handler . route_handler . provided_node_features ( ) )
1981+ . or ( self . message_handler . onion_message_handler . provided_node_features ( ) ) ;
19751982 let announcement = msgs:: UnsignedNodeAnnouncement {
19761983 features,
19771984 timestamp : self . last_node_announcement_serial . fetch_add ( 1 , Ordering :: AcqRel ) as u32 ,
0 commit comments