Subject: Re: [PATCH] vti: remove GRE_KEY flag for vti tunnel

From: Christophe Gouault <[email-masked]>
Date: Wed, 04 Dec 2013 13:46:40 +0100

Hello Hangbin,

vti interfaces precisely need an o_key to be configured (it must be set
to the mark of ipsec policies attached to this interface). Consequently,
this flag must not be removed.

Best Regards,
Christophe

On 12/04/2013 09:48 AM, Hangbin Liu wrote:
> vti tunnel use IPPROTO_IPIP instead of IPPROTO_GRE, and keys are not allowed
> with ipip tunnel. So there is no reason to set GRE_KEY flag for vti.
>
> Signed-off-by: Hangbin Liu <[email-masked]>
> ---
>   net/ipv4/ip_vti.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/net/ipv4/ip_vti.c b/net/ipv4/ip_vti.c
> index 52b802a..58c4e6a 100644
> --- a/net/ipv4/ip_vti.c
> +++ b/net/ipv4/ip_vti.c
> @@ -185,10 +185,8 @@ vti_tunnel_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
>   	if (err)
>   		return err;
>
> -	if (cmd != SIOCDELTUNNEL) {
> -		p.i_flags |= GRE_KEY | VTI_ISVTI;
> -		p.o_flags |= GRE_KEY;
> -	}
> +	if (cmd != SIOCDELTUNNEL)
> +		p.i_flags |= VTI_ISVTI;
>
>   	if (copy_to_user(ifr->ifr_ifru.ifru_data, &p, sizeof(p)))
>   		return -EFAULT;
>