]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
BMP: Add some missing bmp_buffer_free() calls
authorOndrej Zajicek (work) <santiago@crfreenet.org>
Thu, 15 Apr 2021 16:32:47 +0000 (18:32 +0200)
committerOndrej Zajicek <santiago@crfreenet.org>
Sun, 16 Apr 2023 18:06:02 +0000 (20:06 +0200)
They were inadvertently removed during recent code refactoring.

Thanks to Dawid Macek for the bugreport and patch.

proto/bmp/bmp.c

index 550e4c18b9035b08fecc33462d7dd403eb7987e9..dbbb5e0c37b2231cac385c347d376b8dd5f7872b 100644 (file)
@@ -277,6 +277,7 @@ bmp_startup(struct bmp_proto *p)
   buffer payload = bmp_buffer_alloc(p->buffer_mpool, DEFAULT_MEM_BLOCK_SIZE);
   bmp_init_msg_serialize(&payload, p->sys_descr, p->sys_name);
   bmp_schedule_tx_packet(p, bmp_buffer_data(&payload), bmp_buffer_pos(&payload));
+  bmp_buffer_free(&payload);
 
   p->started = true;
 }
@@ -661,6 +662,7 @@ bmp_send_peer_up_notif_msg(struct bmp_proto *p, const struct bgp_proto *bgp,
     sk->saddr, sk->daddr, sk->sport, sk->dport, tx_data, tx_data_size,
     rx_data, rx_data_size);
   bmp_schedule_tx_packet(p, bmp_buffer_data(&payload), bmp_buffer_pos(&payload));
+  bmp_buffer_free(&payload);
 
   bmp_peer_up(bgp);
 }
@@ -849,6 +851,9 @@ bmp_route_monitor_update_in_pre_commit(const struct bgp_proto *bgp)
     bmp_buffer_flush(&payload);
     bmp_buffer_flush(&update_msgs);
   }
+
+  bmp_buffer_free(&payload);
+  bmp_buffer_free(&update_msgs);
 }
 
 void