]> git.puffer.fish Git - mirror/frr.git/commit
bgpd: Turn off thread when running `no bmp targets X` 10870/head
authorDonatas Abraitis <donatas@opensourcerouting.org>
Thu, 24 Mar 2022 10:00:57 +0000 (12:00 +0200)
committermergify-bot <noreply@mergify.com>
Fri, 25 Mar 2022 05:44:15 +0000 (05:44 +0000)
commitd0016e1999da04f76326f6153d95dc248d09e4cd
treefa8448ca8eb2d2d8eade540ca9164ef5c4427a1c
parent6835b052bb1dbd8ca4b18d01f228e86724b51019
bgpd: Turn off thread when running `no bmp targets X`

Avoid use-after-free and prevent from crashing:

```
(gdb) bt
0  raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:50
1  0x00007f2a15c2c30d in core_handler (signo=11, siginfo=0x7fffb915e630, context=<optimized out>) at lib/sigevent.c:261
2  <signal handler called>
3  0x00007f2a156201e4 in bmp_stats (thread=<optimized out>) at bgpd/bgp_bmp.c:1330
4  0x00007f2a15c3d553 in thread_call (thread=thread@entry=0x7fffb915ebf0) at lib/thread.c:2001
5  0x00007f2a15bfa570 in frr_run (master=0x55c43a393ae0) at lib/libfrr.c:1196
6  0x000055c43930627c in main (argc=<optimized out>, argv=<optimized out>) at bgpd/bgp_main.c:519
(gdb)
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
(cherry picked from commit 4008aa1a24f8175831e2b4917555aaa71d5ebddd)
bgpd/bgp_bmp.c