From a9dc5e1ef2fd08c53bceb54690f6dac83ddf0c81 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Wed, 25 Feb 2009 16:28:21 +0100 Subject: [PATCH] Fixes another bug in packet retransmissions. When slave was in full state, it didn't retransmit lost packets. That leads to OSPF connection locked in states loading-full. --- proto/ospf/dbdes.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/proto/ospf/dbdes.c b/proto/ospf/dbdes.c index 54190c39..4cba667c 100644 --- a/proto/ospf/dbdes.c +++ b/proto/ospf/dbdes.c @@ -344,6 +344,11 @@ ospf_dbdes_receive(struct ospf_dbdes_packet *ps, /* Only duplicate are accepted */ { OSPF_TRACE(D_PACKETS, "Received duplicate dbdes from %I.", n->ip); + if (n->myimms.bit.ms == 0) + { + /* Slave should retransmit dbdes packet */ + ospf_dbdes_send(n); + } return; } else