Hi, Paul!
I think this could be easer. It's enouth to rename AUDIT_DISABLE only.
enum audit_state deals with per-task syscalls audit context, so we can
use AUDIT_CONTEXT_DISABLED for example. If it's okay, I can send a new
patch version.
В Сб, 05/06/2021 в 22:40 -0400, Paul Moore пишет:
On Fri, Jun 4, 2021 at 7:21 AM Sergey Nazarov
<s-nazarov(a)yandex.ru>
wrote:
>
> AUDIT_DISABLED defined in kernel/audit.h as element of enum
> audit_state
> and redefined in kernel/audit.c. This produces a warning when
> kernel builds
> with syscalls audit disabled and brokes kernel build if -Werror
> used.
> enum audit_state used in syscall audit code only. This patch
> changes
> enum audit_state constants prefix AUDIT to AUDITSC to avoid
> AUDIT_DISABLED
> redefinition.
>
> Signed-off-by: Sergey Nazarov <s-nazarov(a)yandex.ru>
> ---
> kernel/audit.h | 8 ++++----
> kernel/auditsc.c | 34 +++++++++++++++++-----------------
> 2 files changed, 21 insertions(+), 21 deletions(-)
Hi Sergey,
Thanks for sending a patch to fix this problem. One comment below
...
> diff --git a/kernel/audit.h b/kernel/audit.h
> index 1522e10..ee81f20 100644
> --- a/kernel/audit.h
> +++ b/kernel/audit.h
> @@ -21,16 +21,16 @@
> a per-task filter. At syscall entry, the audit_state is
> augmented by
> the syscall filter. */
> enum audit_state {
> - AUDIT_DISABLED, /* Do not create per-task
> audit_context.
> + AUDITSC_DISABLED, /* Do not create per-task
> audit_context.
> * No syscall-specific audit
> records can
> * be generated. */
> - AUDIT_BUILD_CONTEXT, /* Create the per-task
> audit_context,
> + AUDITSC_BUILD_CONTEXT, /* Create the per-task
> audit_context,
> * and fill it in at syscall
> * entry time. This makes a full
> * syscall record available if some
> * other part of the kernel decides
> it
> * should be recorded. */
> - AUDIT_RECORD_CONTEXT /* Create the per-task
> audit_context,
> + AUDITSC_RECORD_CONTEXT /* Create the per-task
> audit_context,
> * always fill it in at syscall
> entry
> * time, and always write out the
> audit
> * record at syscall exit time. */
I believe that just as the AUDIT_ prefix proved to be a bit too
generic, I think that the AUDITSC_ prefix is also not the best
choice.
Would you object to using the AUDIT_STATE_ prefix? As that may get a
bit long, I might suggest dropping the _CONTEXT from the enums too
such that you would end up with the following:
enum audit_state {
AUDIT_STATE_DISABLED,
AUDIT_STATE_BUILD,
AUDIT_STATE_RECORD,
};
Thoughts?