Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release: bump version to v0.18.3 rc2 #9036

Merged
merged 21 commits into from
Aug 28, 2024

Commits on Aug 27, 2024

  1. discovery: fix bug that can lead to sending invalid chan_ann msgs

    Initially in lnd, we didn't store the extra TLV data that could be
    dangling off of gossip messages. This was fixed initially in lnd v0.5
    with this PR: lightningnetwork#1825.
    
    Within the PR, we incorrect set the `ExtraOpaqueData` (extra TLV blob)
    of the `ChannelAnnouncement` to the value stored in `edge`, which is
    actually our channel update. As 6-ish years ago we didn't yet have
    anything that used the TLV gossip fields, this went unnoticed.
    
    Fast forward to 2024, we shipped an experimental version of inbounbd
    fees. This starts to store additional data in the `ExtraOpaqueData`
    field, the TLV for the inbound fee. Initially, everything is valid when
    the first `ChannelAnnouncement` is sent, but as soon as a user attempts
    to set an inbound fee policy, we'd incorrectly swap in that new
    serialized TLV for the _channel announcement_:
    lightningnetwork@841e243#diff-1eda595bbebe495bd74a6a0431c46b66cb4e8b53beb311067c010feac2665dcbR2560.
    
    Since we're just trying to generate a new `channel_update`, we don't
    also regenerate the signature for the `channel_announcement` message. As
    a result, we end up storing a `channel_announcement` with an invalid sig
    on disk, continuing to broadcast that to peers.
    Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    57221bd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    53799e9 View commit details
    Browse the repository at this point in the history
  3. discovery: fix log line.

    if we use %x here we would get the hex representation of the
    String() method of the vertex, which is wrong.
    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b23e69c View commit details
    Browse the repository at this point in the history
  4. multi: fix time.Time initialization.

    ChanUpdate timestamps are now restircted so that they cannot be
    more than two weeks into the future. Moreover channels with both
    timestamps in the ReplyChannelRange msg either too far in the past
    or too far in the future are not queried.
    
    Moreover fix unitests.
    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    4441386 View commit details
    Browse the repository at this point in the history
  5. discovery: add detailed comment.

    Describe why it is ok to resurrect zombie channels based on the
    timestamp of the `ReplyChannelRange` msg although its not verifiable
    data.
    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    d906010 View commit details
    Browse the repository at this point in the history
  6. docs: update release-notes.

    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    4102e33 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    dbe4ca3 View commit details
    Browse the repository at this point in the history
  8. blindedpath: remove blockexpiry check.

    Removes a check where we would NOT allow to create a blinded invoice
    with an expiry (invoice expiry in seconds considered as block time)
    lower than the min_final_ctlv_delta.
    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    38c8151 View commit details
    Browse the repository at this point in the history
  9. blindedpath: fix log output.

    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    89ef373 View commit details
    Browse the repository at this point in the history
  10. blindedpath: minHTLC for blinded path change.

    We will not add a buffer to the chan policy for blinded paths in case
    the sender amount violates the minHTLC restriction in the first place.
    
    Moreover we disgard a route fast if the payment amount is smaller than
    the minHTLC along the route.
    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    59355b1 View commit details
    Browse the repository at this point in the history
  11. docs: add release-notes.

    ziggie1984 authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    7292907 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    e431e5b View commit details
    Browse the repository at this point in the history
  13. channeldb: add PutClosedScid and IsClosedScid

    This commit adds the ability to store closed channels by scid in
    the database. This will allow the gossiper to ignore channel
    announcements for closed channels without having to do any
    expensive validation.
    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    4558eb0 View commit details
    Browse the repository at this point in the history
  14. discovery: add banman for channel announcements

    This commit introduces a ban manager that marks peers as banned if
    they send too many invalid channel announcements to us. Expired
    entries are purged after a certain period of time (currently 48 hours).
    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    b7c4a3c View commit details
    Browse the repository at this point in the history
  15. multi: extend lnpeer.Peer interface with Disconnect function

    This will be used in the gossiper to disconnect from peers if their
    ban score passes the ban threshold.
    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    3e318b4 View commit details
    Browse the repository at this point in the history
  16. discovery: clean up scid variable usage

    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    de58e3e View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    ae33b76 View commit details
    Browse the repository at this point in the history
  18. discovery: implement ChannelAnnouncement banning

    This commit hooks up the banman to the gossiper:
    - peers that are banned and don't have a channel with us will get
      disconnected until they are unbanned.
    - peers that are banned and have a channel with us won't get
      disconnected, but we will ignore their channel announcements until
      they are no longer banned. Note that this only disables gossip of
      announcements to us and still allows us to open channels to them.
    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    53a8d37 View commit details
    Browse the repository at this point in the history
  19. release-notes: update for 0.18.3

    Crypt-iQ authored and Roasbeef committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    6111ac3 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    e69fdf5 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    d111d8d View commit details
    Browse the repository at this point in the history