From 6afb9f8fe7d614c37b185c562bdd893fc00b4714 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Tue, 15 Jun 2021 06:39:51 +0930 Subject: [PATCH] lightningd: add channel_closed helper, expose find_channel_by_id(). Signed-off-by: Rusty Russell --- lightningd/channel.h | 13 +++++++++++++ lightningd/channel_control.c | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/lightningd/channel.h b/lightningd/channel.h index 0ea0ca451..d3f4f8dc2 100644 --- a/lightningd/channel.h +++ b/lightningd/channel.h @@ -363,6 +363,10 @@ struct channel *any_channel_by_scid(struct lightningd *ld, struct channel *channel_by_cid(struct lightningd *ld, const struct channel_id *cid); +/* Find this channel within peer */ +struct channel *find_channel_by_id(const struct peer *peer, + const struct channel_id *cid); + void channel_set_last_tx(struct channel *channel, struct bitcoin_tx *tx, const struct bitcoin_signature *sig, @@ -403,6 +407,15 @@ static inline bool channel_active(const struct channel *channel) && !channel_on_chain(channel); } +static inline bool channel_closed(const struct channel *channel) +{ + return channel->state == CLOSINGD_COMPLETE + || channel->state == AWAITING_UNILATERAL + || channel->state == FUNDING_SPEND_SEEN + || channel->state == ONCHAIN + || channel->state == CLOSED; +} + void get_channel_basepoints(struct lightningd *ld, const struct node_id *peer_id, const u64 dbid, diff --git a/lightningd/channel_control.c b/lightningd/channel_control.c index 380146c66..95762eb96 100644 --- a/lightningd/channel_control.c +++ b/lightningd/channel_control.c @@ -788,8 +788,8 @@ void channel_notify_new_block(struct lightningd *ld, tal_free(to_forget); } -static struct channel *find_channel_by_id(const struct peer *peer, - const struct channel_id *cid) +struct channel *find_channel_by_id(const struct peer *peer, + const struct channel_id *cid) { struct channel *c;