From: Ondrej Zajicek Date: Thu, 12 Feb 2009 18:46:51 +0000 (+0100) Subject: Fixes bug in packet retransmissions. X-Git-Tag: v1.2.0~146 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d901db3fb72860d4669793bfb1af3a9aa7a27b91;p=thirdparty%2Fbird.git Fixes bug in packet retransmissions. When packet was lost during dbdes exchange, slave did not retransmit it. That leads to OSPF connection locked in states exchange-exstart. --- diff --git a/proto/ospf/dbdes.c b/proto/ospf/dbdes.c index 9f45dfdc7..54190c39e 100644 --- a/proto/ospf/dbdes.c +++ b/proto/ospf/dbdes.c @@ -263,8 +263,9 @@ ospf_dbdes_receive(struct ospf_dbdes_packet *ps, { /* Duplicate packet */ OSPF_TRACE(D_PACKETS, "Received duplicate dbdes from %I.", n->ip); - if (n->imms.bit.ms == 0) + if (n->myimms.bit.ms == 0) { + /* Slave should retransmit dbdes packet */ ospf_dbdes_send(n); } return;