core-lightning/bitcoin/chainparams.h
Rusty Russell 810abb6b21 bitcoin: create new wrapper type bitcoin_blkid, log backward endianness.
It's just a sha256_double, but importantly when we convert it to a
string (in type_to_string, which is used in logging) we use
bitcoin_blkid_to_hex() so it's reversed as people expect.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-12-21 11:05:38 +00:00

43 lines
1.1 KiB
C

#ifndef LIGHTNING_BITCOIN_CHAINPARAMS_H
#define LIGHTNING_BITCOIN_CHAINPARAMS_H
#include "config.h"
#include <bitcoin/block.h>
#include <ccan/short_types/short_types.h>
#include <stdbool.h>
struct chainparams {
const int index;
const char *network_name;
const char *bip173_name;
const struct bitcoin_blkid genesis_blockhash;
const int rpc_port;
const char *cli;
const char *cli_args;
const u64 dust_limit;
/* Whether this is a test network or not */
const bool testnet;
};
/**
* chainparams_for_network - Look up blockchain parameters by its name
*/
const struct chainparams *chainparams_for_network(const char *network_name);
/**
* chainparams_by_index - Helper to get a network by its numeric index
*
* We may not want to pass the network name through to subdaemons, so
* we allows lookup by index.
*/
const struct chainparams *chainparams_by_index(const int index);
/**
* chainparams_by_bip173 - Helper to get a network by its bip173 name
*
* This lets us decode BOLT11 addresses.
*/
const struct chainparams *chainparams_by_bip173(const char *bip173_name);
#endif /* LIGHTNING_BITCOIN_CHAINPARAMS_H */