#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

# Handles creation and destruction of IP-in-IP or GRE tunnels over the given
# topology. Supports both flat and hierarchical models.
#
# Flat Model:
# Overlay and underlay share the same VRF.
# SW1 uses default VRF so tunnel has no bound dev.
# SW2 uses non-default VRF tunnel has a bound dev.
# +-------------------------+
# | H1                      |
# |               $h1 +     |
# |      192.0.2.1/28 |     |
# +-------------------|-----+
#                     |
# +-------------------|-----+
# | SW1               |     |
# |              $ol1 +     |
# |      192.0.2.2/28       |
# |                         |
# |  + g1a (gre)            |
# |    loc=192.0.2.65       |
# |    rem=192.0.2.66 --.   |
# |    tos=inherit      |   |
# |  .------------------'   |
# |  |                      |
# |  v                      |
# |  + $ul1.111 (vlan)      |
# |  | 192.0.2.129/28       |
# |   \                     |
# |    \_______             |
# |            |            |
# |VRF default + $ul1       |
# +------------|------------+
#              |
# +------------|------------+
# | SW2        + $ul2       |
# |     _______|            |
# |    /                    |
# |   /                     |
# |  + $ul2.111 (vlan)      |
# |  ^ 192.0.2.130/28       |
# |  |                      |
# |  |                      |
# |  '------------------.   |
# |  + g2a (gre)        |   |
# |    loc=192.0.2.66   |   |
# |    rem=192.0.2.65 --'   |
# |    tos=inherit          |
# |                         |
# |              $ol2 +     |
# |     192.0.2.17/28 |     |
# | VRF v$ol2         |     |
# +-------------------|-----+
#                     |
# +-------------------|-----+
# | H2                |     |
# |               $h2 +     |
# |     192.0.2.18/28       |
# +-------------------------+
#
# Hierarchical model:
# The tunnel is bound to a device in a different VRF
#
# +---------------------------+
# | H1                        |
# |               $h1 +       |
# |      192.0.2.1/28 |       |
# +-------------------|-------+
#                     |
# +-------------------|-------+
# | SW1               |       |
# | +-----------------|-----+ |
# | |            $ol1 +     | |
# | |     192.0.2.2/28      | |
# | |                       | |
# | |    + g1a (gre)        | |
# | |    rem=192.0.2.66     | |
# | |    tos=inherit        | |
# | |    loc=192.0.2.65     | |
# | |           ^           | |
# | | VRF v$ol1 |           | |
# | +-----------|-----------+ |
# |             |             |
# | +-----------|-----------+ |
# | | VRF v$ul1 |           | |
# | |           |           | |
# | |           |           | |
# | |           v           | |
# | |    dummy1 +           | |
# | |   192.0.2.65          | |
# | |   .-------'           | |
# | |   |                   | |
# | |   v                   | |
# | |   + $ul1.111 (vlan)   | |
# | |   | 192.0.2.129/28    | |
# | |   \                   | |
# | |    \_____             | |
# | |          |            | |
# | |          + $ul1       | |
# | +----------|------------+ |
# +------------|--------------+
#              |
# +------------|--------------+
# | SW2        |              |
# | +----------|------------+ |
# | |          + $ul2       | |
# | |     _____|            | |
# | |    /                  | |
# | |   /                   | |
# | |   | $ul2.111 (vlan)   | |
# | |   + 192.0.2.130/28    | |
# | |   ^                   | |
# | |   |                   | |
# | |   '-------.           | |
# | |    dummy2 +           | |
# | |    192.0.2.66         | |
# | |           ^           | |
# | |           |           | |
# | |           |           | |
# | | VRF v$ul2 |           | |
# | +-----------|-----------+ |
# |             |             |
# | +-----------|-----------+ |
# | | VRF v$ol2 |           | |
# | |           |           | |
# | |           v           | |
# | |  g2a (gre)+           | |
# | |  loc=192.0.2.66       | |
# | |  rem=192.0.2.65       | |
# | |  tos=inherit          | |
# | |                       | |
# | |            $ol2 +     | |
# | |   192.0.2.17/28 |     | |
# | +-----------------|-----+ |
# +-------------------|-------+
#                     |
# +-------------------|-------+
# | H2                |       |
# |               $h2 +       |
# |     192.0.2.18/28         |
# +---------------------------+

h1_create()
{
	simple_if_init $h1 192.0.2.1/28
	ip route add vrf v$h1 192.0.2.16/28 via 192.0.2.2
}

h1_destroy()
{
	ip route del vrf v$h1 192.0.2.16/28 via 192.0.2.2
	simple_if_fini $h1 192.0.2.1/28
}

h2_create()
{
	simple_if_init $h2 192.0.2.18/28
	ip route add vrf v$h2 192.0.2.0/28 via 192.0.2.17
}

h2_destroy()
{
	ip route del vrf v$h2 192.0.2.0/28 via 192.0.2.17
	simple_if_fini $h2 192.0.2.18/28
}

