feature: advertise required feature bit for TLV onions#6336
feature: advertise required feature bit for TLV onions#6336Roasbeef wants to merge 1 commit intolightningnetwork:masterfrom
Conversation
In this commit, we start to advertise the required feature bit for the new modern TLV onion format. In a future change, we'll remove the logic for being able to encode+encode the payload. For now, we still have tests that exercise being able to use the new and old formats (as well as both of them in a single route), so we'll continue to retain that behavior for now. Implements lightning/bolts#962.
aff2913 to
f77fb99
Compare
ellemouton
left a comment
There was a problem hiding this comment.
LGTM 👍
Just for completeness sake, the one other place I think we can maybe change to using the required bit instead of the optional bit in this pr (instead of waiting for the follow-up pr where we remove all the legacy code for the optional bit) is for when we create the JIT keysend and AMP invoices. currently we just put in the optional feature bit there & persist those invoices.
|
So instead, we might want to leave the feature bit as is, and modify the |
|
Made this PR to implement the change above: #6385 |
|
Moving this to 0.16 given that we're introducing behavior in 0.14.3 to stop allowing the legacy onions to be sent at all. |
ziggie1984
left a comment
There was a problem hiding this comment.
LGTM (pending release-notes), I agree with Elle, we can also update the invoices we create for our DB when creating a keysend or and spontaneous amp invoice
|
|
||
| ## P2P Protocol | ||
|
|
||
| [lnd now advertises the TLV onion feature bit as required(https://github.com/lightningnetwork/lnd/pull/6336). |
|
This PR implementing this change was merged: #8275 |
In this commit, we start to advertise the required feature bit for the
new modern TLV onion format. In a future change, we'll remove the logic
for being able to encode+encode the payload. For now, we still have
tests that exercise being able to use the new and old formats (as well
as both of them in a single route), so we'll continue to retain that
behavior for now.
Implements lightning/bolts#962.