mirror of
https://github.com/armbian/linux.git
synced 2026-01-06 10:13:00 -08:00
vti: don't allow to add the same tunnel twice
[ Upstream commit8d89dcdf80] Before the patch, it was possible to add two times the same tunnel: ip l a vti1 type vti remote 10.16.0.121 local 10.16.0.249 key 41 ip l a vti2 type vti remote 10.16.0.121 local 10.16.0.249 key 41 It was possible, because ip_tunnel_newlink() calls ip_tunnel_find() with the argument dev->type, which was set only later (when calling ndo_init handler in register_netdevice()). Let's set this type in the setup handler, which is called before newlink handler. Introduced by commitb9959fd3b0("vti: switch to new ip tunnel code"). CC: Cong Wang <amwang@redhat.com> CC: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
5ef58c401b
commit
4008a994dd
@@ -579,9 +579,9 @@ static void vti_dev_free(struct net_device *dev)
|
||||
static void vti_tunnel_setup(struct net_device *dev)
|
||||
{
|
||||
dev->netdev_ops = &vti_netdev_ops;
|
||||
dev->type = ARPHRD_TUNNEL;
|
||||
dev->destructor = vti_dev_free;
|
||||
|
||||
dev->type = ARPHRD_TUNNEL;
|
||||
dev->hard_header_len = LL_MAX_HEADER + sizeof(struct iphdr);
|
||||
dev->mtu = ETH_DATA_LEN;
|
||||
dev->flags = IFF_NOARP;
|
||||
|
||||
Reference in New Issue
Block a user