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