ife: error out when nla attributes are empty [Linux 4.9.189]

This Linux kernel change "ife: error out when nla attributes are empty" is included in the Linux 4.9.189 release. This change is authored by Cong Wang <xiyou.wangcong [at] gmail.com> on Mon Jul 22 21:43:00 2019 -0700. The commit for this change in Linux stable tree is 264e020 (patch) which is from upstream commit c8ec463. The same Linux upstream change may have been applied to various maintained Linux releases and you can find all Linux releases containing changes from upstream c8ec463.

ife: error out when nla attributes are empty

[ Upstream commit c8ec4632c6ac9cda0e8c3d51aa41eeab66585bd5 ]

act_ife at least requires TCA_IFE_PARMS, so we have to bail out
when there is no attribute passed in.

Reported-by: syzbot+fbb5b288c9cb6a2eeac4@syzkaller.appspotmail.com
Fixes: ef6980b6becb ("introduce IFE action")
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

There are 3 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 net/sched/act_ife.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/net/sched/act_ife.c b/net/sched/act_ife.c
index d2932dc..36e4dcd 100644
--- a/net/sched/act_ife.c
+++ b/net/sched/act_ife.c
@@ -477,6 +477,9 @@ static int tcf_ife_init(struct net *net, struct nlattr *nla,
    int ret = 0;
    int err;

+   if (!nla)
+       return -EINVAL;
+
    err = nla_parse_nested(tb, TCA_IFE_MAX, nla, ife_policy);
    if (err < 0)
        return err;

Leave a Reply

Your email address will not be published. Required fields are marked *