diff options
Diffstat (limited to 'include/net/dn_fib.h')
-rw-r--r-- | include/net/dn_fib.h | 28 |
1 files changed, 6 insertions, 22 deletions
diff --git a/include/net/dn_fib.h b/include/net/dn_fib.h index 1ee9d4bda30d..74004af31c48 100644 --- a/include/net/dn_fib.h +++ b/include/net/dn_fib.h | |||
@@ -1,24 +1,9 @@ | |||
1 | #ifndef _NET_DN_FIB_H | 1 | #ifndef _NET_DN_FIB_H |
2 | #define _NET_DN_FIB_H | 2 | #define _NET_DN_FIB_H |
3 | 3 | ||
4 | /* WARNING: The ordering of these elements must match ordering | 4 | #include <linux/netlink.h> |
5 | * of RTA_* rtnetlink attribute numbers. | 5 | |
6 | */ | 6 | extern const struct nla_policy rtm_dn_policy[]; |
7 | struct dn_kern_rta { | ||
8 | void *rta_dst; | ||
9 | void *rta_src; | ||
10 | int *rta_iif; | ||
11 | int *rta_oif; | ||
12 | void *rta_gw; | ||
13 | u32 *rta_priority; | ||
14 | void *rta_prefsrc; | ||
15 | struct rtattr *rta_mx; | ||
16 | struct rtattr *rta_mp; | ||
17 | unsigned char *rta_protoinfo; | ||
18 | u32 *rta_flow; | ||
19 | struct rta_cacheinfo *rta_ci; | ||
20 | struct rta_session *rta_sess; | ||
21 | }; | ||
22 | 7 | ||
23 | struct dn_fib_res { | 8 | struct dn_fib_res { |
24 | struct fib_rule *r; | 9 | struct fib_rule *r; |
@@ -93,10 +78,10 @@ struct dn_fib_table { | |||
93 | u32 n; | 78 | u32 n; |
94 | 79 | ||
95 | int (*insert)(struct dn_fib_table *t, struct rtmsg *r, | 80 | int (*insert)(struct dn_fib_table *t, struct rtmsg *r, |
96 | struct dn_kern_rta *rta, struct nlmsghdr *n, | 81 | struct nlattr *attrs[], struct nlmsghdr *n, |
97 | struct netlink_skb_parms *req); | 82 | struct netlink_skb_parms *req); |
98 | int (*delete)(struct dn_fib_table *t, struct rtmsg *r, | 83 | int (*delete)(struct dn_fib_table *t, struct rtmsg *r, |
99 | struct dn_kern_rta *rta, struct nlmsghdr *n, | 84 | struct nlattr *attrs[], struct nlmsghdr *n, |
100 | struct netlink_skb_parms *req); | 85 | struct netlink_skb_parms *req); |
101 | int (*lookup)(struct dn_fib_table *t, const struct flowidn *fld, | 86 | int (*lookup)(struct dn_fib_table *t, const struct flowidn *fld, |
102 | struct dn_fib_res *res); | 87 | struct dn_fib_res *res); |
@@ -116,13 +101,12 @@ extern void dn_fib_cleanup(void); | |||
116 | extern int dn_fib_ioctl(struct socket *sock, unsigned int cmd, | 101 | extern int dn_fib_ioctl(struct socket *sock, unsigned int cmd, |
117 | unsigned long arg); | 102 | unsigned long arg); |
118 | extern struct dn_fib_info *dn_fib_create_info(const struct rtmsg *r, | 103 | extern struct dn_fib_info *dn_fib_create_info(const struct rtmsg *r, |
119 | struct dn_kern_rta *rta, | 104 | struct nlattr *attrs[], |
120 | const struct nlmsghdr *nlh, int *errp); | 105 | const struct nlmsghdr *nlh, int *errp); |
121 | extern int dn_fib_semantic_match(int type, struct dn_fib_info *fi, | 106 | extern int dn_fib_semantic_match(int type, struct dn_fib_info *fi, |
122 | const struct flowidn *fld, | 107 | const struct flowidn *fld, |
123 | struct dn_fib_res *res); | 108 | struct dn_fib_res *res); |
124 | extern void dn_fib_release_info(struct dn_fib_info *fi); | 109 | extern void dn_fib_release_info(struct dn_fib_info *fi); |
125 | extern __le16 dn_fib_get_attr16(struct rtattr *attr, int attrlen, int type); | ||
126 | extern void dn_fib_flush(void); | 110 | extern void dn_fib_flush(void); |
127 | extern void dn_fib_select_multipath(const struct flowidn *fld, | 111 | extern void dn_fib_select_multipath(const struct flowidn *fld, |
128 | struct dn_fib_res *res); | 112 | struct dn_fib_res *res); |