tc: fix compiler warnings in ip6 pedit

Gcc-10 complains about referencing a zero size array.
This occurs because the array of keys is actually in the following
structure which is part of the overall selector.

The original code was safe, but better to just use the key
array directly.

Fixes: 2d9a8dc439 ("tc: p_ip6: Support pedit of IPv6 dsfield")
Cc: petrm@mellanox.com
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
Stephen Hemminger 2020-11-29 09:40:49 -08:00
parent 5bdc4e9151
commit 2319db9052
1 changed files with 1 additions and 1 deletions

View File

@ -82,7 +82,7 @@ parse_ip6(int *argc_p, char ***argv_p,
/* Shift the field by 4 bits on success. */
if (!res) {
int nkeys = sel->sel.nkeys;
struct tc_pedit_key *key = &sel->sel.keys[nkeys - 1];
struct tc_pedit_key *key = &sel->keys[nkeys - 1];
key->mask = htonl(ntohl(key->mask) << 4 | 0xf);
key->val = htonl(ntohl(key->val) << 4);