buildroot/package/mrouted/0001-DVMRP-report-missing-subnet.patch
Matt Weber 0f3531812c mrouted: DVMRP missing subnet
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-10-12 21:15:47 +02:00

36 lines
1.2 KiB
Diff

From 687f41680d51585e9a5a135e39efee330588bea7 Mon Sep 17 00:00:00 2001
From: Matt Weber <matthew.weber@rockwellcollins.com>
Date: Fri, 11 Sep 2015 12:49:30 -0500
Subject: [PATCH 1/1] DVMRP report missing subnet
Accepted upstream and will be included in 3.9.8.
https://github.com/troglobit/mrouted/commit/512af5ffe0f48ffa2ba3b45898c66c2a561a5c2d
A subnet is missing in the DVMRP report sent to it's neighbor after
the initial probe occurs. The issue was with the traversal of a double
linked list from end to start. Once the traversing pointer reaches
the start of routing table for loop (condition) it would break and
always drop the first subnet.
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
---
route.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/route.c b/route.c
index f74e601..9fe779d 100644
--- a/route.c
+++ b/route.c
@@ -1193,7 +1193,7 @@ static int report_chunk(int which_routes, struct rtentry *start_rt, vifi_t vifi,
p = send_buf + MIN_IP_HEADER_LEN + IGMP_MINLEN;
- for (r = start_rt; r != routing_table; r = r->rt_prev) {
+ for (r = start_rt; r != NULL; r = r->rt_prev) {
if (which_routes == CHANGED_ROUTES && !(r->rt_flags & RTF_CHANGED)) {
nrt++;
continue;
--
1.9.1