gossip: Avoid reading gossip messages that we just wrote

Signed-off-by: Christian Decker <decker.christian@gmail.com>
This commit is contained in:
Christian Decker 2018-03-20 14:53:59 +01:00 committed by Rusty Russell
parent 1135760a2f
commit 5944524d01

View file

@ -58,9 +58,17 @@ const u8 *gossip_store_read_next(const tal_t *ctx, struct gossip_store *gs)
beint16_t belen;
u16 msglen;
u8 *msg;
if (!read_all(gs->read_fd, &belen, sizeof(belen)))
/* Did we already reach the end of the gossip_store? */
if (gs->read_fd == -1)
return NULL;
/* Can we read one message? */
if (!read_all(gs->read_fd, &belen, sizeof(belen))) {
gs->read_fd = -1;
return NULL;
}
msglen = be16_to_cpu(belen);
msg = tal_arr(ctx, u8, msglen);