summaryrefslogtreecommitdiffstats
path: root/nest/rt-fib.c
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>2004-05-31 20:16:42 +0200
committerMartin Mares <mj@ucw.cz>2004-05-31 20:16:42 +0200
commit0077aab4f9041e4d05d2d6916edfb0e15738cb37 (patch)
treed1cd3d698daf6f4178cfa5866ce6adf33451ac2d /nest/rt-fib.c
parent4ef3dccfa112faddf79fed76a539353b705702b5 (diff)
downloadbird-0077aab4f9041e4d05d2d6916edfb0e15738cb37.tar
bird-0077aab4f9041e4d05d2d6916edfb0e15738cb37.zip
The code was broken for external /29 to /32 routes. Assuming that you
have one machine publishing a route to 10.1.1.3/32 and another one publishing a route to 10.1.1.4/32. If the first machine went down the route to 10.1.1.4/32 was wrongly killed by the old code, leading either to missing routes or worse to bug()s like "Router parent does not have next hop" or just segfaults. The patch fixes this but in the long term a redesign is required here. Note that the patch doesn't worse the situation, instead it prevents the problems stated. The redesign is required to handle multiple routes to small subnets properly. (by Andreas) Feela, I think that this is at least a good temporary fix, but it's of course up to you to decide.
Diffstat (limited to 'nest/rt-fib.c')
0 files changed, 0 insertions, 0 deletions