fib_rule
struct fib_rule *rule;
struct fib_rule *rule;
bool ipmr_rule_default(const struct fib_rule *rule);
static inline bool ipmr_rule_default(const struct fib_rule *rule)
bool ip6mr_rule_default(const struct fib_rule *rule);
static inline bool ip6mr_rule_default(const struct fib_rule *rule)
struct fib_rule *rule;
static inline void fib_rule_get(struct fib_rule *rule)
static inline bool fib_rule_get_safe(struct fib_rule *rule)
static inline void fib_rule_put(struct fib_rule *rule)
static inline u32 fib_rule_get_table(struct fib_rule *rule,
static inline u32 fib_rule_get_table(struct fib_rule *rule,
static inline bool fib_rule_requires_fldissect(struct fib_rule *rule)
bool fib_rule_matchall(const struct fib_rule *rule);
INDIRECT_CALLABLE_DECLARE(int fib6_rule_match(struct fib_rule *rule,
INDIRECT_CALLABLE_DECLARE(int fib4_rule_match(struct fib_rule *rule,
INDIRECT_CALLABLE_DECLARE(int fib6_rule_action(struct fib_rule *rule,
INDIRECT_CALLABLE_DECLARE(int fib4_rule_action(struct fib_rule *rule,
INDIRECT_CALLABLE_DECLARE(bool fib6_rule_suppress(struct fib_rule *rule,
INDIRECT_CALLABLE_DECLARE(bool fib4_rule_suppress(struct fib_rule *rule,
struct fib_rule __rcu *ctarget;
struct fib_rule *rule;
int (*action)(struct fib_rule *,
bool (*suppress)(struct fib_rule *, int,
int (*match)(struct fib_rule *,
int (*configure)(struct fib_rule *,
int (*delete)(struct fib_rule *);
int (*compare)(struct fib_rule *,
int (*fill)(struct fib_rule *, struct sk_buff *,
size_t (*nlmsg_payload)(struct fib_rule *);
bool fib6_rule_default(const struct fib_rule *rule);
static inline bool fib6_rule_default(const struct fib_rule *rule)
struct fib_rule;
static inline bool fib4_rule_default(const struct fib_rule *rule)
bool fib4_rule_default(const struct fib_rule *rule);
static void notify_rule_change(int event, struct fib_rule *rule,
struct fib_rule *rule = NULL, *nlrule = NULL;
struct fib_rule *n, *r;
struct fib_rule *rule)
static int fib_nl_fill_rule(struct sk_buff *skb, struct fib_rule *rule,
struct fib_rule *rule;
static void notify_rule_change(int event, struct fib_rule *rule,
struct fib_rule *rule;
struct fib_rule *rule;
if (ops->rule_size < sizeof(struct fib_rule))
struct fib_rule *rule, *tmp;
static bool fib_rule_iif_match(const struct fib_rule *rule, int iifindex,
static bool fib_rule_oif_match(const struct fib_rule *rule, int oifindex,
static int fib_rule_match(struct fib_rule *rule, struct fib_rules_ops *ops,
struct fib_rule *rule;
struct fib_rule *target;
struct fib_rule *rule, int family,
bool fib_rule_matchall(const struct fib_rule *rule)
struct fib_rule *rule,
struct fib_rule *rule;
static struct fib_rule *rule_find(struct fib_rules_ops *ops,
struct fib_rule *rule,
struct fib_rule *r;
static int fib_nl2rule_l3mdev(struct nlattr *nla, struct fib_rule *nlrule,
static int fib_nl2rule_l3mdev(struct nlattr *nla, struct fib_rule *nlrule,
struct fib_rule **rule,
struct fib_rule *nlrule = NULL;
struct fib_rule *r;
static int fib_nl2rule_rtnl(struct fib_rule *nlrule,
struct nlattr **tb, struct fib_rule *rule)
struct fib_rule *r;
struct fib_rule *rule;
struct fib_rule *rule = NULL, *r, *last = NULL;
rule = list_entry(pos->next, struct fib_rule, list);
INDIRECT_CALLABLE_SCOPE int fib4_rule_action(struct fib_rule *rule,
INDIRECT_CALLABLE_SCOPE bool fib4_rule_suppress(struct fib_rule *rule,
INDIRECT_CALLABLE_SCOPE int fib4_rule_match(struct fib_rule *rule,
static int fib4_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
static int fib4_rule_delete(struct fib_rule *rule)
static int fib4_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
struct fib_rule common;
static int fib4_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
static size_t fib4_rule_nlmsg_payload(struct fib_rule *rule)
static bool fib4_rule_matchall(const struct fib_rule *rule)
bool fib4_rule_default(const struct fib_rule *rule)
static int ipmr_rule_action(struct fib_rule *rule, struct flowi *flp,
static int ipmr_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
static int ipmr_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
static int ipmr_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
static int ipmr_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
bool ipmr_rule_default(const struct fib_rule *rule)
bool ipmr_rule_default(const struct fib_rule *rule)
struct fib_rule common;
static int fib6_rule_saddr(struct net *net, struct fib_rule *rule, int flags,
static int fib6_rule_action_alt(struct fib_rule *rule, struct flowi *flp,
static int __fib6_rule_action(struct fib_rule *rule, struct flowi *flp,
struct fib_rule common;
INDIRECT_CALLABLE_SCOPE int fib6_rule_action(struct fib_rule *rule,
INDIRECT_CALLABLE_SCOPE bool fib6_rule_suppress(struct fib_rule *rule,
INDIRECT_CALLABLE_SCOPE int fib6_rule_match(struct fib_rule *rule,
static bool fib6_rule_matchall(const struct fib_rule *rule)
static int fib6_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
bool fib6_rule_default(const struct fib_rule *rule)
static int fib6_rule_delete(struct fib_rule *rule)
static int fib6_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
static int fib6_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
static size_t fib6_rule_nlmsg_payload(struct fib_rule *rule)
static int ip6mr_rule_action(struct fib_rule *rule, struct flowi *flp,
static int ip6mr_rule_match(struct fib_rule *rule, struct flowi *flp, int flags)
static int ip6mr_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
static int ip6mr_rule_compare(struct fib_rule *rule, struct fib_rule_hdr *frh,
static int ip6mr_rule_fill(struct fib_rule *rule, struct sk_buff *skb,
bool ip6mr_rule_default(const struct fib_rule *rule)
struct fib_rule common;