Commit c786cc5e authored by Jan Kara's avatar Jan Kara Committed by Sasha Levin

audit: Fix check of return value of strnlen_user()

[ Upstream commit 0b08c5e5 ]

strnlen_user() returns 0 when it hits fault, not -1. Fix the test in
audit_log_single_execve_arg(). Luckily this shouldn't ever happen unless
there's a kernel bug so it's mostly a cosmetic fix.

CC: Paul Moore <pmoore@redhat.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
Signed-off-by: default avatarPaul Moore <pmoore@redhat.com>
Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
parent eeeec288
...@@ -1046,7 +1046,7 @@ static int audit_log_single_execve_arg(struct audit_context *context, ...@@ -1046,7 +1046,7 @@ static int audit_log_single_execve_arg(struct audit_context *context,
* for strings that are too long, we should not have created * for strings that are too long, we should not have created
* any. * any.
*/ */
if (unlikely((len == -1) || len > MAX_ARG_STRLEN - 1)) { if (unlikely((len == 0) || len > MAX_ARG_STRLEN - 1)) {
WARN_ON(1); WARN_ON(1);
send_sig(SIGKILL, current, 0); send_sig(SIGKILL, current, 0);
return -1; return -1;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment