0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00
bird/proto/bgp
Maria Matejka 6779e5da69 BGP: fix locking order error on dynamic protocol spawn
We missed that the protocol spawner violates the prescribed
locking order. When the rtable level is locked, no new protocol can be
started, thus we need to:

* create the protocol from a clean mainloop context
* in protocol start hook, take the socket

Testsuite: cf-bgp-autopeer
Fixes: #136

Thanks to Job Snijders <job@fastly.com> for reporting:
https://trubka.network.cz/pipermail/bird-users/2024-December/017980.html
2024-12-20 11:40:10 +01:00
..
attrs.c BGP: Print warnings when the allocated memory is larger than given acceptable maximum. 2024-12-16 12:33:07 +01:00
bgp.c BGP: fix locking order error on dynamic protocol spawn 2024-12-20 11:40:10 +01:00
bgp.h BGP: Print warnings when the allocated memory is larger than given acceptable maximum. 2024-12-16 12:33:07 +01:00
config.Y BGP: Print warnings when the allocated memory is larger than given acceptable maximum. 2024-12-16 12:33:07 +01:00
Doc Doc: Rename code documentation files back to Doc 2018-12-14 02:03:42 +01:00
Makefile Simplified the protocol hookup code in Makefiles 2022-08-18 22:07:30 +02:00
packets.c BMP: Never touching the BGP directly 2024-12-10 23:41:48 +01:00