mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-02 15:18:19 +00:00
netfilter: nft_payload: use __be16 to store gre version
GRE_VERSION and GRE_VERSION0 are expressed in network byte order,
use __be16. Uncovered by sparse:
net/netfilter/nft_payload.c:112:25: warning: incorrect type in assignment (different base types)
net/netfilter/nft_payload.c:112:25: expected unsigned int [usertype] version
net/netfilter/nft_payload.c:112:25: got restricted __be16
net/netfilter/nft_payload.c:114:22: warning: restricted __be16 degrades to integer
Fixes: c247897d7c
("netfilter: nft_payload: access GRE payload via inner offset")
Reported-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
6f1a298b2e
commit
66394126bf
1 changed files with 2 additions and 1 deletions
|
@ -102,8 +102,9 @@ static int __nft_payload_inner_offset(struct nft_pktinfo *pkt)
|
|||
}
|
||||
break;
|
||||
case IPPROTO_GRE: {
|
||||
u32 offset = sizeof(struct gre_base_hdr), version;
|
||||
u32 offset = sizeof(struct gre_base_hdr);
|
||||
struct gre_base_hdr *gre, _gre;
|
||||
__be16 version;
|
||||
|
||||
gre = skb_header_pointer(pkt->skb, thoff, sizeof(_gre), &_gre);
|
||||
if (!gre)
|
||||
|
|
Loading…
Reference in a new issue