summaryrefslogtreecommitdiffstats
path: root/tests/py/inet/udp.t.payload.ip
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2016-07-21 15:57:15 +0200
committerFlorian Westphal <fw@strlen.de>2016-07-21 17:22:05 +0200
commit6c0cb3d568322cc4dc9854980fd3b9d6e8c8046e (patch)
tree933bd16d2995bf5d2fd2d6cbd1cff878852bad45 /tests/py/inet/udp.t.payload.ip
parenta4fe9cfe788706c0bf1c3a40b7c92f1d2bebf7e7 (diff)
tests: add basic payload tests
payload set operations should work at least for byte-sized quantities >= 2 byte. Before adding support for odd-sized writes (ecn, dscp, ip6 flowlabel ...) add a bunch of tests to cover current state. Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'tests/py/inet/udp.t.payload.ip')
-rw-r--r--tests/py/inet/udp.t.payload.ip17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/py/inet/udp.t.payload.ip b/tests/py/inet/udp.t.payload.ip
index 56b6051d..8b4550dc 100644
--- a/tests/py/inet/udp.t.payload.ip
+++ b/tests/py/inet/udp.t.payload.ip
@@ -220,3 +220,20 @@ ip test-ip4 input
[ payload load 2b @ transport header + 6 => reg 1 ]
[ lookup reg 1 set __set%d ]
+# iif lo udp checksum set 0
+ip test-ip4 input
+ [ meta load iif => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+ [ payload load 1b @ network header + 9 => reg 1 ]
+ [ cmp eq reg 1 0x00000011 ]
+ [ immediate reg 1 0x00000000 ]
+ [ payload write reg 1 => 2b @ transport header + 6 csum_type 1 csum_off 6 ]
+
+# iif lo udp dport set 65535
+ip test-ip4 input
+ [ meta load iif => reg 1 ]
+ [ cmp eq reg 1 0x00000001 ]
+ [ payload load 1b @ network header + 9 => reg 1 ]
+ [ cmp eq reg 1 0x00000011 ]
+ [ immediate reg 1 0x0000ffff ]
+ [ payload write reg 1 => 2b @ transport header + 2 csum_type 1 csum_off 6 ]