From c8294c40916059a8fac7f0fae9647ca8383d3a10 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Thu, 8 Mar 2018 13:53:13 +1030 Subject: [PATCH] channeld: allow gossipd to push error msgs through us. We already have the code to close the channel if we've sent an error. Signed-off-by: Rusty Russell --- channeld/channel.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/channeld/channel.c b/channeld/channel.c index 0dcaeb065..839f6cdd9 100644 --- a/channeld/channel.c +++ b/channeld/channel.c @@ -314,7 +314,12 @@ static void gossip_in(struct peer *peer, const u8 *msg) if (is_msg_for_gossipd(gossip)) enqueue_peer_msg(peer, gossip); - else + else if (fromwire_peektype(gossip) == WIRE_ERROR) { + struct channel_id channel_id; + char *what = sanitize_error(msg, msg, &channel_id); + peer_failed(&peer->cs, peer->gossip_index, &channel_id, + "gossipd said: %s", what); + } else status_failed(STATUS_FAIL_GOSSIP_IO, "Got bad message type %s from gossipd: %s", wire_type_name(fromwire_peektype(gossip)),