]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - net/sched/sch_sfb.c
net_sched: fix a NULL pointer deref in ipt action
[mirror_ubuntu-bionic-kernel.git] / net / sched / sch_sfb.c
index cc39e170b4aa2593177cd9364465a5bffa49839d..0678debdd856f0306448192c63e6d6c5518dc886 100644 (file)
@@ -268,6 +268,7 @@ static bool sfb_classify(struct sk_buff *skb, struct tcf_proto *fl,
                case TC_ACT_QUEUED:
                case TC_ACT_TRAP:
                        *qerr = NET_XMIT_SUCCESS | __NET_XMIT_STOLEN;
+                       /* fall through */
                case TC_ACT_SHOT:
                        return false;
                }
@@ -553,7 +554,7 @@ static int sfb_init(struct Qdisc *sch, struct nlattr *opt)
        struct sfb_sched_data *q = qdisc_priv(sch);
        int err;
 
-       err = tcf_block_get(&q->block, &q->filter_list);
+       err = tcf_block_get(&q->block, &q->filter_list, sch);
        if (err)
                return err;