libseccomp/fix_undefined_behavior_in_scmp_bpf_sim.patch
jchzhou 686e93d6dd fix undefined behavior in scmp_bpf_sim.c causing issues when building with clang
Signed-off-by: jchzhou <zhoujiacheng@iscas.ac.cn>
(cherry picked from commit e258642b09c628e0fe81795bf579905504edf8cf)
2024-07-31 16:42:55 +08:00

26 lines
777 B
Diff

From 3292da1d4dafab2d18c7b750fa278bcc8a362d04 Mon Sep 17 00:00:00 2001
From: q66 <q66@chimera-linux.org>
Date: Wed, 20 Dec 2023 04:01:42 +0100
Subject: [PATCH] fix UB-ass UB in scmp_bpf_sim
---
tools/scmp_bpf_sim.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/scmp_bpf_sim.c b/tools/scmp_bpf_sim.c
index a381314..eeaa5bc 100644
--- a/tools/scmp_bpf_sim.c
+++ b/tools/scmp_bpf_sim.c
@@ -182,7 +182,8 @@ static void bpf_execute(const struct bpf_program *prg,
switch (code) {
case BPF_LD+BPF_W+BPF_ABS:
if (k < BPF_SYSCALL_MAX) {
- uint32_t val = *((uint32_t *)&sys_data_b[k]);
+ uint32_t val;
+ memcpy(&val, &sys_data_b[k], sizeof(val));
state.acc = ttoh32(arch, val);
} else
exit_error(ERANGE, ip_c);
--
2.43.0