summaryrefslogtreecommitdiffstats
path: root/iptables/tests/shell/testcases/ebtables/0010-change-counters_0
blob: 4f783819d10eb3d9b9091bc78844ec535ccbb7d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/sh

case "$XT_MULTI" in
*xtables-nft-multi)
	;;
*)
	echo "skip $XT_MULTI"
	exit 0
	;;
esac

set -e
set -x

check_rule() { # (pcnt, bcnt)
	$XT_MULTI ebtables -L FORWARD --Lc --Ln | \
		grep -q "^1. -o eth0 -j CONTINUE , pcnt = $1 -- bcnt = $2$"
}

$XT_MULTI ebtables -A FORWARD -o eth0 -c 10 20
check_rule 10 20

$XT_MULTI ebtables -C FORWARD 1 100 200
check_rule 100 200

$XT_MULTI ebtables -C FORWARD 101 201 -o eth0
check_rule 101 201

$XT_MULTI ebtables -C FORWARD 1 +10 -20
check_rule 111 181

$XT_MULTI ebtables -C FORWARD -10 +20 -o eth0
check_rule 101 201

$XT_MULTI ebtables -A FORWARD -o eth1 -c 111 211
$XT_MULTI ebtables -A FORWARD -o eth2 -c 121 221

$XT_MULTI ebtables -C FORWARD 2:3 +100 -200

EXPECT='1. -o eth0 -j CONTINUE , pcnt = 101 -- bcnt = 201
2. -o eth1 -j CONTINUE , pcnt = 211 -- bcnt = 11
3. -o eth2 -j CONTINUE , pcnt = 221 -- bcnt = 21'
diff -u <(echo "$EXPECT") \
	<($XT_MULTI ebtables -L FORWARD --Lc --Ln | grep -- '-o eth')