Message ID | 20230612174212.3173660-2-cascardo@canonical.com |
---|---|
State | New |
Headers | show |
Series | LP: #2023577 | expand |
diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c index 007fbc199352..63f53aa8460a 100644 --- a/net/sched/cls_flower.c +++ b/net/sched/cls_flower.c @@ -870,6 +870,9 @@ static int fl_set_geneve_opt(const struct nlattr *nla, struct fl_flow_key *key, if (option_len > sizeof(struct geneve_opt)) data_len = option_len - sizeof(struct geneve_opt); + if (key->enc_opts.len > FLOW_DIS_TUN_OPTS_MAX - 4) + return -ERANGE; + opt = (struct geneve_opt *)&key->enc_opts.data[key->enc_opts.len]; memset(opt, 0xff, option_len); opt->length = data_len / 4;