From: Donald Sharp Date: Sun, 29 Oct 2017 12:27:08 +0000 (-0400) Subject: eigrpd: Query Send is not incrementing the sequence number X-Git-Tag: frr-4.0-dev~177^2~2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=68b7dd07d5676967259c116d6187ec095d8bc278;p=matthieu%2Ffrr.git eigrpd: Query Send is not incrementing the sequence number When we send a query make sure we increment the query sequence number. Signed-off-by: Donald Sharp --- diff --git a/eigrpd/eigrp_query.c b/eigrpd/eigrp_query.c index 88a592e6c9..58f3d2b53c 100644 --- a/eigrpd/eigrp_query.c +++ b/eigrpd/eigrp_query.c @@ -183,13 +183,14 @@ void eigrp_send_query(struct eigrp_interface *ei) has_tlv = 0; for (ALL_LIST_ELEMENTS(ei->eigrp->topology_changes_internalIPV4, node, nnode, pe)) { - if (pe->req_action & EIGRP_FSM_NEED_QUERY) { - length += eigrp_add_internalTLV_to_stream(ep->s, pe); - for (ALL_LIST_ELEMENTS(ei->nbrs, node2, nnode2, nbr)) { - if (nbr->state == EIGRP_NEIGHBOR_UP) { - listnode_add(pe->rij, nbr); - has_tlv = 1; - } + if (!(pe->req_action & EIGRP_FSM_NEED_QUERY)) + continue; + + length += eigrp_add_internalTLV_to_stream(ep->s, pe); + for (ALL_LIST_ELEMENTS(ei->nbrs, node2, nnode2, nbr)) { + if (nbr->state == EIGRP_NEIGHBOR_UP) { + listnode_add(pe->rij, nbr); + has_tlv = 1; } } } @@ -212,6 +213,7 @@ void eigrp_send_query(struct eigrp_interface *ei) /*This ack number we await from neighbor*/ ep->sequence_number = ei->eigrp->sequence_number; + ei->eigrp->sequence_number++; for (ALL_LIST_ELEMENTS(ei->nbrs, node2, nnode2, nbr)) { if (nbr->state == EIGRP_NEIGHBOR_UP) {