diff options
author | Jung-uk Kim <jkim@FreeBSD.org> | 2008-08-18 19:01:58 +0000 |
---|---|---|
committer | Jung-uk Kim <jkim@FreeBSD.org> | 2008-08-18 19:01:58 +0000 |
commit | b0729b181a6c7d621beb06fcd929047eb8e83019 (patch) | |
tree | 99135c216c6bcc0ee80c8d738e16094e051ffd2a /tools/regression/bpf/bpf_filter/tests | |
parent | 3bfea8682f0462c538b640c7e7cbc5272c8c80c4 (diff) | |
download | src-b0729b181a6c7d621beb06fcd929047eb8e83019.tar.gz src-b0729b181a6c7d621beb06fcd929047eb8e83019.zip |
Add simple bpf(9) regression tests and test cases.
Notes
Notes:
svn path=/head/; revision=181847
Diffstat (limited to 'tools/regression/bpf/bpf_filter/tests')
73 files changed, 2431 insertions, 0 deletions
diff --git a/tools/regression/bpf/bpf_filter/tests/test0001.h b/tools/regression/bpf/bpf_filter/tests/test0001.h new file mode 100644 index 000000000000..57c9a95703ad --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0001.h @@ -0,0 +1,30 @@ +/*- + * Test 0001: Catch illegal instruction. + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(0xdead, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 1; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = SIGABRT; diff --git a/tools/regression/bpf/bpf_filter/tests/test0002.h b/tools/regression/bpf/bpf_filter/tests/test0002.h new file mode 100644 index 000000000000..af66976fb240 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0002.h @@ -0,0 +1,30 @@ +/*- + * Test 0002: BPF_RET+BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_RET+BPF_K, 0xdeadc0de), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0003.h b/tools/regression/bpf/bpf_filter/tests/test0003.h new file mode 100644 index 000000000000..9089f0511fd5 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0003.h @@ -0,0 +1,31 @@ +/*- + * Test 0003: BPF_LD+BPF_IMM & BPF_RET+BPF_A + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD+BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0004.h b/tools/regression/bpf/bpf_filter/tests/test0004.h new file mode 100644 index 000000000000..78866cedf439 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0004.h @@ -0,0 +1,31 @@ +/*- + * Test 0004: BPF_LD|BPF_W|BPF_ABS + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_W|BPF_ABS, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x23456789; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0005.h b/tools/regression/bpf/bpf_filter/tests/test0005.h new file mode 100644 index 000000000000..ec9b0fdc1f3e --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0005.h @@ -0,0 +1,31 @@ +/*- + * Test 0005: BPF_LD|BPF_H|BPF_ABS + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_H|BPF_ABS, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x2345; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0006.h b/tools/regression/bpf/bpf_filter/tests/test0006.h new file mode 100644 index 000000000000..2d0a0b65dc3f --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0006.h @@ -0,0 +1,31 @@ +/*- + * Test 0006: BPF_LD|BPF_B|BPF_ABS + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_B|BPF_ABS, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x23; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0007.h b/tools/regression/bpf/bpf_filter/tests/test0007.h new file mode 100644 index 000000000000..c2534806ad8a --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0007.h @@ -0,0 +1,29 @@ +/*- + * Test 0007: BPF_LD|BPF_W|BPF_LEN + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_W|BPF_LEN, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[0xdeadc0de]; + +/* Packet length seen on wire */ +u_int wirelen = 0xdeadc0de; + +/* Packet length passed on buffer */ +u_int buflen = 0xdeadc0de; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0008.h b/tools/regression/bpf/bpf_filter/tests/test0008.h new file mode 100644 index 000000000000..432eaaa69ea8 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0008.h @@ -0,0 +1,30 @@ +/*- + * Test 0008: BPF_LDX|BPF_W|BPF_LEN & BPF_MISC|BPF_TXA + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_W|BPF_LEN, 0), + BPF_STMT(BPF_MISC|BPF_TXA, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[0xdeadc0de]; + +/* Packet length seen on wire */ +u_int wirelen = 0xdeadc0de; + +/* Packet length passed on buffer */ +u_int buflen = 0xdeadc0de; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0009.h b/tools/regression/bpf/bpf_filter/tests/test0009.h new file mode 100644 index 000000000000..17c8089ad7c4 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0009.h @@ -0,0 +1,32 @@ +/*- + * Test 0009: BPF_LDX|BPF_IMM & BPF_LD|BPF_W|BPF_IND + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x456789ab; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0010.h b/tools/regression/bpf/bpf_filter/tests/test0010.h new file mode 100644 index 000000000000..cc5abb81f3b1 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0010.h @@ -0,0 +1,32 @@ +/*- + * Test 0010: BPF_LD|BPF_H|BPF_IND + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x4567; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0011.h b/tools/regression/bpf/bpf_filter/tests/test0011.h new file mode 100644 index 000000000000..9cfd2c5af9e4 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0011.h @@ -0,0 +1,32 @@ +/*- + * Test 0011: BPF_LD|BPF_B|BPF_IND + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x45; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0012.h b/tools/regression/bpf/bpf_filter/tests/test0012.h new file mode 100644 index 000000000000..b388a062f13b --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0012.h @@ -0,0 +1,32 @@ +/*- + * Test 0012: BPF_LDX|BPF_MSH|BPF_B + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_MSH|BPF_B, 1), + BPF_STMT(BPF_MISC|BPF_TXA, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = (0x23 & 0xf) << 2; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0013.h b/tools/regression/bpf/bpf_filter/tests/test0013.h new file mode 100644 index 000000000000..2670fc2dee7c --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0013.h @@ -0,0 +1,34 @@ +/*- + * Test 0013: BPF_ST & BPF_LDX|BPF_MEM + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_ST, 7), + BPF_STMT(BPF_LDX|BPF_MEM, 7), + BPF_STMT(BPF_MISC|BPF_TXA, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0014.h b/tools/regression/bpf/bpf_filter/tests/test0014.h new file mode 100644 index 000000000000..43011097000f --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0014.h @@ -0,0 +1,33 @@ +/*- + * Test 0014: BPF_STX & BPF_LD|BPF_MEM + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LDX|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_STX, 7), + BPF_STMT(BPF_LD|BPF_MEM, 7), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0015.h b/tools/regression/bpf/bpf_filter/tests/test0015.h new file mode 100644 index 000000000000..9a2aea34e1d0 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0015.h @@ -0,0 +1,33 @@ +/*- + * Test 0015: BPF_JMP|BPF_JA + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_JMP|BPF_JA, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0016.h b/tools/regression/bpf/bpf_filter/tests/test0016.h new file mode 100644 index 000000000000..bd7cee3376d0 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0016.h @@ -0,0 +1,37 @@ +/*- + * Test 0016: BPF_JMP|BPF_JGT|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_K, 0x01234568, 2, 0), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_K, 0x01234566, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_K, 0x01234567, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0017.h b/tools/regression/bpf/bpf_filter/tests/test0017.h new file mode 100644 index 000000000000..e286249aacc0 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0017.h @@ -0,0 +1,37 @@ +/*- + * Test 0017: BPF_JMP|BPF_JGE|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 0x01234568, 2, 0), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 0x01234567, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 0x01234566, 0, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0018.h b/tools/regression/bpf/bpf_filter/tests/test0018.h new file mode 100644 index 000000000000..17c5ee8de177 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0018.h @@ -0,0 +1,37 @@ +/*- + * Test 0018: BPF_JMP|BPF_JEQ|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 0x01234568, 2, 0), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 0x01234567, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 0x01234566, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0019.h b/tools/regression/bpf/bpf_filter/tests/test0019.h new file mode 100644 index 000000000000..df7bccd81c3c --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0019.h @@ -0,0 +1,42 @@ +/*- + * Test 0019: BPF_JMP|BPF_JSET|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x80000000, 5, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x40000000, 4, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x20000000, 3, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x10000000, 2, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x1, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x08000000, 3, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x04000000, 2, 0), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_K, 0x02000000, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0020.h b/tools/regression/bpf/bpf_filter/tests/test0020.h new file mode 100644 index 000000000000..5b58e70f316d --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0020.h @@ -0,0 +1,40 @@ +/*- + * Test 0020: BPF_JMP|BPF_JGT|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234568), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_X, 0, 3, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234566), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_X, 0, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JGT|BPF_X, 0, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0021.h b/tools/regression/bpf/bpf_filter/tests/test0021.h new file mode 100644 index 000000000000..4979cf8f6d89 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0021.h @@ -0,0 +1,40 @@ +/*- + * Test 0021: BPF_JMP|BPF_JGE|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234568), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_X, 0, 3, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_X, 0, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234566), + BPF_JUMP(BPF_JMP|BPF_JGE|BPF_X, 0, 0, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0022.h b/tools/regression/bpf/bpf_filter/tests/test0022.h new file mode 100644 index 000000000000..f6e41028d6a1 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0022.h @@ -0,0 +1,40 @@ +/*- + * Test 0022: BPF_JMP|BPF_JEQ|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234568), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_X, 0, 3, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234567), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_X, 0, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x01234566), + BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_X, 0, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0023.h b/tools/regression/bpf/bpf_filter/tests/test0023.h new file mode 100644 index 000000000000..6b5dc01b45a7 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0023.h @@ -0,0 +1,50 @@ +/*- + * Test 0023: BPF_JMP|BPF_JSET|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x01234567), + BPF_STMT(BPF_LDX|BPF_IMM, 0x80000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 9, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x40000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 7, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x20000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 5, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x10000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 3, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x1), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0x1, 2, 1), + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_RET+BPF_A, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x08000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 5, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x04000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 3, 0), + BPF_STMT(BPF_LDX|BPF_IMM, 0x02000000), + BPF_JUMP(BPF_JMP|BPF_JSET|BPF_X, 0, 1, 0), + BPF_STMT(BPF_LD|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0decafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0024.h b/tools/regression/bpf/bpf_filter/tests/test0024.h new file mode 100644 index 000000000000..7c4347f9fcb4 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0024.h @@ -0,0 +1,33 @@ +/*- + * Test 0024: BPF_ALU|BPF_ADD|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xbeadb8dd), + BPF_STMT(BPF_LDX|BPF_IMM, 0x20000801), + BPF_STMT(BPF_ALU|BPF_ADD|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0025.h b/tools/regression/bpf/bpf_filter/tests/test0025.h new file mode 100644 index 000000000000..16800f391a83 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0025.h @@ -0,0 +1,33 @@ +/*- + * Test 0025: BPF_ALU|BPF_SUB|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0x20000801), + BPF_STMT(BPF_ALU|BPF_SUB|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xbeadb8dd; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0026.h b/tools/regression/bpf/bpf_filter/tests/test0026.h new file mode 100644 index 000000000000..9ef1bc1cf125 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0026.h @@ -0,0 +1,33 @@ +/*- + * Test 0026: BPF_ALU|BPF_MUL|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdead), + BPF_STMT(BPF_LDX|BPF_IMM, 0xc0de), + BPF_STMT(BPF_ALU|BPF_MUL|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xa7c2da06; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0027.h b/tools/regression/bpf/bpf_filter/tests/test0027.h new file mode 100644 index 000000000000..8417e1a7a23c --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0027.h @@ -0,0 +1,33 @@ +/*- + * Test 0027: BPF_ALU|BPF_DIV|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xa7c2da06), + BPF_STMT(BPF_LDX|BPF_IMM, 0xdead), + BPF_STMT(BPF_ALU|BPF_DIV|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0028.h b/tools/regression/bpf/bpf_filter/tests/test0028.h new file mode 100644 index 000000000000..7bcc455c3222 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0028.h @@ -0,0 +1,33 @@ +/*- + * Test 0028: BPF_ALU|BPF_AND|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_ALU|BPF_AND|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc08cc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0029.h b/tools/regression/bpf/bpf_filter/tests/test0029.h new file mode 100644 index 000000000000..6ac2b678d122 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0029.h @@ -0,0 +1,33 @@ +/*- + * Test 0029: BPF_ALU|BPF_OR|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0xc0decafe), + BPF_STMT(BPF_ALU|BPF_OR|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeffcafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0030.h b/tools/regression/bpf/bpf_filter/tests/test0030.h new file mode 100644 index 000000000000..b2eb60cabb0f --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0030.h @@ -0,0 +1,33 @@ +/*- + * Test 0030: BPF_ALU|BPF_LSH|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdefc0), + BPF_STMT(BPF_LDX|BPF_IMM, 9), + BPF_STMT(BPF_ALU|BPF_LSH|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x1bdf8000; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0031.h b/tools/regression/bpf/bpf_filter/tests/test0031.h new file mode 100644 index 000000000000..5db96bec7d72 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0031.h @@ -0,0 +1,33 @@ +/*- + * Test 0031: BPF_ALU|BPF_RSH|BPF_X + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 13), + BPF_STMT(BPF_ALU|BPF_RSH|BPF_X, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x6f56e; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0032.h b/tools/regression/bpf/bpf_filter/tests/test0032.h new file mode 100644 index 000000000000..05fb432e23e5 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0032.h @@ -0,0 +1,32 @@ +/*- + * Test 0032: BPF_ALU|BPF_ADD|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xbeadb8dd), + BPF_STMT(BPF_ALU|BPF_ADD|BPF_K, 0x20000801), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0033.h b/tools/regression/bpf/bpf_filter/tests/test0033.h new file mode 100644 index 000000000000..79ddafcbeb08 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0033.h @@ -0,0 +1,32 @@ +/*- + * Test 0033: BPF_ALU|BPF_SUB|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_ALU|BPF_SUB|BPF_K, 0x20000801), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xbeadb8dd; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0034.h b/tools/regression/bpf/bpf_filter/tests/test0034.h new file mode 100644 index 000000000000..5c09da1dae39 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0034.h @@ -0,0 +1,32 @@ +/*- + * Test 0034: BPF_ALU|BPF_MUL|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdead), + BPF_STMT(BPF_ALU|BPF_MUL|BPF_K, 0xc0de), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xa7c2da06; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0035.h b/tools/regression/bpf/bpf_filter/tests/test0035.h new file mode 100644 index 000000000000..1283a88c9f33 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0035.h @@ -0,0 +1,32 @@ +/*- + * Test 0035: BPF_ALU|BPF_DIV|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xa7c2da06), + BPF_STMT(BPF_ALU|BPF_DIV|BPF_K, 0xdead), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0036.h b/tools/regression/bpf/bpf_filter/tests/test0036.h new file mode 100644 index 000000000000..8506b90476b2 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0036.h @@ -0,0 +1,32 @@ +/*- + * Test 0036: BPF_ALU|BPF_AND|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_ALU|BPF_AND|BPF_K, 0xc0decafe), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xc08cc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0037.h b/tools/regression/bpf/bpf_filter/tests/test0037.h new file mode 100644 index 000000000000..f231debfd015 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0037.h @@ -0,0 +1,32 @@ +/*- + * Test 0037: BPF_ALU|BPF_OR|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_ALU|BPF_OR|BPF_K, 0xc0decafe), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeffcafe; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0038.h b/tools/regression/bpf/bpf_filter/tests/test0038.h new file mode 100644 index 000000000000..1c9b7641c2ef --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0038.h @@ -0,0 +1,32 @@ +/*- + * Test 0038: BPF_ALU|BPF_LSH|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdefc0), + BPF_STMT(BPF_ALU|BPF_LSH|BPF_K, 9), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x1bdf8000; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0039.h b/tools/regression/bpf/bpf_filter/tests/test0039.h new file mode 100644 index 000000000000..848c0cdb2db1 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0039.h @@ -0,0 +1,32 @@ +/*- + * Test 0039: BPF_ALU|BPF_RSH|BPF_K + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_ALU|BPF_RSH|BPF_K, 13), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0x6f56e; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0040.h b/tools/regression/bpf/bpf_filter/tests/test0040.h new file mode 100644 index 000000000000..c08fe9127b8c --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0040.h @@ -0,0 +1,32 @@ +/*- + * Test 0040: BPF_ALU|BPF_NEG + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0x21523f22), + BPF_STMT(BPF_ALU|BPF_NEG, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0041.h b/tools/regression/bpf/bpf_filter/tests/test0041.h new file mode 100644 index 000000000000..5480bdaae9a6 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0041.h @@ -0,0 +1,34 @@ +/*- + * Test 0041: BPF_MISC|BPF_TAX + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_MISC|BPF_TAX, 0), + BPF_STMT(BPF_STX, 0), + BPF_STMT(BPF_LD|BPF_MEM, 0), + BPF_STMT(BPF_RET|BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x00, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0xdeadc0de; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0042.h b/tools/regression/bpf/bpf_filter/tests/test0042.h new file mode 100644 index 000000000000..bf9cf5b62b7e --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0042.h @@ -0,0 +1,32 @@ +/*- + * Test 0042: Check boundary conditions (BPF_LD|BPF_W|BPF_ABS) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LD|BPF_W|BPF_ABS, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0043.h b/tools/regression/bpf/bpf_filter/tests/test0043.h new file mode 100644 index 000000000000..2e06829ecbc0 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0043.h @@ -0,0 +1,32 @@ +/*- + * Test 0043: Check boundary conditions (BPF_LD|BPF_H|BPF_ABS) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LD|BPF_H|BPF_ABS, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0044.h b/tools/regression/bpf/bpf_filter/tests/test0044.h new file mode 100644 index 000000000000..ae6e8ee5a0ed --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0044.h @@ -0,0 +1,32 @@ +/*- + * Test 0044: Check boundary conditions (BPF_LD|BPF_B|BPF_ABS) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LD|BPF_B|BPF_ABS, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0045.h b/tools/regression/bpf/bpf_filter/tests/test0045.h new file mode 100644 index 000000000000..329357fdeb73 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0045.h @@ -0,0 +1,33 @@ +/*- + * Test 0045: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0046.h b/tools/regression/bpf/bpf_filter/tests/test0046.h new file mode 100644 index 000000000000..0c9d72efe621 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0046.h @@ -0,0 +1,33 @@ +/*- + * Test 0046: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0047.h b/tools/regression/bpf/bpf_filter/tests/test0047.h new file mode 100644 index 000000000000..2561c650479e --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0047.h @@ -0,0 +1,33 @@ +/*- + * Test 0047: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 2), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0048.h b/tools/regression/bpf/bpf_filter/tests/test0048.h new file mode 100644 index 000000000000..a9330784d4c5 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0048.h @@ -0,0 +1,33 @@ +/*- + * Test 0048: Check boundary conditions (BPF_LDX|BPF_MSH|BPF_B) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_MSH|BPF_B, 2), + BPF_STMT(BPF_MISC|BPF_TXA, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0049.h b/tools/regression/bpf/bpf_filter/tests/test0049.h new file mode 100644 index 000000000000..47ca7713e7b1 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0049.h @@ -0,0 +1,32 @@ +/*- + * Test 0049: Check boundary conditions (BPF_LD|BPF_W|BPF_ABS) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LD|BPF_W|BPF_ABS, 6), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0050.h b/tools/regression/bpf/bpf_filter/tests/test0050.h new file mode 100644 index 000000000000..4f560c9f70de --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0050.h @@ -0,0 +1,32 @@ +/*- + * Test 0050: Check boundary conditions (BPF_LD|BPF_H|BPF_ABS) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LD|BPF_H|BPF_ABS, 4), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0051.h b/tools/regression/bpf/bpf_filter/tests/test0051.h new file mode 100644 index 000000000000..2036cb3060aa --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0051.h @@ -0,0 +1,33 @@ +/*- + * Test 0051: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 6), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0052.h b/tools/regression/bpf/bpf_filter/tests/test0052.h new file mode 100644 index 000000000000..976d1cd8b4ea --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0052.h @@ -0,0 +1,33 @@ +/*- + * Test 0052: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 4), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0053.h b/tools/regression/bpf/bpf_filter/tests/test0053.h new file mode 100644 index 000000000000..4b4d0c1b2f3d --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0053.h @@ -0,0 +1,33 @@ +/*- + * Test 0053: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 3), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0054.h b/tools/regression/bpf/bpf_filter/tests/test0054.h new file mode 100644 index 000000000000..534b7f6505f5 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0054.h @@ -0,0 +1,33 @@ +/*- + * Test 0054: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 6), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0055.h b/tools/regression/bpf/bpf_filter/tests/test0055.h new file mode 100644 index 000000000000..6460846c165a --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0055.h @@ -0,0 +1,33 @@ +/*- + * Test 0055: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 4), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0056.h b/tools/regression/bpf/bpf_filter/tests/test0056.h new file mode 100644 index 000000000000..790a9b953c99 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0056.h @@ -0,0 +1,33 @@ +/*- + * Test 0056: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 0xffffffff), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0057.h b/tools/regression/bpf/bpf_filter/tests/test0057.h new file mode 100644 index 000000000000..9df308807f4f --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0057.h @@ -0,0 +1,33 @@ +/*- + * Test 0057: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 0xffffffff), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0058.h b/tools/regression/bpf/bpf_filter/tests/test0058.h new file mode 100644 index 000000000000..419983c19824 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0058.h @@ -0,0 +1,33 @@ +/*- + * Test 0058: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 0xffffffff), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0059.h b/tools/regression/bpf/bpf_filter/tests/test0059.h new file mode 100644 index 000000000000..193abd7d23a4 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0059.h @@ -0,0 +1,33 @@ +/*- + * Test 0059: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0xffffffff), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0060.h b/tools/regression/bpf/bpf_filter/tests/test0060.h new file mode 100644 index 000000000000..f23bb49fab42 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0060.h @@ -0,0 +1,33 @@ +/*- + * Test 0060: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0xffffffff), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0061.h b/tools/regression/bpf/bpf_filter/tests/test0061.h new file mode 100644 index 000000000000..f9f7dad69a32 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0061.h @@ -0,0 +1,33 @@ +/*- + * Test 0061: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0xffffffff), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = sizeof(pkt); + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0062.h b/tools/regression/bpf/bpf_filter/tests/test0062.h new file mode 100644 index 000000000000..817305b40716 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0062.h @@ -0,0 +1,33 @@ +/*- + * Test 0062: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0063.h b/tools/regression/bpf/bpf_filter/tests/test0063.h new file mode 100644 index 000000000000..f01232391289 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0063.h @@ -0,0 +1,33 @@ +/*- + * Test 0063: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0064.h b/tools/regression/bpf/bpf_filter/tests/test0064.h new file mode 100644 index 000000000000..97886023ebb6 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0064.h @@ -0,0 +1,33 @@ +/*- + * Test 0064: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0065.h b/tools/regression/bpf/bpf_filter/tests/test0065.h new file mode 100644 index 000000000000..66b119795e0f --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0065.h @@ -0,0 +1,33 @@ +/*- + * Test 0065: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0066.h b/tools/regression/bpf/bpf_filter/tests/test0066.h new file mode 100644 index 000000000000..1276ac88a5f3 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0066.h @@ -0,0 +1,33 @@ +/*- + * Test 0066: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0067.h b/tools/regression/bpf/bpf_filter/tests/test0067.h new file mode 100644 index 000000000000..0b21c44fbbc9 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0067.h @@ -0,0 +1,33 @@ +/*- + * Test 0067: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 1), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0068.h b/tools/regression/bpf/bpf_filter/tests/test0068.h new file mode 100644 index 000000000000..62511e05e480 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0068.h @@ -0,0 +1,33 @@ +/*- + * Test 0068: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0069.h b/tools/regression/bpf/bpf_filter/tests/test0069.h new file mode 100644 index 000000000000..7d12bdc56f9b --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0069.h @@ -0,0 +1,33 @@ +/*- + * Test 0069: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0070.h b/tools/regression/bpf/bpf_filter/tests/test0070.h new file mode 100644 index 000000000000..a6eb7daaa5cc --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0070.h @@ -0,0 +1,33 @@ +/*- + * Test 0070: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 1), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0071.h b/tools/regression/bpf/bpf_filter/tests/test0071.h new file mode 100644 index 000000000000..d9383788e8aa --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0071.h @@ -0,0 +1,33 @@ +/*- + * Test 0071: Check boundary conditions (BPF_LD|BPF_W|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_W|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0072.h b/tools/regression/bpf/bpf_filter/tests/test0072.h new file mode 100644 index 000000000000..38ba942125d1 --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0072.h @@ -0,0 +1,33 @@ +/*- + * Test 0072: Check boundary conditions (BPF_LD|BPF_H|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_H|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, 0x67, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; diff --git a/tools/regression/bpf/bpf_filter/tests/test0073.h b/tools/regression/bpf/bpf_filter/tests/test0073.h new file mode 100644 index 000000000000..d9fae4ad3d0b --- /dev/null +++ b/tools/regression/bpf/bpf_filter/tests/test0073.h @@ -0,0 +1,33 @@ +/*- + * Test 0073: Check boundary conditions (BPF_LD|BPF_B|BPF_IND) + * + * $FreeBSD$ + */ + +/* BPF program */ +struct bpf_insn pc[] = { + BPF_STMT(BPF_LD|BPF_IMM, 0xdeadc0de), + BPF_STMT(BPF_LDX|BPF_IMM, 0), + BPF_STMT(BPF_LD|BPF_B|BPF_IND, 0), + BPF_STMT(BPF_RET+BPF_A, 0), +}; + +/* Packet */ +u_char pkt[] = { + 0x01, 0x23, 0x45, +}; + +/* Packet length seen on wire */ +u_int wirelen = sizeof(pkt); + +/* Packet length passed on buffer */ +u_int buflen = 0; + +/* Invalid instruction */ +int invalid = 0; + +/* Expected return value */ +u_int expect = 0; + +/* Expeced signal */ +int expect_signal = 0; |