core-lightning/common
Rusty Russell 46cc7c281e features: more general accessor functions.
As we add more features, the current code is insufficient.

1. Keep an array of single feature bits, for easy switching on and off.
2. Create feature_offered() which checks for both compulsory and optional
   variants.
3. Invert requires_unsupported_features() and unsupported_features()
   which tend to be double-negative, all_supported_features() and
   features_supported().
4. Move single feature definition from wire/peer_wire.h to common/features.h.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2018-03-14 02:19:37 +00:00
..
test onion: Move cli onion tool to devtools/onion 2018-03-09 17:57:55 +01:00
bech32.c bech32: move to common/ 2017-11-24 13:22:18 +01:00
bech32.h Fix typos 2017-12-08 13:07:20 +01:00
bip32.c common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
bip32.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
bolt11.c lightningd: encode fallback address in 5 bits 2018-02-19 02:01:37 +00:00
bolt11.h Spelling corrections (#824) 2018-01-29 04:46:54 +00:00
channel_config.c common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
channel_config.h Revert "Send/receive cltv_expiry_delta in open/accept channel." 2017-10-11 11:54:50 +02:00
close_tx.c bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
close_tx.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
configdir.c allow --rpc-file option to change default value 2018-02-02 20:35:44 +01:00
configdir.h options: don't leak memory when people override options. 2017-12-13 22:46:10 +01:00
crypto_state.c crypto_state: move to its own file. 2017-10-20 18:31:32 +02:00
crypto_state.h crypto_state: move to its own file. 2017-10-20 18:31:32 +02:00
crypto_sync.c common: add logging for peer packets, with status_io. 2018-02-07 00:46:49 +00:00
crypto_sync.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
cryptomsg.c gossipd: fix race where we can handoff peer with bad cryptostate. 2018-02-13 12:10:35 +01:00
cryptomsg.h gossipd: fix race where we can handoff peer with bad cryptostate. 2018-02-13 12:10:35 +01:00
daemon_conn.c Spelling corrections (#824) 2018-01-29 04:46:54 +00:00
daemon_conn.h daemon_conn: helper to release daemon_conn. 2017-12-17 02:44:20 +00:00
derive_basepoints.c derive_basepoints: actually derive a separate HTLC key. 2017-11-16 17:40:57 +01:00
derive_basepoints.h basepoints/secrets: add htlc entry 2017-11-16 17:40:57 +01:00
dev_disconnect.c Spelling corrections (#824) 2018-01-29 04:46:54 +00:00
dev_disconnect.h Add DEVELOPER flag, set by default. 2017-10-26 12:53:09 +02:00
features.c features: more general accessor functions. 2018-03-14 02:19:37 +00:00
features.h features: more general accessor functions. 2018-03-14 02:19:37 +00:00
funding_tx.c common: remove unused assert() headers. 2017-10-26 12:53:09 +02:00
funding_tx.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
hash_u5.c common/hash_u5: routines to hash 5 bit values. 2017-11-01 01:09:23 +00:00
hash_u5.h common/hash_u5: routines to hash 5 bit values. 2017-11-01 01:09:23 +00:00
htlc_state.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
htlc_state.h Fix a-vs-an typos 2018-02-08 22:49:34 +01:00
htlc_tx.c bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
htlc_tx.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
htlc_wire.c tools/generate_wire.py: make varlen structs self-allocate. 2018-02-08 19:07:12 +01:00
htlc_wire.h tools/generate_wire.py: make varlen structs self-allocate. 2018-02-08 19:07:12 +01:00
htlc.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
initial_channel.c bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
initial_channel.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
initial_commit_tx.c bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
initial_commit_tx.h bitcoin: create new wrapper type bitcoin_txid, log backward endianness. 2017-12-21 11:05:38 +00:00
io_debug.c common/io_debug: replacement for ccan/io's poll which does sanity checks. 2017-09-29 10:20:08 +09:30
io_debug.h common/io_debug: replacement for ccan/io's poll which does sanity checks. 2017-09-29 10:20:08 +09:30
json.c common/json: Add json_add_double. 2018-02-09 12:44:33 +01:00
json.h common/json: Add json_add_double. 2018-02-09 12:44:33 +01:00
key_derive.c basepoints/secrets: add htlc entry 2017-11-16 17:40:57 +01:00
key_derive.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
keyset.c typo 2017-11-23 23:10:08 +01:00
keyset.h basepoints/secrets: add htlc entry 2017-11-16 17:40:57 +01:00
Makefile common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
memleak.c Mark intentionally unused parameters as such (with "UNUSED") 2018-02-22 01:09:12 +00:00
memleak.h Re-enable builds with DEVELOPER=0 2017-12-20 12:43:10 +01:00
msg_queue.c common: move some files out of lightningd/ 2017-08-29 17:54:14 +02:00
msg_queue.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
overflows.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
peer_billboard.c common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
peer_billboard.h common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
peer_failed.c peer_failed: set permanent slot when we fail the peer. 2018-02-23 18:02:00 +01:00
peer_failed.h status: split off error messages into a new 'peer_status' type. 2018-02-19 02:56:51 +00:00
peer_status_wire.csv status: split off error messages into a new 'peer_status' type. 2018-02-19 02:56:51 +00:00
permute_tx.c permute_tx: bail on empty permute_{inputs/outputs} arguments 2018-01-15 06:35:02 +00:00
permute_tx.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
ping.c pong: embed version string into ping replies if DEVELOPER=1. 2018-02-22 12:24:26 +01:00
ping.h pong: embed version string into ping replies if DEVELOPER=1. 2018-02-22 12:24:26 +01:00
pseudorand.c common: absorb remaining files from daemon/ 2017-08-29 17:54:14 +02:00
pseudorand.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
read_peer_msg.c gossip: rename is_gossip_msg to is_msg_for_gossipd. 2018-03-13 16:34:55 +01:00
read_peer_msg.h openingd: use peer_failed like normal instead of boutique negotiation_failed. 2018-02-19 02:56:51 +00:00
sphinx.c Avoid writing uninitialized value data->realm in serialize_hop_data(...) (via create_onionpacket(...)) 2017-12-28 16:09:46 +01:00
sphinx.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
status_levels.h status: separate types for peer failure vs "impossible" failures. 2018-02-08 19:07:12 +01:00
status_wire.c status: generate messages rather than marshal/unmarshal manually. 2018-02-08 19:07:12 +01:00
status_wire.csv subd: handle status_peer_billboard messages from subdaemons. 2018-02-23 18:02:00 +01:00
status_wire.h status: generate messages rather than marshal/unmarshal manually. 2018-02-08 19:07:12 +01:00
status.c gossip: rename is_gossip_msg to is_msg_for_gossipd. 2018-03-13 16:34:55 +01:00
status.h common: peer_billboard() helper for updating the billboard. 2018-02-23 18:02:00 +01:00
subdaemon.c subdaemons: copy backtraces to stderr. 2018-03-03 19:29:35 +01:00
subdaemon.h subdaemon.c: subdaemon_setup() routine for all daemons. 2018-01-08 18:16:39 +01:00
timeout.c Rename (almost) all destructors to destroy_<type>. 2018-02-14 11:31:58 +01:00
timeout.h headers: fix up header idempotent lines. 2017-08-29 17:54:14 +02:00
type_to_string.c Fix order of includes 2018-03-06 19:26:21 +01:00
type_to_string.h type_to_string: support sha256_double. 2018-03-13 16:34:55 +01:00
utils.c Coding style fix 2018-03-06 19:26:21 +01:00
utils.h tal_tmpctx: keep information around so we can find leaks. 2017-09-29 10:20:08 +09:30
utxo.c tools/generate_wire.py: generate varlen arrays properly. 2018-02-08 19:07:12 +01:00
utxo.h utxo: Add blockheight and spendheight to outputs to track state 2018-03-06 18:59:27 +01:00
version.c Mark intentionally unused parameters as such (with "UNUSED") 2018-02-22 01:09:12 +00:00
version.h Onboarding: Make log output texts friendlier to new users 2018-01-29 03:22:27 +00:00
wire_error.c tools/generate-wire.py: remove length argument from fromwire_ routines. 2018-02-20 22:36:21 +01:00
wire_error.h Spelling corrections (#824) 2018-01-29 04:46:54 +00:00
wireaddr.c wireaddr: Do hostname resolution in parse_wireaddr. 2018-02-26 03:13:55 +00:00
wireaddr.h wireaddr: Do hostname resolution in parse_wireaddr. 2018-02-26 03:13:55 +00:00
withdraw_tx.c travis: reenable check-source (without BOLT text). 2017-12-21 14:33:27 +01:00
withdraw_tx.h Change withdraw_tx to accept scriptpubkey rather than plain address. 2017-12-13 03:10:04 +00:00