fib: expand fib_rule_policy

Now that there is only one fib nla_policy there is no need to
keep the macro around.  Place it where its used.

Signed-off-by: Florian Westphal <fw@strlen.de>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Florian Westphal 2021-12-16 13:05:07 +01:00 committed by Jakub Kicinski
parent 92e1bcee06
commit 66495f301c
2 changed files with 17 additions and 21 deletions

View File

@ -102,26 +102,6 @@ struct fib_rule_notifier_info {
struct fib_rule *rule;
};
#define FRA_GENERIC_POLICY \
[FRA_UNSPEC] = { .strict_start_type = FRA_DPORT_RANGE + 1 }, \
[FRA_IIFNAME] = { .type = NLA_STRING, .len = IFNAMSIZ - 1 }, \
[FRA_OIFNAME] = { .type = NLA_STRING, .len = IFNAMSIZ - 1 }, \
[FRA_PRIORITY] = { .type = NLA_U32 }, \
[FRA_FWMARK] = { .type = NLA_U32 }, \
[FRA_TUN_ID] = { .type = NLA_U64 }, \
[FRA_FWMASK] = { .type = NLA_U32 }, \
[FRA_TABLE] = { .type = NLA_U32 }, \
[FRA_SUPPRESS_PREFIXLEN] = { .type = NLA_U32 }, \
[FRA_SUPPRESS_IFGROUP] = { .type = NLA_U32 }, \
[FRA_GOTO] = { .type = NLA_U32 }, \
[FRA_L3MDEV] = { .type = NLA_U8 }, \
[FRA_UID_RANGE] = { .len = sizeof(struct fib_rule_uid_range) }, \
[FRA_PROTOCOL] = { .type = NLA_U8 }, \
[FRA_IP_PROTO] = { .type = NLA_U8 }, \
[FRA_SPORT_RANGE] = { .len = sizeof(struct fib_rule_port_range) }, \
[FRA_DPORT_RANGE] = { .len = sizeof(struct fib_rule_port_range) }
static inline void fib_rule_get(struct fib_rule *rule)
{
refcount_inc(&rule->refcnt);

View File

@ -751,8 +751,24 @@ static int rule_exists(struct fib_rules_ops *ops, struct fib_rule_hdr *frh,
}
static const struct nla_policy fib_rule_policy[FRA_MAX + 1] = {
FRA_GENERIC_POLICY,
[FRA_UNSPEC] = { .strict_start_type = FRA_DPORT_RANGE + 1 },
[FRA_IIFNAME] = { .type = NLA_STRING, .len = IFNAMSIZ - 1 },
[FRA_OIFNAME] = { .type = NLA_STRING, .len = IFNAMSIZ - 1 },
[FRA_PRIORITY] = { .type = NLA_U32 },
[FRA_FWMARK] = { .type = NLA_U32 },
[FRA_FLOW] = { .type = NLA_U32 },
[FRA_TUN_ID] = { .type = NLA_U64 },
[FRA_FWMASK] = { .type = NLA_U32 },
[FRA_TABLE] = { .type = NLA_U32 },
[FRA_SUPPRESS_PREFIXLEN] = { .type = NLA_U32 },
[FRA_SUPPRESS_IFGROUP] = { .type = NLA_U32 },
[FRA_GOTO] = { .type = NLA_U32 },
[FRA_L3MDEV] = { .type = NLA_U8 },
[FRA_UID_RANGE] = { .len = sizeof(struct fib_rule_uid_range) },
[FRA_PROTOCOL] = { .type = NLA_U8 },
[FRA_IP_PROTO] = { .type = NLA_U8 },
[FRA_SPORT_RANGE] = { .len = sizeof(struct fib_rule_port_range) },
[FRA_DPORT_RANGE] = { .len = sizeof(struct fib_rule_port_range) }
};
int fib_nl_newrule(struct sk_buff *skb, struct nlmsghdr *nlh,