lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260109121816.382751-1-ben.dooks@codethink.co.uk>
Date: Fri,  9 Jan 2026 12:18:16 +0000
From: Ben Dooks <ben.dooks@...ethink.co.uk>
To: linux-kernel@...r.kernel.org,
	audit@...r.kernel.org
Cc: eparis@...hat.com,
	paul@...l-moore.com,
	Ben Dooks <ben.dooks@...ethink.co.uk>
Subject: [PATCH] audit: sort missing compat prototypes

The comapt_xxx_class symbols aren't declared in anything that
lib/comapt_audit.c is including (arm64 build) which is causing
the following sparse warnings:

lib/compat_audit.c:7:10: warning: symbol 'compat_dir_class' was not declared. Should it be static?
lib/compat_audit.c:12:10: warning: symbol 'compat_read_class' was not declared. Should it be static?
lib/compat_audit.c:17:10: warning: symbol 'compat_write_class' was not declared. Should it be static?
lib/compat_audit.c:22:10: warning: symbol 'compat_chattr_class' was not declared. Should it be static?
lib/compat_audit.c:27:10: warning: symbol 'compat_signal_class' was not declared. Should it be static?

Trying to fix this by chaning compat_audit.c to inclde <linux/audit.h>
does not work on arm64 due to compile errors with the extra includes
that changing this header makes. The simpler thing would be just to
move the definitons of these symbols out of <linux/audit.h> into
<linux/audit_arch.h> which is included.

Fixes: 4b58841149dca ("audit: Add generic compat syscall support")
Signed-off-by: Ben Dooks <ben.dooks@...ethink.co.uk>
---
 include/linux/audit_arch.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/include/linux/audit_arch.h b/include/linux/audit_arch.h
index 0e34d673ef17..2b8153791e6a 100644
--- a/include/linux/audit_arch.h
+++ b/include/linux/audit_arch.h
@@ -23,4 +23,11 @@ enum auditsc_class_t {
 
 extern int audit_classify_compat_syscall(int abi, unsigned syscall);
 
+/* only for compat system calls */
+extern unsigned compat_write_class[];
+extern unsigned compat_read_class[];
+extern unsigned compat_dir_class[];
+extern unsigned compat_chattr_class[];
+extern unsigned compat_signal_class[];
+
 #endif
-- 
2.37.2.352.g3c44437643


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