From 1bc94d09e1a94fe3f94cce025e0799dea24f2888 Mon Sep 17 00:00:00 2001 From: John Johansen Date: Wed, 1 Jul 2026 05:54:20 -0700 Subject: [PATCH] apparmor: fix error handling for copy_from_user in policy_update copy_from_user does not return an error code and the check should be setting the error code. Fixes: 8b236f99edf8 ("apparmor: Initial support for compressed policies") Signed-off-by: John Johansen --- security/apparmor/apparmorfs.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/security/apparmor/apparmorfs.c b/security/apparmor/apparmorfs.c index ac0a181e5ceb..22317817d1f5 100644 --- a/security/apparmor/apparmorfs.c +++ b/security/apparmor/apparmorfs.c @@ -552,10 +552,10 @@ static struct aa_loaddata *aa_get_data_from_compressed(const char __user *userbu *compressed_data = kvmalloc(buffer_size, GFP_KERNEL); if (!*compressed_data) return ERR_PTR(-ENOMEM); - error = copy_from_user(*compressed_data, userbuf, buffer_size); - if (error) + if (copy_from_user(*compressed_data, userbuf, buffer_size)) { + error = -EFAULT; goto fail; - + } error = zstd_get_frame_header(&header, *compressed_data, buffer_size); if (error || header.frameContentSize == ZSTD_CONTENTSIZE_UNKNOWN || header.frameContentSize == ZSTD_CONTENTSIZE_ERROR) {