Explorar o código

audit: Fix possible return value truncation in audit_get_context()

The audit subsystem treats syscall return codes as type long, unfortunately
the audit_get_context() function mistakenly converts the return code to an
int type in the parameters which could cause problems on systems where the
sizeof(int) != sizeof(long).

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Paul Moore %!s(int64=16) %!d(string=hai) anos
pai
achega
6d208da89a
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      kernel/auditsc.c

+ 1 - 1
kernel/auditsc.c

@@ -752,7 +752,7 @@ static void audit_set_auditable(struct audit_context *ctx)
 
 
 static inline struct audit_context *audit_get_context(struct task_struct *tsk,
 static inline struct audit_context *audit_get_context(struct task_struct *tsk,
 						      int return_valid,
 						      int return_valid,
-						      int return_code)
+						      long return_code)
 {
 {
 	struct audit_context *context = tsk->audit_context;
 	struct audit_context *context = tsk->audit_context;