On 18 February 2016 at 21:34, Matt Zimmerman <mdz@xxxxxxxxxx> wrote: > Thanks for following up. My recommendation is to say something like: > > This function DOES NOT securely erase the contents of the environment. > Security-conscious applications which need to do this should use .... > instead. So, I think this report is a little confused, but mainly because of the poor description in the man page. The security-conscious applications in this context are those that want to precisely control the environment passed to an exec()ed program. clearenv() cannot, indeed must not, try to erase the buffers containing the environment definitions. (See putenv(3) to understand why.) I've adjusted the man page in away that I hope explains things better: The clearenv() function may be useful in security-conscious applications that want to precisely control the environment that is passed to programs executed using exec(3). The application would do this by first clearing the environment and then adding select environment variables. Note that the main effect of clearenv() is to adjust the value of the pointer environ(7); this function does not erase the contents of the buffers containing the environment definitions. Cheers, Michael -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html