In Rev 1.511 I moved peer related checks from inside up_generate_updates()
authorclaudio <claudio@openbsd.org>
Thu, 17 Jun 2021 08:43:06 +0000 (08:43 +0000)
committerclaudio <claudio@openbsd.org>
Thu, 17 Jun 2021 08:43:06 +0000 (08:43 +0000)
commit6dca77b0600796ffece3f31f4f1f02e0ba02904f
tree100a866b28f39d3fdefd429fe8a71b3b49b14d92
parent6b1dd3c7230701974cbe68f3baad9a30c4160768
In Rev 1.511 I moved peer related checks from inside up_generate_updates()
to rde_generate_updates() but forgot to add the same checks to
rde_softreconfig_out(). As a result a config reload could result in
prefixes for a not-negotiated address family to leak into the Adj-RIB-Out.
Adjust both rde_generate_updates() and rde_softreconfig_out() to use the
same filter logic.
Also adjust rde_up_flush_upcall() to pass the peer as argument instead of
using prefix_peer(). The up_generate_updates() call there does not need
any filtering since the walker runs on the Adj-RIB-Out and just withdraws
everything.
OK job@ on a previous diff
usr.sbin/bgpd/rde.c