ip_gre: Make o_seqno start from 0 in native mode
authorPeilin Ye <peilin.ye@bytedance.com>
Thu, 21 Apr 2022 22:07:57 +0000 (15:07 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 May 2022 10:14:55 +0000 (12:14 +0200)
commit1bdd46a8dce18ecdeead95af4f379dc9efa256b7
treee54ad87fdecd0532eeaeed86bc7b3d09ea714b40
parentbc03249a5d2dab1e9def59c9f0be7053998e71d7
ip_gre: Make o_seqno start from 0 in native mode

[ Upstream commit ff827beb706ed719c766acf36449801ded0c17fc ]

For GRE and GRETAP devices, currently o_seqno starts from 1 in native
mode.  According to RFC 2890 2.2., "The first datagram is sent with a
sequence number of 0."  Fix it.

It is worth mentioning that o_seqno already starts from 0 in collect_md
mode, see gre_fb_xmit(), where tunnel->o_seqno is passed to
gre_build_header() before getting incremented.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Peilin Ye <peilin.ye@bytedance.com>
Acked-by: William Tu <u9012063@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv4/ip_gre.c