162306a36Sopenharmony_ci{ 262306a36Sopenharmony_ci "invalid call insn1", 362306a36Sopenharmony_ci .insns = { 462306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL | BPF_X, 0, 0, 0, 0), 562306a36Sopenharmony_ci BPF_EXIT_INSN(), 662306a36Sopenharmony_ci }, 762306a36Sopenharmony_ci .errstr = "unknown opcode 8d", 862306a36Sopenharmony_ci .result = REJECT, 962306a36Sopenharmony_ci}, 1062306a36Sopenharmony_ci{ 1162306a36Sopenharmony_ci "invalid call insn2", 1262306a36Sopenharmony_ci .insns = { 1362306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 1, 0), 1462306a36Sopenharmony_ci BPF_EXIT_INSN(), 1562306a36Sopenharmony_ci }, 1662306a36Sopenharmony_ci .errstr = "BPF_CALL uses reserved", 1762306a36Sopenharmony_ci .result = REJECT, 1862306a36Sopenharmony_ci}, 1962306a36Sopenharmony_ci{ 2062306a36Sopenharmony_ci "invalid function call", 2162306a36Sopenharmony_ci .insns = { 2262306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, 1234567), 2362306a36Sopenharmony_ci BPF_EXIT_INSN(), 2462306a36Sopenharmony_ci }, 2562306a36Sopenharmony_ci .errstr = "invalid func unknown#1234567", 2662306a36Sopenharmony_ci .result = REJECT, 2762306a36Sopenharmony_ci}, 2862306a36Sopenharmony_ci{ 2962306a36Sopenharmony_ci "invalid argument register", 3062306a36Sopenharmony_ci .insns = { 3162306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_get_cgroup_classid), 3262306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_get_cgroup_classid), 3362306a36Sopenharmony_ci BPF_EXIT_INSN(), 3462306a36Sopenharmony_ci }, 3562306a36Sopenharmony_ci .errstr = "R1 !read_ok", 3662306a36Sopenharmony_ci .result = REJECT, 3762306a36Sopenharmony_ci .prog_type = BPF_PROG_TYPE_SCHED_CLS, 3862306a36Sopenharmony_ci}, 3962306a36Sopenharmony_ci{ 4062306a36Sopenharmony_ci "non-invalid argument register", 4162306a36Sopenharmony_ci .insns = { 4262306a36Sopenharmony_ci BPF_ALU64_REG(BPF_MOV, BPF_REG_6, BPF_REG_1), 4362306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_get_cgroup_classid), 4462306a36Sopenharmony_ci BPF_ALU64_REG(BPF_MOV, BPF_REG_1, BPF_REG_6), 4562306a36Sopenharmony_ci BPF_RAW_INSN(BPF_JMP | BPF_CALL, 0, 0, 0, BPF_FUNC_get_cgroup_classid), 4662306a36Sopenharmony_ci BPF_EXIT_INSN(), 4762306a36Sopenharmony_ci }, 4862306a36Sopenharmony_ci .result = ACCEPT, 4962306a36Sopenharmony_ci .prog_type = BPF_PROG_TYPE_SCHED_CLS, 5062306a36Sopenharmony_ci}, 51