aboutsummaryrefslogtreecommitdiff
path: root/net/ipv4/fib_rules.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2018-04-23 10:21:25 -0400
committerDavid S. Miller <davem@davemloft.net>2018-04-23 10:21:25 -0400
commitec8c360a6ecdea595aff957c6a720e059275f1f4 (patch)
tree27d935b093ea81e976b6b14778d462c2bcf87d32 /net/ipv4/fib_rules.c
parenta56e6bcd34b55182159d16fcf6d6105578dfa192 (diff)
parentb16fb418b1bf2a9f14d5d2a4fe29bde1f5550b37 (diff)
Merge branch 'fib-rules-extack-support'
Roopa Prabhu says: ==================== fib rules extack support First patch refactors code to move fib rule netlink handling into a common function. This became obvious when adding duplicate extack msgs in add and del paths. Second patch adds extack msgs. v2 - Dropped the ip route get support and selftests from the series to look at the input path some more (as pointed out by ido). Will come back to that next week when i have some time. resending just the extack part for now. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/fib_rules.c')
-rw-r--r--net/ipv4/fib_rules.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/ipv4/fib_rules.c b/net/ipv4/fib_rules.c
index 737d11bc8838..f8eb78d042a4 100644
--- a/net/ipv4/fib_rules.c
+++ b/net/ipv4/fib_rules.c
@@ -213,14 +213,17 @@ static const struct nla_policy fib4_rule_policy[FRA_MAX+1] = {
static int fib4_rule_configure(struct fib_rule *rule, struct sk_buff *skb,
struct fib_rule_hdr *frh,
- struct nlattr **tb)
+ struct nlattr **tb,
+ struct netlink_ext_ack *extack)
{
struct net *net = sock_net(skb->sk);
int err = -EINVAL;
struct fib4_rule *rule4 = (struct fib4_rule *) rule;
- if (frh->tos & ~IPTOS_TOS_MASK)
+ if (frh->tos & ~IPTOS_TOS_MASK) {
+ NL_SET_ERR_MSG(extack, "Invalid tos");
goto errout;
+ }
/* split local/main if they are not already split */
err = fib_unmerge(net);