]> git.baikalelectronics.ru Git - kernel.git/commit
gre: fix handling of key 0
authorstephen hemminger <shemminger@vyatta.com>
Mon, 24 Sep 2012 18:12:23 +0000 (18:12 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 27 Sep 2012 22:12:37 +0000 (18:12 -0400)
commit199c71b5dd079836908fde0c7665a55565822866
tree80897cfb2f5537bdfbda57a736a91a04c85a1ceb
parent6d98feab3d592aae6a61184a4307ce3206999dce
gre: fix handling of key 0

GRE driver incorrectly uses zero as a flag value. Zero is a perfectly
valid value for key, and the tunnel should match packets with no key only
with tunnels created without key, and vice versa.

This is a slightly visible  change since previously it might be possible to
construct a working tunnel that sent key 0 and received only because
of the key wildcard of zero.  I.e the sender sent key of zero, but tunnel
was defined without key.

Note: using gre key 0 requires iproute2 utilities v3.2 or later.
The original utility code was broken as well.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ip_gre.c