]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
selftests/landlock: Fix snprintf truncation checks in audit helpers
authorMickaël Salaün <mic@digikod.net>
Thu, 2 Apr 2026 19:26:02 +0000 (21:26 +0200)
committerMickaël Salaün <mic@digikod.net>
Tue, 7 Apr 2026 16:51:00 +0000 (18:51 +0200)
snprintf() returns the number of characters that would have been
written, excluding the terminating NUL byte.  When the output is
truncated, this return value equals or exceeds the buffer size.  Fix
matches_log_domain_allocated() and matches_log_domain_deallocated() to
detect truncation with ">=" instead of ">".

Cc: Günther Noack <gnoack@google.com>
Cc: stable@vger.kernel.org
Fixes: 6a500b22971c ("selftests/landlock: Add tests for audit flags and domain IDs")
Reviewed-by: Günther Noack <gnoack3000@gmail.com>
Link: https://lore.kernel.org/r/20260402192608.1458252-2-mic@digikod.net
Signed-off-by: Mickaël Salaün <mic@digikod.net>
tools/testing/selftests/landlock/audit.h

index 44eb433e96661f8b4623759cbb5541e3e685e5ca..1049a0582af5d4a606946b04bfc102a46fe8cc30 100644 (file)
@@ -309,7 +309,7 @@ static int __maybe_unused matches_log_domain_allocated(int audit_fd, pid_t pid,
 
        log_match_len =
                snprintf(log_match, sizeof(log_match), log_template, pid);
-       if (log_match_len > sizeof(log_match))
+       if (log_match_len >= sizeof(log_match))
                return -E2BIG;
 
        return audit_match_record(audit_fd, AUDIT_LANDLOCK_DOMAIN, log_match,
@@ -326,7 +326,7 @@ static int __maybe_unused matches_log_domain_deallocated(
 
        log_match_len = snprintf(log_match, sizeof(log_match), log_template,
                                 num_denials);
-       if (log_match_len > sizeof(log_match))
+       if (log_match_len >= sizeof(log_match))
                return -E2BIG;
 
        return audit_match_record(audit_fd, AUDIT_LANDLOCK_DOMAIN, log_match,