Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200213201103.GB3383@voyager>
Date: Thu, 13 Feb 2020 21:11:03 +0100
From: Markus Wichmann <nullplan@....net>
To: musl@...ts.openwall.com
Subject: Re: execvp() behaviour with unrecognized file header

Hi all,

so I had a look around at other implementations, since I thought the
problem might be a solved one, and here's what I found:

newlib does not support this behavior at all.

bionic uses a VLA for the new argv[]. I didn't even know C++ had VLAs,
so at least I learned something from this.

glibc also uses a VLA.

klibc also does not support this behavior.

uclibc-ng is an interesting one. On architectures with MMU they allocate
the necessary space with alloca(), but without an MMU, they will use
mmap() directly to try and minimize the memory leak, as a comment
directly before the code responsible tells us.

So yeah, the competition appears to either not bother or just use VLAs.
I guess it is not a huge problem in practice?

Ciao,
Markus

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.