|
19 | 19 | //! supports a feature if it advertises the feature (as either required or optional) to its peers.
|
20 | 20 | //! And the implementation can interpret a feature if the feature is known to it.
|
21 | 21 | //!
|
| 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 | +//! |
22 | 51 | //! [BOLT #9]: https://github.com/lightning/bolts/blob/master/09-features.md
|
23 | 52 | //! [messages]: crate::ln::msgs
|
24 | 53 |
|
|
0 commit comments