* [Patch v2] IPv6: Fixed support for blackhole and prohibit routes
@ 2013-11-22 8:21 Kamala R
2013-11-23 22:41 ` Hannes Frederic Sowa
2013-11-28 18:50 ` Hannes Frederic Sowa
0 siblings, 2 replies; 3+ messages in thread
From: Kamala R @ 2013-11-22 8:21 UTC (permalink / raw)
To: Hannes Frederic Sowa, netdev, David Miller; +Cc: linux-kernel, Kamala R
From: Kamala R <kamala@aristanetworks.com>
The behaviour of blackhole and prohibit routes has been corrected by setting
the input and output function pointers of the dst variable appropriately. For
blackhole routes, they are set to dst_discard and to ip6_pkt_prohibit and
ip6_pkt_prohbit_out respectively for prohibit routes.
Changes from v1: Logic is the same. Changes made for readability and so it
looks pleasing.
Signed-off-by: Kamala R <kamala@aristanetworks.com>
---
net/ipv6/route.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index f54e3a1..d90b9ab 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -1564,21 +1564,24 @@ int ip6_route_add(struct fib6_config *cfg)
goto out;
}
}
- rt->dst.output = ip6_pkt_discard_out;
- rt->dst.input = ip6_pkt_discard;
rt->rt6i_flags = RTF_REJECT|RTF_NONEXTHOP;
+ rt->dst.error = -ENETUNREACH;
switch (cfg->fc_type) {
case RTN_BLACKHOLE:
rt->dst.error = -EINVAL;
+ rt->dst.output = dst_discard;
+ rt->dst.input = dst_discard;
break;
case RTN_PROHIBIT:
rt->dst.error = -EACCES;
+ rt->dst.output = ip6_pkt_prohibit_out;
+ rt->dst.input = ip6_pkt_prohibit;
break;
case RTN_THROW:
rt->dst.error = -EAGAIN;
- break;
default:
- rt->dst.error = -ENETUNREACH;
+ rt->dst.output = ip6_pkt_discard_out;
+ rt->dst.input = ip6_pkt_discard;
break;
}
goto install_route;
--
1.7.9.5
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [Patch v2] IPv6: Fixed support for blackhole and prohibit routes
2013-11-22 8:21 [Patch v2] IPv6: Fixed support for blackhole and prohibit routes Kamala R
@ 2013-11-23 22:41 ` Hannes Frederic Sowa
2013-11-28 18:50 ` Hannes Frederic Sowa
1 sibling, 0 replies; 3+ messages in thread
From: Hannes Frederic Sowa @ 2013-11-23 22:41 UTC (permalink / raw)
To: Kamala R; +Cc: netdev, David Miller, linux-kernel
On Fri, Nov 22, 2013 at 01:51:28PM +0530, Kamala R wrote:
> diff --git a/net/ipv6/route.c b/net/ipv6/route.c
> index f54e3a1..d90b9ab 100644
> --- a/net/ipv6/route.c
> +++ b/net/ipv6/route.c
> @@ -1564,21 +1564,24 @@ int ip6_route_add(struct fib6_config *cfg)
> goto out;
> }
> }
> - rt->dst.output = ip6_pkt_discard_out;
> - rt->dst.input = ip6_pkt_discard;
> rt->rt6i_flags = RTF_REJECT|RTF_NONEXTHOP;
> + rt->dst.error = -ENETUNREACH;
> switch (cfg->fc_type) {
> case RTN_BLACKHOLE:
> rt->dst.error = -EINVAL;
> + rt->dst.output = dst_discard;
> + rt->dst.input = dst_discard;
> break;
> case RTN_PROHIBIT:
> rt->dst.error = -EACCES;
> + rt->dst.output = ip6_pkt_prohibit_out;
> + rt->dst.input = ip6_pkt_prohibit;
> break;
> case RTN_THROW:
> rt->dst.error = -EAGAIN;
> - break;
> default:
> - rt->dst.error = -ENETUNREACH;
> + rt->dst.output = ip6_pkt_discard_out;
> + rt->dst.input = ip6_pkt_discard;
> break;
> }
> goto install_route;
I like it more if a variable is only assigned once. Otherwise it is fine by
me.
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [Patch v2] IPv6: Fixed support for blackhole and prohibit routes
2013-11-22 8:21 [Patch v2] IPv6: Fixed support for blackhole and prohibit routes Kamala R
2013-11-23 22:41 ` Hannes Frederic Sowa
@ 2013-11-28 18:50 ` Hannes Frederic Sowa
1 sibling, 0 replies; 3+ messages in thread
From: Hannes Frederic Sowa @ 2013-11-28 18:50 UTC (permalink / raw)
To: Kamala R; +Cc: netdev, David Miller, linux-kernel
On Fri, Nov 22, 2013 at 01:51:28PM +0530, Kamala R wrote:
> From: Kamala R <kamala@aristanetworks.com>
>
> The behaviour of blackhole and prohibit routes has been corrected by setting
> the input and output function pointers of the dst variable appropriately. For
> blackhole routes, they are set to dst_discard and to ip6_pkt_prohibit and
> ip6_pkt_prohbit_out respectively for prohibit routes.
>
> Changes from v1: Logic is the same. Changes made for readability and so it
> looks pleasing.
David, fyi a third version of this patch has been posted.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-11-28 18:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-22 8:21 [Patch v2] IPv6: Fixed support for blackhole and prohibit routes Kamala R
2013-11-23 22:41 ` Hannes Frederic Sowa
2013-11-28 18:50 ` Hannes Frederic Sowa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox