@@ -89,6 +89,10 @@ impl OnionMessageHandler for IgnoringMessageHandler {
89
89
fn handle_onion_message ( & self , _their_node_id : & PublicKey , _msg : & msgs:: OnionMessage ) { }
90
90
fn peer_connected ( & self , _their_node_id : & PublicKey , _init : & msgs:: Init ) { }
91
91
fn peer_disconnected ( & self , _their_node_id : & PublicKey , _no_connection_possible : bool ) { }
92
+ fn provided_init_features ( & self , _their_node_id : & PublicKey ) -> InitFeatures {
93
+ InitFeatures :: empty ( )
94
+ }
95
+ fn provided_node_features ( & self ) -> NodeFeatures { NodeFeatures :: empty ( ) }
92
96
}
93
97
impl Deref for IgnoringMessageHandler {
94
98
type Target = IgnoringMessageHandler ;
@@ -1062,7 +1066,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1062
1066
peer. their_node_id = Some ( their_node_id) ;
1063
1067
insert_node_id ! ( ) ;
1064
1068
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) ) ;
1066
1071
let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
1067
1072
self . enqueue_message ( peer, & resp) ;
1068
1073
peer. awaiting_pong_timer_tick_intervals = 0 ;
@@ -1075,7 +1080,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1075
1080
peer. their_node_id = Some ( their_node_id) ;
1076
1081
insert_node_id ! ( ) ;
1077
1082
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) ) ;
1079
1085
let resp = msgs:: Init { features, remote_network_address : filter_addresses ( peer. their_net_address . clone ( ) ) } ;
1080
1086
self . enqueue_message ( peer, & resp) ;
1081
1087
peer. awaiting_pong_timer_tick_intervals = 0 ;
@@ -1971,7 +1977,8 @@ impl<Descriptor: SocketDescriptor, CM: Deref, RM: Deref, OM: Deref, L: Deref, CM
1971
1977
addresses. sort_by_key ( |addr| addr. get_id ( ) ) ;
1972
1978
1973
1979
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 ( ) ) ;
1975
1982
let announcement = msgs:: UnsignedNodeAnnouncement {
1976
1983
features,
1977
1984
timestamp : self . last_node_announcement_serial . fetch_add ( 1 , Ordering :: AcqRel ) as u32 ,
0 commit comments