1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3 4function pktgen { 5 ../pktgen/pktgen_bench_xmit_mode_netif_receive.sh -i $IFC -s 64 \ 6 -m 90:e2:ba:ff:ff:ff -d 192.168.0.1 -t 4 7 local dropped=`tc -s qdisc show dev $IFC | tail -3 | awk '/drop/{print $7}'` 8 if [ "$dropped" == "0," ]; then 9 echo "FAIL" 10 else 11 echo "Successfully filtered " $dropped " packets" 12 fi 13} 14 15function test { 16 echo -n "Loading bpf program '$2'... " 17 tc qdisc add dev $IFC clsact 18 tc filter add dev $IFC ingress bpf da obj $1 sec $2 19 local status=$? 20 if [ $status -ne 0 ]; then 21 echo "FAIL" 22 else 23 echo "ok" 24 pktgen 25 fi 26 tc qdisc del dev $IFC clsact 27} 28 29IFC=test_veth 30 31ip link add name $IFC type veth peer name pair_$IFC 32ip link set $IFC up 33ip link set pair_$IFC up 34 35test ./parse_simple.o simple 36test ./parse_varlen.o varlen 37test ./parse_ldabs.o ldabs 38ip link del dev $IFC 39