On Tue, 2004-10-26 at 15:22 +0000, Linux Kernel Mailing List wrote: > ChangeSet 1.2187, 2004/10/26 08:22:01-07:00, akpm@osdl.org > > [PATCH] revert- sys_setaltroot > We decided to do this a different way. Can you elaborate? We don't have open_exec() in userspace, so I'm not sure it's possible to do this properly for setuid binaries and execute-only binaries in userspace without being seriously exploitable. I assume the problem with it was that you can set the altroot to a directory containing a bogus /etc/shadow and then 'su' with a password of your own choosing, or something like that? There's no reason to make the user-specified altroot survive across exec() though -- and as long it _doesn't_ persist, it should be perfectly safe to let users set it. I'm working on a patch which puts sys_setaltroot back but discards it on exec. This allows me to ditch all the horrid path walking stuff from qemu, and as soon as I make qemu understand AT_EXECFD it should let me run execute-only i386 binaries on my ppc box too. T'would be useful to confirm the original objections to it and that I haven't missed a viable 'different way' to do it, though. -- dwmw2