[FIB]: Add netns to fib_rules_ops.
authorDenis V. Lunev <den@openvz.org>
Mon, 21 Jan 2008 00:46:01 +0000 (16:46 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 23:08:13 +0000 (15:08 -0800)
The backward link from FIB rules operations to the network namespace
will allow to simplify the API a bit.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Acked-by: Daniel Lezcano <dlezcano@fr.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/fib_rules.h
net/decnet/dn_rules.c
net/ipv4/fib_rules.c
net/ipv6/fib6_rules.c

index 4f47250..6910e01 100644 (file)
@@ -67,6 +67,7 @@ struct fib_rules_ops
        const struct nla_policy *policy;
        struct list_head        rules_list;
        struct module           *owner;
+       struct net              *fro_net;
 };
 
 #define FRA_GENERIC_POLICY \
index c1fae23..964e658 100644 (file)
@@ -249,6 +249,7 @@ static struct fib_rules_ops dn_fib_rules_ops = {
        .policy         = dn_fib_rule_policy,
        .rules_list     = LIST_HEAD_INIT(dn_fib_rules_ops.rules_list),
        .owner          = THIS_MODULE,
+       .fro_net        = &init_net,
 };
 
 void __init dn_fib_rules_init(void)
index 72232ab..8d0ebe7 100644 (file)
@@ -315,6 +315,8 @@ int __net_init fib4_rules_init(struct net *net)
        if (ops == NULL)
                return -ENOMEM;
        INIT_LIST_HEAD(&ops->rules_list);
+       ops->fro_net = net;
+
        fib_rules_register(net, ops);
 
        err = fib_default_rules_init(ops);
index 76437a1..ead5ab2 100644 (file)
@@ -249,6 +249,7 @@ static struct fib_rules_ops fib6_rules_ops = {
        .policy                 = fib6_rule_policy,
        .rules_list             = LIST_HEAD_INIT(fib6_rules_ops.rules_list),
        .owner                  = THIS_MODULE,
+       .fro_net                = &init_net,
 };
 
 static int __init fib6_default_rules_init(void)