An implementation of rgb on core lightning This fork of cln is maintained by Vincenzo Palazzo
Go to file
Christian Decker 23a1d7d475 gossip: Do not log anything, it breaks a daemon connection!
This came up while debugging the gossip daemon breaking upon calling
`getroute`. It turns out that log was still writing to stdout, but
stdout had been reused for an inter-daemon socket, which would
break...
2017-03-23 13:34:03 +10:30
bitcoin bitcoin/script: update scripts to the lightningnetwork/lightning-rfc#123 version 2017-03-07 16:16:59 +10:30
ccan ccan: update to get close option to io/fdpass. 2017-03-20 07:50:53 +10:30
contrib pylightning: RPC returns a failure if the connection is lost 2017-03-20 11:18:00 +10:30
daemon bitcoin/script: rename bitcoin_redeem_p2wpkh -> bitcoin_redeem_p2sh_p2wpkh 2017-03-07 11:35:48 +10:30
doc doc: Adding compiled manpage 2017-02-27 14:55:53 +01:00
libsodium@fce6852d64 libsodium: add as submodule. 2017-01-11 09:29:40 +10:30
libwally-core libwally: Re-adding missing gen_context file 2017-02-21 16:54:05 +01:00
lightningd gossip: Do not log anything, it breaks a daemon connection! 2017-03-23 13:34:03 +10:30
secp256k1 libsecp256k1: update. 2016-07-01 12:00:17 +09:30
test sphinx: Committing the onion packet to the payment-hash 2017-01-16 11:14:30 +10:30
tests fixup! pylightning: RPC returns a failure if the connection is lost 2017-03-20 11:18:00 +10:30
tools wiregen: Passing ctx to array helpers that require it 2017-03-20 11:18:00 +10:30
wire tools/generate-wire.py: open-code array handling for non-u8. 2017-03-16 14:35:23 +10:30
.gitignore gitignore: Added channeld to ignore list. 2017-03-11 16:54:16 +01:00
.gitlab-ci.yml Add .gitlab-ci.yml 2016-12-11 13:24:27 +01:00
.gitmodules libsodium: add as submodule. 2017-01-11 09:29:40 +10:30
HACKING.md controlled_time: remove 2016-11-09 18:54:15 +10:30
INSTALL.md libsodium: use our local submodule. 2017-01-11 10:04:26 +10:30
LICENSE licensing: Make license explicit. 2016-01-22 06:41:46 +10:30
Makefile status: move into lightningd/status. 2017-03-20 07:50:53 +10:30
README.md README.md: add "upgrade" instructions and add port config for public nodes. 2016-11-21 10:21:41 +10:30
TODO.md TODO: remove to-dones. 2016-09-06 16:47:48 +09:30
check-bolt.c check-bolt: use new BOLTs. 2017-01-04 14:09:20 +10:30
close_tx.c permute_tx: reintroduce permute map. 2017-02-07 12:14:22 +10:30
close_tx.h Use global secp256k1_ctx instead of passing it around. 2016-12-02 18:12:58 +10:30
find_p2sh_out.c struct bitcoin_tx: remove explicit lengths, use tal_len()/tal_count() 2017-01-25 11:03:55 +10: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 bitcoin/preimage: struct preimage. 2017-02-02 14:48:00 +10:30
lightning.pb-c.h bitcoin/preimage: struct preimage. 2017-02-02 14:48:00 +10:30
lightning.proto bitcoin/preimage: struct preimage. 2017-02-02 14:48:00 +10: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: generic pointer map. 2017-02-21 15:15:29 +10:30
permute_tx.h permute_tx: generic pointer map. 2017-02-21 15:15:29 +10:30
protobuf_convert.c bitcoin/preimage: struct preimage. 2017-02-02 14:48:00 +10:30
protobuf_convert.h bitcoin/preimage: struct preimage. 2017-02-02 14:48:00 +10:30
remove_dust.h channel: remove htlcs array. 2016-08-18 14:23:46 +09:30
type_to_string.c type_to_string: move formatting to appropriate files. 2017-01-04 14:07:15 +10:30
type_to_string.h Update to new spec: differentiate channel_id and short_channel_id. 2017-03-02 22:51:49 +10:30
utils.c utils: add tal_hex() helper. 2017-01-10 15:19:25 +10:30
utils.h utils: add tal_hex() helper. 2017-01-10 15:19:25 +10:30
version.c getinfo: add version information 2016-09-14 05:28:51 +09:30
version.h options: --help and --version are early args. 2017-01-04 14:04:15 +10: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. If you're running a previous version, you'll need to shut it down (maybe close channels first) and delete the $HOME/.lightning directory.
  2. Install and compile the requirements.
  3. Make sure bitcoind is running in testnet mode, and has the latest blocks.
  4. Get some test bitcoins, such as from TPs' testnet faucet.
  5. If you want others to connect to your lightningd, create $HOME/.lightning/config and put port=8334 in it (or any other port).
  6. Run daemon/lightningd.
  7. Run daemon/lightning-cli getinfo to check it's working.
  8. Find a node using daemon/lightning-cli getnodes (this will populate over time).
  9. 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.
  10. You can create more channels if you wish.
  11. You can accept payment using daemon/lightning-cli invoice MILLISATOSHI LABEL; it will give you a payment hash to give to the payer.
  12. 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.