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

Implement `keysend` sending support for spontaneous payments #3792

Merged
merged 3 commits into from Jul 13, 2020
Merged

Conversation

@cdecker
Copy link
Member

cdecker commented Jun 25, 2020

This has been a long time in the making, but we finally are able to build new features on top of the paymod series.

This modifier is rather simple, but that's all it takes: add the payment preimage, that we generate randomly, into the onion payload for the final hop, so a recipient that knows to look for it can claim the incoming payment.

Todo

  • Write the man-page for lightning-cli keysend
@cdecker cdecker self-assigned this Jun 25, 2020
@cdecker cdecker added this to the v0.9.0 milestone Jun 25, 2020
@cdecker cdecker force-pushed the keysend branch from 8d5480c to dbdbf2d Jun 29, 2020
@cdecker cdecker force-pushed the paymod-03 branch 2 times, most recently from 414efa3 to 7b65e85 Jun 29, 2020
@cdecker cdecker force-pushed the keysend branch from dbdbf2d to 0571575 Jun 29, 2020
@cdecker cdecker force-pushed the paymod-03 branch from 7b65e85 to e34ced7 Jul 1, 2020
@cdecker cdecker force-pushed the keysend branch from 0571575 to e287ed3 Jul 1, 2020
@cdecker cdecker force-pushed the paymod-03 branch 2 times, most recently from fd1eb65 to 8715eb1 Jul 2, 2020
@cdecker cdecker force-pushed the keysend branch from e287ed3 to a3644e1 Jul 2, 2020
@cdecker cdecker force-pushed the paymod-03 branch 4 times, most recently from f0602e8 to 29f9a7e Jul 3, 2020
@cdecker cdecker force-pushed the keysend branch from a3644e1 to ceb4fe0 Jul 6, 2020
@cdecker cdecker force-pushed the paymod-03 branch 3 times, most recently from f97fd2c to 8ebcef8 Jul 6, 2020
@cdecker cdecker force-pushed the keysend branch 2 times, most recently from d7e0265 to a15ef99 Jul 6, 2020
@cdecker cdecker force-pushed the paymod-03 branch from 8ebcef8 to de74b45 Jul 6, 2020
@cdecker cdecker force-pushed the keysend branch from a15ef99 to 66c0930 Jul 6, 2020
@cdecker cdecker force-pushed the paymod-03 branch 4 times, most recently from 8ac4e2e to b606f46 Jul 6, 2020
@cdecker cdecker force-pushed the keysend branch from 66c0930 to 77d7414 Jul 8, 2020
@cdecker cdecker force-pushed the keysend branch 2 times, most recently from 1fb3a9c to 12886fb Jul 8, 2020
@cdecker cdecker changed the base branch from paymod-03 to master Jul 8, 2020
@cdecker cdecker force-pushed the keysend branch from 12886fb to 86c0f4c Jul 8, 2020
plugins/keysend.c Show resolved Hide resolved
plugins/keysend.c Outdated Show resolved Hide resolved
plugins/keysend.c Outdated Show resolved Hide resolved
doc/lightning-keysend.7.md Outdated Show resolved Hide resolved
cdecker added 2 commits Jun 17, 2020
This makes use of the payment modifier structure to just add the preimage to
the TLV payload for the last hop.

Changelog-Added: JSON-RPC: The `keysend` command allows sending to a node without requiring an invoice first.
@cdecker cdecker force-pushed the keysend branch from 86c0f4c to 8d9040e Jul 9, 2020
Allows us to do fewer allocations, since the argument doesn't have to be tal
allocated itself.

Suggested-by: Rusty Russell <@rustyrussell>
@cdecker cdecker requested review from rustyrussell and niftynei Jul 10, 2020
@cdecker cdecker merged commit 514c404 into master Jul 13, 2020
4 of 5 checks passed
4 of 5 checks passed
bitcoin-bot/acks Need more acks: 0 out of 1 required
bitcoin-bot/changelog This PR has at least one changelog entry
bitcoin-bot/fixups PR does not contain unsquashed fixups
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants
You can’t perform that action at this time.