brintos

brintos / linux-shallow public Read only

0
0
Text · 1.4 KiB · 5b41e8b Raw
66 lines · bash
1#!/bin/bash2# SPDX-License-Identifier: GPL-2.03#4# Test that enough headroom is reserved for the first packet passing through an5# IPv6 GRE-like netdevice.6 7setup_prepare()8{9	ip link add h1 type veth peer name swp110	ip link add h3 type veth peer name swp311 12	ip link set dev h1 up13	ip address add 192.0.2.1/28 dev h114 15	ip link add dev vh3 type vrf table 2016	ip link set dev h3 master vh317	ip link set dev vh3 up18	ip link set dev h3 up19 20	ip link set dev swp3 up21	ip address add dev swp3 2001:db8:2::1/6422	ip address add dev swp3 2001:db8:2::3/6423 24	ip link set dev swp1 up25	tc qdisc add dev swp1 clsact26 27	ip link add name er6 type ip6erspan \28	   local 2001:db8:2::1 remote 2001:db8:2::2 oseq okey 12329	ip link set dev er6 up30 31	ip link add name gt6 type ip6gretap \32	   local 2001:db8:2::3 remote 2001:db8:2::433	ip link set dev gt6 up34 35	sleep 136}37 38cleanup()39{40	ip link del dev gt641	ip link del dev er642	ip link del dev swp143	ip link del dev swp344	ip link del dev vh345}46 47test_headroom()48{49	local type=$1; shift50	local tundev=$1; shift51 52	tc filter add dev swp1 ingress pref 1000 matchall skip_hw \53		action mirred egress mirror dev $tundev54	ping -I h1 192.0.2.2 -c 1 -w 2 &> /dev/null55	tc filter del dev swp1 ingress pref 100056 57	# If it doesn't panic, it passes.58	printf "TEST: %-60s  [PASS]\n" "$type headroom"59}60 61trap cleanup EXIT62 63setup_prepare64test_headroom ip6gretap gt665test_headroom ip6erspan er666