RE: [PATCH] x86: Remove a.out support

From: David Laight
Date: Mon Apr 04 2022 - 17:52:00 EST


From: Maciej W. Rozycki
> Sent: 04 April 2022 12:04
>
> On Sat, 2 Apr 2022, Kees Cook wrote:
>
> > > Chiming in late as I'm scanning outstanding mailing list traffic: if this
> > >is as you say all statically linked stuff, then converting from a.out to
> > >ELF might be as easy as:
> > >
> > >$ objcopy -I a.out-i386-linux -O elf32-i386 a.out-binary elf-binary
> >
> > Based on my research (and the wrapper I ended up writing), I don't think
> > this is sufficient because entry point handling is different between ELF
> > and a.out (specifically the stack layout and initial sp register value).
>
> Fair enough. I guess the exact value of %esp doesn't matter that much
> (why would it?), but the arguments and environment may well be structured
> differently (and indeed based on a glance over binfmt_aout.c there's extra
> indirection involved compared to the ELF i386 psABI).

You could write a custom 'elf interpreter'.
Hacking at those isn't for the faint-hearted :-)

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)