diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-08-18 01:03:46 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-08-18 01:16:53 +0200 |
commit | f90f65a242e18ad2ae1229853f904227cc36900a (patch) | |
tree | 72cab69e512d4c8d3e2c40533e728a6973e92411 /eigrpd/eigrp_update.c | |
parent | eigrpd: Rework ack sent to neighbor (diff) | |
download | frr-f90f65a242e18ad2ae1229853f904227cc36900a.tar.xz frr-f90f65a242e18ad2ae1229853f904227cc36900a.zip |
eigrpd: Cleanup FIFO
The FIFO really was a LIFO for some reason.
Push new packets onto the top, always pull from the bottom.
This allows eigrp neighbors to come up. Topotests
eigrp-topo1( in a topotest PR ) now form neighbors
with itself. With this commit.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'eigrpd/eigrp_update.c')
-rw-r--r-- | eigrpd/eigrp_update.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/eigrpd/eigrp_update.c b/eigrpd/eigrp_update.c index 3c82fdfde..3af5524b8 100644 --- a/eigrpd/eigrp_update.c +++ b/eigrpd/eigrp_update.c @@ -497,7 +497,7 @@ void eigrp_update_send_init(struct eigrp_neighbor *nbr) ep->length, ep->sequence_number, inet_ntoa(ep->dst)); /*Put packet to retransmission queue*/ - eigrp_fifo_push_head(nbr->retrans_queue, ep); + eigrp_fifo_push(nbr->retrans_queue, ep); if (nbr->retrans_queue->count == 1) { eigrp_send_packet_reliably(nbr); @@ -528,7 +528,7 @@ static void eigrp_update_place_on_nbr_queue(struct eigrp_neighbor *nbr, ep->length, ep->sequence_number, inet_ntoa(ep->dst)); /*Put packet to retransmission queue*/ - eigrp_fifo_push_head(nbr->retrans_queue, ep); + eigrp_fifo_push(nbr->retrans_queue, ep); } void eigrp_update_send_EOT(struct eigrp_neighbor *nbr) @@ -731,7 +731,7 @@ void eigrp_update_send(struct eigrp_interface *ei) if (nbr->state == EIGRP_NEIGHBOR_UP) { packet_sent = true; /*Put packet to retransmission queue*/ - eigrp_fifo_push_head(nbr->retrans_queue, ep); + eigrp_fifo_push(nbr->retrans_queue, ep); if (nbr->retrans_queue->count == 1) { eigrp_send_packet_reliably(nbr); @@ -980,7 +980,7 @@ static void eigrp_update_send_GR_part(struct eigrp_neighbor *nbr) ep->length, ep->sequence_number, inet_ntoa(ep->dst)); /*Put packet to retransmission queue*/ - eigrp_fifo_push_head(nbr->retrans_queue, ep); + eigrp_fifo_push(nbr->retrans_queue, ep); if (nbr->retrans_queue->count == 1) { eigrp_send_packet_reliably(nbr); |