On Tue, 2013-10-29 at 17:28 -0400, Paul Moore wrote:
 Take x86_64 and x32 as an example (think of x32 as a 32-bit version
of 
 x86_64).  Both x32 and x86_64 use the AUDIT_ARCH_X86_64 value and general 
 calling convention, but they have a different syscall table. 
I guess a good question is "is that right" ?
#define AUDIT_ARCH_X86_64 (EM_X86_64|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
Would we not be better off with a:
#define AUDIT_ARCH_X32 (EM_X86_64|__AUDIT_ARCH_LE)   ?
Do x86_64 and x32 share the same syscall entry code?  Is there where the
AUDIT_ARCH_X86_64 comes from?  Is this similar for ARM?  Right now, the
only thing we have is:
#define AUDIT_ARCH_ARM          (EM_ARM|__AUDIT_ARCH_LE)
#define AUDIT_ARCH_ARMEB        (EM_ARM)
Is this enough?  Should we add more?  I'm way way way more ARM idiotic
than I am about x86_64.  I know the ARM people at least told us that ARM
wasn't going to work right with what we have today...  So they added to
the audit Kconfig:
depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 ||
SUPERH || (ARM && AEABI && !OABI_COMPAT))
Is fixing this with differentiated AUDIT_ARCH flags even possible?  Am I
just talking out of my bum?