mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 03:11:11 -04:00
ipv6: export fib6_lookup for nft_fib_ipv6
Upcoming patch will call fib6_lookup from nft_fib_ipv6. The EXPORT_SYMBOL is added twice because there are two implementations of the function, one is a small stub for MULTIPLE_TABLES=n, only one is compiled into the kernel depending on .config settings. Alternative to EXPORT_SYMBOL is to use an indirect call via the ipv6_stub->fib6_lookup() indirection, but thats more expensive than the direct call. Also, nft_fib_ipv6 cannot be builtin if ipv6 is a module. Signed-off-by: Florian Westphal <fw@strlen.de>
This commit is contained in:
@@ -92,6 +92,9 @@ int fib6_lookup(struct net *net, int oif, struct flowi6 *fl6,
|
||||
|
||||
return err;
|
||||
}
|
||||
#if IS_MODULE(CONFIG_NFT_FIB_IPV6)
|
||||
EXPORT_SYMBOL_GPL(fib6_lookup);
|
||||
#endif
|
||||
|
||||
struct dst_entry *fib6_rule_lookup(struct net *net, struct flowi6 *fl6,
|
||||
const struct sk_buff *skb,
|
||||
|
||||
@@ -342,6 +342,9 @@ int fib6_lookup(struct net *net, int oif, struct flowi6 *fl6,
|
||||
return fib6_table_lookup(net, net->ipv6.fib6_main_tbl, oif, fl6,
|
||||
res, flags);
|
||||
}
|
||||
#if IS_MODULE(CONFIG_NFT_FIB_IPV6)
|
||||
EXPORT_SYMBOL_GPL(fib6_lookup);
|
||||
#endif
|
||||
|
||||
static void __net_init fib6_tables_init(struct net *net)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user