1 { 2 "bpf_exit with invalid return code. test1", 3 .insns = { 4 BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, 0), 5 BPF_EXIT_INSN(), 6 }, 7 .errstr = "R0 has value (0x0; 0xffffffff)", 8 .result = REJECT, 9 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 10 }, 11 { 12 "bpf_exit with invalid return code. test2", 13 .insns = { 14 BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, 0), 15 BPF_ALU64_IMM(BPF_AND, BPF_REG_0, 1), 16 BPF_EXIT_INSN(), 17 }, 18 .result = ACCEPT, 19 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 20 }, 21 { 22 "bpf_exit with invalid return code. test3", 23 .insns = { 24 BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, 0), 25 BPF_ALU64_IMM(BPF_AND, BPF_REG_0, 3), 26 BPF_EXIT_INSN(), 27 }, 28 .errstr = "R0 has value (0x0; 0x3)", 29 .result = REJECT, 30 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 31 }, 32 { 33 "bpf_exit with invalid return code. test4", 34 .insns = { 35 BPF_MOV64_IMM(BPF_REG_0, 1), 36 BPF_EXIT_INSN(), 37 }, 38 .result = ACCEPT, 39 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 40 }, 41 { 42 "bpf_exit with invalid return code. test5", 43 .insns = { 44 BPF_MOV64_IMM(BPF_REG_0, 2), 45 BPF_EXIT_INSN(), 46 }, 47 .errstr = "R0 has value (0x2; 0x0)", 48 .result = REJECT, 49 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 50 }, 51 { 52 "bpf_exit with invalid return code. test6", 53 .insns = { 54 BPF_MOV64_REG(BPF_REG_0, BPF_REG_1), 55 BPF_EXIT_INSN(), 56 }, 57 .errstr = "R0 is not a known value (ctx)", 58 .result = REJECT, 59 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 60 }, 61 { 62 "bpf_exit with invalid return code. test7", 63 .insns = { 64 BPF_LDX_MEM(BPF_W, BPF_REG_0, BPF_REG_1, 0), 65 BPF_LDX_MEM(BPF_W, BPF_REG_2, BPF_REG_1, 4), 66 BPF_ALU64_REG(BPF_MUL, BPF_REG_0, BPF_REG_2), 67 BPF_EXIT_INSN(), 68 }, 69 .errstr = "R0 has unknown scalar value", 70 .result = REJECT, 71 .prog_type = BPF_PROG_TYPE_CGROUP_SOCK, 72 }, 73