xref: /OK3568_Linux_fs/kernel/tools/testing/selftests/bpf/with_tunnels.sh (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#!/bin/bash
2*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0
3*4882a593Smuzhiyun#
4*4882a593Smuzhiyun# setup tunnels for flow dissection test
5*4882a593Smuzhiyun
6*4882a593Smuzhiyunreadonly SUFFIX="test_$(mktemp -u XXXX)"
7*4882a593SmuzhiyunCONFIG="remote 127.0.0.2 local 127.0.0.1 dev lo"
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunsetup() {
10*4882a593Smuzhiyun  ip link add "ipip_${SUFFIX}" type ipip ${CONFIG}
11*4882a593Smuzhiyun  ip link add "gre_${SUFFIX}" type gre ${CONFIG}
12*4882a593Smuzhiyun  ip link add "sit_${SUFFIX}" type sit ${CONFIG}
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun  echo "tunnels before test:"
15*4882a593Smuzhiyun  ip tunnel show
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun  ip link set "ipip_${SUFFIX}" up
18*4882a593Smuzhiyun  ip link set "gre_${SUFFIX}" up
19*4882a593Smuzhiyun  ip link set "sit_${SUFFIX}" up
20*4882a593Smuzhiyun}
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun
23*4882a593Smuzhiyuncleanup() {
24*4882a593Smuzhiyun  ip tunnel del "ipip_${SUFFIX}"
25*4882a593Smuzhiyun  ip tunnel del "gre_${SUFFIX}"
26*4882a593Smuzhiyun  ip tunnel del "sit_${SUFFIX}"
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun  echo "tunnels after test:"
29*4882a593Smuzhiyun  ip tunnel show
30*4882a593Smuzhiyun}
31*4882a593Smuzhiyun
32*4882a593Smuzhiyuntrap cleanup EXIT
33*4882a593Smuzhiyun
34*4882a593Smuzhiyunsetup
35*4882a593Smuzhiyun"$@"
36*4882a593Smuzhiyunexit "$?"
37