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

Don't relay buggy extra payments #2937

Merged
merged 4 commits into from
Nov 8, 2024
Merged

Don't relay buggy extra payments #2937

merged 4 commits into from
Nov 8, 2024

Commits on Nov 1, 2024

  1. Don't relay buggy extra payments

    If a payer is buggy and tries to pay the same invoice multiple times,
    it can lead to an edge case where the recipient accepted the first one
    and purchased liquidity for it, but didn't purchase additional liquidity
    and thus cannot receive the duplicate payments.
    
    In that case, the recipient may even have released the preimage, so the
    LSP (or any other node in the route) could steal the entire duplicate
    payment.
    
    To prevent that, we immediately fail such buggy duplicate payments. Note
    that if the first payment was fully completed, we don't fail the extra
    payments and the payer could get screwed, but they're buggy so it's their
    problem...
    t-bast committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    e5438bb View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2024

  1. fix tests

    pm47 committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    0e04e72 View commit details
    Browse the repository at this point in the history
  2. remove superfluous signature optimization

    When replaying parts that were waiting for an on-the-fly funding, we
    explicitly set `commit = false` to all parts but the last one, in order
    to save us from signing multiple times.
    
    But this has side effects in the case where the last part is rejected
    for some reason, because previous parts stay stuck waiting for a
    `CMD_SIGN` that never arrives.
    pm47 committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    2a8b5b0 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2024

  1. fixup! fix tests

    pm47 committed Nov 8, 2024
    Configuration menu
    Copy the full SHA
    7f74bb5 View commit details
    Browse the repository at this point in the history