sw1_flat_create()
{
	local type=$1; shift
	local ol1=$1; shift
	local ul1=$1; shift

	ip link set dev $ol1 up
        __addr_add_del $ol1 add "192.0.2.2/28"

	ip link set dev $ul1 up
	vlan_create $ul1 111 "" 192.0.2.129/28

	tunnel_create g1a $type 192.0.2.65 192.0.2.66 tos inherit "$@"
	ip link set dev g1a up
        __addr_add_del g1a add "192.0.2.65/32"

	ip route add 192.0.2.66/32 via 192.0.2.130

	ip route add 192.0.2.16/28 nexthop dev g1a
}

sw1_flat_destroy()
{
	local ol1=$1; shift
	local ul1=$1; shift

	ip route del 192.0.2.16/28

	ip route del 192.0.2.66/32 via 192.0.2.130
	__simple_if_fini g1a 192.0.2.65/32
	tunnel_destroy g1a

	vlan_destroy $ul1 111
	__simple_if_fini $ul1
	__simple_if_fini $ol1 192.0.2.2/28
}

sw2_flat_create()
{
	local type=$1; shift
	local ol2=$1; shift
	local ul2=$1; shift

	simple_if_init $ol2 192.0.2.17/28
	__simple_if_init $ul2 v$ol2
	vlan_create $ul2 111 v$ol2 192.0.2.130/28

	tunnel_create g2a $type 192.0.2.66 192.0.2.65 tos inherit dev v$ol2 \
		"$@"
	__simple_if_init g2a v$ol2 192.0.2.66/32

	ip route add vrf v$ol2 192.0.2.65/32 via 192.0.2.129
	ip route add vrf v$ol2 192.0.2.0/28 nexthop dev g2a
}

sw2_flat_destroy()
{
	local ol2=$1; shift
	local ul2=$1; shift

	ip route del vrf v$ol2 192.0.2.0/28

	ip route del vrf v$ol2 192.0.2.65/32 via 192.0.2.129
	__simple_if_fini g2a 192.0.2.66/32
	tunnel_destroy g2a

	vlan_destroy $ul2 111
	__simple_if_fini $ul2
	simple_if_fini $ol2 192.0.2.17/28
}

sw1_hierarchical_create()
{
	local type=$1; shift
	local ol1=$1; shift
	local ul1=$1; shift

	simple_if_init $ol1 192.0.2.2/28
	simple_if_init $ul1
	ip link add name dummy1 type dummy
	__simple_if_init dummy1 v$ul1 192.0.2.65/32

	vlan_create $ul1 111 v$ul1 192.0.2.129/28
	tunnel_create g1a $type 192.0.2.65 192.0.2.66 tos inherit dev dummy1 \
		"$@"
	ip link set dev g1a master v$ol1

	ip route add vrf v$ul1 192.0.2.66/32 via 192.0.2.130
	ip route add vrf v$ol1 192.0.2.16/28 nexthop dev g1a
}

sw1_hierarchical_destroy()
{
	local ol1=$1; shift
	local ul1=$1; shift

	ip route del vrf v$ol1 192.0.2.16/28
	ip route del vrf v$ul1 192.0.2.66/32

	tunnel_destroy g1a
	vlan_destroy $ul1 111

	__simple_if_fini dummy1 192.0.2.65/32
	ip link del dev dummy1

	simple_if_fini $ul1
	simple_if_fini $ol1 192.0.2.2/28
}

sw2_hierarchical_create()
{
	local type=$1; shift
	local ol2=$1; shift
	local ul2=$1; shift

	simple_if_init $ol2 192.0.2.17/28
	simple_if_init $ul2

	ip link add name dummy2 type dummy
	__simple_if_init dummy2 v$ul2 192.0.2.66/32

	vlan_create $ul2 111 v$ul2 192.0.2.130/28
	tunnel_create g2a $type 192.0.2.66 192.0.2.65 tos inherit dev dummy2 \
		"$@"
	ip link set dev g2a master v$ol2

	ip route add vrf v$ul2 192.0.2.65/32 via 192.0.2.129
	ip route add vrf v$ol2 192.0.2.0/28 nexthop dev g2a
}

sw2_hierarchical_destroy()
{
	local ol2=$1; shift
	local ul2=$1; shift

	ip route del vrf v$ol2 192.0.2.0/28
	ip route del vrf v$ul2 192.0.2.65/32

	tunnel_destroy g2a
	vlan_destroy $ul2 111

	__simple_if_fini dummy2 192.0.2.66/32
	ip link del dev dummy2

	simple_if_fini $ul2
	simple_if_fini $ol2 192.0.2.17/28
}

topo_mtu_change()
{
	local mtu=$1

	ip link set mtu $mtu dev $h1
	ip link set mtu $mtu dev $ol1
	ip link set mtu $mtu dev g1a
	ip link set mtu $mtu dev $ul1
	ip link set mtu $mtu dev $ul1.111
	ip link set mtu $mtu dev $h2
	ip link set mtu $mtu dev $ol2
	ip link set mtu $mtu dev g2a
	ip link set mtu $mtu dev $ul2
	ip link set mtu $mtu dev $ul2.111
}

test_mtu_change()
{
	local encap=$1; shift

	RET=0

	ping_do $h1 192.0.2.18 "-s 1800	-w 3"
	check_fail $? "ping $encap should not pass with size 1800"

	RET=0

	topo_mtu_change	2000
	ping_do	$h1 192.0.2.18 "-s 1800	-w 3"
	check_err $?
	log_test "ping $encap packet size 1800 after MTU change"
}
