mirror of
https://git.busybox.net/buildroot.git
synced 2024-11-24 05:53:30 +08:00
mrouted: DVMRP missing subnet
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
1d73d98a35
commit
0f3531812c
35
package/mrouted/0001-DVMRP-report-missing-subnet.patch
Normal file
35
package/mrouted/0001-DVMRP-report-missing-subnet.patch
Normal file
@ -0,0 +1,35 @@
|
||||
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
|
||||
|
Loading…
Reference in New Issue
Block a user