summaryrefslogtreecommitdiff
path: root/zebra
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-12-07 12:33:20 +0300
committerDenis Ovsienko <infrastation@yandex.ru>2009-12-07 12:33:20 +0300
commit64bf3ab7291cc5c39c5add0dc1a7de447914248b (patch)
treed5ae874814083d89815e6c521b42d0f3eaaec69c /zebra
parent2eb445e1c22e36d07e2dbfd302ff438c4190b9fe (diff)
ospf6d: review LSA sequence number comparison
It seems that there is a bug in ospf6d in ospf6_lsa_compare(): If LSA A has sequence number smaller than 0x80000000 and LSA B has sequence number larger than 0x80000000, ospf6_lsa_compare() returns that B is more recent than A, although RFC says that sequence numbers should be compared as signed numbers (0x8000001 smallest and 0x7FFFFFFF largest). In ospfd, the function ospf_lsa_more_recent() has it right. The problem appears when Quagga is used together with OSPFv3 in development version of BIRD daemon ( http://bird.network.cz/ ), which creates LSAs with maximum sequence number (0x7FFFFFFF) as a part of flushing/premature aging LSA from OSPF area. Because both daemons has different idea of which LSA instance is more recent, it would lead to LSA storm.
Diffstat (limited to 'zebra')
0 files changed, 0 insertions, 0 deletions