]> git.ipfire.org Git - thirdparty/nftables.git/commitdiff
tests: frag: enable more tests
authorFlorian Westphal <fw@strlen.de>
Mon, 7 Mar 2016 16:27:53 +0000 (17:27 +0100)
committerFlorian Westphal <fw@strlen.de>
Thu, 10 Mar 2016 13:08:20 +0000 (14:08 +0100)
Signed-off-by: Florian Westphal <fw@strlen.de>
Acked-by: Pablo Neira Ayuso <pablo@netfilter.org>
tests/py/ip6/frag.t
tests/py/ip6/frag.t.payload.inet
tests/py/ip6/frag.t.payload.ip6

index 56801ed8e7bf0540469ed86e85ccf64c559c8858..1551044d3f58afad15ff8e187bfbdb5879dbc147 100644 (file)
@@ -23,13 +23,13 @@ frag reserved { 33-55};ok
 # BUG: frag frag-off 22 and frag frag-off { 33-55}
 # This breaks table listing: "netlink: Error: Relational expression size mismatch"
 
-frag frag-off 22;ok
-frag frag-off != 233;ok
+frag frag-off 22;ok
+frag frag-off != 233;ok
 - frag frag-off 33-45;ok
 - frag frag-off != 33-45;ok
-frag frag-off { 33, 55, 67, 88};ok
+frag frag-off { 33, 55, 67, 88};ok
 - frag frag-off != { 33, 55, 67, 88};ok
-frag frag-off { 33-55};ok
+frag frag-off { 33-55};ok
 - frag frag-off != { 33-55};ok
 
 # BUG  frag reserved2 33 and frag reserved2 1
index 7cedaf3edb8b320fc623082079819d7acc993a77..e04d128e1e675ec05a9e49de81591fb7ae83c1f0 100644 (file)
@@ -86,6 +86,44 @@ inet test-inet output
   [ exthdr load 1b @ 44 + 1 => reg 1 ]
   [ lookup reg 1 set set%d ]
 
+# frag frag-off 22
+inet test-inet output
+  [ meta load nfproto => reg 1 ]
+  [ cmp eq reg 1 0x0000000a ]
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ cmp eq reg 1 0x0000b000 ]
+
+# frag frag-off != 233
+inet test-inet output
+  [ meta load nfproto => reg 1 ]
+  [ cmp eq reg 1 0x0000000a ]
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ cmp neq reg 1 0x00004807 ]
+
+# frag frag-off { 33, 55, 67, 88}
+set%d test-inet 3
+set%d test-inet 0
+       element 00002100  : 0 [end]     element 00003700  : 0 [end]     element 00004300  : 0 [end]     element 00005800  : 0 [end]
+inet test-inet output
+  [ meta load nfproto => reg 1 ]
+  [ cmp eq reg 1 0x0000000a ]
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ lookup reg 1 set set%d ]
+
+# frag frag-off { 33-55}
+set%d test-inet 7
+set%d test-inet 0
+       element 00000000  : 1 [end]     element 00002100  : 0 [end]     element 00003800  : 1 [end]
+inet test-inet output
+  [ meta load nfproto => reg 1 ]
+  [ cmp eq reg 1 0x0000000a ]
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ lookup reg 1 set set%d ]
+
 # frag id 1
 inet test-inet output
   [ meta load nfproto => reg 1 ]
index f2d04b6b994dd57015211c81ff2e57a9b3a47564..b3da6fefa43cc023615ca2ca5b775e09d59349e5 100644 (file)
@@ -64,6 +64,36 @@ ip6 test-ip6 output
   [ exthdr load 1b @ 44 + 1 => reg 1 ]
   [ lookup reg 1 set set%d ]
 
+# frag frag-off 22
+ip6 test-ip6 output
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ cmp eq reg 1 0x0000b000 ]
+
+# frag frag-off != 233
+ip6 test-ip6 output
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ cmp neq reg 1 0x00004807 ]
+
+# frag frag-off { 33, 55, 67, 88}
+set%d test-ip6 3
+set%d test-ip6 0
+       element 00002100  : 0 [end]     element 00003700  : 0 [end]     element 00004300  : 0 [end]     element 00005800  : 0 [end]
+ip6 test-ip6 output
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ lookup reg 1 set set%d ]
+
+# frag frag-off { 33-55}
+set%d test-ip6 7
+set%d test-ip6 0
+       element 00000000  : 1 [end]     element 00002100  : 0 [end]     element 00003800  : 1 [end]
+ip6 test-ip6 output 
+  [ exthdr load 2b @ 44 + 2 => reg 1 ]
+  [ bitwise reg 1 = (reg=1 & 0x0000f8ff ) ^ 0x00000000 ]
+  [ lookup reg 1 set set%d ]
+
 # frag id 1
 ip6 test-ip6 output
   [ exthdr load 4b @ 44 + 4 => reg 1 ]