],
optional_features: [
// Note that if new "non-channel-related" flags are added here they should be
- // explicitly cleared in InitFeatures::known_channel_features.
+ // explicitly cleared in InitFeatures::known_channel_features and
+ // NodeFeatures::known_channel_features.
// Byte 0
DataLossProtect | InitialRoutingSync | UpfrontShutdownScript | GossipQueries,
// Byte 1
}
}
+impl NodeFeatures {
+ /// Returns the set of known node features that are related to channels.
+ pub fn known_channel_features() -> NodeFeatures {
+ Self::known().clear_gossip_queries()
+ }
+}
+
impl InvoiceFeatures {
/// Converts `InvoiceFeatures` to `Features<C>`. Only known `InvoiceFeatures` relevant to
/// context `C` are included in the result.