aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-03-11 19:54:08 -0500
committerDavid S. Miller <davem@davemloft.net>2011-03-12 18:08:47 -0500
commit22bd5b9b13f2931ac80949f8bfbc40e8cab05be7 (patch)
treed30639ce43efe3186461b0fff962f80eb2417c61 /include/net
parent59b1a94c9a034e63a5e030a5154be1d4d84677d9 (diff)
ipv4: Pass ipv4 flow objects into fib_lookup() paths.
To start doing these conversions, we need to add some temporary flow4_* macros which will eventually go away when all the protocol code paths are changed to work on AF specific flowi objects. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/flow.h8
-rw-r--r--include/net/ip_fib.h6
2 files changed, 11 insertions, 3 deletions
diff --git a/include/net/flow.h b/include/net/flow.h
index 8139257ee11e..3e4630ebde32 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
@@ -50,6 +50,14 @@ union flowi_uli {
50 50
51struct flowi4 { 51struct flowi4 {
52 struct flowi_common __fl_common; 52 struct flowi_common __fl_common;
53#define flowi4_oif __fl_common.flowic_oif
54#define flowi4_iif __fl_common.flowic_iif
55#define flowi4_mark __fl_common.flowic_mark
56#define flowi4_tos __fl_common.flowic_tos
57#define flowi4_scope __fl_common.flowic_scope
58#define flowi4_proto __fl_common.flowic_proto
59#define flowi4_flags __fl_common.flowic_flags
60#define flowi4_secid __fl_common.flowic_secid
53 __be32 daddr; 61 __be32 daddr;
54 __be32 saddr; 62 __be32 saddr;
55 union flowi_uli uli; 63 union flowi_uli uli;
diff --git a/include/net/ip_fib.h b/include/net/ip_fib.h
index d948e232eb06..a1a858035913 100644
--- a/include/net/ip_fib.h
+++ b/include/net/ip_fib.h
@@ -155,7 +155,7 @@ struct fib_table {
155 unsigned char tb_data[0]; 155 unsigned char tb_data[0];
156}; 156};
157 157
158extern int fib_table_lookup(struct fib_table *tb, const struct flowi *flp, 158extern int fib_table_lookup(struct fib_table *tb, const struct flowi4 *flp,
159 struct fib_result *res, int fib_flags); 159 struct fib_result *res, int fib_flags);
160extern int fib_table_insert(struct fib_table *, struct fib_config *); 160extern int fib_table_insert(struct fib_table *, struct fib_config *);
161extern int fib_table_delete(struct fib_table *, struct fib_config *); 161extern int fib_table_delete(struct fib_table *, struct fib_config *);
@@ -186,7 +186,7 @@ static inline struct fib_table *fib_new_table(struct net *net, u32 id)
186 return fib_get_table(net, id); 186 return fib_get_table(net, id);
187} 187}
188 188
189static inline int fib_lookup(struct net *net, const struct flowi *flp, 189static inline int fib_lookup(struct net *net, const struct flowi4 *flp,
190 struct fib_result *res) 190 struct fib_result *res)
191{ 191{
192 struct fib_table *table; 192 struct fib_table *table;
@@ -209,7 +209,7 @@ extern void __net_exit fib4_rules_exit(struct net *net);
209extern u32 fib_rules_tclass(const struct fib_result *res); 209extern u32 fib_rules_tclass(const struct fib_result *res);
210#endif 210#endif
211 211
212extern int fib_lookup(struct net *n, struct flowi *flp, struct fib_result *res); 212extern int fib_lookup(struct net *n, struct flowi4 *flp, struct fib_result *res);
213 213
214extern struct fib_table *fib_new_table(struct net *net, u32 id); 214extern struct fib_table *fib_new_table(struct net *net, u32 id);
215extern struct fib_table *fib_get_table(struct net *net, u32 id); 215extern struct fib_table *fib_get_table(struct net *net, u32 id);