Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: lightningdevkit/rust-lightning
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 4cb0a4b
Choose a base ref
...
head repository: lightningdevkit/rust-lightning
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 07a9910
Choose a head ref
  • 4 commits
  • 7 files changed
  • 1 contributor

Commits on May 20, 2023

  1. De/serialize custom TLVs on OnionHopData::FinalNode

    When serialized, the TLVs in `OnionHopData`, unlike a normal TLV
    stream, are prefixed with the length of the stream. To allow a user to
    add arbitrary custom TLVs, we aren't able to communicate to our
    serialization macros exactly which fields to expect, so this commit
    adds a new macro variant to allow appending an extra set of bytes (and
    modifying the prefixed length accordingly).
    
    Because the keysend preimage TLV has a type number in the custom type
    range, and a user's TLVs may have type numbers above and/or below
    keysend's type number, and because TLV streams must be serialized in
    increasing order by type number, this commit introduces a way to sort
    TLVs from a byte slice.
    alecchendev committed May 20, 2023
    Configuration menu
    Copy the full SHA
    e08c06f View commit details
    Browse the repository at this point in the history
  2. Handle receiving custom HTLC TLVs

    This completes basic receiver-side support for custom TLVs and adds
    functional testing for sending and receiving.
    alecchendev committed May 20, 2023
    Configuration menu
    Copy the full SHA
    25455ef View commit details
    Browse the repository at this point in the history
  3. Add TlvStream::intersection

    When we drop non-matching custom TLVs on multi-part receives, since we
    can assume the TLV streams are sorted, we can implement faster algorithm
    to get the intersection of the two streams.
    alecchendev committed May 20, 2023
    Configuration menu
    Copy the full SHA
    93900f9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    07a9910 View commit details
    Browse the repository at this point in the history
Loading