svn commit: r199983 - in head: lib/libc/stdlib
tools/regression/environ
Colin Percival
cperciva at freebsd.org
Tue Dec 1 06:09:50 UTC 2009
Brian Feldman wrote:
> Do not gratuitously fail *env(3) operations due to corrupt ('='-less)
> **environ entries. This puts non-getenv(3) operations in line with
> getenv(3) in that bad environ entries do not cause all operations to
> fail. There is still some inconsistency in that getenv(3) in the
> absence of any environment-modifying operation does not emit corrupt
> environ entry warnings.
>
> I also fixed another inconsistency in getenv(3) where updating the
> global environ pointer would not be reflected in the return values.
> It would have taken an intermediary setenv(3)/putenv(3)/unsetenv(3)
> in order to see the change.
The FreeBSD Security Team is currently dealing with a security issue relating
to this code. Please back out your change (at least to getenv.c; I don't
particularly care about the regression tests) until we've finished, and then
submit the patch to us for review along with a detailed explanation of what
it does.
We've already had two major security issues arising out of getenv.c in the
past year, and I'd like to make sure we don't have a third.
--
Colin Percival
Security Officer, FreeBSD | freebsd.org | The power to serve
Founder / author, Tarsnap | tarsnap.com | Online backups for the truly paranoid
More information about the svn-src-head
mailing list