Re: [PATCH] binfmt_misc: pass binfmt_misc P flag to the interpreter

From: Florian Weimer
Date: Fri Mar 06 2020 - 03:39:25 EST


* Laurent Vivier:

> Le 06/03/2020 à 09:13, Florian Weimer a écrit :
>> * YunQiang Su:
>>
>>> + if (bprm->interp_flags & BINPRM_FLAGS_PRESERVE_ARGV0)
>>> + flags |= AT_FLAGS_PRESERVE_ARGV0;
>>> + NEW_AUX_ENT(AT_FLAGS, flags);
>>
>> Is it necessary to reuse AT_FLAGS? I think it's cleaner to define a
>> separate AT_ tag dedicated to binfmt_misc.
>
> Not necessary, but it seemed simpler and cleaner to re-use a flag that
> is marked as unused and with a name matching the new role. It avoids to
> patch other packages (like glibc) to add it as it is already defined.

You still need to define AT_FLAGS_PRESERVE_ARGV0. At that point, you
might as well define AT_BINFMT and AT_BINFMT_PRESERVE_ARGV0.