Patchwork ipv6: route templates missing protocol value

login
register
mail settings
Submitter stephen hemminger
Date May 20, 2009, 7:30 p.m.
Message ID <20090520123038.5bb2a2da@nehalam>
Download mbox | patch
Permalink /patch/27468/
State Not Applicable
Delegated to: David Miller
Headers show

Comments

stephen hemminger - May 20, 2009, 7:30 p.m.
The IPV6 routing templates are missing the protocol value so
when they are used, the routes have the protocol RTPROT_UNSPEC (0).
This confuses Zebra routing protocol daemon that makes kernel routes
a special case. This was first noticed by Jean-Mickael Guerin
who wrote this patch.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>

---
 net/ipv6/route.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - May 20, 2009, 7:42 p.m.
From: Stephen Hemminger <shemminger@vyatta.com>
Date: Wed, 20 May 2009 12:30:38 -0700

> The IPV6 routing templates are missing the protocol value so
> when they are used, the routes have the protocol RTPROT_UNSPEC (0).
> This confuses Zebra routing protocol daemon that makes kernel routes
> a special case. This was first noticed by Jean-Mickael Guerin
> who wrote this patch.
> 
> Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>

What's wrong with Jean-Mickael Guerin's patch?  He provided
a signoff and everything.

Are you Napoleon? :-)


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

--- a/net/ipv6/route.c	2009-05-15 13:32:34.138684428 -0700
+++ b/net/ipv6/route.c	2009-05-20 12:26:19.435815459 -0700
@@ -137,6 +137,7 @@  static struct rt6_info ip6_null_entry_te
 		}
 	},
 	.rt6i_flags	= (RTF_REJECT | RTF_NONEXTHOP),
+	.rt6i_protocol	= RTPROT_KERNEL,
 	.rt6i_metric	= ~(u32) 0,
 	.rt6i_ref	= ATOMIC_INIT(1),
 };
@@ -159,6 +160,7 @@  static struct rt6_info ip6_prohibit_entr
 		}
 	},
 	.rt6i_flags	= (RTF_REJECT | RTF_NONEXTHOP),
+	.rt6i_protocol	= RTPROT_KERNEL,
 	.rt6i_metric	= ~(u32) 0,
 	.rt6i_ref	= ATOMIC_INIT(1),
 };
@@ -176,6 +178,7 @@  static struct rt6_info ip6_blk_hole_entr
 		}
 	},
 	.rt6i_flags	= (RTF_REJECT | RTF_NONEXTHOP),
+	.rt6i_protocol	= RTPROT_KERNEL,
 	.rt6i_metric	= ~(u32) 0,
 	.rt6i_ref	= ATOMIC_INIT(1),
 };