aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2007-03-26 02:24:24 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-04-26 01:27:17 -0400
commitc454673da7c1d6533f40ec2f788023df9af56ebf (patch)
tree004d329e049f3bdef09ff20623e24cba9f1fac12 /include/net
parent687ad8cc640fd1f1619cc44a9ab274dabd48c758 (diff)
[NET] rules: Unified rules dumping
Implements a unified, protocol independant rules dumping function which is capable of both, dumping a specific protocol family or all of them. This speeds up dumping as less lookups are required. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/fib_rules.h3
-rw-r--r--include/net/rtnetlink.h8
2 files changed, 8 insertions, 3 deletions
diff --git a/include/net/fib_rules.h b/include/net/fib_rules.h
index b2b9ccdf32d6..ff3029fe9656 100644
--- a/include/net/fib_rules.h
+++ b/include/net/fib_rules.h
@@ -98,7 +98,4 @@ extern int fib_rules_unregister(struct fib_rules_ops *);
98extern int fib_rules_lookup(struct fib_rules_ops *, 98extern int fib_rules_lookup(struct fib_rules_ops *,
99 struct flowi *, int flags, 99 struct flowi *, int flags,
100 struct fib_lookup_arg *); 100 struct fib_lookup_arg *);
101
102extern int fib_rules_dump(struct sk_buff *,
103 struct netlink_callback *, int);
104#endif 101#endif
diff --git a/include/net/rtnetlink.h b/include/net/rtnetlink.h
index dce7072bd28c..086fa9e89509 100644
--- a/include/net/rtnetlink.h
+++ b/include/net/rtnetlink.h
@@ -15,4 +15,12 @@ extern int rtnl_unregister(int protocol, int msgtype);
15extern void rtnl_unregister_all(int protocol); 15extern void rtnl_unregister_all(int protocol);
16extern int rtnl_dump_all(struct sk_buff *skb, struct netlink_callback *cb); 16extern int rtnl_dump_all(struct sk_buff *skb, struct netlink_callback *cb);
17 17
18static inline int rtnl_msg_family(struct nlmsghdr *nlh)
19{
20 if (nlmsg_len(nlh) >= sizeof(struct rtgenmsg))
21 return ((struct rtgenmsg *) nlmsg_data(nlh))->rtgen_family;
22 else
23 return AF_UNSPEC;
24}
25
18#endif 26#endif