diff options
author | Cedric Berger <cedric@cvs.openbsd.org> | 2003-02-25 09:06:33 +0000 |
---|---|---|
committer | Cedric Berger <cedric@cvs.openbsd.org> | 2003-02-25 09:06:33 +0000 |
commit | 1629f56a1ca9bc121a6ec419395fffcbc62f43b3 (patch) | |
tree | 4dfb06007e3f8d907544d6d4522b78c5dd708586 /regress/sbin/pfctl | |
parent | 64362950ff97982f4cd8a9ee57620d76038f3b67 (diff) |
Add regress tests for the 'table <foo> file "filename"' syntax.
Syntax checks only in pfsimple2, real tests in pfr13.
Diffstat (limited to 'regress/sbin/pfctl')
-rw-r--r-- | regress/sbin/pfctl/Makefile | 6 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfr.addrs1 | 16 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfr.addrs2 | 32 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfr.exec | 5 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfr13.in | 11 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfr13.ok | 392 | ||||
-rw-r--r-- | regress/sbin/pfctl/pfsimple2.in | 7 |
7 files changed, 464 insertions, 5 deletions
diff --git a/regress/sbin/pfctl/Makefile b/regress/sbin/pfctl/Makefile index 7c5b4717c9f..69c55f3f6db 100644 --- a/regress/sbin/pfctl/Makefile +++ b/regress/sbin/pfctl/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.95 2003/02/24 20:56:56 henning Exp $ +# $OpenBSD: Makefile,v 1.96 2003/02/25 09:06:32 cedric Exp $ # TARGETS # pf: feed pfNN.in through pfctl and check wether the output matches pfNN.ok @@ -14,7 +14,7 @@ PFTESTS=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 PFTESTS+=28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 PFTESTS+=51 52 53 54 55 56 57 PFFAIL=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 -PFSIMPLE=1 +PFSIMPLE=1 2 PFSETUP=1 2 3 PFLOAD=1 2 3 4 5 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 23 24 25 26 27 28 29 PFLOAD+=30 31 32 34 36 38 39 40 44 46 47 49 54 56 @@ -24,7 +24,7 @@ PFLOAD+=30 31 32 34 36 38 39 40 44 46 47 49 54 56 # PFLOAD+=48 # only testing parser, load test would be useless # PFLOAD+=6 22 41 50 52 53 55 57 -PFTABLE=1 2 3 4 5 6 7 8 9 10 11 12 +PFTABLE=1 2 3 4 5 6 7 8 9 10 11 12 13 PFOPT=1 2 3 4 5 .for n in ${PFFAIL} diff --git a/regress/sbin/pfctl/pfr.addrs1 b/regress/sbin/pfctl/pfr.addrs1 new file mode 100644 index 00000000000..f2ed9426768 --- /dev/null +++ b/regress/sbin/pfctl/pfr.addrs1 @@ -0,0 +1,16 @@ +# address file regress tests + +# some unroutables +127.0.0.1 192.168/16 172.16/12 10/8 + +# some IPv6 addresses +::5 fe80::/16 2000::1 + +# interfaces +lo0 lo0/24 lo0:broadcast lo0:network + +# name resolution +localhost + +1.1.1.1 # comment may appear... +2.2.2.2 # after addresses too. diff --git a/regress/sbin/pfctl/pfr.addrs2 b/regress/sbin/pfctl/pfr.addrs2 new file mode 100644 index 00000000000..ea529cdfaad --- /dev/null +++ b/regress/sbin/pfctl/pfr.addrs2 @@ -0,0 +1,32 @@ +# a bunch of addresses (300) + +1.1.0.0 1.1.0.1 1.1.0.2 1.1.0.3 1.1.0.4 1.1.0.5 1.1.0.6 1.1.0.7 1.1.0.8 1.1.0.9 +1.1.1.0 1.1.1.1 1.1.1.2 1.1.1.3 1.1.1.4 1.1.1.5 1.1.1.6 1.1.1.7 1.1.1.8 1.1.1.9 +1.1.2.0 1.1.2.1 1.1.2.2 1.1.2.3 1.1.2.4 1.1.2.5 1.1.2.6 1.1.2.7 1.1.2.8 1.1.2.9 +1.1.3.0 1.1.3.1 1.1.3.2 1.1.3.3 1.1.3.4 1.1.3.5 1.1.3.6 1.1.3.7 1.1.3.8 1.1.3.9 +1.1.4.0 1.1.4.1 1.1.4.2 1.1.4.3 1.1.4.4 1.1.4.5 1.1.4.6 1.1.4.7 1.1.4.8 1.1.4.9 +1.1.5.0 1.1.5.1 1.1.5.2 1.1.5.3 1.1.5.4 1.1.5.5 1.1.5.6 1.1.5.7 1.1.5.8 1.1.5.9 +1.1.6.0 1.1.6.1 1.1.6.2 1.1.6.3 1.1.6.4 1.1.6.5 1.1.6.6 1.1.6.7 1.1.6.8 1.1.6.9 +1.1.7.0 1.1.7.1 1.1.7.2 1.1.7.3 1.1.7.4 1.1.7.5 1.1.7.6 1.1.7.7 1.1.7.8 1.1.7.9 +1.1.8.0 1.1.8.1 1.1.8.2 1.1.8.3 1.1.8.4 1.1.8.5 1.1.8.6 1.1.8.7 1.1.8.8 1.1.8.9 +1.1.9.0 1.1.9.1 1.1.9.2 1.1.9.3 1.1.9.4 1.1.9.5 1.1.9.6 1.1.9.7 1.1.9.8 1.1.9.9 +1.2.0.0 1.2.0.1 1.2.0.2 1.2.0.3 1.2.0.4 1.2.0.5 1.2.0.6 1.2.0.7 1.2.0.8 1.2.0.9 +1.2.1.0 1.2.1.1 1.2.1.2 1.2.1.3 1.2.1.4 1.2.1.5 1.2.1.6 1.2.1.7 1.2.1.8 1.2.1.9 +1.2.2.0 1.2.2.1 1.2.2.2 1.2.2.3 1.2.2.4 1.2.2.5 1.2.2.6 1.2.2.7 1.2.2.8 1.2.2.9 +1.2.3.0 1.2.3.1 1.2.3.2 1.2.3.3 1.2.3.4 1.2.3.5 1.2.3.6 1.2.3.7 1.2.3.8 1.2.3.9 +1.2.4.0 1.2.4.1 1.2.4.2 1.2.4.3 1.2.4.4 1.2.4.5 1.2.4.6 1.2.4.7 1.2.4.8 1.2.4.9 +1.2.5.0 1.2.5.1 1.2.5.2 1.2.5.3 1.2.5.4 1.2.5.5 1.2.5.6 1.2.5.7 1.2.5.8 1.2.5.9 +1.2.6.0 1.2.6.1 1.2.6.2 1.2.6.3 1.2.6.4 1.2.6.5 1.2.6.6 1.2.6.7 1.2.6.8 1.2.6.9 +1.2.7.0 1.2.7.1 1.2.7.2 1.2.7.3 1.2.7.4 1.2.7.5 1.2.7.6 1.2.7.7 1.2.7.8 1.2.7.9 +1.2.8.0 1.2.8.1 1.2.8.2 1.2.8.3 1.2.8.4 1.2.8.5 1.2.8.6 1.2.8.7 1.2.8.8 1.2.8.9 +1.2.9.0 1.2.9.1 1.2.9.2 1.2.9.3 1.2.9.4 1.2.9.5 1.2.9.6 1.2.9.7 1.2.9.8 1.2.9.9 +1.3.0.0 1.3.0.1 1.3.0.2 1.3.0.3 1.3.0.4 1.3.0.5 1.3.0.6 1.3.0.7 1.3.0.8 1.3.0.9 +1.3.1.0 1.3.1.1 1.3.1.2 1.3.1.3 1.3.1.4 1.3.1.5 1.3.1.6 1.3.1.7 1.3.1.8 1.3.1.9 +1.3.2.0 1.3.2.1 1.3.2.2 1.3.2.3 1.3.2.4 1.3.2.5 1.3.2.6 1.3.2.7 1.3.2.8 1.3.2.9 +1.3.3.0 1.3.3.1 1.3.3.2 1.3.3.3 1.3.3.4 1.3.3.5 1.3.3.6 1.3.3.7 1.3.3.8 1.3.3.9 +1.3.4.0 1.3.4.1 1.3.4.2 1.3.4.3 1.3.4.4 1.3.4.5 1.3.4.6 1.3.4.7 1.3.4.8 1.3.4.9 +1.3.5.0 1.3.5.1 1.3.5.2 1.3.5.3 1.3.5.4 1.3.5.5 1.3.5.6 1.3.5.7 1.3.5.8 1.3.5.9 +1.3.6.0 1.3.6.1 1.3.6.2 1.3.6.3 1.3.6.4 1.3.6.5 1.3.6.6 1.3.6.7 1.3.6.8 1.3.6.9 +1.3.7.0 1.3.7.1 1.3.7.2 1.3.7.3 1.3.7.4 1.3.7.5 1.3.7.6 1.3.7.7 1.3.7.8 1.3.7.9 +1.3.8.0 1.3.8.1 1.3.8.2 1.3.8.3 1.3.8.4 1.3.8.5 1.3.8.6 1.3.8.7 1.3.8.8 1.3.8.9 +1.3.9.0 1.3.9.1 1.3.9.2 1.3.9.3 1.3.9.4 1.3.9.5 1.3.9.6 1.3.9.7 1.3.9.8 1.3.9.9 diff --git a/regress/sbin/pfctl/pfr.exec b/regress/sbin/pfctl/pfr.exec index 43e7b448c54..a506cf5aa33 100644 --- a/regress/sbin/pfctl/pfr.exec +++ b/regress/sbin/pfctl/pfr.exec @@ -1,4 +1,5 @@ #!/bin/ksh +D=`dirname $1` for TABLE in `pfctl -sT | grep regress`; do pfctl -t $TABLE -qTk 2>&1 || exit 1 done @@ -48,7 +49,7 @@ for LINE in `sed -e "s/ /_/g" $1`; do (pfctl -vsT | grep regress) 2>&1 ;; load) - echo $ARGS | pfctl -Tl -f- || exit 1 + echo $ARGS | sed "s,DIR,$D,g" | pfctl -Tl -f- || exit 1 ;; rule) echo $ARGS | pfctl -a regress:regress -f- 2>&1 || exit 1 @@ -60,7 +61,7 @@ for LINE in `sed -e "s/ /_/g" $1`; do else case $CMD in load) - echo $ARGS | pfctl -Tl -f- && exit 1 + echo ARGS | sed "s,DIR,$D,g" | pfctl -Tl -f- && exit 1 ;; rule) echo $ARGS | pfctl -a regress:regress -f- 2>&1 && exit 1 ;; diff --git a/regress/sbin/pfctl/pfr13.in b/regress/sbin/pfctl/pfr13.in new file mode 100644 index 00000000000..71093cf8a30 --- /dev/null +++ b/regress/sbin/pfctl/pfr13.in @@ -0,0 +1,11 @@ +# load tables from file +pass load table <regress> persist file "DIR/pfr.addrs1" +pass show +pass load table <regress> persist file "DIR/pfr.addrs1" file "DIR/pfr.addrs2" +pass show +pass load table <regress> persist { !127.0.0.1 } file "DIR/pfr.addrs1" +pass show +pass load table <regress> persist file "DIR/pfr.addrs1" { 3.3.3.3 } +pass show +pass load table <regress> persist { 11 } file "DIR/pfr.addrs1" { !12 } +pass show diff --git a/regress/sbin/pfctl/pfr13.ok b/regress/sbin/pfctl/pfr13.ok new file mode 100644 index 00000000000..1b815d6c7ae --- /dev/null +++ b/regress/sbin/pfctl/pfr13.ok @@ -0,0 +1,392 @@ +# create +# pass load table <regress> persist file "DIR/pfr.addrs1" +# pass show + 1.1.1.1 + 10.0.0.0/8 + 127.0.0.0/24 + 127.0.0.0/8 + 127.0.0.1 + 172.16.0.0/12 + 192.168.0.0/16 + 2.2.2.2 + 2000::1 + ::/24 + ::1 + ::5 + fe80::/16 + fe80::/24 + fe80::1 +# pass load table <regress> persist file "DIR/pfr.addrs1" file "DIR/pfr.addrs2" +# pass show + 1.1.0.0 + 1.1.0.1 + 1.1.0.2 + 1.1.0.3 + 1.1.0.4 + 1.1.0.5 + 1.1.0.6 + 1.1.0.7 + 1.1.0.8 + 1.1.0.9 + 1.1.1.0 + 1.1.1.1 + 1.1.1.2 + 1.1.1.3 + 1.1.1.4 + 1.1.1.5 + 1.1.1.6 + 1.1.1.7 + 1.1.1.8 + 1.1.1.9 + 1.1.2.0 + 1.1.2.1 + 1.1.2.2 + 1.1.2.3 + 1.1.2.4 + 1.1.2.5 + 1.1.2.6 + 1.1.2.7 + 1.1.2.8 + 1.1.2.9 + 1.1.3.0 + 1.1.3.1 + 1.1.3.2 + 1.1.3.3 + 1.1.3.4 + 1.1.3.5 + 1.1.3.6 + 1.1.3.7 + 1.1.3.8 + 1.1.3.9 + 1.1.4.0 + 1.1.4.1 + 1.1.4.2 + 1.1.4.3 + 1.1.4.4 + 1.1.4.5 + 1.1.4.6 + 1.1.4.7 + 1.1.4.8 + 1.1.4.9 + 1.1.5.0 + 1.1.5.1 + 1.1.5.2 + 1.1.5.3 + 1.1.5.4 + 1.1.5.5 + 1.1.5.6 + 1.1.5.7 + 1.1.5.8 + 1.1.5.9 + 1.1.6.0 + 1.1.6.1 + 1.1.6.2 + 1.1.6.3 + 1.1.6.4 + 1.1.6.5 + 1.1.6.6 + 1.1.6.7 + 1.1.6.8 + 1.1.6.9 + 1.1.7.0 + 1.1.7.1 + 1.1.7.2 + 1.1.7.3 + 1.1.7.4 + 1.1.7.5 + 1.1.7.6 + 1.1.7.7 + 1.1.7.8 + 1.1.7.9 + 1.1.8.0 + 1.1.8.1 + 1.1.8.2 + 1.1.8.3 + 1.1.8.4 + 1.1.8.5 + 1.1.8.6 + 1.1.8.7 + 1.1.8.8 + 1.1.8.9 + 1.1.9.0 + 1.1.9.1 + 1.1.9.2 + 1.1.9.3 + 1.1.9.4 + 1.1.9.5 + 1.1.9.6 + 1.1.9.7 + 1.1.9.8 + 1.1.9.9 + 1.2.0.0 + 1.2.0.1 + 1.2.0.2 + 1.2.0.3 + 1.2.0.4 + 1.2.0.5 + 1.2.0.6 + 1.2.0.7 + 1.2.0.8 + 1.2.0.9 + 1.2.1.0 + 1.2.1.1 + 1.2.1.2 + 1.2.1.3 + 1.2.1.4 + 1.2.1.5 + 1.2.1.6 + 1.2.1.7 + 1.2.1.8 + 1.2.1.9 + 1.2.2.0 + 1.2.2.1 + 1.2.2.2 + 1.2.2.3 + 1.2.2.4 + 1.2.2.5 + 1.2.2.6 + 1.2.2.7 + 1.2.2.8 + 1.2.2.9 + 1.2.3.0 + 1.2.3.1 + 1.2.3.2 + 1.2.3.3 + 1.2.3.4 + 1.2.3.5 + 1.2.3.6 + 1.2.3.7 + 1.2.3.8 + 1.2.3.9 + 1.2.4.0 + 1.2.4.1 + 1.2.4.2 + 1.2.4.3 + 1.2.4.4 + 1.2.4.5 + 1.2.4.6 + 1.2.4.7 + 1.2.4.8 + 1.2.4.9 + 1.2.5.0 + 1.2.5.1 + 1.2.5.2 + 1.2.5.3 + 1.2.5.4 + 1.2.5.5 + 1.2.5.6 + 1.2.5.7 + 1.2.5.8 + 1.2.5.9 + 1.2.6.0 + 1.2.6.1 + 1.2.6.2 + 1.2.6.3 + 1.2.6.4 + 1.2.6.5 + 1.2.6.6 + 1.2.6.7 + 1.2.6.8 + 1.2.6.9 + 1.2.7.0 + 1.2.7.1 + 1.2.7.2 + 1.2.7.3 + 1.2.7.4 + 1.2.7.5 + 1.2.7.6 + 1.2.7.7 + 1.2.7.8 + 1.2.7.9 + 1.2.8.0 + 1.2.8.1 + 1.2.8.2 + 1.2.8.3 + 1.2.8.4 + 1.2.8.5 + 1.2.8.6 + 1.2.8.7 + 1.2.8.8 + 1.2.8.9 + 1.2.9.0 + 1.2.9.1 + 1.2.9.2 + 1.2.9.3 + 1.2.9.4 + 1.2.9.5 + 1.2.9.6 + 1.2.9.7 + 1.2.9.8 + 1.2.9.9 + 1.3.0.0 + 1.3.0.1 + 1.3.0.2 + 1.3.0.3 + 1.3.0.4 + 1.3.0.5 + 1.3.0.6 + 1.3.0.7 + 1.3.0.8 + 1.3.0.9 + 1.3.1.0 + 1.3.1.1 + 1.3.1.2 + 1.3.1.3 + 1.3.1.4 + 1.3.1.5 + 1.3.1.6 + 1.3.1.7 + 1.3.1.8 + 1.3.1.9 + 1.3.2.0 + 1.3.2.1 + 1.3.2.2 + 1.3.2.3 + 1.3.2.4 + 1.3.2.5 + 1.3.2.6 + 1.3.2.7 + 1.3.2.8 + 1.3.2.9 + 1.3.3.0 + 1.3.3.1 + 1.3.3.2 + 1.3.3.3 + 1.3.3.4 + 1.3.3.5 + 1.3.3.6 + 1.3.3.7 + 1.3.3.8 + 1.3.3.9 + 1.3.4.0 + 1.3.4.1 + 1.3.4.2 + 1.3.4.3 + 1.3.4.4 + 1.3.4.5 + 1.3.4.6 + 1.3.4.7 + 1.3.4.8 + 1.3.4.9 + 1.3.5.0 + 1.3.5.1 + 1.3.5.2 + 1.3.5.3 + 1.3.5.4 + 1.3.5.5 + 1.3.5.6 + 1.3.5.7 + 1.3.5.8 + 1.3.5.9 + 1.3.6.0 + 1.3.6.1 + 1.3.6.2 + 1.3.6.3 + 1.3.6.4 + 1.3.6.5 + 1.3.6.6 + 1.3.6.7 + 1.3.6.8 + 1.3.6.9 + 1.3.7.0 + 1.3.7.1 + 1.3.7.2 + 1.3.7.3 + 1.3.7.4 + 1.3.7.5 + 1.3.7.6 + 1.3.7.7 + 1.3.7.8 + 1.3.7.9 + 1.3.8.0 + 1.3.8.1 + 1.3.8.2 + 1.3.8.3 + 1.3.8.4 + 1.3.8.5 + 1.3.8.6 + 1.3.8.7 + 1.3.8.8 + 1.3.8.9 + 1.3.9.0 + 1.3.9.1 + 1.3.9.2 + 1.3.9.3 + 1.3.9.4 + 1.3.9.5 + 1.3.9.6 + 1.3.9.7 + 1.3.9.8 + 1.3.9.9 + 10.0.0.0/8 + 127.0.0.0/24 + 127.0.0.0/8 + 127.0.0.1 + 172.16.0.0/12 + 192.168.0.0/16 + 2.2.2.2 + 2000::1 + ::/24 + ::1 + ::5 + fe80::/16 + fe80::/24 + fe80::1 +# pass load table <regress> persist { !127.0.0.1 } file "DIR/pfr.addrs1" +# pass show + 1.1.1.1 + 10.0.0.0/8 + 127.0.0.0/24 + 127.0.0.0/8 + 172.16.0.0/12 + 192.168.0.0/16 + 2.2.2.2 + 2000::1 + ::/24 + ::1 + ::5 + fe80::/16 + fe80::/24 + fe80::1 + !127.0.0.1 +# pass load table <regress> persist file "DIR/pfr.addrs1" { 3.3.3.3 } +# pass show + 1.1.1.1 + 10.0.0.0/8 + 127.0.0.0/24 + 127.0.0.0/8 + 127.0.0.1 + 172.16.0.0/12 + 192.168.0.0/16 + 2.2.2.2 + 2000::1 + 3.3.3.3 + ::/24 + ::1 + ::5 + fe80::/16 + fe80::/24 + fe80::1 +# pass load table <regress> persist { 11 } file "DIR/pfr.addrs1" { !12 } +# pass show + 1.1.1.1 + 10.0.0.0/8 + 11.0.0.0/8 + 127.0.0.0/24 + 127.0.0.0/8 + 127.0.0.1 + 172.16.0.0/12 + 192.168.0.0/16 + 2.2.2.2 + 2000::1 + ::/24 + ::1 + ::5 + fe80::/16 + fe80::/24 + fe80::1 + !12.0.0.0/8 +# kill +1 table deleted. +ktable: 7 allocated, 7 released, 0 leaked. +kentry: 377 allocated, 377 released, 0 leaked. diff --git a/regress/sbin/pfctl/pfsimple2.in b/regress/sbin/pfctl/pfsimple2.in new file mode 100644 index 00000000000..73e9e8b8135 --- /dev/null +++ b/regress/sbin/pfctl/pfsimple2.in @@ -0,0 +1,7 @@ +# load tables from file +table <regress> persist file "/dev/null" +table <regress> persist file "/dev/null" file "/dev/null" +table <regress> persist { !127.0.0.1 } file "/dev/null" +table <regress> persist file "/dev/null" { 3.3.3.3 } +table <regress> persist { 11 } file "/dev/null" { !12 } +table <regress> { 10 } const file "/dev/null" persist |