common: put "external" and "wallet" strings, and test functions into common/coin_mvt.h
What changed, and why it matters
This commit is a straightforward code cleanup: it moves the literal strings 'external' and 'wallet', plus small helper functions that test account names, into a single shared header file. Previously these strings and functions were duplicated across many files. There is no change to program behavior, no bug fix, and no security-related change.
No security action needed. Treat as normal refactoring/review as part of routine code maintenance.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The patch refactors Core Lightning’s coin-movement (bookkeeping) code. It defines ACCOUNT_NAME_WALLET and ACCOUNT_NAME_EXTERNAL in common/coin_mvt.h, adds inline helpers is_wallet_account(), is_external_account(), and is_channel_account(), and replaces duplicated local definitions and string comparisons in common/coin_mvt.c, lightningd/coin_mvts.c, plugins/bkpr/*.c, and wallet/walletrpc.c. The logic is identical to before; only the source of the constants and helpers is unified.
Changed components
common/coin_mvt.ccommon/coin_mvt.hlightningd/coin_mvts.cplugins/bkpr/account.cplugins/bkpr/account.hplugins/bkpr/bookkeeper.cplugins/bkpr/channelsapy.cplugins/bkpr/incomestmt.cplugins/bkpr/recorder.cplugins/bkpr/recorder.hplugins/bkpr/test/run-recorder.cwallet/walletrpc.cInspect captured patch +71 / −73
diff --git a/common/coin_mvt.c b/common/coin_mvt.c
index 88cefa25..013ee03c 100644
--- a/common/coin_mvt.c
+++ b/common/coin_mvt.c
@@ -8,8 +8,6 @@
#include <common/node_id.h>
#include <wire/wire.h>
-#define EXTERNAL "external"
-
static const char *mvt_tags[] = {
"deposit",
"withdrawal",
@@ -368,7 +366,7 @@ struct chain_coin_mvt *new_onchain_htlc_withdraw(const tal_t *ctx,
{
/* An onchain htlc fulfillment to peer is a *deposit* of
* that output into their (external) account */
- return new_chain_coin_mvt_sat(ctx, NULL, EXTERNAL, NULL,
+ return new_chain_coin_mvt_sat(ctx, NULL, ACCOUNT_NAME_EXTERNAL, NULL,
outpoint, payment_hash,
blockheight,
tag_to_mvt_tags(MVT_HTLC_FULFILL),
@@ -382,7 +380,7 @@ struct chain_coin_mvt *new_coin_external_spend(const tal_t *ctx,
struct amount_sat amount,
struct mvt_tags tags)
{
- return new_chain_coin_mvt(ctx, NULL, EXTERNAL,
+ return new_chain_coin_mvt(ctx, NULL, ACCOUNT_NAME_EXTERNAL,
time_now().ts.tv_sec, txid,
outpoint, NULL, blockheight,
tags,
@@ -395,14 +393,14 @@ struct chain_coin_mvt *new_coin_external_deposit(const tal_t *ctx,
struct amount_sat amount,
struct mvt_tags tags)
{
- return new_chain_coin_mvt_sat(ctx, NULL, EXTERNAL, NULL, outpoint, NULL,
+ return new_chain_coin_mvt_sat(ctx, NULL, ACCOUNT_NAME_EXTERNAL, NULL, outpoint, NULL,
blockheight, tags,
COIN_CREDIT, amount);
}
bool chain_mvt_is_external(const struct chain_coin_mvt *mvt)
{
- return mvt->account.alt_account && streq(mvt->account.alt_account, EXTERNAL);
+ return mvt->account.alt_account && is_external_account(mvt->account.alt_account);
}
struct chain_coin_mvt *new_coin_wallet_deposit(const tal_t *ctx,
@@ -411,7 +409,7 @@ struct chain_coin_mvt *new_coin_wallet_deposit(const tal_t *ctx,
struct amount_sat amount,
struct mvt_tags tags)
{
- return new_chain_coin_mvt_sat(ctx, NULL, WALLET, NULL,
+ return new_chain_coin_mvt_sat(ctx, NULL, ACCOUNT_NAME_WALLET, NULL,
outpoint, NULL,
blockheight, tags,
COIN_CREDIT, amount);
@@ -424,7 +422,7 @@ struct chain_coin_mvt *new_coin_wallet_withdraw(const tal_t *ctx,
struct amount_sat amount,
struct mvt_tags tags)
{
- return new_chain_coin_mvt_sat(ctx, NULL, WALLET, spend_txid,
+ return new_chain_coin_mvt_sat(ctx, NULL, ACCOUNT_NAME_WALLET, spend_txid,
outpoint, NULL,
blockheight, tags,
COIN_DEBIT, amount);
diff --git a/common/coin_mvt.h b/common/coin_mvt.h
index 1fa0e2ad..ca20f43d 100644
--- a/common/coin_mvt.h
+++ b/common/coin_mvt.h
@@ -8,7 +8,8 @@
#include <common/utils.h>
#define COIN_MVT_VERSION 2
-#define WALLET "wallet"
+#define ACCOUNT_NAME_WALLET "wallet"
+#define ACCOUNT_NAME_EXTERNAL "external"
enum mvt_tag {
MVT_DEPOSIT = 0,
@@ -251,6 +252,28 @@ struct channel_coin_mvt *new_coin_channel_push(const tal_t *ctx,
struct mvt_tags tags)
NON_NULL_ARGS(2);
+/* There are three standard accounts:
+ * "wallet" for our internal wallet,
+ * "external" for other bitcoin sources,
+ * <channelid> for lightning channels.
+ *
+ * Exactly one of these is true:
+ */
+static inline bool is_wallet_account(const char *acctname)
+{
+ return streq(acctname, ACCOUNT_NAME_WALLET);
+}
+
+static inline bool is_external_account(const char *acctname)
+{
+ return streq(acctname, ACCOUNT_NAME_EXTERNAL);
+}
+
+static inline bool is_channel_account(const char *acctname)
+{
+ return !is_wallet_account(acctname) && !is_external_account(acctname);
+}
+
/* Is this an xternal account? */
bool chain_mvt_is_external(const struct chain_coin_mvt *mvt);
diff --git a/lightningd/coin_mvts.c b/lightningd/coin_mvts.c
index 056abdd8..2cb539a9 100644
--- a/lightningd/coin_mvts.c
+++ b/lightningd/coin_mvts.c
@@ -102,7 +102,7 @@ void send_account_balance_snapshot(struct lightningd *ld)
snap->accts = tal_arr(snap, struct account_balance *, 1);
bal = tal(snap, struct account_balance);
bal->balance = AMOUNT_MSAT(0);
- bal->acct_id = WALLET;
+ bal->acct_id = ACCOUNT_NAME_WALLET;
bal->bip173_name = chainparams->lightning_hrp;
utxos = wallet_get_unspent_utxos(NULL, ld->wallet);
diff --git a/plugins/bkpr/account.c b/plugins/bkpr/account.c
index ba47a850..877db900 100644
--- a/plugins/bkpr/account.c
+++ b/plugins/bkpr/account.c
@@ -14,7 +14,7 @@ struct account *new_account(const tal_t *ctx,
a->name = tal_strdup(a, name);
a->peer_id = peer_id;
- a->is_wallet = streq(a->name, WALLET);
+ a->is_wallet = is_wallet_account(a->name);
a->we_opened = false;
a->leased = false;
a->onchain_resolved_block = 0;
@@ -24,14 +24,3 @@ struct account *new_account(const tal_t *ctx,
return a;
}
-
-bool is_channel_account(const struct account *acct)
-{
- return !streq(acct->name, WALLET)
- && !streq(acct->name, "external");
-}
-
-bool is_external_account(const struct account *acct)
-{
- return streq(acct->name, "external");
-}
diff --git a/plugins/bkpr/account.h b/plugins/bkpr/account.h
index 7cbc79a3..148ba3b0 100644
--- a/plugins/bkpr/account.h
+++ b/plugins/bkpr/account.h
@@ -44,8 +44,4 @@ struct account *new_account(const tal_t *ctx,
const char *name STEALS,
struct node_id *peer_id);
-/* Is this a channel account? */
-bool is_channel_account(const struct account *acct);
-/* is this the 'external' account */
-bool is_external_account(const struct account *acct);
#endif /* LIGHTNING_PLUGINS_BKPR_ACCOUNT_H */
diff --git a/plugins/bkpr/bookkeeper.c b/plugins/bkpr/bookkeeper.c
index dc0b541b..01999b02 100644
--- a/plugins/bkpr/bookkeeper.c
+++ b/plugins/bkpr/bookkeeper.c
@@ -239,8 +239,7 @@ static struct command_result *json_inspect(struct command *cmd,
NULL))
return command_param_failed();
- if (streq(acct_name, WALLET_ACCT)
- || streq(acct_name, EXTERNAL_ACCT))
+ if (!is_channel_account(acct_name))
return command_fail(cmd, PLUGIN_ERROR,
"`inspect` not supported for"
" non-channel accounts");
@@ -298,7 +297,7 @@ static struct command_result *json_inspect(struct command *cmd,
continue;
} else if (pr->txo->acct_db_id != acct->db_id
/* We make an exception for wallet events */
- && !streq(pr->txo->acct_name, WALLET_ACCT))
+ && !is_wallet_account(pr->txo->acct_name))
continue;
} else if (pr->spend
&& pr->spend->acct_db_id != acct->db_id)
@@ -585,7 +584,7 @@ static struct command_result *json_list_balances(struct command *cmd,
/* Skip the external acct balance, it's effectively
* meaningless */
- if (streq(accts[i]->name, EXTERNAL_ACCT))
+ if (is_external_account(accts[i]->name))
continue;
/* Add it to the result data */
@@ -1009,9 +1008,9 @@ static char *do_account_close_checks(const tal_t *ctx,
db_begin_transaction(db);
/* If is an external acct event, might be close channel related */
- if (!is_channel_account(acct) && e->origin_acct) {
+ if (!is_channel_account(acct->name) && e->origin_acct) {
closed_acct = find_account(ctx, db, e->origin_acct);
- } else if (!is_channel_account(acct) && !e->spending_txid)
+ } else if (!is_channel_account(acct->name) && !e->spending_txid)
closed_acct = find_close_account(ctx, db, &e->outpoint.txid);
else
/* Get most up to date account entry */
@@ -1154,7 +1153,7 @@ static struct command_result *json_balance_snapshot(struct command *cmd,
/* If we're entering a channel account,
* from a balance entry, we need to
* go find the channel open info*/
- if (!existed && is_channel_account(acct)) {
+ if (!existed && is_channel_account(acct->name)) {
struct new_account_info *info;
u64 timestamp_now;
@@ -1630,8 +1629,8 @@ parse_and_log_chain_move(struct command *cmd,
/* If this is a channel account event, it's possible
* that we *never* got the open event. (This happens
* if you add the plugin *after* you've closed the channel) */
- if ((!acct->open_event_db_id && is_channel_account(acct))
- || (orig_acct && is_channel_account(orig_acct)
+ if ((!acct->open_event_db_id && is_channel_account(acct->name))
+ || (orig_acct && is_channel_account(orig_acct->name)
&& !orig_acct->open_event_db_id)) {
/* Find the channel open info for this peer */
struct out_req *req;
@@ -1645,7 +1644,7 @@ parse_and_log_chain_move(struct command *cmd,
info = tal(cmd, struct event_info);
info->ev = tal_steal(info, e);
info->acct = tal_steal(info,
- is_channel_account(acct) ?
+ is_channel_account(acct->name) ?
acct : orig_acct);
req = jsonrpc_request_start(cmd,
diff --git a/plugins/bkpr/channelsapy.c b/plugins/bkpr/channelsapy.c
index 13e12321..ec4e2de1 100644
--- a/plugins/bkpr/channelsapy.c
+++ b/plugins/bkpr/channelsapy.c
@@ -3,6 +3,7 @@
#include <ccan/array_size/array_size.h>
#include <ccan/asort/asort.h>
#include <ccan/tal/str/str.h>
+#include <common/coin_mvt.h>
#include <common/json_stream.h>
#include <common/lease_rates.h>
#include <db/bindings.h>
@@ -171,7 +172,7 @@ struct channel_apy **compute_channel_apys(const tal_t *ctx, struct db *db,
bool ok;
if (!acct || acct->db_id != ev->acct_db_id) {
- if (acct && is_channel_account(acct)) {
+ if (acct && is_channel_account(acct->name)) {
fillin_apy_acct_details(db, acct,
current_blockheight,
apy);
@@ -184,7 +185,7 @@ struct channel_apy **compute_channel_apys(const tal_t *ctx, struct db *db,
}
/* No entry for external or wallet accts */
- if (!is_channel_account(acct))
+ if (!is_channel_account(acct->name))
continue;
/* Accumulate routing stats */
@@ -229,7 +230,7 @@ struct channel_apy **compute_channel_apys(const tal_t *ctx, struct db *db,
* relevant fee data attached to them */
}
- if (acct && is_channel_account(acct)) {
+ if (acct && is_channel_account(acct->name)) {
fillin_apy_acct_details(db, acct,
current_blockheight,
apy);
diff --git a/plugins/bkpr/incomestmt.c b/plugins/bkpr/incomestmt.c
index 74faa71e..a47422af 100644
--- a/plugins/bkpr/incomestmt.c
+++ b/plugins/bkpr/incomestmt.c
@@ -122,7 +122,7 @@ static struct income_event *maybe_chain_income(const tal_t *ctx,
struct chain_event *ev)
{
if (streq(ev->tag, "htlc_fulfill")) {
- if (streq(ev->acct_name, EXTERNAL_ACCT))
+ if (is_external_account(ev->acct_name))
/* Swap the credit/debit as it went to external */
return chain_to_income(ctx, ev,
ev->origin_acct,
@@ -151,7 +151,7 @@ static struct income_event *maybe_chain_income(const tal_t *ctx,
struct db_stmt *stmt;
/* deposit to external is cost to us */
- if (streq(ev->acct_name, EXTERNAL_ACCT)) {
+ if (is_external_account(ev->acct_name)) {
struct income_event *iev;
/* External deposits w/o a blockheight
@@ -674,7 +674,7 @@ static char *income_event_harmony_type(const struct income_event *ev)
return "fee:network";
if (!amount_msat_is_zero(ev->credit)) {
- if (streq(WALLET_ACCT, ev->acct_name))
+ if (is_wallet_account(ev->acct_name))
return tal_fmt(ev, "transfer:%s", ev->tag);
return tal_fmt(ev, "income:%s", ev->tag);
@@ -684,7 +684,7 @@ static char *income_event_harmony_type(const struct income_event *ev)
if (streq("penalty", ev->tag)) {
return "loss:penalty";
}
- if (streq(WALLET_ACCT, ev->acct_name))
+ if (is_wallet_account(ev->acct_name))
return tal_fmt(ev, "transfer:%s", ev->tag);
/* FIXME: add "fee:transfer" to invoice routing fees */
diff --git a/plugins/bkpr/recorder.c b/plugins/bkpr/recorder.c
index 80daf2f3..077cfd09 100644
--- a/plugins/bkpr/recorder.c
+++ b/plugins/bkpr/recorder.c
@@ -466,12 +466,6 @@ static struct txo_set *find_txo_set(const tal_t *ctx,
return txos;
}
-static bool is_channel_acct(struct chain_event *ev)
-{
- return !streq(ev->acct_name, WALLET_ACCT)
- && !streq(ev->acct_name, EXTERNAL_ACCT);
-}
-
static bool txid_in_list(struct bitcoin_txid **list,
struct bitcoin_txid *txid)
{
@@ -527,7 +521,7 @@ bool find_txo_chain(const tal_t *ctx,
/* Has this been resolved? */
if ((pr->txo
- && is_channel_acct(pr->txo))
+ && is_channel_account(pr->txo->acct_name))
&& !pr->spend)
is_complete = false;
@@ -1734,7 +1728,7 @@ char *update_channel_onchain_fees(const tal_t *ctx,
- anchors (already exlc from output)
- to_external (if !htlc_fulfill)
*/
- if (is_channel_acct(ev)
+ if (is_channel_account(ev->acct_name)
&& streq("htlc_fulfill", ev->tag))
continue;
@@ -1745,7 +1739,7 @@ char *update_channel_onchain_fees(const tal_t *ctx,
* the peer's account (external),
* except for fulfilled htlcs (which originated
* in our balance) */
- if (streq(ev->acct_name, EXTERNAL_ACCT)
+ if (is_external_account(ev->acct_name)
&& !streq("htlc_fulfill", ev->tag))
continue;
@@ -1954,8 +1948,8 @@ char *maybe_update_onchain_fees(const tal_t *ctx, struct db *db,
/* Find all the deposits/withdrawals for this txid */
events = find_chain_events_bytxid(inner_ctx, db, txid);
- wallet_id = find_acct_id(db, WALLET_ACCT);
- extern_id = find_acct_id(db, EXTERNAL_ACCT);
+ wallet_id = find_acct_id(db, ACCOUNT_NAME_WALLET);
+ extern_id = find_acct_id(db, ACCOUNT_NAME_EXTERNAL);
/* If we don't even have two events, skip */
if (tal_count(events) < 2)
@@ -2129,7 +2123,7 @@ void maybe_closeout_external_deposits(struct db *db,
/* Blockheight for unconfirmeds is zero */
db_bind_int(stmt, 0);
db_bind_txid(stmt, txid);
- db_bind_text(stmt, EXTERNAL_ACCT);
+ db_bind_text(stmt, ACCOUNT_NAME_EXTERNAL);
db_query_prepared(stmt);
while (db_step(stmt)) {
diff --git a/plugins/bkpr/recorder.h b/plugins/bkpr/recorder.h
index 8349e89b..068064bb 100644
--- a/plugins/bkpr/recorder.h
+++ b/plugins/bkpr/recorder.h
@@ -12,8 +12,6 @@ struct db;
enum mvt_tag;
struct onchain_fee;
-#define EXTERNAL_ACCT "external"
-#define WALLET_ACCT WALLET
#define SQLITE_MAX_UINT 0x7FFFFFFFFFFFFFFF
struct acct_balance {
diff --git a/plugins/bkpr/test/run-recorder.c b/plugins/bkpr/test/run-recorder.c
index e4475e41..ec5aa8b8 100644
--- a/plugins/bkpr/test/run-recorder.c
+++ b/plugins/bkpr/test/run-recorder.c
@@ -437,8 +437,8 @@ static bool test_onchain_fee_wallet_spend(const tal_t *ctx, struct plugin *p)
memset(&node_id, 2, sizeof(struct node_id));
memset(&peer_id, 3, sizeof(struct node_id));
- wal_acct = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
- ext_acct = new_account(ctx, tal_fmt(ctx, "external"), &peer_id);
+ wal_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
+ ext_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_EXTERNAL), &peer_id);
memset(&txid, '1', sizeof(struct bitcoin_txid));
db_begin_transaction(db);
@@ -518,8 +518,8 @@ static bool test_onchain_fee_chan_close(const tal_t *ctx, struct plugin *p)
/* to_us, to_them, 1 htlc, 2 anchors */
close_output_count = 5;
- wal_acct = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
- ext_acct = new_account(ctx, tal_fmt(ctx, "external"), &peer_id);
+ wal_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
+ ext_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_EXTERNAL), &peer_id);
acct = new_account(ctx, tal_fmt(ctx, "chan-1"), &peer_id);
db_begin_transaction(db);
@@ -779,8 +779,8 @@ static bool test_onchain_fee_chan_open(const tal_t *ctx, struct plugin *p)
memset(&node_id, 2, sizeof(struct node_id));
memset(&peer_id, 3, sizeof(struct node_id));
- wal_acct = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
- ext_acct = new_account(ctx, tal_fmt(ctx, "external"), &peer_id);
+ wal_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
+ ext_acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_EXTERNAL), &peer_id);
acct = new_account(ctx, tal_fmt(ctx, "chan-1"), &peer_id);
acct2 = new_account(ctx, tal_fmt(ctx, "chan-2"), &peer_id);
@@ -981,7 +981,7 @@ static bool test_channel_event_crud(const tal_t *ctx, struct plugin *p)
memset(&peer_id, 3, sizeof(struct node_id));
acct = new_account(ctx, tal_fmt(ctx, "example"), &peer_id);
- acct2 = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
+ acct2 = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
db_begin_transaction(db);
account_add(db, acct);
account_add(db, acct2);
@@ -1069,7 +1069,7 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p)
memset(&peer_id, 3, sizeof(struct node_id));
acct = new_account(ctx, name, &peer_id);
- acct2 = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
+ acct2 = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
db_begin_transaction(db);
account_add(db, acct);
account_add(db, acct2);
@@ -1099,7 +1099,7 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p)
db_commit_transaction(db);
ev2->tag = tal_fmt(ctx, "deposit");
- ev2->origin_acct = tal_fmt(ctx, "wallet");
+ ev2->origin_acct = tal_fmt(ctx, ACCOUNT_NAME_WALLET);
ev2->credit = AMOUNT_MSAT(200);
ev2->debit = AMOUNT_MSAT(202);
ev2->output_value = AMOUNT_MSAT(104);
@@ -1198,7 +1198,7 @@ static bool test_account_balances(const tal_t *ctx, struct plugin *p)
memset(&peer_id, 3, sizeof(struct node_id));
acct = new_account(ctx, tal_fmt(ctx, "example"), &peer_id);
- acct2 = new_account(ctx, tal_fmt(ctx, "wallet"), &peer_id);
+ acct2 = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), &peer_id);
db_begin_transaction(db);
/* Check that account does not exist yet */
@@ -1313,7 +1313,7 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p)
CHECK(tal_count(acct_list) == 1);
accountseq(acct_list[0], acct);
- acct = new_account(ctx, tal_fmt(ctx, "wallet"), NULL);
+ acct = new_account(ctx, tal_fmt(ctx, ACCOUNT_NAME_WALLET), NULL);
CHECK(acct->is_wallet);
db_begin_transaction(db);
@@ -1327,7 +1327,7 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p)
/* Can we find an account ok? */
db_begin_transaction(db);
- acct2 = find_account(ctx, db, "wallet");
+ acct2 = find_account(ctx, db, ACCOUNT_NAME_WALLET);
db_commit_transaction(db);
accountseq(acct, acct2);
@@ -1360,7 +1360,7 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p)
tags[0] = MVT_PUSHED;
tags[1] = MVT_PENALTY;
maybe_update_account(db, acct, ev1, tags, 0, peer_id);
- acct2 = find_account(ctx, db, "wallet");
+ acct2 = find_account(ctx, db, ACCOUNT_NAME_WALLET);
accountseq(acct, acct2);
/* channel_open -> open event db updated */
@@ -1369,7 +1369,7 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p)
tags[0] = MVT_CHANNEL_OPEN;
tags[1] = MVT_LEASED;
maybe_update_account(db, acct, ev1, tags, 2, peer_id);
- acct2 = find_account(ctx, db, "wallet");
+ acct2 = find_account(ctx, db, ACCOUNT_NAME_WALLET);
accountseq(acct, acct2);
CHECK(acct->leased);
CHECK(acct->open_event_db_id != NULL);
@@ -1380,7 +1380,7 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p)
CHECK(acct->closed_event_db_id == NULL);
CHECK(!acct->we_opened);
maybe_update_account(db, acct, ev1, tags, 0, NULL);
- acct2 = find_account(ctx, db, "wallet");
+ acct2 = find_account(ctx, db, ACCOUNT_NAME_WALLET);
accountseq(acct, acct2);
CHECK(acct->closed_event_db_id != NULL);
CHECK(acct->we_opened);
diff --git a/wallet/walletrpc.c b/wallet/walletrpc.c
index db49c831..282ecea2 100644
--- a/wallet/walletrpc.c
+++ b/wallet/walletrpc.c
@@ -948,7 +948,7 @@ static void maybe_notify_new_external_send(struct lightningd *ld,
0, amount,
mk_mvt_tags(MVT_DEPOSIT));
- mvt->originating_acct = new_mvt_account_id(mvt, NULL, WALLET);
+ mvt->originating_acct = new_mvt_account_id(mvt, NULL, ACCOUNT_NAME_WALLET);
notify_chain_mvt(ld, mvt);
tal_free(mvt);
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.