diff options
author | Christian Franke <chris@opensourcerouting.org> | 2013-02-20 11:00:54 +0100 |
---|---|---|
committer | David Lamparter <equinox@diac24.net> | 2013-04-20 06:14:27 +0200 |
commit | 4c14b7f684510592f2eb46fd84859d8bca57def9 (patch) | |
tree | f42890045f6d1cd37cdd61106b6524e6c476f445 /ospfd/ospf_packet.c | |
parent | ospfd: make ospf_maxage_lsa_remover actually yield (diff) | |
download | frr-4c14b7f684510592f2eb46fd84859d8bca57def9.tar.xz frr-4c14b7f684510592f2eb46fd84859d8bca57def9.zip |
ospfd: fix flooding procedure
An ospf router should accept a new maxage LSA into its lsdb if it has any
neighbors in state Exchange or Loading. ospfd would however only account
for neighbors on the same interface which does not seem to be a valid
optimization.
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
Signed-off-by: David Lamparter <equinox@diac24.net>
Diffstat (limited to 'ospfd/ospf_packet.c')
-rw-r--r-- | ospfd/ospf_packet.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/ospfd/ospf_packet.c b/ospfd/ospf_packet.c index d3f1b5635..37223fbb7 100644 --- a/ospfd/ospf_packet.c +++ b/ospfd/ospf_packet.c @@ -1833,8 +1833,7 @@ ospf_ls_upd (struct ip *iph, struct ospf_header *ospfh, then take the following actions: */ if (IS_LSA_MAXAGE (lsa) && !current && - (ospf_nbr_count (oi, NSM_Exchange) + - ospf_nbr_count (oi, NSM_Loading)) == 0) + ospf_check_nbr_status(oi->ospf)) { /* (4a) Response Link State Acknowledgment. */ ospf_ls_ack_send (nbr, lsa); |