Re: [PATCH,RFC] Route match v2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 07, 2008 at 02:00:32PM +0200, Patrick McHardy wrote:
>> +static bool
>> +route_mt6(const struct sk_buff *skb, const struct net_device *in,
>> +           const struct net_device *out, const struct xt_match *match,
>> +           const void *matchinfo, int offset, unsigned int protoff,
>> +           bool *hotdrop)
>> +{
>> +	const struct xt_route_info *info = matchinfo;
>> +	const struct ipv6hdr *iph = ipv6_hdr(skb);
>> +	struct fib6_node *fn;
>> +	struct flowi fl = {0};
>> +
>> +	switch (info->mode) {
>> +	case XT_ROUTE_SRC_EXISTS:
>> +		fl.nl_u.ip6_u.daddr = iph->saddr;
>> +		fn = fib6_lookup(&dev_net(in)->ipv6.fib6_main_tbl->tb6_root, &fl.fl6_dst, NULL);
>
> This is always using the main table, which is inconsistent
> with the IPv4 support. It also shouldn't call IPv6 functions
> directly to avoid incorrect module dependencies.

What are the alternatives?  If we need to support IPv6 in the match, then
we need to call the functions directly, no?  Is there a helper function
I'm missing?

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

[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux