libbpf: Fix off-by-one bug in bpf_core_apply_relo()
[ Upstream commit de5d0dcef602de39070c31c7e56c58249c56ba37 ]
Fix instruction index validity check which has off-by-one error.
Fixes: 3ee4f53355
("libbpf: Split bpf_core_apply_relo() into bpf_program independent helper.")
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20211025224531.1088894-2-andrii@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
af25dbc846
commit
b5949ef075
|
@ -5138,7 +5138,7 @@ static int bpf_core_apply_relo(struct bpf_program *prog,
|
||||||
* relocated, so it's enough to just subtract in-section offset
|
* relocated, so it's enough to just subtract in-section offset
|
||||||
*/
|
*/
|
||||||
insn_idx = insn_idx - prog->sec_insn_off;
|
insn_idx = insn_idx - prog->sec_insn_off;
|
||||||
if (insn_idx > prog->insns_cnt)
|
if (insn_idx >= prog->insns_cnt)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
insn = &prog->insns[insn_idx];
|
insn = &prog->insns[insn_idx];
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue