aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Ian King <colin.king@canonical.com>2019-05-05 22:50:19 +0100
committerDavid S. Miller <davem@davemloft.net>2019-05-07 12:15:33 -0700
commite4acf4274169fb6106d4ac854c87071b9764a00d (patch)
tree15be8d9d00472467adc4850bc77c49a457405d84
parentnet: mvpp2: cls: fix less than zero check on a u32 variable (diff)
downloadlinux-dev-e4acf4274169fb6106d4ac854c87071b9764a00d.tar.xz
linux-dev-e4acf4274169fb6106d4ac854c87071b9764a00d.zip
taprio: add null check on sched_nest to avoid potential null pointer dereference
The call to nla_nest_start_noflag can return a null pointer and currently this is not being checked and this can lead to a null pointer dereference when the null pointer sched_nest is passed to function nla_nest_end. Fix this by adding in a null pointer check. Addresses-Coverity: ("Dereference null return value") Fixes: a3d43c0d56f1 ("taprio: Add support adding an admin schedule") Signed-off-by: Colin Ian King <colin.king@canonical.com> Acked-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sched/sch_taprio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sched/sch_taprio.c b/net/sched/sch_taprio.c
index 539677120b9f..9ecfb8f5902a 100644
--- a/net/sched/sch_taprio.c
+++ b/net/sched/sch_taprio.c
@@ -1087,6 +1087,8 @@ static int taprio_dump(struct Qdisc *sch, struct sk_buff *skb)
goto done;
sched_nest = nla_nest_start_noflag(skb, TCA_TAPRIO_ATTR_ADMIN_SCHED);
+ if (!sched_nest)
+ goto options_error;
if (dump_schedule(skb, admin))
goto admin_error;