mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-18 05:12:45 +01:00
gossipd: fix false-positive memleak detection in pending_node_map.
lightning_gossipd(17421): MEMLEAK: 0x564b4b17b5a8 ligtning_gossipd(17421): label=gossipd/routing.c:1490:struct pending_node_announce lightning_gossipd(17421): backtrace: lightning_gossipd(17421): ccan/ccan/tal/tal.c:437 (tal_alloc_) lightning_gossipd(17421): gossipd/routing.c:1490 (catch_node_announcement) lightning_gossipd(17421): gossipd/routing.c:1837 (handle_channel_announcement) lightning_gossipd(17421): gossipd/gossipd.c:238 (handle_channel_announcement_msg) lightning_gossipd(17421): gossipd/gossipd.c:461 (peer_msg_in) lightning_gossipd(17421): common/daemon_conn.c:31 (handle_read) lightning_gossipd(17421): ccan/ccan/io/io.c:59 (next_plan) lightning_gossipd(17421): ccan/ccan/io/io.c:407 (do_plan) lightning_gossipd(17421): ccan/ccan/io/io.c:417 (io_ready) lightning_gossipd(17421): ccan/ccan/io/poll.c:445 (io_loop) lightning_gossipd(17421): gossipd/gossipd.c:1700 (main) lightning_gossipd(17421): parents: lightning_gossipd(17421): gossipd/routing.c:294:struct routing_state Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
e16ac08f6f
commit
bc430cced3
@ -1528,7 +1528,7 @@ static void process_pending_node_announcement(struct routing_state *rstate,
|
||||
* accepted the public channel now. But other pending announcements
|
||||
* may still hold a reference they use in
|
||||
* del_pending_node_announcement, so simply delete it from the map. */
|
||||
pending_node_map_del(rstate->pending_node_map, pna);
|
||||
pending_node_map_del(rstate->pending_node_map, notleak(pna));
|
||||
}
|
||||
|
||||
static struct pending_cannouncement *
|
||||
|
@ -51,6 +51,9 @@ bool nannounce_different(struct gossip_store *gs UNNEEDED,
|
||||
const struct node *node UNNEEDED,
|
||||
const u8 *nannounce UNNEEDED)
|
||||
{ fprintf(stderr, "nannounce_different called!\n"); abort(); }
|
||||
/* Generated stub for notleak_ */
|
||||
void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED)
|
||||
{ fprintf(stderr, "notleak_ called!\n"); abort(); }
|
||||
/* Generated stub for onion_type_name */
|
||||
const char *onion_type_name(int e UNNEEDED)
|
||||
{ fprintf(stderr, "onion_type_name called!\n"); abort(); }
|
||||
|
@ -40,6 +40,9 @@ bool nannounce_different(struct gossip_store *gs UNNEEDED,
|
||||
const struct node *node UNNEEDED,
|
||||
const u8 *nannounce UNNEEDED)
|
||||
{ fprintf(stderr, "nannounce_different called!\n"); abort(); }
|
||||
/* Generated stub for notleak_ */
|
||||
void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED)
|
||||
{ fprintf(stderr, "notleak_ called!\n"); abort(); }
|
||||
/* Generated stub for onion_type_name */
|
||||
const char *onion_type_name(int e UNNEEDED)
|
||||
{ fprintf(stderr, "onion_type_name called!\n"); abort(); }
|
||||
|
@ -38,6 +38,9 @@ bool nannounce_different(struct gossip_store *gs UNNEEDED,
|
||||
const struct node *node UNNEEDED,
|
||||
const u8 *nannounce UNNEEDED)
|
||||
{ fprintf(stderr, "nannounce_different called!\n"); abort(); }
|
||||
/* Generated stub for notleak_ */
|
||||
void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED)
|
||||
{ fprintf(stderr, "notleak_ called!\n"); abort(); }
|
||||
/* Generated stub for onion_type_name */
|
||||
const char *onion_type_name(int e UNNEEDED)
|
||||
{ fprintf(stderr, "onion_type_name called!\n"); abort(); }
|
||||
|
@ -38,6 +38,9 @@ bool nannounce_different(struct gossip_store *gs UNNEEDED,
|
||||
const struct node *node UNNEEDED,
|
||||
const u8 *nannounce UNNEEDED)
|
||||
{ fprintf(stderr, "nannounce_different called!\n"); abort(); }
|
||||
/* Generated stub for notleak_ */
|
||||
void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED)
|
||||
{ fprintf(stderr, "notleak_ called!\n"); abort(); }
|
||||
/* Generated stub for onion_type_name */
|
||||
const char *onion_type_name(int e UNNEEDED)
|
||||
{ fprintf(stderr, "onion_type_name called!\n"); abort(); }
|
||||
|
@ -50,6 +50,9 @@ bool nannounce_different(struct gossip_store *gs UNNEEDED,
|
||||
const struct node *node UNNEEDED,
|
||||
const u8 *nannounce UNNEEDED)
|
||||
{ fprintf(stderr, "nannounce_different called!\n"); abort(); }
|
||||
/* Generated stub for notleak_ */
|
||||
void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED)
|
||||
{ fprintf(stderr, "notleak_ called!\n"); abort(); }
|
||||
/* Generated stub for onion_type_name */
|
||||
const char *onion_type_name(int e UNNEEDED)
|
||||
{ fprintf(stderr, "onion_type_name called!\n"); abort(); }
|
||||
|
Loading…
Reference in New Issue
Block a user