]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
bpftool: Fix a wrong type cast in btf_dumper_int
authorLam Thai <lamthai@arista.com>
Wed, 24 Aug 2022 22:59:00 +0000 (15:59 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 24 Oct 2022 07:57:05 +0000 (09:57 +0200)
[ Upstream commit 7184aef9c0f7a81db8fd18d183ee42481d89bf35 ]

When `data` points to a boolean value, casting it to `int *` is problematic
and could lead to a wrong value being passed to `jsonw_bool`. Change the
cast to `bool *` instead.

Fixes: b12d6ec09730 ("bpf: btf: add btf print functionality")
Signed-off-by: Lam Thai <lamthai@arista.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Reviewed-by: Quentin Monnet <quentin@isovalent.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/20220824225859.9038-1-lamthai@arista.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/bpf/bpftool/btf_dumper.c

index f5dddf8ef404b1eec57218e8eeba847d068d9061..6d041d1f5395940d7a2fa95359159e3dde8f9762 100644 (file)
@@ -426,7 +426,7 @@ static int btf_dumper_int(const struct btf_type *t, __u8 bit_offset,
                                             *(char *)data);
                break;
        case BTF_INT_BOOL:
-               jsonw_bool(jw, *(int *)data);
+               jsonw_bool(jw, *(bool *)data);
                break;
        default:
                /* shouldn't happen */