|
Packit |
7b22a4 |
#!/bin/bash
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
set -e
|
|
Packit |
7b22a4 |
set -x
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
# there is no legacy backend to test
|
|
Packit Service |
635b90 |
[[ $XT_MULTI == */xtables-nft-multi ]] || { echo "skip $XT_MULTI"; exit 0; }
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
$XT_MULTI arptables -N foo
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
# check verbose output matches expectations
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE1='-i eth23 -j ACCEPT'
|
|
Packit |
7b22a4 |
VOUT1='-j ACCEPT -i eth23 -o *'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE2='-i eth23'
|
|
Packit |
7b22a4 |
VOUT2='-i eth23 -o *'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE3='-i eth23 -j MARK --set-mark 42'
|
|
Packit |
7b22a4 |
VOUT3='-j MARK -i eth23 -o * --set-mark 42'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE4='-o eth23 -j CLASSIFY --set-class 23:42'
|
|
Packit |
7b22a4 |
VOUT4='-j CLASSIFY -i * -o eth23 --set-class 23:42'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE5='-o eth23 -j foo'
|
|
Packit |
7b22a4 |
VOUT5='-j foo -i * -o eth23'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
RULE6='-o eth23 -j mangle --mangle-ip-s 10.0.0.1'
|
|
Packit |
7b22a4 |
VOUT6='-j mangle -i * -o eth23 --mangle-ip-s 10.0.0.1'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT1") <($XT_MULTI arptables -v -A INPUT $RULE1)
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT2") <($XT_MULTI arptables -v -A INPUT $RULE2)
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT3") <($XT_MULTI arptables -v -A INPUT $RULE3)
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT4") <($XT_MULTI arptables -v -A OUTPUT $RULE4)
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT5") <($XT_MULTI arptables -v -A OUTPUT $RULE5)
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$VOUT6") <($XT_MULTI arptables -v -A foo $RULE6)
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
EXPECT='Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
|
|
Packit |
7b22a4 |
-j ACCEPT -i eth23 -o * , pcnt=0 -- bcnt=0
|
|
Packit |
7b22a4 |
-i eth23 -o * , pcnt=0 -- bcnt=0
|
|
Packit |
7b22a4 |
-j MARK -i eth23 -o * --set-mark 42 , pcnt=0 -- bcnt=0
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
|
|
Packit |
7b22a4 |
-j CLASSIFY -i * -o eth23 --set-class 23:42 , pcnt=0 -- bcnt=0
|
|
Packit |
7b22a4 |
-j foo -i * -o eth23 , pcnt=0 -- bcnt=0
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
Chain foo (1 references)
|
|
Packit |
7b22a4 |
-j mangle -i * -o eth23 --mangle-ip-s 10.0.0.1 , pcnt=0 -- bcnt=0'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$EXPECT") <($XT_MULTI arptables -v -n -L)
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
EXPECT='*filter
|
|
Packit |
7b22a4 |
:INPUT ACCEPT
|
|
Packit |
7b22a4 |
:OUTPUT ACCEPT
|
|
Packit |
7b22a4 |
:foo -
|
|
Packit |
7b22a4 |
-A INPUT -j ACCEPT -i eth23
|
|
Packit |
7b22a4 |
-A INPUT -i eth23
|
|
Packit |
7b22a4 |
-A INPUT -j MARK -i eth23 --set-mark 42
|
|
Packit |
7b22a4 |
-A OUTPUT -j CLASSIFY -o eth23 --set-class 23:42
|
|
Packit |
7b22a4 |
-A OUTPUT -j foo -o eth23
|
|
Packit |
7b22a4 |
-A foo -j mangle -o eth23 --mangle-ip-s 10.0.0.1'
|
|
Packit |
7b22a4 |
|
|
Packit |
7b22a4 |
diff -u -Z <(echo -e "$EXPECT") <($XT_MULTI arptables-save | grep -v '^#')
|