Browse Source

chainparams: add bip173 name.

Google lead me to a discussion about litecint, it suggested they would use
'ltc' and I don't really care.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
ppa-0.6.1
Rusty Russell 7 years ago
parent
commit
58604a0497
  1. 14
      bitcoin/chainparams.c
  2. 8
      bitcoin/chainparams.h

14
bitcoin/chainparams.c

@ -6,6 +6,7 @@
const struct chainparams networks[] = {
{.index = 0,
.network_name = "bitcoin",
.bip173_name = "bc",
.genesis_blockhash = {{.u.u8 = {0x6f, 0xe2, 0x8c, 0x0a, 0xb6, 0xf1, 0xb3, 0x72, 0xc1, 0xa6, 0xa2, 0x46, 0xae, 0x63, 0xf7, 0x4f, 0x93, 0x1e, 0x83, 0x65, 0xe1, 0x5a, 0x08, 0x9c, 0x68, 0xd6, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00}}},
.rpc_port = 8332,
.cli = "bitcoin-cli",
@ -14,6 +15,7 @@ const struct chainparams networks[] = {
.testnet = false},
{.index = 1,
.network_name = "regtest",
.bip173_name = "tb",
.genesis_blockhash = {{.u.u8 = {0x06, 0x22, 0x6e, 0x46, 0x11, 0x1a, 0x0b, 0x59, 0xca, 0xaf, 0x12, 0x60, 0x43, 0xeb, 0x5b, 0xbf, 0x28, 0xc3, 0x4f, 0x3a, 0x5e, 0x33, 0x2a, 0x1f, 0xc7, 0xb2, 0xb7, 0x3c, 0xf1, 0x88, 0x91, 0x0f}}},
.rpc_port = 18332,
.cli = "bitcoin-cli",
@ -22,6 +24,7 @@ const struct chainparams networks[] = {
.testnet = true},
{.index = 2,
.network_name = "testnet",
.bip173_name = "tb",
.genesis_blockhash = {{.u.u8 = {0x43, 0x49, 0x7f, 0xd7, 0xf8, 0x26, 0x95, 0x71, 0x08, 0xf4, 0xa3, 0x0f, 0xd9, 0xce, 0xc3, 0xae, 0xba, 0x79, 0x97, 0x20, 0x84, 0xe9, 0x0e, 0xad, 0x01, 0xea, 0x33, 0x09, 0x00, 0x00, 0x00, 0x00}}},
.rpc_port = 18332,
.cli = "bitcoin-cli",
@ -30,6 +33,7 @@ const struct chainparams networks[] = {
.testnet = true},
{.index = 3,
.network_name = "litecoin",
.bip173_name = "ltc",
.genesis_blockhash = {{.u.u8 = {0xe2, 0xbf, 0x04, 0x7e, 0x7e, 0x5a, 0x19, 0x1a, 0xa4, 0xef, 0x34, 0xd3, 0x14, 0x97, 0x9d, 0xc9, 0x98, 0x6e, 0x0f, 0x19, 0x25, 0x1e, 0xda, 0xba, 0x59, 0x40, 0xfd, 0x1f, 0xe3, 0x65, 0xa7, 0x12 }}},
.rpc_port = 18332,
.cli = "litecoin-cli",
@ -55,3 +59,13 @@ const struct chainparams *chainparams_by_index(const int index)
return &networks[index];
}
}
const struct chainparams *chainparams_by_bip173(const char *bip173_name)
{
for (size_t i = 0; i < ARRAY_SIZE(networks); i++) {
if (streq(bip173_name, networks[i].bip173_name)) {
return &networks[i];
}
}
return NULL;
}

8
bitcoin/chainparams.h

@ -9,6 +9,7 @@
struct chainparams {
const int index;
const char *network_name;
const char *bip173_name;
const struct sha256_double genesis_blockhash;
const int rpc_port;
const char *cli;
@ -31,4 +32,11 @@ const struct chainparams *chainparams_for_network(const char *network_name);
* 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 */

Loading…
Cancel
Save