linux/security/apparmor
Guenter Roeck d03099a2cc apparmor: fix policy_unpack_test on big endian systems
[ Upstream commit 98c0cc48e2 ]

policy_unpack_test fails on big endian systems because data byte order
is expected to be little endian but is generated in host byte order.
This results in test failures such as:

 # policy_unpack_test_unpack_array_with_null_name: EXPECTATION FAILED at security/apparmor/policy_unpack_test.c:150
    Expected array_size == (u16)16, but
        array_size == 4096 (0x1000)
        (u16)16 == 16 (0x10)
    # policy_unpack_test_unpack_array_with_null_name: pass:0 fail:1 skip:0 total:1
    not ok 3 policy_unpack_test_unpack_array_with_null_name
    # policy_unpack_test_unpack_array_with_name: EXPECTATION FAILED at security/apparmor/policy_unpack_test.c:164
    Expected array_size == (u16)16, but
        array_size == 4096 (0x1000)
        (u16)16 == 16 (0x10)
    # policy_unpack_test_unpack_array_with_name: pass:0 fail:1 skip:0 total:1

Add the missing endianness conversions when generating test data.

Fixes: 4d944bcd4e ("apparmor: add AppArmor KUnit tests for policy unpack")
Cc: Brendan Higgins <brendanhiggins@google.com>
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2024-09-04 13:25:04 +02:00
..
include ima: Avoid blocking in RCU read-side critical section 2024-07-11 12:47:16 +02:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
apparmorfs.c apparmor: fix a memleak in multi_transaction_new() 2022-12-31 13:32:29 +01:00
audit.c ima: Avoid blocking in RCU read-side critical section 2024-07-11 12:47:16 +02:00
capability.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
crypto.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
domain.c apparmor: fix overlapping attachment computation 2022-07-19 02:52:36 -07:00
file.c apparmor: handle idmapped mounts 2021-01-24 14:27:20 +01:00
ipc.c apparmor: move ptrace mediation to more logical task.{h,c} 2022-07-19 04:14:22 -07:00
Kconfig apparmor: test: make static symbols visible during kunit testing 2023-11-20 11:52:09 +01:00
label.c apparmor: Fix regression in stacking due to label flags 2022-12-31 13:32:29 +01:00
lib.c apparmor: extend policydb permission set by making use of the xbits 2022-07-19 02:57:15 -07:00
lsm.c apparmor: Fix null pointer deref when receiving skb during sock creation 2024-08-03 08:49:50 +02:00
Makefile apparmor: test: make static symbols visible during kunit testing 2023-11-20 11:52:09 +01:00
match.c apparmor: ensure that dfa state tables have entries 2020-04-08 04:42:48 -07:00
mount.c apparmor: extend policydb permission set by making use of the xbits 2022-07-19 02:57:15 -07:00
net.c apparmor: add a kernel label to use on kernel objects 2022-07-13 16:37:21 -07:00
nulldfa.in apparmor: cleanup add proper line wrapping to nulldfa.in 2018-02-09 11:30:01 -08:00
path.c security: apparmor: delete repeated words in comments 2021-02-07 04:15:46 -08:00
policy.c apparmor: use kvfree_sensitive to free data->data 2024-08-03 08:49:33 +02:00
policy_ns.c apparmor: Fix memleak in alloc_ns() 2022-12-31 13:32:31 +01:00
policy_unpack.c apparmor: use kvfree_sensitive to free data->data 2024-08-03 08:49:33 +02:00
policy_unpack_test.c apparmor: fix policy_unpack_test on big endian systems 2024-09-04 13:25:04 +02:00
procattr.c apparmor: Fix kernel-doc 2022-07-09 15:13:59 -07:00
resource.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
secid.c apparmor: disable showing the mode as part of a secid to secctx 2022-07-13 17:18:29 -07:00
stacksplitdfa.in apparmor: use the dfa to do label parse string splitting 2018-02-09 11:30:01 -08:00
task.c apparmor: move ptrace mediation to more logical task.{h,c} 2022-07-19 04:14:22 -07:00