Re: [PATCH] audit: remove unused macros

From: Richard Guy Briggs
Date: Tue Nov 10 2020 - 10:23:29 EST


On 2020-11-06 16:31, Alex Shi wrote:
> Some unused macros could cause gcc warning:
> kernel/audit.c:68:0: warning: macro "AUDIT_UNINITIALIZED" is not used
> [-Wunused-macros]
> kernel/auditsc.c:104:0: warning: macro "AUDIT_AUX_IPCPERM" is not used
> [-Wunused-macros]
> kernel/auditsc.c:82:0: warning: macro "AUDITSC_INVALID" is not used
> [-Wunused-macros]
>
> remove them to tame gcc.
>
> Signed-off-by: Alex Shi <alex.shi@xxxxxxxxxxxxxxxxx>
> Cc: Paul Moore <paul@xxxxxxxxxxxxxx>
> Cc: Eric Paris <eparis@xxxxxxxxxx>
> Cc: linux-audit@xxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> ---
> kernel/audit.c | 1 -
> kernel/auditsc.c | 3 ---
> 2 files changed, 4 deletions(-)
>
> diff --git a/kernel/audit.c b/kernel/audit.c
> index ac0aeaa99937..dfac1e0ca887 100644
> --- a/kernel/audit.c
> +++ b/kernel/audit.c
> @@ -65,7 +65,6 @@
> /* No auditing will take place until audit_initialized == AUDIT_INITIALIZED.
> * (Initialization happens after skb_init is called.) */
> #define AUDIT_DISABLED -1
> -#define AUDIT_UNINITIALIZED 0
> #define AUDIT_INITIALIZED 1
> static int audit_initialized;

This one is part of a set, so it feels like it should stay, but the code
is structured in such a way that it is not necessary.

> diff --git a/kernel/auditsc.c b/kernel/auditsc.c
> index 183d79cc2e12..eeb4930d499f 100644
> --- a/kernel/auditsc.c
> +++ b/kernel/auditsc.c
> @@ -80,7 +80,6 @@
> #include "audit.h"
>
> /* flags stating the success for a syscall */
> -#define AUDITSC_INVALID 0
> #define AUDITSC_SUCCESS 1
> #define AUDITSC_FAILURE 2

Same here, but this one should really be fixed by using
AUDITSC_INVALID as the value assigned to context->return_valid in
__audit_free() to avoid using magic numbers. Similarly, the compared
values in audit_filter_rules() under the AUDIT_EXIT and AUDIT_SUCCESS
cases should be "ctx->return_valid != AUDITSC_INVALID" rather than just
"ctx->return_valid". Same in audit_log_exit().

> @@ -102,8 +101,6 @@ struct audit_aux_data {
> int type;
> };
>
> -#define AUDIT_AUX_IPCPERM 0
> -

Hmmm, this one looks like it was orphaned 15 years ago a couple of
months after it was introduced due to this commit:
c04049939f88 Steve Grubb <sgrubb@xxxxxxxxxx> 2005-05-13
("AUDIT: Add message types to audit records")

Introduced here:
8e633c3fb2a2 David Woodhouse <dwmw2@xxxxxxxxxxxxxxxxxxxxxxx> 2005-03-01
("Audit IPC object owner/permission changes.")

I agree, remove it.

> /* Number of target pids per aux struct. */
> #define AUDIT_AUX_PIDS 16
>
> --
> 1.8.3.1
>
> --
> Linux-audit mailing list
> Linux-audit@xxxxxxxxxx
> https://www.redhat.com/mailman/listinfo/linux-audit

- RGB

--
Richard Guy Briggs <rgb@xxxxxxxxxx>
Sr. S/W Engineer, Kernel Security, Base Operating Systems
Remote, Ottawa, Red Hat Canada
IRC: rgb, SunRaycer
Voice: +1.647.777.2635, Internal: (81) 32635