diff --git a/daemon/channel.c b/daemon/channel.c index 261ae033f..b2c14bd26 100644 --- a/daemon/channel.c +++ b/daemon/channel.c @@ -209,11 +209,11 @@ bool cstate_add_htlc(struct channel_state *cstate, const struct htlc *htlc, /* Remember to count the new one in total txsize if not dust! */ nondust = cstate->num_nondust; - if (!is_dust(htlc->msatoshis / 1000)) + if (!is_dust(htlc->msatoshi / 1000)) nondust++; if (!change_funding(cstate->anchor, cstate->fee_rate, - htlc->msatoshis, creator, recipient, nondust, + htlc->msatoshi, creator, recipient, nondust, must_afford_fee)) return false; @@ -232,14 +232,14 @@ static void remove_htlc(struct channel_state *cstate, /* Remember to remove this one in total txsize if not dust! */ nondust = cstate->num_nondust; - if (!is_dust(htlc->msatoshis / 1000)) { + if (!is_dust(htlc->msatoshi / 1000)) { assert(nondust > 0); nondust--; } - /* Can't fail since msatoshis is positive. */ + /* Can't fail since msatoshi is positive. */ if (!change_funding(cstate->anchor, cstate->fee_rate, - -(int64_t)htlc->msatoshis, + -(int64_t)htlc->msatoshi, &cstate->side[beneficiary], &cstate->side[!beneficiary], nondust, false)) abort(); @@ -272,10 +272,10 @@ void force_add_htlc(struct channel_state *cstate, const struct htlc *htlc) creator = &cstate->side[htlc_owner(htlc)]; creator->num_htlcs++; - creator->pay_msat -= htlc->msatoshis; + creator->pay_msat -= htlc->msatoshi; /* Remember to count the new one in total txsize if not dust! */ - if (!is_dust(htlc->msatoshis / 1000)) + if (!is_dust(htlc->msatoshi / 1000)) cstate->num_nondust++; } @@ -283,9 +283,9 @@ static void force_remove_htlc(struct channel_state *cstate, enum side beneficiary, const struct htlc *htlc) { - cstate->side[beneficiary].pay_msat += htlc->msatoshis; + cstate->side[beneficiary].pay_msat += htlc->msatoshi; cstate->side[htlc_owner(htlc)].num_htlcs--; - if (!is_dust(htlc->msatoshis / 1000)) + if (!is_dust(htlc->msatoshi / 1000)) cstate->num_nondust--; } diff --git a/daemon/commit_tx.c b/daemon/commit_tx.c index 6fe73c235..6f4f5040b 100644 --- a/daemon/commit_tx.c +++ b/daemon/commit_tx.c @@ -201,10 +201,10 @@ struct bitcoin_tx *create_commit_tx(const tal_t *ctx, wscript = wscript_for_htlc(tx, peer, h, rhash, side); /* If we pay any HTLC, it's txout is not just to other side. */ if (add_output(tx, scriptpubkey_p2wsh(tx, wscript), - h->msatoshis / 1000, &total)) { + h->msatoshi / 1000, &total)) { *otherside_only = false; log_debug(peer->log, "Pays %"PRIu64" to htlc %"PRIu64, - h->msatoshis / 1000, h->id); + h->msatoshi / 1000, h->id); log_add_struct(peer->log, " expiry %s", struct abs_locktime, &h->expiry); log_add_struct(peer->log, " rhash %s", struct sha256, @@ -213,7 +213,7 @@ struct bitcoin_tx *create_commit_tx(const tal_t *ctx, tal_hexstr(tx, wscript, tal_count(wscript))); } else log_debug(peer->log, "DOES NOT pay %"PRIu64" to htlc %"PRIu64, - h->msatoshis / 1000, h->id); + h->msatoshi / 1000, h->id); } assert(total <= peer->anchor.satoshis); diff --git a/daemon/db.c b/daemon/db.c index 93cac2531..e4ec2750b 100644 --- a/daemon/db.c +++ b/daemon/db.c @@ -1020,7 +1020,7 @@ static void db_load_pay(struct lightningd_state *dstate) struct sha256 rhash; struct htlc *htlc; struct pubkey *peer_id; - u64 htlc_id, msatoshis; + u64 htlc_id, msatoshi; struct pubkey *ids; struct rval *r; void *fail; @@ -1034,7 +1034,7 @@ static void db_load_pay(struct lightningd_state *dstate) sqlite3_column_count(stmt)); sha256_from_sql(stmt, 0, &rhash); - msatoshis = sqlite3_column_int64(stmt, 1); + msatoshi = sqlite3_column_int64(stmt, 1); ids = pubkeys_from_arr(ctx, dstate->secpctx, sqlite3_column_blob(stmt, 2), sqlite3_column_bytes(stmt, 2)); @@ -1067,7 +1067,7 @@ static void db_load_pay(struct lightningd_state *dstate) } else htlc = NULL; - if (!pay_add(dstate, &rhash, msatoshis, ids, htlc, fail, r)) + if (!pay_add(dstate, &rhash, msatoshi, ids, htlc, fail, r)) fatal("db_load_pay: could not add pay"); } tal_free(ctx); @@ -1088,7 +1088,7 @@ static void db_load_invoice(struct lightningd_state *dstate) while ((err = sqlite3_step(stmt)) != SQLITE_DONE) { struct rval r; - u64 msatoshis; + u64 msatoshi; bool complete; const char *label; @@ -1101,10 +1101,10 @@ static void db_load_invoice(struct lightningd_state *dstate) sqlite3_column_count(stmt)); from_sql_blob(stmt, 0, &r, sizeof(r)); - msatoshis = sqlite3_column_int64(stmt, 1); + msatoshi = sqlite3_column_int64(stmt, 1); label = (const char *)sqlite3_column_text(stmt, 2); complete = sqlite3_column_int(stmt, 3); - invoice_add(dstate, &r, msatoshis, label, complete); + invoice_add(dstate, &r, msatoshi, label, complete); } tal_free(ctx); } @@ -1193,12 +1193,12 @@ void db_init(struct lightningd_state *dstate) TABLE(wallet, SQL_PRIVKEY(privkey)) TABLE(pay, - SQL_RHASH(rhash), SQL_U64(msatoshis), + SQL_RHASH(rhash), SQL_U64(msatoshi), SQL_BLOB(ids), SQL_PUBKEY(htlc_peer), SQL_U64(htlc_id), SQL_R(r), SQL_FAIL(fail), "PRIMARY KEY(rhash)") TABLE(invoice, - SQL_R(r), SQL_U64(msatoshis), SQL_INVLABEL(label), + SQL_R(r), SQL_U64(msatoshi), SQL_INVLABEL(label), SQL_BOOL(complete), "PRIMARY KEY(r)") TABLE(anchors, @@ -1209,7 +1209,7 @@ void db_init(struct lightningd_state *dstate) /* FIXME: state in key is overkill: just need side */ TABLE(htlcs, SQL_PUBKEY(peer), SQL_U64(id), - SQL_STATENAME(state), SQL_U64(msatoshis), + SQL_STATENAME(state), SQL_U64(msatoshi), SQL_U32(expiry), SQL_RHASH(rhash), SQL_R(r), SQL_ROUTING(routing), SQL_PUBKEY(src_peer), SQL_U64(src_id), SQL_BLOB(fail), @@ -1482,7 +1482,7 @@ bool db_new_htlc(struct peer *peer, const struct htlc *htlc) pubkey_to_hexstr(ctx, peer->dstate->secpctx, peer->id), htlc->id, htlc_state_name(htlc->state), - htlc->msatoshis, + htlc->msatoshi, abs_locktime_to_blocks(&htlc->expiry), tal_hexstr(ctx, &htlc->rhash, sizeof(htlc->rhash)), tal_hexstr(ctx, htlc->routing, tal_count(htlc->routing)), @@ -1495,7 +1495,7 @@ bool db_new_htlc(struct peer *peer, const struct htlc *htlc) peerid, htlc->id, htlc_state_name(htlc->state), - htlc->msatoshis, + htlc->msatoshi, abs_locktime_to_blocks(&htlc->expiry), tal_hexstr(ctx, &htlc->rhash, sizeof(htlc->rhash)), tal_hexstr(ctx, htlc->routing, tal_count(htlc->routing))); @@ -1859,7 +1859,7 @@ bool db_update_their_closing(struct peer *peer) bool db_new_pay_command(struct lightningd_state *dstate, const struct sha256 *rhash, const struct pubkey *ids, - u64 msatoshis, + u64 msatoshi, const struct htlc *htlc) { const char *errmsg, *ctx = tal(dstate, char); @@ -1870,7 +1870,7 @@ bool db_new_pay_command(struct lightningd_state *dstate, assert(!dstate->db->in_transaction); errmsg = db_exec(ctx, dstate, "INSERT INTO pay VALUES (x'%s', %"PRIu64", x'%s', x'%s', %"PRIu64", NULL, NULL);", tal_hexstr(ctx, rhash, sizeof(*rhash)), - msatoshis, + msatoshi, pubkeys_to_hex(ctx, dstate->secpctx, ids), pubkey_to_hexstr(ctx, dstate->secpctx, htlc->peer->id), htlc->id); @@ -1883,7 +1883,7 @@ bool db_new_pay_command(struct lightningd_state *dstate, bool db_replace_pay_command(struct lightningd_state *dstate, const struct sha256 *rhash, const struct pubkey *ids, - u64 msatoshis, + u64 msatoshi, const struct htlc *htlc) { const char *errmsg, *ctx = tal(dstate, char); @@ -1892,8 +1892,8 @@ bool db_replace_pay_command(struct lightningd_state *dstate, log_add_struct(dstate->base_log, "(%s)", struct sha256, rhash); assert(!dstate->db->in_transaction); - errmsg = db_exec(ctx, dstate, "UPDATE pay SET msatoshis=%"PRIu64", ids=x'%s', htlc_peer=x'%s', htlc_id=%"PRIu64", r=NULL, fail=NULL WHERE rhash=x'%s';", - msatoshis, + errmsg = db_exec(ctx, dstate, "UPDATE pay SET msatoshi=%"PRIu64", ids=x'%s', htlc_peer=x'%s', htlc_id=%"PRIu64", r=NULL, fail=NULL WHERE rhash=x'%s';", + msatoshi, pubkeys_to_hex(ctx, dstate->secpctx, ids), pubkey_to_hexstr(ctx, dstate->secpctx, htlc->peer->id), htlc->id, @@ -1931,7 +1931,7 @@ bool db_complete_pay_command(struct lightningd_state *dstate, } bool db_new_invoice(struct lightningd_state *dstate, - u64 msatoshis, + u64 msatoshi, const char *label, const struct rval *r) { @@ -1944,7 +1944,7 @@ bool db_new_invoice(struct lightningd_state *dstate, /* Insert label as hex; suspect injection attacks. */ errmsg = db_exec(ctx, dstate, "INSERT INTO invoice VALUES (x'%s', %"PRIu64", x'%s', %s);", tal_hexstr(ctx, r, sizeof(*r)), - msatoshis, + msatoshi, tal_hexstr(ctx, label, strlen(label)), sql_bool(false)); if (errmsg) diff --git a/daemon/db.h b/daemon/db.h index 2fce6ccc9..6a5742068 100644 --- a/daemon/db.h +++ b/daemon/db.h @@ -30,15 +30,15 @@ bool db_update_their_closing(struct peer *peer); bool db_new_pay_command(struct lightningd_state *dstate, const struct sha256 *rhash, const struct pubkey *ids, - u64 msatoshis, + u64 msatoshi, const struct htlc *htlc); bool db_replace_pay_command(struct lightningd_state *dstate, const struct sha256 *rhash, const struct pubkey *ids, - u64 msatoshis, + u64 msatoshi, const struct htlc *htlc); bool db_new_invoice(struct lightningd_state *dstate, - u64 msatoshis, + u64 msatoshi, const char *label, const struct rval *r); diff --git a/daemon/htlc.h b/daemon/htlc.h index 21841e313..ca3afc5a1 100644 --- a/daemon/htlc.h +++ b/daemon/htlc.h @@ -51,7 +51,7 @@ struct htlc { /* The unique ID for this peer and this direction (LOCAL or REMOTE) */ u64 id; /* The amount in millisatoshi. */ - u64 msatoshis; + u64 msatoshi; /* When the HTLC can no longer be redeemed. */ struct abs_locktime expiry; /* The hash of the preimage which can redeem this HTLC */ diff --git a/daemon/invoice.c b/daemon/invoice.c index 716bb62f8..4b1c4a372 100644 --- a/daemon/invoice.c +++ b/daemon/invoice.c @@ -33,13 +33,13 @@ static struct invoice *find_invoice_by_label(struct lightningd_state *dstate, void invoice_add(struct lightningd_state *dstate, const struct rval *r, - u64 msatoshis, + u64 msatoshi, const char *label, bool complete) { struct invoice *invoice = tal(dstate, struct invoice); - invoice->msatoshis = msatoshis; + invoice->msatoshi = msatoshi; invoice->r = *r; invoice->complete = complete; invoice->label = tal_strdup(invoice, label); @@ -51,11 +51,11 @@ static void json_invoice(struct command *cmd, const char *buffer, const jsmntok_t *params) { struct invoice *invoice; - jsmntok_t *msatoshis, *r, *label; + jsmntok_t *msatoshi, *r, *label; struct json_result *response = new_json_result(cmd); if (!json_get_params(buffer, params, - "amount", &msatoshis, + "amount", &msatoshi, "label", &label, "?r", &r, NULL)) { @@ -81,11 +81,11 @@ static void json_invoice(struct command *cmd, return; } - if (!json_tok_u64(buffer, msatoshis, &invoice->msatoshis) - || invoice->msatoshis == 0) { + if (!json_tok_u64(buffer, msatoshi, &invoice->msatoshi) + || invoice->msatoshi == 0) { command_fail(cmd, "'%.*s' is not a valid positive number", - msatoshis->end - msatoshis->start, - buffer + msatoshis->start); + msatoshi->end - msatoshi->start, + buffer + msatoshi->start); return; } @@ -102,7 +102,7 @@ static void json_invoice(struct command *cmd, } invoice->complete = false; - if (!db_new_invoice(cmd->dstate, invoice->msatoshis, invoice->label, + if (!db_new_invoice(cmd->dstate, invoice->msatoshi, invoice->label, &invoice->r)) { command_fail(cmd, "database error"); return; @@ -122,6 +122,6 @@ static void json_invoice(struct command *cmd, const struct json_command invoice_command = { "invoice", json_invoice, - "Create invoice for {msatoshis} with {label} (with a set {r}, otherwise generate one)", + "Create invoice for {msatoshi} with {label} (with a set {r}, otherwise generate one)", "Returns the {rhash} on success. " }; diff --git a/daemon/invoice.h b/daemon/invoice.h index 495d3a669..50fb22fb9 100644 --- a/daemon/invoice.h +++ b/daemon/invoice.h @@ -8,7 +8,7 @@ struct lightningd_state; struct invoice { struct list_node list; const char *label; - u64 msatoshis; + u64 msatoshi; struct rval r; struct sha256 rhash; bool complete; @@ -19,7 +19,7 @@ struct invoice { /* From database */ void invoice_add(struct lightningd_state *dstate, const struct rval *r, - u64 msatoshis, + u64 msatoshi, const char *label, bool complete); diff --git a/daemon/log.c b/daemon/log.c index 79827216d..1fd7ef038 100644 --- a/daemon/log.c +++ b/daemon/log.c @@ -314,12 +314,12 @@ static char *to_string_(const tal_t *ctx, } else if (streq(structname, "struct htlc")) { const struct htlc *h = u.htlc; s = tal_fmt(ctx, "{ id=%"PRIu64 - " msatoshis=%"PRIu64 + " msatoshi=%"PRIu64 " expiry=%s" " rhash=%s" " rval=%s" " src=%s }", - h->id, h->msatoshis, + h->id, h->msatoshi, to_string(ctx, lr, struct abs_locktime, &h->expiry), to_string(ctx, lr, struct sha256, &h->rhash), h->r ? tal_hexstr(ctx, h->r, sizeof(*h->r)) diff --git a/daemon/packets.c b/daemon/packets.c index ba55f6e97..1b901076d 100644 --- a/daemon/packets.c +++ b/daemon/packets.c @@ -139,7 +139,7 @@ void queue_pkt_htlc_add(struct peer *peer, struct htlc *htlc) update_add_htlc__init(u); u->id = htlc->id; - u->amount_msat = htlc->msatoshis; + u->amount_msat = htlc->msatoshi; u->r_hash = sha256_to_proto(u, &htlc->rhash); u->expiry = abs_locktime_to_proto(u, &htlc->expiry); u->route = tal(u, Routing); diff --git a/daemon/peer.c b/daemon/peer.c index 9b5d5dfaf..aa936e27e 100644 --- a/daemon/peer.c +++ b/daemon/peer.c @@ -422,7 +422,7 @@ static void set_htlc_fail(struct peer *peer, static void route_htlc_onwards(struct peer *peer, struct htlc *htlc, - u64 msatoshis, + u64 msatoshi, const BitcoinPubkey *pb_id, const u8 *rest_of_route, const struct peer *only_dest) @@ -462,13 +462,13 @@ static void route_htlc_onwards(struct peer *peer, return; /* Offered fee must be sufficient. */ - if ((s64)(htlc->msatoshis - msatoshis) - < connection_fee(next->nc, msatoshis)) { + if ((s64)(htlc->msatoshi - msatoshi) + < connection_fee(next->nc, msatoshi)) { log_unusual(peer->log, "Insufficient fee for HTLC %"PRIu64 ": %"PRIi64" on %"PRIu64, - htlc->id, htlc->msatoshis - msatoshis, - msatoshis); + htlc->id, htlc->msatoshi - msatoshi, + msatoshi); command_htlc_set_fail(peer, htlc, PAYMENT_REQUIRED_402, "Insufficent fee"); return; @@ -478,7 +478,7 @@ static void route_htlc_onwards(struct peer *peer, struct pubkey, next->id); /* This checks the HTLC itself is possible. */ - err = command_htlc_add(next, msatoshis, + err = command_htlc_add(next, msatoshi, abs_locktime_to_blocks(&htlc->expiry) - next->nc->delay, &htlc->rhash, htlc, rest_of_route, @@ -548,13 +548,13 @@ static void their_htlc_added(struct peer *peer, struct htlc *htlc, goto free_rest; } - if (htlc->msatoshis != invoice->msatoshis) { + if (htlc->msatoshi != invoice->msatoshi) { log_unusual(peer->log, "Short payment for '%s' HTLC %"PRIu64 ": %"PRIu64" not %"PRIu64 " satoshi!", invoice->label, htlc->id, - htlc->msatoshis, - invoice->msatoshis); + htlc->msatoshi, + invoice->msatoshi); command_htlc_set_fail(peer, htlc, UNAUTHORIZED_401, "incorrect amount"); @@ -1637,7 +1637,7 @@ static const struct bitcoin_tx *htlc_fulfill_tx(const struct peer *peer, tx->input[0].index = out_num; tx->input[0].txid = peer->onchain.txid; - satoshis = htlc->msatoshis / 1000; + satoshis = htlc->msatoshi / 1000; tx->input[0].amount = tal_dup(tx->input, u64, &satoshis); tx->input[0].sequence_number = bitcoin_nsequence(&peer->remote.locktime); @@ -1758,7 +1758,7 @@ static bool command_htlc_fulfill(struct peer *peer, struct htlc *htlc) return true; } -const char *command_htlc_add(struct peer *peer, u64 msatoshis, +const char *command_htlc_add(struct peer *peer, u64 msatoshi, unsigned int expiry, const struct sha256 *rhash, struct htlc *src, @@ -1807,7 +1807,7 @@ const char *command_htlc_add(struct peer *peer, u64 msatoshis, } *htlc = peer_new_htlc(peer, peer->htlc_id_counter, - msatoshis, rhash, expiry, route, tal_count(route), + msatoshi, rhash, expiry, route, tal_count(route), src, SENT_ADD_HTLC); /* BOLT #2: @@ -1823,7 +1823,7 @@ const char *command_htlc_add(struct peer *peer, u64 msatoshis, */ log_unusual(peer->log, "add_htlc: fail: Cannot afford %"PRIu64 " milli-satoshis in their commit tx", - msatoshis); + msatoshi); log_add_struct(peer->log, " channel state %s", struct channel_state, peer->remote.staging_cstate); @@ -2517,7 +2517,7 @@ static void htlc_destroy(struct htlc *htlc) struct htlc *peer_new_htlc(struct peer *peer, u64 id, - u64 msatoshis, + u64 msatoshi, const struct sha256 *rhash, u32 expiry, const u8 *route, @@ -2529,7 +2529,7 @@ struct htlc *peer_new_htlc(struct peer *peer, h->peer = peer; h->state = state; h->id = id; - h->msatoshis = msatoshis; + h->msatoshi = msatoshi; h->rhash = *rhash; h->r = NULL; h->fail = NULL; @@ -3175,7 +3175,7 @@ static const struct bitcoin_tx *htlc_timeout_tx(const struct peer *peer, tx->lock_time = htlc->expiry.locktime; tx->input[0].index = out_num; tx->input[0].txid = peer->onchain.txid; - satoshis = htlc->msatoshis / 1000; + satoshis = htlc->msatoshi / 1000; tx->input[0].amount = tal_dup(tx->input, u64, &satoshis); tx->input[0].sequence_number = bitcoin_nsequence(&peer->remote.locktime); @@ -4240,7 +4240,7 @@ static void json_add_htlcs(struct json_result *response, continue; json_object_start(response, NULL); - json_add_u64(response, "msatoshis", h->msatoshis); + json_add_u64(response, "msatoshi", h->msatoshi); json_add_abstime(response, "expiry", &h->expiry); json_add_hex(response, "rhash", &h->rhash, sizeof(h->rhash)); json_add_string(response, "state", htlc_state_name(h->state)); @@ -4340,7 +4340,7 @@ static void json_gethtlcs(struct command *cmd, json_object_start(response, NULL); json_add_u64(response, "id", h->id); json_add_string(response, "state", htlc_state_name(h->state)); - json_add_u64(response, "msatoshis", h->msatoshis); + json_add_u64(response, "msatoshi", h->msatoshi); json_add_abstime(response, "expiry", &h->expiry); json_add_hex(response, "rhash", &h->rhash, sizeof(h->rhash)); if (h->r) @@ -4389,9 +4389,9 @@ static void json_newhtlc(struct command *cmd, const char *buffer, const jsmntok_t *params) { struct peer *peer; - jsmntok_t *peeridtok, *msatoshistok, *expirytok, *rhashtok; + jsmntok_t *peeridtok, *msatoshitok, *expirytok, *rhashtok; unsigned int expiry; - u64 msatoshis; + u64 msatoshi; struct sha256 rhash; struct json_result *response = new_json_result(cmd); struct htlc *htlc; @@ -4400,11 +4400,11 @@ static void json_newhtlc(struct command *cmd, if (!json_get_params(buffer, params, "peerid", &peeridtok, - "msatoshis", &msatoshistok, + "msatoshi", &msatoshitok, "expiry", &expirytok, "rhash", &rhashtok, NULL)) { - command_fail(cmd, "Need peerid, msatoshis, expiry and rhash"); + command_fail(cmd, "Need peerid, msatoshi, expiry and rhash"); return; } @@ -4424,10 +4424,10 @@ static void json_newhtlc(struct command *cmd, return; } - if (!json_tok_u64(buffer, msatoshistok, &msatoshis)) { + if (!json_tok_u64(buffer, msatoshitok, &msatoshi)) { command_fail(cmd, "'%.*s' is not a valid number", - (int)(msatoshistok->end - msatoshistok->start), - buffer + msatoshistok->start); + (int)(msatoshitok->end - msatoshitok->start), + buffer + msatoshitok->start); return; } if (!json_tok_number(buffer, expirytok, &expiry)) { @@ -4447,7 +4447,7 @@ static void json_newhtlc(struct command *cmd, } log_debug(peer->log, "JSON command to add new HTLC"); - err = command_htlc_add(peer, msatoshis, expiry, &rhash, NULL, + err = command_htlc_add(peer, msatoshi, expiry, &rhash, NULL, onion_create(cmd, cmd->dstate->secpctx, NULL, NULL, 0), &error_code, &htlc); @@ -4467,7 +4467,7 @@ static void json_newhtlc(struct command *cmd, const struct json_command newhtlc_command = { "newhtlc", json_newhtlc, - "Offer {peerid} an HTLC worth {msatoshis} in {expiry} (block number) with {rhash}", + "Offer {peerid} an HTLC worth {msatoshi} in {expiry} (block number) with {rhash}", "Returns { id: u64 } result on success" }; diff --git a/daemon/peer.h b/daemon/peer.h index 5c0bc0b0f..b53c7912d 100644 --- a/daemon/peer.h +++ b/daemon/peer.h @@ -256,7 +256,7 @@ struct commit_info *new_commit_info(const tal_t *ctx, u64 commit_num); /* Freeing removes from map, too */ struct htlc *peer_new_htlc(struct peer *peer, u64 id, - u64 msatoshis, + u64 msatoshi, const struct sha256 *rhash, u32 expiry, const u8 *route, @@ -264,7 +264,7 @@ struct htlc *peer_new_htlc(struct peer *peer, struct htlc *src, enum htlc_state state); -const char *command_htlc_add(struct peer *peer, u64 msatoshis, +const char *command_htlc_add(struct peer *peer, u64 msatoshi, unsigned int expiry, const struct sha256 *rhash, struct htlc *src, diff --git a/daemon/routing.h b/daemon/routing.h index d01a71fce..faeede061 100644 --- a/daemon/routing.h +++ b/daemon/routing.h @@ -43,7 +43,7 @@ struct node *get_node(struct lightningd_state *dstate, const struct pubkey *id); /* msatoshi must be possible (< 21 million BTC), ie < 2^60. - * If it returns more than msatoshis, it overflowed. */ + * If it returns more than msatoshi, it overflowed. */ s64 connection_fee(const struct node_connection *c, u64 msatoshi); /* Updates existing connection, or creates new one as required. */ diff --git a/daemon/test/test.sh b/daemon/test/test.sh index 0cd515aac..33bdfa935 100755 --- a/daemon/test/test.sh +++ b/daemon/test/test.sh @@ -541,7 +541,7 @@ if [ -n "$DIFFERENT_FEES" ]; then HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` [ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2 [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 - check_status_single lcli2 0 0 "" $(($AMOUNT - $HTLC_AMOUNT - $ONE_HTLCS_FEE2)) $(($ONE_HTLCS_FEE2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } " + check_status_single lcli2 0 0 "" $(($AMOUNT - $HTLC_AMOUNT - $ONE_HTLCS_FEE2)) $(($ONE_HTLCS_FEE2)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } " lcli2 fulfillhtlc $ID1 $HTLCID $SECRET [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 [ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2 @@ -592,20 +592,20 @@ HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` if [ -n "$MANUALCOMMIT" ]; then # They should register a staged htlc. - check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_HTLC } " $B_AMOUNT $B_FEE "" + check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_HTLC } " $B_AMOUNT $B_FEE "" # Now commit it. lcli1 commit $ID2 # Node 1 hasn't got it committed, but node2 should have told it to stage. - check_status_single lcli1 $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_REVOCATION } " $B_AMOUNT $B_FEE "" + check_status_single lcli1 $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_REVOCATION } " $B_AMOUNT $B_FEE "" # Check channel status A_AMOUNT=$(($A_AMOUNT - $EXTRA_FEE - $HTLC_AMOUNT)) A_FEE=$(($A_FEE + $EXTRA_FEE)) # Node 2 has it committed. - check_status_single lcli2 $B_AMOUNT $B_FEE "" $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_REVOCATION } " + check_status_single lcli2 $B_AMOUNT $B_FEE "" $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_REVOCATION } " # There should be no "both committed" here yet if lcli1 getlog debug | $FGREP "Both committed"; then @@ -629,7 +629,7 @@ else fi # Both should have committed tx. -check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" +check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" if [ -n "$STEAL" ]; then STEAL_TX=`$LCLI1 dev-signcommit $ID2 | cut -d\" -f4` @@ -650,7 +650,7 @@ if [ -n "$DUMP_ONCHAIN" ]; then check_peerstate lcli2 STATE_CLOSE_ONCHAIN_THEIR_UNILATERAL # both still know about htlc - check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" + check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" # Generate 6 blocks so CSV timeout has expired. $CLI generate 6 @@ -714,7 +714,7 @@ HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` # Check channel status A_AMOUNT=$(($A_AMOUNT - $EXTRA_FEE - $HTLC_AMOUNT)) A_FEE=$(($A_FEE + $EXTRA_FEE)) -check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" +check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" lcli2 failhtlc $ID1 $HTLCID 695 [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 @@ -734,7 +734,7 @@ HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` # Check channel status A_AMOUNT=$(($A_AMOUNT - $EXTRA_FEE - $HTLC_AMOUNT)) A_FEE=$(($A_FEE + $EXTRA_FEE)) -check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" +check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" # Make sure node1 accepts the expiry packet. while [ $(blockheight) != $EXPIRY ]; do @@ -745,7 +745,7 @@ done $CLI generate 1 if [ -n "$MANUALCOMMIT" ]; then - check_status $A_AMOUNT $A_FEE "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_REMOVE_HTLC } " $B_AMOUNT $B_FEE "" + check_status $A_AMOUNT $A_FEE "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_REMOVE_HTLC } " $B_AMOUNT $B_FEE "" lcli2 commit $ID1 lcli1 commit $ID2 @@ -784,7 +784,7 @@ HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` [ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2 [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 -check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" +check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $B_AMOUNT $B_FEE "" lcli2 fulfillhtlc $ID1 $HTLCID $SECRET [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 @@ -814,7 +814,7 @@ HTLCID2=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH2 | extract_id` [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 # A covers the extra part of the fee. -check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE - $EXTRA_FEE / 2)) $(($A_FEE + $EXTRA_FEE + $EXTRA_FEE / 2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } " 0 $(($B_FEE + $EXTRA_FEE / 2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } " +check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE - $EXTRA_FEE / 2)) $(($A_FEE + $EXTRA_FEE + $EXTRA_FEE / 2)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } " 0 $(($B_FEE + $EXTRA_FEE / 2)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } " # Fail both, to reset. lcli1 failhtlc $ID2 $HTLCID 830 @@ -835,7 +835,7 @@ HTLCID2=`lcli2 newhtlc $ID1 $HTLC_AMOUNT $EXPIRY $RHASH2 | extract_id` [ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2 [ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1 -check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $(($B_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($B_FEE + $EXTRA_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION } " +check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } " $(($B_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($B_FEE + $EXTRA_FEE)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION } " if [ -n "$CLOSE_WITH_HTLCS" ]; then # Now begin close @@ -893,14 +893,14 @@ HTLCID=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id` if [ -n "$MANUALCOMMIT" ]; then # node2 will consider this committed. - check_status_single lcli2 $(($B_AMOUNT - $EXTRA_FEE/2)) $(($B_FEE + $EXTRA_FEE/2)) "" $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE/2)) $(($A_FEE + $EXTRA_FEE/2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_REVOCATION } " + check_status_single lcli2 $(($B_AMOUNT - $EXTRA_FEE/2)) $(($B_FEE + $EXTRA_FEE/2)) "" $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE/2)) $(($A_FEE + $EXTRA_FEE/2)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_REVOCATION } " else # It will start committing by itself - check_status_single lcli2 $(($B_AMOUNT - $EXTRA_FEE/2)) $(($B_FEE + $EXTRA_FEE/2)) "" $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE/2)) $(($A_FEE + $EXTRA_FEE/2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_COMMIT } " + check_status_single lcli2 $(($B_AMOUNT - $EXTRA_FEE/2)) $(($B_FEE + $EXTRA_FEE/2)) "" $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE/2)) $(($A_FEE + $EXTRA_FEE/2)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_COMMIT } " fi # node1 will still be awaiting node2's revocation reply. -check_status_single lcli1 $(($A_AMOUNT)) $(($A_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_COMMIT } " $B_AMOUNT $B_FEE "" +check_status_single lcli1 $(($A_AMOUNT)) $(($A_FEE)) "{ msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_COMMIT } " $B_AMOUNT $B_FEE "" # Now send another offer, and enable node2 output. HTLCID2=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH2 | extract_id` @@ -918,9 +918,9 @@ check_balance_single lcli1 $(($A_AMOUNT - $HTLC_AMOUNT*2 - $EXTRA_FEE)) $(($A_FE check_balance_single lcli2 $(($B_AMOUNT - $EXTRA_FEE)) $(($B_FEE + $EXTRA_FEE)) $(($A_AMOUNT - $HTLC_AMOUNT*2 - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) # Once both balances are correct, this should be right. -lcli1 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION }, { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } ], their_htlcs : [ ]" || lcli1 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION }, { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } ], their_htlcs : [ ]" +lcli1 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION }, { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } ], their_htlcs : [ ]" || lcli1 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION }, { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : SENT_ADD_ACK_REVOCATION } ], their_htlcs : [ ]" -lcli2 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ ], their_htlcs : [ { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION }, { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION } ]" || lcli2 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ ], their_htlcs : [ { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION }, { msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } ]" +lcli2 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ ], their_htlcs : [ { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION }, { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION } ]" || lcli2 getpeers | tr -s '\012\011" ' ' ' | $FGREP "our_htlcs : [ ], their_htlcs : [ { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : RCVD_ADD_ACK_REVOCATION }, { msatoshi : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } ]" # Just for once, reconnect/restart node 2. case "$RECONNECT" in @@ -1023,7 +1023,7 @@ if [ ! -n "$MANUALCOMMIT" ]; then fi # Try underpaying. - PAID=`echo "$ROUTE" | sed -n 's/.*"msatoshis" : \([0-9]*\),.*/\1/p'` + PAID=`echo "$ROUTE" | sed -n 's/.*"msatoshi" : \([0-9]*\),.*/\1/p'` UNDERPAY=`echo "$ROUTE" | sed "s/: $PAID,/: $(($PAID - 1)),/"` if lcli1 sendpay "$UNDERPAY" $RHASH5; then echo Paid with too little? >&2 @@ -1071,7 +1071,7 @@ if [ ! -n "$MANUALCOMMIT" ]; then lcli1 sendpay "$ROUTE" $RHASH5 # Re-send to different id or amount should complain. - SHORTROUTE=`echo "$ROUTE" | sed 's/, { "id" : .* }//' | sed 's/"msatoshis" : [0-9]*,/"msatoshis" : '$HTLC_AMOUNT,/` + SHORTROUTE=`echo "$ROUTE" | sed 's/, { "id" : .* }//' | sed 's/"msatoshi" : [0-9]*,/"msatoshi" : '$HTLC_AMOUNT,/` lcli1 sendpay "$SHORTROUTE" $RHASH5 | $FGREP "already succeeded to $ID3" lcli1 sendpay "$UNDERPAY" $RHASH5 | $FGREP "already succeeded with amount $HTLC_AMOUNT"