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