Skip to content

Commit d6feb1c

Browse files
authored
Merge pull request #1514 from mattfaltyn/issue438
2 parents 5421e1a + 86299c5 commit d6feb1c

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

lightning/src/ln/features.rs

+29
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,35 @@
1919
//! supports a feature if it advertises the feature (as either required or optional) to its peers.
2020
//! And the implementation can interpret a feature if the feature is known to it.
2121
//!
22+
//! The following features are currently required in the LDK:
23+
//! - `VariableLengthOnion` - requires/supports variable-length routing onion payloads
24+
//! (see [BOLT-4](https://github.com/lightning/bolts/blob/master/04-onion-routing.md) for more information).
25+
//! - `StaticRemoteKey` - requires/supports static key for remote output
26+
//! (see [BOLT-3](https://github.com/lightning/bolts/blob/master/03-transactions.md) for more information).
27+
//!
28+
//! The following features are currently supported in the LDK:
29+
//! - `DataLossProtect` - requires/supports that a node which has somehow fallen behind, e.g., has been restored from an old backup,
30+
//! can detect that it has fallen behind
31+
//! (see [BOLT-2](https://github.com/lightning/bolts/blob/master/02-peer-protocol.md) for more information).
32+
//! - `InitialRoutingSync` - requires/supports that the sending node needs a complete routing information dump
33+
//! (see [BOLT-7](https://github.com/lightning/bolts/blob/master/07-routing-gossip.md#initial-sync) for more information).
34+
//! - `UpfrontShutdownScript` - commits to a shutdown scriptpubkey when opening a channel
35+
//! (see [BOLT-2](https://github.com/lightning/bolts/blob/master/02-peer-protocol.md#the-open_channel-message) for more information).
36+
//! - `GossipQueries` - requires/supports more sophisticated gossip control
37+
//! (see [BOLT-7](https://github.com/lightning/bolts/blob/master/07-routing-gossip.md) for more information).
38+
//! - `PaymentSecret` - requires/supports that a node supports payment_secret field
39+
//! (see [BOLT-4](https://github.com/lightning/bolts/blob/master/04-onion-routing.md) for more information).
40+
//! - `BasicMPP` - requires/supports that a node can receive basic multi-part payments
41+
//! (see [BOLT-4](https://github.com/lightning/bolts/blob/master/04-onion-routing.md#basic-multi-part-payments) for more information).
42+
//! - `ShutdownAnySegwit` - requires/supports that future segwit versions are allowed in `shutdown`
43+
//! (see [BOLT-2](https://github.com/lightning/bolts/blob/master/02-peer-protocol.md) for more information).
44+
//! - `ChannelType` - node supports the channel_type field in open/accept
45+
//! (see [BOLT-2](https://github.com/lightning/bolts/blob/master/02-peer-protocol.md) for more information).
46+
//! - `SCIDPrivacy` - supply channel aliases for routing
47+
//! (see [BOLT-2](https://github.com/lightning/bolts/blob/master/02-peer-protocol.md) for more information).
48+
//! - `Keysend` - send funds to a node without an invoice
49+
//! (see the [`Keysend` feature assignment proposal](https://github.com/lightning/bolts/issues/605#issuecomment-606679798) for more information).
50+
//!
2251
//! [BOLT #9]: https://github.com/lightning/bolts/blob/master/09-features.md
2352
//! [messages]: crate::ln::msgs
2453

0 commit comments

Comments
 (0)