summaryrefslogtreecommitdiffstats
path: root/eigrpd/eigrp_update.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-08-18 01:03:46 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2017-08-18 01:16:53 +0200
commitf90f65a242e18ad2ae1229853f904227cc36900a (patch)
tree72cab69e512d4c8d3e2c40533e728a6973e92411 /eigrpd/eigrp_update.c
parenteigrpd: Rework ack sent to neighbor (diff)
downloadfrr-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.c8
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);