Merge tag 'kvms390-20140626' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390...
[linux-2.6-block.git] / net / ipv4 / ip_vti.c
index 13ef00f1e17b88943ddee9ae9ba52b7d0efe7832..b8960f3527f366525088ca930647c9f0c803ad74 100644 (file)
@@ -313,7 +313,13 @@ vti_tunnel_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
                        return -EINVAL;
        }
 
-       p.i_flags |= VTI_ISVTI;
+       if (!(p.i_flags & GRE_KEY))
+               p.i_key = 0;
+       if (!(p.o_flags & GRE_KEY))
+               p.o_key = 0;
+
+       p.i_flags = VTI_ISVTI;
+
        err = ip_tunnel_ioctl(dev, &p, cmd);
        if (err)
                return err;