diff --git a/bitcoin/psbt.c b/bitcoin/psbt.c index 62e3f3522..8f8e9af1b 100644 --- a/bitcoin/psbt.c +++ b/bitcoin/psbt.c @@ -443,7 +443,7 @@ struct amount_sat psbt_input_get_amount(struct wally_psbt *psbt, } else if (psbt->inputs[in].non_witness_utxo) { int idx = psbt->tx->inputs[in].index; struct wally_tx *prev_tx = psbt->inputs[in].non_witness_utxo; - val.satoshis = prev_tx->outputs[idx].satoshi; /* Raw: type conversion */ + val = amount_sat(prev_tx->outputs[idx].satoshi); } else abort(); diff --git a/bitcoin/test/run-bitcoin_block_from_hex.c b/bitcoin/test/run-bitcoin_block_from_hex.c index aacc5bac4..384142cee 100644 --- a/bitcoin/test/run-bitcoin_block_from_hex.c +++ b/bitcoin/test/run-bitcoin_block_from_hex.c @@ -16,6 +16,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/bitcoin/test/run-tx-encode.c b/bitcoin/test/run-tx-encode.c index 6dcb159da..3c67638b7 100644 --- a/bitcoin/test/run-tx-encode.c +++ b/bitcoin/test/run-tx-encode.c @@ -17,6 +17,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/channeld/full_channel.c b/channeld/full_channel.c index 38fd1602b..dc82534f3 100644 --- a/channeld/full_channel.c +++ b/channeld/full_channel.c @@ -85,7 +85,7 @@ static bool balance_ok(const struct balance *balance, { if (balance->msat < 0) return false; - msat->millisatoshis = balance->msat; /* Raw: balance */ + *msat = amount_msat(balance->msat); return true; } diff --git a/cli/test/run-large-input.c b/cli/test/run-large-input.c index e10db714c..a11611d55 100644 --- a/cli/test/run-large-input.c +++ b/cli/test/run-large-input.c @@ -42,6 +42,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/cli/test/run-remove-hint.c b/cli/test/run-remove-hint.c index 1ac21dfa5..38f015e67 100644 --- a/cli/test/run-remove-hint.c +++ b/cli/test/run-remove-hint.c @@ -45,6 +45,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/amount.c b/common/amount.c index f00a02daa..4ddde7abc 100644 --- a/common/amount.c +++ b/common/amount.c @@ -487,7 +487,7 @@ struct amount_asset amount_sat_to_asset(struct amount_sat *sat, const u8 *asset) assert(33 == sizeof(amt_asset.asset)); memcpy(amt_asset.asset, asset, sizeof(amt_asset.asset)); - amt_asset.value = sat->satoshis; /* Raw: type conversion */ + amt_asset.value = sat->satoshis; return amt_asset; } diff --git a/common/bolt11.c b/common/bolt11.c index 060348834..fb1be40e1 100644 --- a/common/bolt11.c +++ b/common/bolt11.c @@ -662,7 +662,7 @@ struct bolt11 *bolt11_decode(const tal_t *ctx, const char *str, "Invalid sub-millisatoshi amount" " '%sp'", amountstr); - b11->msat->millisatoshis = amount * m10 / 10; /* Raw: raw amount multiplier calculation */ + *b11->msat = amount_msat(amount * m10 / 10); } /* BOLT #11: diff --git a/common/onion.c b/common/onion.c index 8378e296a..76c5c2c73 100644 --- a/common/onion.c +++ b/common/onion.c @@ -400,8 +400,8 @@ struct onion_payload *onion_decode(const tal_t *ctx, &tlv->payment_data->payment_secret); tal_free(p->total_msat); p->total_msat = tal(p, struct amount_msat); - p->total_msat->millisatoshis /* Raw: tu64 on wire */ - = tlv->payment_data->total_msat; + *p->total_msat + = amount_msat(tlv->payment_data->total_msat); } tal_free(tlv); return p; diff --git a/common/penalty_base.c b/common/penalty_base.c index 30c6d514f..795c9f304 100644 --- a/common/penalty_base.c +++ b/common/penalty_base.c @@ -14,7 +14,7 @@ struct penalty_base *penalty_base_new(const tal_t *ctx, bitcoin_txid(tx, &pbase->txid); pbase->outnum = txout - tx->wtx->outputs; assert(pbase->outnum < tx->wtx->num_outputs); - pbase->amount.satoshis = txout->satoshi; /* Raw: from wally_tx_output */ + pbase->amount = amount_sat(txout->satoshi); return pbase; } diff --git a/common/test/run-bigsize.c b/common/test/run-bigsize.c index 074e796e6..4a1f511d2 100644 --- a/common/test/run-bigsize.c +++ b/common/test/run-bigsize.c @@ -22,6 +22,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-cryptomsg.c b/common/test/run-cryptomsg.c index 36f53de02..1f32a2376 100644 --- a/common/test/run-cryptomsg.c +++ b/common/test/run-cryptomsg.c @@ -17,6 +17,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-derive_basepoints.c b/common/test/run-derive_basepoints.c index d7d529ae0..ae82af7d9 100644 --- a/common/test/run-derive_basepoints.c +++ b/common/test/run-derive_basepoints.c @@ -18,6 +18,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-features.c b/common/test/run-features.c index 7cd107f53..ea5f7d43c 100644 --- a/common/test/run-features.c +++ b/common/test/run-features.c @@ -17,6 +17,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-gossip_rcvd_filter.c b/common/test/run-gossip_rcvd_filter.c index a0e742f36..39a75cc68 100644 --- a/common/test/run-gossip_rcvd_filter.c +++ b/common/test/run-gossip_rcvd_filter.c @@ -14,6 +14,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-ip_port_parsing.c b/common/test/run-ip_port_parsing.c index 4ac0ab737..a9a112def 100644 --- a/common/test/run-ip_port_parsing.c +++ b/common/test/run-ip_port_parsing.c @@ -16,6 +16,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-json_remove.c b/common/test/run-json_remove.c index 7c9c193d1..cb36d56ee 100644 --- a/common/test/run-json_remove.c +++ b/common/test/run-json_remove.c @@ -14,6 +14,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-key_derive.c b/common/test/run-key_derive.c index 581d147f9..49caf95d9 100644 --- a/common/test/run-key_derive.c +++ b/common/test/run-key_derive.c @@ -19,6 +19,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-lock.c b/common/test/run-lock.c index 7271f12e0..3572f9126 100644 --- a/common/test/run-lock.c +++ b/common/test/run-lock.c @@ -18,6 +18,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-softref.c b/common/test/run-softref.c index acac56416..0fa9a8aed 100644 --- a/common/test/run-softref.c +++ b/common/test/run-softref.c @@ -15,6 +15,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/common/test/run-sphinx.c b/common/test/run-sphinx.c index 0e8fb0d4d..39cc068a9 100644 --- a/common/test/run-sphinx.c +++ b/common/test/run-sphinx.c @@ -31,6 +31,9 @@ struct amount_msat amount_msat(u64 millisatoshis UNNEEDED) /* Generated stub for amount_msat_eq */ bool amount_msat_eq(struct amount_msat a UNNEEDED, struct amount_msat b UNNEEDED) { fprintf(stderr, "amount_msat_eq called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/connectd/test/run-initiator-success.c b/connectd/test/run-initiator-success.c index e5488799b..458d9ccfb 100644 --- a/connectd/test/run-initiator-success.c +++ b/connectd/test/run-initiator-success.c @@ -21,6 +21,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/connectd/test/run-responder-success.c b/connectd/test/run-responder-success.c index 50254b118..9593670f0 100644 --- a/connectd/test/run-responder-success.c +++ b/connectd/test/run-responder-success.c @@ -21,6 +21,9 @@ bool amount_asset_is_main(struct amount_asset *asset UNNEEDED) /* Generated stub for amount_asset_to_sat */ struct amount_sat amount_asset_to_sat(struct amount_asset *asset UNNEEDED) { fprintf(stderr, "amount_asset_to_sat called!\n"); abort(); } +/* Generated stub for amount_sat */ +struct amount_sat amount_sat(u64 satoshis UNNEEDED) +{ fprintf(stderr, "amount_sat called!\n"); abort(); } /* Generated stub for amount_sat_add */ bool amount_sat_add(struct amount_sat *val UNNEEDED, struct amount_sat a UNNEEDED, diff --git a/devtools/onion.c b/devtools/onion.c index e36f14178..b3d242f5c 100644 --- a/devtools/onion.c +++ b/devtools/onion.c @@ -83,7 +83,7 @@ static void do_generate(int argc, char **argv, /* FIXME: support secret and and total_msat */ memset(&scid, i, sizeof(scid)); - amt.millisatoshis = i; /* Raw: test code */ + amt = amount_msat(i); if (i == num_hops - 1) sphinx_add_hop(sp, &path[i], take(onion_final_hop(NULL, diff --git a/gossipd/routing.c b/gossipd/routing.c index f347835f5..e76c586a4 100644 --- a/gossipd/routing.c +++ b/gossipd/routing.c @@ -2906,7 +2906,7 @@ void remove_all_gossip(struct routing_state *rstate) while ((c = uintmap_first(&rstate->chanmap, &index)) != NULL) { uintmap_del(&rstate->chanmap, index); #if DEVELOPER - c->sat.satoshis = (unsigned long)c; /* Raw: dev-hack */ + c->sat = amount_sat((unsigned long)c); #endif tal_free(c); }