diff options
author | Xin Long <lucien.xin@gmail.com> | 2020-12-07 10:55:40 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-12-07 11:32:11 +0300 |
commit | 10c678bd0a035ac2c64a9b26b222f20556227a53 (patch) | |
tree | 455c2e9f949652022a931100901157104394e64e /fs/pipe.c | |
parent | 61f54de2e9194f01874d5eda12037b0978e77519 (diff) | |
download | linux-10c678bd0a035ac2c64a9b26b222f20556227a53.tar.xz |
udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments
Guillaume noticed that: for segments udp_queue_rcv_one_skb() returns the
proto, and it should pass "ret" unmodified to ip_protocol_deliver_rcu().
Otherwize, with a negtive value passed, it will underflow inet_protos.
This can be reproduced with IPIP FOU:
# ip fou add port 5555 ipproto 4
# ethtool -K eth1 rx-gro-list on
Fixes: cf329aa42b66 ("udp: cope with UDP GRO packet misdirection")
Reported-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'fs/pipe.c')
0 files changed, 0 insertions, 0 deletions