Skip to content

Commit

Permalink
BOLT 9: Guess at assignment of feature bis.
Browse files Browse the repository at this point in the history
There are only two channel (prev "global") features, which you have to
know to route payments through a channel: wumborama and status.  Both
should be advertized as odd bits in channel_announcement, since it's
fine if a node doesn't understand them.

The other options are now advertized (thanks to node_announcment
combinedfeatures) but don't effect routing, so they're peerfeatures.

We might be able to get rid of `option_will_fund_for_food`; it's only
used to flag the existence of the two extra fields in
node_announcement, for which `option_dual_fund` could be used instead
(with some flag value meaning "will not fund for food).

Signed-off-by: Rusty Russell <[email protected]>
  • Loading branch information
rustyrussell committed Feb 12, 2019
1 parent c084855 commit 4131dfa
Showing 1 changed file with 21 additions and 1 deletion.
22 changes: 21 additions & 1 deletion 09-features.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,30 @@ These flags may only be used in the `init` message:
| 3 | `initial_routing_sync` | Indicates that the sending node needs a complete routing information dump | [BOLT #7](07-routing-gossip.md#initial-sync) |
| 4/5 | `option_upfront_shutdown_script` | Commits to a shutdown scriptpubkey when opening channel | [BOLT #2](02-peer-protocol.md#the-open_channel-message) |
| 6/7 | `gossip_queries` | More sophisticated gossip control | [BOLT #7](07-routing-gossip.md#query-messages) |
| 8/9 | `option_simplified_commitment` | New commitment transaction format | TBA |
| 10/11 | `option_error_codes` | `error` message contains error code | TBA |
| 12/13 | `option_splice` | Funding transactions can be upgraded | TBA |
| 14/15 | `option_i_wumbo_you_wumbo` | Can create large channels | TBA |
| 18/19 | `option_dual_fund` | Flexible funding negotation | TBA |
| 20/21 | `option_will_fund_for_food` | node_announcment contains funding rate | TBA |
| 22/23 | `option_2p_ecdsa` | Single-key funding negotiation | TBA |
| 24/25 | `option_inv_gossip` | Gossip pulled rather than pushed | TBA |
| 26/27 | `option_fec_gossip` | Gossip set reconciliation | TBA |
| 28/29 | `option_schnorr_gossip` | Compact gossip messages | TBA |
| 30/31 | `option_offer_tx_proof` | Can provide tx proofs | TBA |
| 32/33 | `option_want_tx_proof` | Wants tx proofs | TBA |

## Assigned `channelfeatures` flags

There are currently no `channelfeatures` flags.
The `channel_announcement` column indicates how this feature is
advertized in `channel_announcement`'s `channelfeatures` field. `Odd`
is used to indicate to other nodes that they don't have to understand
this to route through, and `Even` is used to indicate that it is.

| Bits | Name | Description | `channel_announcment` | Link |
|------|------|-------------|-----------------------|------|
| 16/17 | `option_wumborama` | Can handle large payments | Odd | TBA |
| 34/35 | `option_status` | Sends soft-error status responses | Odd | TBA |

## Requirements

Expand Down

0 comments on commit 4131dfa

Please sign in to comment.