1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3 4# Test IP-in-IP GRE tunnel with keys. 5# This test uses flat topology for IP tunneling tests. See ip6gre_lib.sh for 6# more details. 7 8ALL_TESTS=" 9 gre_flat 10 gre_mtu_change 11 gre_flat_remote_change 12" 13 14NUM_NETIFS=6 15source lib.sh 16source ip6gre_lib.sh 17 18setup_prepare() 19{ 20 h1=${NETIFS[p1]} 21 ol1=${NETIFS[p2]} 22 23 ul1=${NETIFS[p3]} 24 ul2=${NETIFS[p4]} 25 26 ol2=${NETIFS[p5]} 27 h2=${NETIFS[p6]} 28 29 forwarding_enable 30 vrf_prepare 31 h1_create 32 h2_create 33 sw1_flat_create $ol1 $ul1 ikey 111 okey 222 34 sw2_flat_create $ol2 $ul2 ikey 222 okey 111 35} 36 37gre_flat() 38{ 39 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey" 40 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey" 41} 42 43gre_mtu_change() 44{ 45 test_mtu_change gre 46} 47 48gre_flat_remote_change() 49{ 50 flat_remote_change 51 52 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey (new remote)" 53 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey (new remote)" 54 55 flat_remote_restore 56 57 test_traffic_ip4ip6 "GRE flat IPv4-in-IPv6 with ikey/okey (old remote)" 58 test_traffic_ip6ip6 "GRE flat IPv6-in-IPv6 with ikey/okey (old remote)" 59} 60 61cleanup() 62{ 63 pre_cleanup 64 65 sw2_flat_destroy $ol2 $ul2 66 sw1_flat_destroy $ol1 $ul1 67 h2_destroy 68 h1_destroy 69 vrf_cleanup 70 forwarding_restore 71} 72 73trap cleanup EXIT 74 75setup_prepare 76setup_wait 77tests_run 78 79exit $EXIT_STATUS 80