An implementation of rgb on core lightning This fork of cln is maintained by Vincenzo Palazzo
Go to file
Christian Decker a97d301155 routing: Refuse self-route
Fixes #50. Was causing a segfault because it was creating an empty route
and was trying to extract the first hop as next hop. Routes through self
can still be created manually, but `sendpay` would still refuse to act
on them due to the missing self-link.
2016-10-23 11:57:50 +02:00
bitcoin routing: Added IRC announcement glue 2016-09-07 23:49:39 +02:00
ccan ccan: remove canned config.h 2016-10-07 13:59:57 +10:30
contrib contrib/lightning-pay: helper to make a payment. 2016-10-19 12:02:27 +10:30
daemon routing: Refuse self-route 2016-10-23 11:57:50 +02:00
doc doc: manpages for the various lightning RPC calls. 2016-09-06 16:47:41 +09:30
secp256k1 libsecp256k1: update. 2016-07-01 12:00:17 +09:30
test sphinx: Remove obsolete onion implementation 2016-10-16 16:40:54 +02:00
.gitignore check-bolt: check that comments in code match the specs. 2016-05-03 11:27:56 +09:30
.gitmodules daemon/jsmn: Add submodule for jsmn. 2016-01-22 06:37:13 +10:30
HACKING.md Fill out TODO.md into a useful list (mainly by grepping for FIXMEs). 2016-04-12 16:07:47 +09:30
INSTALL.md Merge remote-tracking branch 'origin/pr/42' 2016-10-17 12:15:36 +10:30
LICENSE licensing: Make license explicit. 2016-01-22 06:41:46 +10:30
Makefile 0.5: Bitcoin Savings & Trust Daily Interest 2016-10-19 12:12:26 +10:30
README.md README.md: User instructions. 2016-10-19 12:09:19 +10:30
TODO.md TODO: remove to-dones. 2016-09-06 16:47:48 +09:30
check-bolt.c check-bolt: make it compile cleanly with -Wextra. 2016-09-02 11:58:18 +09:30
close_tx.c permute_tx: don't save permutation map. 2016-08-18 14:23:46 +09:30
close_tx.h base58, script, protobuf_convert: don't use temporary secp256k1 context. 2016-07-01 12:00:17 +09:30
find_p2sh_out.c scripteq: simple helper for comparing scripts. 2016-05-03 11:27:56 +09:30
find_p2sh_out.h Remove unused script functions now we use witness. 2016-04-24 20:09:39 +09:30
irc.c Merge remote-tracking branch 'origin/pr/44' 2016-10-17 12:31:19 +10:30
irc.h Merge remote-tracking branch 'origin/pr/44' 2016-10-17 12:31:19 +10:30
lightning.pb-c.c pkt_init: check feature bits. 2016-10-07 17:39:55 +10:30
lightning.pb-c.h pkt_init: check feature bits. 2016-10-07 17:39:55 +10:30
lightning.proto pkt_init: check feature bits. 2016-10-07 17:39:55 +10:30
names.c db.c: database API. 2016-08-18 14:25:13 +09:30
names.h db.c: database API. 2016-08-18 14:25:13 +09:30
opt_bits.c opt_bits: parsing routines for 'bits' == 100 satoshi. 2015-06-07 13:52:04 +09:30
opt_bits.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30
overflows.h daemon: routing infrastructure. 2016-07-01 12:00:17 +09:30
permute_tx.c permute_tx: don't save permutation map. 2016-08-18 14:23:46 +09:30
permute_tx.h permute_tx: don't save permutation map. 2016-08-18 14:23:46 +09:30
protobuf_convert.c protobuf_convert: expose helpers for unwrapping protobufs into tal heirarchies 2016-08-30 20:15:57 +09:30
protobuf_convert.h protobuf_convert: expose helpers for unwrapping protobufs into tal heirarchies 2016-08-30 20:15:57 +09:30
remove_dust.h channel: remove htlcs array. 2016-08-18 14:23:46 +09:30
state.c db: save error, return it when we commit transaction. 2016-09-06 16:47:49 +09:30
state.h peer: do not send anchor depth input twice. 2016-09-13 15:26:44 +09:30
state_types.h protocol: rename clearing to shutdown. 2016-08-18 14:23:46 +09:30
utils.c routing: Added IRC announcement glue 2016-09-07 23:49:39 +02:00
utils.h routing: Added IRC announcement glue 2016-09-07 23:49:39 +02:00
version.c getinfo: add version information 2016-09-14 05:28:51 +09:30
version.h getinfo: add version information 2016-09-14 05:28:51 +09:30

README.md

Lightning Protocol Reference Implementation

In this repository we're developing a reference implementation of bitcoin lightning (see: http://lightning.network which proposed the original "lightning network").

This implementation is being developed in parallel with the protocol definition, which you can find on my fork of the protocol description repository.

If you're interested in using the daemon to test payments, the JSON-RPC interface is documented in the following manual pages:

Steps:

  1. Install and compile the requirements.
  2. Make sure bitcoind is running in testnet mode, and has the latest blocks.
  3. Get some test bitcoins, such as from TPs' testnet faucet.
  4. Run daemon/lightningd.
  5. Run daemon/lightning-cli getinfo to check it's working.
  6. Find a node using daemon/lightning-cli getnodes (this will populate over time).
  7. Create a new connection to the node using contrib/lightning-open-channel ADDRESS PORT AMOUNT where AMOUNT is in BTC (.04294967 is the maximum possible). If successful, this will return only once a block has been mined with the funding transaction in it.
  8. You can create more channels if you wish.
  9. You can accept payment using daemon/lightning-cli invoice MILLISATOSHI LABEL; it will give you a payment hash to give to the payer.
  10. You can send payments using contrib/lightning-pay DEST-ID MILLISATOSHI PAYMENT-HASH.

Final note: This is very much a testbed and work in progress; expect All The Things to change, all the time.

Welcome aboard!

Rusty.