1/*-
2 * Test 0020:	BPF_JMP+BPF_JGT+BPF_X
3 *
4 * $FreeBSD$
5 */
6
7/* BPF program */
8struct bpf_insn pc[] = {
9	BPF_STMT(BPF_LD+BPF_IMM, 0x01234567),
10	BPF_STMT(BPF_LDX+BPF_IMM, 0x01234568),
11	BPF_JUMP(BPF_JMP+BPF_JGT+BPF_X, 0, 3, 0),
12	BPF_STMT(BPF_LDX+BPF_IMM, 0x01234566),
13	BPF_JUMP(BPF_JMP+BPF_JGT+BPF_X, 0, 2, 1),
14	BPF_STMT(BPF_LD+BPF_IMM, 0xdeadc0de),
15	BPF_STMT(BPF_RET+BPF_A, 0),
16	BPF_STMT(BPF_LDX+BPF_IMM, 0x01234567),
17	BPF_JUMP(BPF_JMP+BPF_JGT+BPF_X, 0, 1, 0),
18	BPF_STMT(BPF_LD+BPF_IMM, 0xc0decafe),
19	BPF_STMT(BPF_RET+BPF_A, 0),
20};
21
22/* Packet */
23u_char	pkt[] = {
24	0x00,
25};
26
27/* Packet length seen on wire */
28u_int	wirelen =	sizeof(pkt);
29
30/* Packet length passed on buffer */
31u_int	buflen =	sizeof(pkt);
32
33/* Invalid instruction */
34int	invalid =	0;
35
36/* Expected return value */
37u_int	expect =	0xc0decafe;
38
39/* Expected signal */
40int	expect_signal =	0;
41